2. Opis struktur danych

2.1. Typ wartości zwracanej przez wywołanie interfejsu

1typedef int errno_t;

2.2. Typ danych pozycji stawów

1/**
2* @brief Typ danych pozycji stawów
3*/
4typedef struct
5{
6    double jPos[6];   /* Sześć pozycji stawów, jednostka deg */
7} JointPos;

2.3. Typ danych pozycji w przestrzeni kartezjańskiej

1/**
2* @brief Typ danych pozycji w przestrzeni kartezjańskiej
3*/
4typedef struct
5{
6    double x;    /* Współrzędna osi X, jednostka mm  */
7    double y;    /* Współrzędna osi Y, jednostka mm  */
8    double z;    /* Współrzędna osi Z, jednostka mm  */
9} DescTran;

2.4. Typ danych orientacji w kątach Eulera

1/**
2* @brief Typ danych orientacji w kątach Eulera
3*/
4typedef struct
5{
6    double rx;   /* Kąt obrotu wokół stałej osi X, jednostka: deg  */
7    double ry;   /* Kąt obrotu wokół stałej osi Y, jednostka: deg  */
8    double rz;   /* Kąt obrotu wokół stałej osi Z, jednostka: deg  */
9} Rpy;

2.5. Typ danych pozycji i orientacji w przestrzeni kartezjańskiej

1/**
2*@brief Typ pozycji i orientacji w przestrzeni kartezjańskiej
3*/
4typedef struct
5{
6    DescTran tran;      /* Pozycja w przestrzeni kartezjańskiej  */
7    Rpy rpy;            /* Orientacja w przestrzeni kartezjańskiej  */
8} DescPose;

2.6. Typ danych pozycji osi rozszerzonej

1/**
2* @brief Typ danych pozycji osi rozszerzonej
3*/
4typedef struct
5{
6    double ePos[4];   /* Pozycje czterech osi rozszerzonych, jednostka mm */
7} ExaxisPos;

2.7. Typ danych czujnika siły i momentu obrotowego

 1/**
 2* @brief Składowe siły i momentu obrotowego czujnika siły
 3*/
 4typedef struct
 5{
 6    double fx;  /* Składowa siły wzdłuż osi X, jednostka N  */
 7    double fy;  /* Składowa siły wzdłuż osi Y, jednostka N  */
 8    double fz;  /* Składowa siły wzdłuż osi Z, jednostka N  */
 9    double tx;  /* Składowa momentu obrotowego wokół osi X, jednostka Nm */
10    double ty;  /* Składowa momentu obrotowego wokół osi Y, jednostka Nm */
11    double tz;  /* Składowa momentu obrotowego wokół osi Z, jednostka Nm */
12} ForceTorque;

2.8. Typ danych parametrów spirali

 1/**
 2* @brief  Typ danych parametrów spirali
 3*/
 4typedef struct
 5{
 6    int    circle_num;           /* Liczba zwojów spirali  */
 7    float  circle_angle;         /* Kąt nachylenia spirali  */
 8    float  rad_init;             /* Początkowy promień spirali, jednostka mm  */
 9    float  rad_add;              /* Przyrost promienia  */
10    float  rotaxis_add;          /* Przyrost kierunku osi obrotu  */
11    int rot_direction;   /* Kierunek obrotu, 0-zgodnie z ruchem wskazówek zegara, 1-przeciwnie do ruchu wskazówek zegara  */
12    int velAccMode;      /* Tryb parametrów prędkości i przyspieszenia: 0-stała prędkość kątowa; 1-stała prędkość liniowa */
13} SpiralParam;

2.9. Pakiet informacji zwrotnej o stanie kontrolera

Zmienione w wersji C++SDK-v2.1.4.0.

  1/**
  2 * @brief  Pakiet informacji zwrotnej o stanie kontrolera
  3 */
  4typedef struct _ROBOT_STATE_PKG
  5{
  6  uint16_t frame_head;   // Nagłówek ramki, umownie 0x5A5A
  7  uint8_t frame_cnt;    // Licznik ramek, zliczanie cykliczne 0-255
  8  uint16_t data_len;    // Długość treści danych
  9  uint8_t program_state;  // Stan działania programu, 1-zatrzymany; 2-działa; 3-wstrzymany;
 10  uint8_t robot_state;   // Stan ruchu robota, 1-zatrzymany; 2-działa; 3-wstrzymany; 4-przeciąganie
 11  int   main_code;    // Główny kod usterki
 12  int   sub_code;    // Podrzędny kod usterki
 13  uint8_t robot_mode;   // Tryb robota, 1-tryb ręczny; 0-tryb automatyczny;
 14  double  jt_cur_pos[6];  // Bieżące pozycje 6 stawów, jednostka deg
 15  double  tl_cur_pos[6];  // Bieżąca pozycja narzędzia
 16        // tl_cur_pos[0], pozycja wzdłuż osi X, jednostka mm,
 17        // tl_cur_pos[1], pozycja wzdłuż osi Y, jednostka mm,
 18        // tl_cur_pos[2], pozycja wzdłuż osi Z, jednostka mm,
 19        // tl_cur_pos[3], kąt obrotu wokół stałej osi X, jednostka deg
 20        // tl_cur_pos[4], kąt obrotu wokół stałej osi Y, jednostka deg
 21        // tl_cur_pos[5], kąt obrotu wokół stałej osi Z, jednostka deg
 22  double  flange_cur_pos[6]; // Bieżąca pozycja kołnierza końcowego
 23        // flange_cur_pos[0], pozycja wzdłuż osi X, jednostka mm,
 24        // flange_cur_pos[1], pozycja wzdłuż osi Y, jednostka mm,
 25        // flange_cur_pos[2], pozycja wzdłuż osi Z, jednostka mm,
 26        // flange_cur_pos[3], kąt obrotu wokół stałej osi X, jednostka deg
 27        // flange_cur_pos[4], kąt obrotu wokół stałej osi Y, jednostka deg
 28        // flange_cur_pos[5], kąt obrotu wokół stałej osi Z, jednostka deg
 29  double  actual_qd[6];   // Bieżące prędkości 6 stawów, jednostka deg/s
 30  double  actual_qdd[6];   // Bieżące przyspieszenia 6 stawów, jednostka deg/s²
 31  double  target_TCP_CmpSpeed[2];
 32        // target_TCP_CmpSpeed[0], prędkość złożona instrukcji TCP (pozycja), jednostka mm/s
 33        // target_TCP_CmpSpeed[1], prędkość złożona instrukcji TCP (orientacja), jednostka deg/s */
 34  double  target_TCP_Speed[6];  // Prędkość instrukcji TCP
 35          // target_TCP_Speed[0], prędkość wzdłuż osi X, jednostka mm/s,
 36          // target_TCP_Speed[1], prędkość wzdłuż osi Y, jednostka mm/s,
 37          // target_TCP_Speed[2], prędkość wzdłuż osi Z, jednostka mm/s,
 38          // target_TCP_Speed[3], prędkość kątowa wokół stałej osi X, jednostka deg/s
 39          // target_TCP_Speed[4], prędkość kątowa wokół stałej osi Y, jednostka deg/s
 40          // target_TCP_Speed[5], prędkość kątowa wokół stałej osi Z, jednostka deg/s */
 41  double  actual_TCP_CmpSpeed[2];
 42          // actual_TCP_CmpSpeed[0], rzeczywista prędkość złożona TCP (pozycja), jednostka mm/s
 43          // actual_TCP_CmpSpeed[1], rzeczywista prędkość złożona TCP (orientacja), jednostka deg/s
 44  double  actual_TCP_Speed[6];  // Rzeczywista prędkość TCP
 45          // actual_TCP_Speed[0], prędkość wzdłuż osi X, jednostka mm/s,
 46          // actual_TCP_Speed[1], prędkość wzdłuż osi Y, jednostka mm/s,
 47          // actual_TCP_Speed[2], prędkość wzdłuż osi Z, jednostka mm/s,
 48          // actual_TCP_Speed[3], prędkość kątowa wokół stałej osi X, jednostka deg/s
 49          // actual_TCP_Speed[4], prędkość kątowa wokół stałej osi Y, jednostka deg/s
 50          // actual_TCP_Speed[5], prędkość kątowa wokół stałej osi Z, jednostka deg/s
 51  double  jt_cur_tor[6];   // Bieżące momenty obrotowe 6 stawów, jednostka N·m
 52  int   tool;        // Numer zastosowanego układu współrzędnych narzędzia
 53  int   user;        // Numer zastosowanego układu współrzędnych przedmiotu
 54  uint8_t cl_dgt_output_h;  // Wyjście cyfrowe I/O skrzynki sterowniczej 15-8
 55  uint8_t cl_dgt_output_l;  // Wyjście cyfrowe I/O skrzynki sterowniczej 7-0
 56  uint8_t tl_dgt_output_l;  // Wyjście cyfrowe I/O narzędzia 7-0, tylko bit0-bit1 są aktywne
 57  uint8_t cl_dgt_input_h;   // Wejście cyfrowe I/O skrzynki sterowniczej 15-8
 58  uint8_t cl_dgt_input_l;   // Wejście cyfrowe I/O skrzynki sterowniczej 7-0
 59  uint8_t tl_dgt_input_l;   // Wejście cyfrowe I/O narzędzia 7-0, tylko bit0-bit1 są aktywne
 60  uint16_t cl_analog_input[2]; // cl_analog_input[0], wejście analogowe skrzynki sterowniczej 0
 61                //cl_analog_input[1], wejście analogowe skrzynki sterowniczej 1
 62  uint16_t tl_anglog_input;  // Wejście analogowe narzędzia
 63  double  ft_sensor_raw_data[6]; // Surowe dane czujnika siły i momentu
 64          // ft_sensor_raw_data[0], siła wzdłuż osi X, jednostka N
 65          // ft_sensor_raw_data[1], siła wzdłuż osi Y, jednostka N
 66          // ft_sensor_raw_data[2], siła wzdłuż osi Z, jednostka N
 67          // ft_sensor_raw_data[3], moment wokół osi X, jednostka Nm
 68          // ft_sensor_raw_data[4], moment wokół osi Y, jednostka Nm
 69          // ft_sensor_raw_data[5], moment wokół osi Z, jednostka Nm
 70  double  ft_sensor_data[6];   // Dane czujnika siły i momentu (przetworzone),
 71          // ft_sensor_data[0], siła wzdłuż osi X, jednostka N
 72          // ft_sensor_data[1], siła wzdłuż osi Y, jednostka N
 73          // ft_sensor_data[2], siła wzdłuż osi Z, jednostka N
 74          // ft_sensor_data[3], moment wokół osi X, jednostka Nm
 75          // ft_sensor_data[4], moment wokół osi Y, jednostka Nm
 76          // ft_sensor_data[5], moment wokół osi Z, jednostka Nm
 77  uint8_t ft_sensor_active;  // Stan aktywacji czujnika siły i momentu, 0-reset, 1-aktywacja
 78  uint8_t EmergencyStop;   // Znacznik awaryjnego zatrzymania, 0-niewciśnięty, 1-wciśnięty
 79  int   motion_done;    // Sygnał osiągnięcia pozycji, 1-osiągnięto, 0-nie osiągnięto
 80  uint8_t gripper_motiondone; // Sygnał zakończenia ruchu chwytaka, 0-nie zakończono, 1-zakończono (nie wykryto obiektu), 2-ruch zakończony (wykryto obiekt)
 81  int   mc_queue_len;    // Długość kolejki instrukcji ruchu
 82  uint8_t collisionState;   // Wykrywanie kolizji, 1-kolizja, 0-brak kolizji
 83  int   trajectory_pnum;  // Numer punktu trajektorii
 84  uint8_t safety_stop0_state; // Sygnał bezpiecznego zatrzymania SI0
 85  uint8_t safety_stop1_state; // Sygnał bezpiecznego zatrzymania SI1
 86  uint8_t gripper_fault_id;  // Numer uszkodzonego chwytaka
 87  uint16_t gripper_fault;   // Błąd chwytaka
 88  uint16_t gripper_active;   // Stan aktywacji chwytaka
 89  uint8_t gripper_position;  // Pozycja chwytaka
 90  int8_t  gripper_speed;   // Prędkość chwytaka
 91  int8_t  gripper_current;  // Prąd chwytaka
 92  int   gripper_temp;    // Temperatura chwytaka
 93  int   gripper_voltage;  // Napięcie chwytaka
 94  robot_aux_state aux_state;  // Stan osi rozszerzonej 485
 95  EXT_AXIS_STATUS extAxisStatus[4]; // Stan osi rozszerzonej UDP
 96  uint16_t extDIState[8];    // Wejście rozszerzone DI
 97  uint16_t extDOState[8];    // Wyjście rozszerzone DO
 98  uint16_t extAIState[4];    // Wejście rozszerzone AI
 99  uint16_t extAOState[4];    // Wyjście rozszerzone AO
100  int rbtEnableState;      // Stan załączenia robota
101  double  jointDriverTorque[6];    // Moment obrotowy napędu stawu robota
102  double  jointDriverTemperature[6];  // Temperatura napędu stawu robota
103  RobotTime robotTime;      // Czas systemowy robota
104  int softwareUpgradeState;   // Stan aktualizacji oprogramowania robota
105  uint16_t endLuaErrCode;    // Stan działania LUA końcówki
106  uint16_t cl_analog_output[2]; // Wyjście analogowe skrzynki sterowniczej
107  uint16_t tl_analog_output;   // Wyjście analogowe narzędzia
108  float gripperRotNum;      // Bieżąca liczba obrotów chwytaka obrotowego
109  uint8_t gripperRotSpeed;    // Bieżący procent prędkości obrotowej chwytaka obrotowego
110  uint8_t gripperRotTorque;   // Bieżący procent momentu obrotowego chwytaka obrotowego
111  WELDING_BREAKOFF_STATE weldingBreakOffState; //Stan przerwania spawania
112  double jt_tgt_tor[6];         // Instrukcja momentu obrotowego stawu
113  int smartToolState;          // Stan przycisków uchwytu SmartTool
114  float wideVoltageCtrlBoxTemp;     // Temperatura skrzynki sterowniczej szerokiego napięcia
115  uint16_t wideVoltageCtrlBoxFanCurrent;// Prąd wentylatora skrzynki sterowniczej szerokiego napięcia (mA)
116  double toolCoord[6];    // Wartości bieżącego układu współrzędnych narzędzia; x,y,z,rx,ry,rz
117  double wobjCoord[6];    // Wartości bieżącego układu współrzędnych przedmiotu; x,y,z,rx,ry,rz
118  double extoolCoord[6];   // Wartości bieżącego zewnętrznego układu współrzędnych narzędzia; x,y,z,rx,ry,rz
119  double exAxisCoord[6];   // Wartości bieżącego układu współrzędnych osi rozszerzonej; x,y,z,rx,ry,rz
120  double load;        // Masa ładunku
121  double loadCog[3];     // Środek ciężkości ładunku
122  double lastServoTarget[6]; // Ostatnia docelowa pozycja ServoJ w kolejce
123  int servoJCmdNum;      // Licznik instrukcji servoJ
124  double targetJointPos[6];  // Instrukcje pozycji 6 stawów, jednostka °
125  double targetJointVel[6];  // Instrukcje prędkości 6 stawów, jednostka °/s
126  double targetJointAcc[6];  // Instrukcje przyspieszeń 6 stawów, jednostka °/s²
127  double targetJointCurrent[6]; // Instrukcje prądu 6 stawów, jednostka A
128  double actualJointCurrent[6]; // Bieżące prądy 6 stawów, jednostka A
129  double actualTCPForce[6];  // Moment końcowy robota Nm; x,y,z,rx,ry,rz
130  double targetTCPPos[6];   // Instrukcje pozycji TCP robota mm; x,y,z,rx,ry,rz
131  uint8_t collisionLevel[6]; // Poziom kolizji robota
132  double speedScaleManual;  // Procent prędkości globalnej w trybie ręcznym
133  double speedScaleAuto;   // Procent prędkości globalnej w trybie automatycznym
134  int luaLineNum;       // Bieżący numer linii programu lua
135  uint8_t abnomalStop;    // 0-brak nieprawidłowości; 1-występuje nieprawidłowość
136  char currentLuaFileName[256]; // Nazwa bieżącego programu lua
137  uint8_t programTotalLine;  // Całkowita liczba linii programu lua
138  uint8_t safetyBoxSingal[6]; // Stan przycisków panelu przyciskowego robota
139  double weldVoltage;     // Napięcie spawania V
140  double weldCurrent;     // Prąd spawania
141  double weldTrackVel;    // Prędkość śledzenia spoiny mm/s
142  uint8_t tpdException;    // Przekroczenie limitu liczby załadowanych trajektorii TPD, 0-nie przekroczono, 1-przekroczono
143  uint8_t alarmRebootRobot;  // Ostrzeżenie, 1-zwolnij przycisk awaryjnego zatrzymania, wyłącz i włącz ponownie skrzynkę sterowniczą, 2-nieprawidłowa komunikacja stawów, wyłącz i włącz ponownie skrzynkę sterowniczą
144  uint8_t modbusMasterConnect; // bit0-bit7 odpowiadają stanom połączenia masterów ModbusTCP 0-7, 0-odłączony, 1-połączony
145  uint8_t modbusSlaveConnect;  // Stan połączenia slave ModbusTCP, 0-odłączony; 1-połączony
146  uint8_t btnBoxStopSignal;   // Sygnał awaryjnego zatrzymania panelu przyciskowego, 0-zwolniony; 1-wciśnięty
147  uint8_t dragAlarm;      // Ostrzeżenie przeciągania, aktualnie w trybie automatycznym, 0-brak alarmu, 1-alarm, 2-nieprawidłowość pozycji sprzężenia zwrotnego, brak przełączania
148  uint8_t safetyDoorAlarm;   // Ostrzeżenie drzwi bezpieczeństwa; 0-drzwi bezpieczeństwa zamknięte; 1-drzwi bezpieczeństwa otwarte
149  uint8_t safetyPlaneAlarm;   // Ostrzeżenie wejścia w ścianę bezpieczeństwa; 0-nie weszło w ścianę bezpieczeństwa; 1-weszło w ścianę bezpieczeństwa
150  uint8_t motonAlarm;      // Ostrzeżenie ruchu
151  uint8_t interfaceAlarm;    // Ostrzeżenie wejścia w strefę interferencji
152  int udpCmdState;       // Stan połączenia komunikacji UDP na porcie 20007
153  uint8_t weldReadyState;    // Stan gotowości spawarki
154  uint8_t alarmCheckEmergStopBtn; // 0-normalny; 1-nieprawidłowość komunikacji, sprawdź, czy przycisk awaryjnego zatrzymania jest zwolniony
155  uint8_t tsTmCmdComError;   // 0-normalny; 1-błąd komunikacji instrukcji momentu
156  uint8_t tsTmStateComError;  // 0-normalny; 1-błąd komunikacji stanu momentu
157  int ctrlBoxError;       // Błąd skrzynki sterowniczej
158  uint8_t safetyDataState;   // Znacznik stanu danych bezpieczeństwa, 0-normalny, 1-nieprawidłowy
159  uint8_t forceSensorErrState; // Błąd przekroczenia limitu czasu połączenia czujnika siły; bit0-bit1 odpowiadają ID1-ID2 czujnika siły
160  uint8_t ctrlOpenLuaErrCode[4]; // 4 kody błędów protokołu otwartego urządzeń peryferyjnych kontrolera (kod błędu 500)
161  uint8_t strangePosFlag; // Znacznik bieżącej osobliwej pozycji; 0-normalny; 1-osobliwa pozycja
162  uint8_t alarm;      // Ostrzeżenie
163  uint8_t driverAlarm;   // Numer osi alarmu napędu
164  uint8_t aliveSlaveNumError; // Błąd liczby aktywnych stacji podrzędnych, 0: normalny; 1: błąd liczby
165  uint8_t slaveComError[8];  // Błąd stacji podrzędnej, 0: normalny; 1: utrata połączenia ze stacją podrzędną; 2: stan stacji podrzędnej niezgodny z ustawioną wartością; 3: stacja podrzędna nieskonfigurowana; 4: błąd konfiguracji stacji podrzędnej; 5: błąd inicjalizacji stacji podrzędnej; 6: błąd inicjalizacji komunikacji e-mail stacji podrzędnej
166  uint8_t cmdPointError;   // Błąd punktu instrukcji
167  uint8_t IOError;      // Błąd I/O
168  uint8_t gripperError;    // Błąd chwytaka
169  uint8_t fileError;     // Błąd pliku
170  uint8_t paraError;     // Błąd parametru
171  uint8_t exaxisOutLimitError;  // Błąd przekroczenia miękkiego limitu zewnętrznej osi
172  uint8_t driverComError[6];   // Błąd komunikacji z napędem
173  uint8_t driverError;      // Numer osi błędu komunikacji napędu
174  uint8_t outSoftLimitError;   // Błąd przekroczenia miękkiego limitu
175  char axleGenComData[130];   // Dane zwrotne transmisji transparentnej końcówki robota
176  uint8_t socketConnTimeout;   // Przekroczenie limitu czasu połączenia socket, bit0-bit4: socketID 1-4
177  uint8_t socketReadTimeout;   // Przekroczenie limitu czasu odczytu socket, bit0-bit4: socketID 1-4
178  uint8_t tsWebStateComErr;   // web - błąd komunikacji momentu; 0-normalny; 1-błąd
179  uint8_t exaxisCoordID;     // Numer układu współrzędnych osi rozszerzonej
180  uint16_t check_sum;     // Suma kontrolna
181} ROBOT_STATE_PKG;

2.10. Typ wyliczeniowy konfiguracji informacji zwrotnej o stanie robota

  1enum class RobotState
  2{
  3    ProgramState = 3,           // Stan działania programu, 1-zatrzymany; 2-działa; 3-wstrzymany
  4    RobotState = 4,             // Stan ruchu robota, 1-zatrzymany; 2-działa; 3-wstrzymany; 4-przeciąganie
  5    MainCode = 5,               // Główny kod usterki
  6    SubCode = 6,                // Podrzędny kod usterki
  7    RobotMode = 7,              // Tryb robota, 1-tryb ręczny; 0-tryb automatyczny
  8    JointCurPos = 8,            // Bieżące pozycje 6 stawów, jednostka deg
  9    ToolCurPos = 9,             // Bieżąca pozycja narzędzia: [0]pozycja wzdłuż osi X (mm), [1]wzdłuż Y (mm), [2]wzdłuż Z (mm), [3]obrót wokół stałej osi X (deg), [4]wokół Y (deg), [5]wokół Z (deg)
 10    FlangeCurPos = 10,          // Bieżąca pozycja kołnierza końcowego: [0]wzdłuż X (mm), [1]wzdłuż Y (mm), [2]wzdłuż Z (mm), [3]obrót wokół X (deg), [4]wokół Y (deg), [5]wokół Z (deg)
 11    ActualJointVel = 11,        // Bieżące prędkości 6 stawów, jednostka deg/s
 12    ActualJointAcc = 12,        // Bieżące przyspieszenia 6 stawów, jednostka deg/s²
 13    TargetTCPCmpSpeed = 13,     // Prędkość złożona instrukcji TCP: [0]pozycja (mm/s), [1]orientacja (deg/s)
 14    TargetTCPSpeed = 14,        // Prędkość instrukcji TCP: [0]wzdłuż X (mm/s), [1]wzdłuż Y (mm/s), [2]wzdłuż Z (mm/s), [3]prędkość kątowa wokół X (deg/s), [4]wokół Y (deg/s), [5]wokół Z (deg/s)
 15    ActualTCPCmpSpeed = 15,     // Rzeczywista prędkość złożona TCP: [0]pozycja (mm/s), [1]orientacja (deg/s)
 16    ActualTCPSpeed = 16,        // Rzeczywista prędkość TCP: [0]wzdłuż X (mm/s), [1]wzdłuż Y (mm/s), [2]wzdłuż Z (mm/s), [3]prędkość kątowa wokół X (deg/s), [4]wokół Y (deg/s), [5]wokół Z (deg/s)
 17    ActualJointTorque = 17,     // Bieżące momenty obrotowe 6 stawów, jednostka N·m
 18    Tool = 18,                  // Numer zastosowanego układu współrzędnych narzędzia
 19    User = 19,                  // Numer zastosowanego układu współrzędnych przedmiotu
 20    ClDgtOutputH = 20,          // Wyjście cyfrowe I/O skrzynki sterowniczej 15-8
 21    ClDgtOutputL = 21,          // Wyjście cyfrowe I/O skrzynki sterowniczej 7-0
 22    TlDgtOutputL = 22,          // Wyjście cyfrowe I/O narzędzia 7-0, tylko bit0-bit1 są aktywne
 23    ClDgtInputH = 23,           // Wejście cyfrowe I/O skrzynki sterowniczej 15-8
 24    ClDgtInputL = 24,           // Wejście cyfrowe I/O skrzynki sterowniczej 7-0
 25    TlDgtInputL = 25,           // Wejście cyfrowe I/O narzędzia 7-0, tylko bit0-bit1 są aktywne
 26    ClAnalogInput = 26,         // Wejście analogowe skrzynki sterowniczej: [0]kanał 0, [1]kanał 1
 27    TlAnalogInput = 27,         // Wejście analogowe narzędzia
 28    FtSensorRawData = 28,       // Surowe dane czujnika siły i momentu: [0]siła wzdłuż X (N), [1]wzdłuż Y (N), [2]wzdłuż Z (N), [3]moment wokół X (Nm), [4]wokół Y (Nm), [5]wokół Z (Nm)
 29    FtSensorData = 29,          // Dane czujnika siły i momentu (przetworzone): [0]siła wzdłuż X (N), [1]wzdłuż Y (N), [2]wzdłuż Z (N), [3]moment wokół X (Nm), [4]wokół Y (Nm), [5]wokół Z (Nm)
 30    FtSensorActive = 30,        // Stan aktywacji czujnika siły i momentu, 0-reset, 1-aktywacja
 31    EmergencyStop = 31,         // Znacznik awaryjnego zatrzymania, 0-niewciśnięty, 1-wciśnięty
 32    MotionDone = 32,            // Sygnał osiągnięcia pozycji, 1-osiągnięto, 0-nie osiągnięto
 33    GripperMotiondone = 33,     // Sygnał zakończenia ruchu chwytaka, 1-zakończono, 0-nie zakończono
 34    McQueueLen = 34,            // Długość kolejki instrukcji ruchu
 35    CollisionState = 35,        // Wykrywanie kolizji, 1-kolizja, 0-brak kolizji
 36    TrajectoryPnum = 36,        // Numer punktu trajektorii
 37    SafetyStop0State = 37,      // Sygnał bezpiecznego zatrzymania SI0
 38    SafetyStop1State = 38,      // Sygnał bezpiecznego zatrzymania SI1
 39    GripperFaultId = 39,        // Numer uszkodzonego chwytaka
 40    GripperFault = 40,          // Błąd chwytaka
 41    GripperActive = 41,         // Stan aktywacji chwytaka
 42    GripperPosition = 42,       // Pozycja chwytaka
 43    GripperSpeed = 43,          // Prędkość chwytaka
 44    GripperCurrent = 44,        // Prąd chwytaka
 45    GripperTemp = 45,           // Temperatura chwytaka
 46    GripperVoltage = 46,        // Napięcie chwytaka
 47    AuxState = 47,              // Stan osi rozszerzonej 485
 48    ExtAxisStatus = 48,         // Stan osi rozszerzonej UDP (4 osie)
 49    ExtDIState = 49,            // Wejście rozszerzone DI (8)
 50    ExtDOState = 50,            // Wyjście rozszerzone DO (8)
 51    ExtAIState = 51,            // Wejście rozszerzone AI (4)
 52    ExtAOState = 52,            // Wyjście rozszerzone AO (4)
 53    RbtEnableState = 53,        // Stan załączenia robota
 54    JointDriverTorque = 54,     // Moment obrotowy napędu stawu robota (6 stawów)
 55    JointDriverTemperature = 55,// Temperatura napędu stawu robota (6 stawów)
 56    RobotTime = 56,             // Czas systemowy robota
 57    SoftwareUpgradeState = 57,  // Stan aktualizacji oprogramowania robota
 58    EndLuaErrCode = 58,         // Stan działania LUA końcówki
 59    ClAnalogOutput = 59,        // Wyjście analogowe skrzynki sterowniczej (2)
 60    TlAnalogOutput = 60,        // Wyjście analogowe narzędzia
 61    GripperRotNum = 61,         // Bieżąca liczba obrotów chwytaka obrotowego
 62    GripperRotSpeed = 62,       // Bieżący procent prędkości obrotowej chwytaka obrotowego
 63    GripperRotTorque = 63,      // Bieżący procent momentu obrotowego chwytaka obrotowego
 64    WeldingBreakOffState = 64,  // Stan przerwania spawania
 65    TargetJointTorque = 65,     // Instrukcja momentu obrotowego stawu (6 stawów)
 66    SmartToolState = 66,        // Stan przycisków uchwytu SmartTool
 67    WideVoltageCtrlBoxTemp = 67,// Temperatura skrzynki sterowniczej szerokiego napięcia
 68    WideVoltageCtrlBoxFanCurrent = 68, // Prąd wentylatora skrzynki sterowniczej szerokiego napięcia (mA)
 69    ToolCoord = 69,             // Wartości bieżącego układu współrzędnych narzędzia: x,y,z,rx,ry,rz
 70    WobjCoord = 70,             // Wartości bieżącego układu współrzędnych przedmiotu: x,y,z,rx,ry,rz
 71    ExtoolCoord = 71,           // Wartości bieżącego zewnętrznego układu współrzędnych narzędzia: x,y,z,rx,ry,rz
 72    ExAxisCoord = 72,           // Wartości bieżącego układu współrzędnych osi rozszerzonej: x,y,z,rx,ry,rz
 73    Load = 73,                  // Masa ładunku
 74    LoadCog = 74,               // Środek ciężkości ładunku: x,y,z
 75    LastServoTarget = 75,       // Ostatnia docelowa pozycja ServoJ w kolejce (6 stawów)
 76    ServoJCmdNum = 76,          // Licznik instrukcji servoJ
 77    TargetJointPos = 77,        // Instrukcje pozycji 6 stawów, jednostka °
 78    TargetJointVel = 78,        // Instrukcje prędkości 6 stawów, jednostka °/s
 79    TargetJointAcc = 79,        // Instrukcje przyspieszeń 6 stawów, jednostka °/s²
 80    TargetJointCurrent = 80,    // Instrukcje prądu 6 stawów, jednostka A
 81    ActualJointCurrent = 81,    // Bieżące prądy 6 stawów, jednostka A
 82    ActualTCPForce = 82,        // Moment końcowy robota: x,y,z,rx,ry,rz, jednostka Nm
 83    TargetTCPPos = 83,          // Instrukcje pozycji TCP robota: x,y,z,rx,ry,rz, jednostka mm
 84    CollisionLevel = 84,        // Poziom kolizji robota (6)
 85    SpeedScaleManual = 85,      // Procent prędkości globalnej w trybie ręcznym
 86    SpeedScaleAuto = 86,        // Procent prędkości globalnej w trybie automatycznym
 87    LuaLineNum = 87,            // Bieżący numer linii programu lua
 88    AbnomalStop = 88,           // 0-brak nieprawidłowości; 1-występuje nieprawidłowość
 89    CurrentLuaFileName = 89,    // Nazwa bieżącego programu lua
 90    ProgramTotalLine = 90,      // Całkowita liczba linii programu lua
 91    SafetyBoxSingal = 91,       // Stan przycisków panelu przyciskowego robota (6)
 92    WeldVoltage = 92,           // Napięcie spawania V
 93    WeldCurrent = 93,           // Prąd spawania
 94    WeldTrackVel = 94,          // Prędkość śledzenia spoiny mm/s
 95    TpdException = 95,          // Przekroczenie limitu liczby załadowanych trajektorii TPD, 0-nie przekroczono, 1-przekroczono
 96    AlarmRebootRobot = 96,      // Ostrzeżenie: 1-zwolnij awaryjne zatrzymanie i wyłącz/włącz zasilanie, 2-nieprawidłowa komunikacja stawów, wyłącz/włącz zasilanie
 97    ModbusMasterConnect = 97,   // bity 0-7 odpowiadają stanom połączenia masterów ModbusTCP 0-7, 0-odłączony, 1-połączony
 98    ModbusSlaveConnect = 98,    // Stan połączenia slave ModbusTCP, 0-odłączony, 1-połączony
 99    BtnBoxStopSignal = 99,      // Sygnał awaryjnego zatrzymania panelu przyciskowego, 0-zwolniony, 1-wciśnięty
100    DragAlarm = 100,            // Ostrzeżenie przeciągania: 0-brak alarmu, 1-alarm, 2-nieprawidłowość pozycji sprzężenia zwrotnego, brak przełączania
101    SafetyDoorAlarm = 101,      // Ostrzeżenie drzwi bezpieczeństwa: 0-zamknięte, 1-otwarte
102    SafetyPlaneAlarm = 102,     // Ostrzeżenie ściany bezpieczeństwa: 0-nie weszło, 1-weszło
103    MotonAlarm = 103,           // Ostrzeżenie ruchu
104    InterfaceAlarm = 104,       // Ostrzeżenie wejścia w strefę interferencji
105    UdpCmdState = 105,          // Stan połączenia komunikacji UDP na porcie 20007
106    WeldReadyState = 106,       // Stan gotowości spawarki
107    AlarmCheckEmergStopBtn = 107, // 0-normalny; 1-nieprawidłowa komunikacja, sprawdź przycisk awaryjnego zatrzymania
108    TsTmCmdComError = 108,      // 0-normalny; 1-błąd komunikacji instrukcji momentu
109    TsTmStateComError = 109,    // 0-normalny; 1-błąd komunikacji stanu momentu
110    CtrlBoxError = 110,         // Błąd skrzynki sterowniczej
111    SafetyDataState = 111,      // Znacznik stanu danych bezpieczeństwa, 0-normalny, 1-nieprawidłowy
112    ForceSensorErrState = 112,  // Błąd przekroczenia limitu czasu połączenia czujnika siły, bit0-bit1 odpowiadają ID1-ID2
113    CtrlOpenLuaErrCode = 113,   // 4 kody błędów protokołu otwartego urządzeń peryferyjnych kontrolera (kod błędu 500)
114    StrangePosFlag = 114,       // Znacznik osobliwej pozycji: 0-normalny, 1-osobliwa pozycja
115    Alarm = 115,                // Ostrzeżenie
116    DriverAlarm = 116,          // Numer osi alarmu napędu
117    AliveSlaveNumError = 117,   // Błąd liczby aktywnych stacji podrzędnych: 0-normalny, 1-błąd liczby
118    SlaveComError = 118,        // Błąd stacji podrzędnej: 0-normalny, 1-utrata połączenia, 2-niezgodność stanu, 3-nieskonfigurowana, 4-błąd konfiguracji, 5-błąd inicjalizacji, 6-błąd inicjalizacji komunikacji e-mail
119    CmdPointError = 119,        // Błąd punktu instrukcji
120    IOError = 120,              // Błąd I/O
121    GripperError = 121,         // Błąd chwytaka
122    FileError = 122,            // Błąd pliku
123    ParaError = 123,            // Błąd parametru
124    ExaxisOutLimitError = 124,  // Błąd przekroczenia miękkiego limitu zewnętrznej osi
125    DriverComError = 125,       // Błąd komunikacji z napędem (6 osi)
126    DriverError = 126,          // Numer osi błędu komunikacji napędu
127    OutSoftLimitError = 127,    // Błąd przekroczenia miękkiego limitu
128    AxleGenComData = 128,       // Dane zwrotne transmisji transparentnej końcówki robota
129    SocketConnTimeout = 129,    // Przekroczenie limitu czasu połączenia socket, bit0-bit4 odpowiadają socketID 1-4
130    SocketReadTimeout = 130,    // Przekroczenie limitu czasu odczytu socket, bit0-bit4 odpowiadają socketID 1-4
131    TsWebStateComErr = 131,     // web - błąd komunikacji momentu: 0-normalny, 1-błąd
132    ExaxisCoordID = 132         // Numer układu współrzędnych osi rozszerzonej
133};