2. Descrizione della Struttura Dati

2.1. Tipo di Valore Restituito dalla Chiamata dell’Interfaccia

1typedef  int errno_t;

2.2. Tipo di Dati della Posizione Articolare

1/**
2* @brief  Tipo di dati della posizione articolare
3*/
4typedef  struct
5{
6    double jPos[6];   /* Posizioni delle sei articolazioni, unità deg */
7}JointPos;

2.3. Tipo di Dati della Posizione nello Spazio Cartesiano

1/**
2* @brief  Tipo di dati della posizione nello spazio cartesiano
3*/
4typedef struct
5{
6    double x;    /* Coordinata dell'asse x, unità mm  */
7    double y;    /* Coordinata dell'asse y, unità mm  */
8    double z;    /* Coordinata dell'asse z, unità mm  */
9} DescTran;

2.4. Tipo di Dati dell’Orientamento in Angoli di Eulero

1/**
2* @brief  Tipo di dati dell'orientamento in angoli di Eulero
3*/
4typedef struct
5{
6    double rx;   /* Angolo di rotazione attorno all'asse fisso X, unità: deg  */
7    double ry;   /* Angolo di rotazione attorno all'asse fisso Y, unità: deg  */
8    double rz;   /* Angolo di rotazione attorno all'asse fisso Z, unità: deg  */
9} Rpy;

2.5. Tipo di Dati della Posa nello Spazio Cartesiano

1/**
2*@brief  Tipo di posa nello spazio cartesiano
3*/
4typedef struct
5{
6    DescTran tran;      /* Posizione nello spazio cartesiano  */
7    Rpy rpy;            /* Orientamento nello spazio cartesiano  */
8} DescPose;

2.6. Tipo di Dati della Posizione dell’Asse Esteso

1/**
2* @brief  Tipo di dati della posizione dell'asse esteso
3*/
4typedef  struct
5{
6    double ePos[4];   /* Posizioni dei quattro assi estesi, unità mm */
7}ExaxisPos;

2.7. Tipo di Dati del Sensore di Coppia/Forza

 1/**
 2* @brief  Componenti di forza e momento del sensore di forza
 3*/
 4typedef struct
 5{
 6    double fx;  /* Componente di forza lungo l'asse x, unità N  */
 7    double fy;  /* Componente di forza lungo l'asse y, unità N  */
 8    double fz;  /* Componente di forza lungo l'asse z, unità N  */
 9    double tx;  /* Componente di momento attorno all'asse x, unità Nm */
10    double ty;  /* Componente di momento attorno all'asse y, unità Nm */
11    double tz;  /* Componente di momento attorno all'asse z, unità Nm */
12} ForceTorque;

2.8. Tipo di Dati dei Parametri a Spirale

 1/**
 2* @brief  Tipo di dati dei parametri a spirale
 3*/
 4typedef  struct
 5{
 6    int    circle_num;           /* Numero di giri della spirale  */
 7    float  circle_angle;         /* Angolo di inclinazione della spirale  */
 8    float  rad_init;             /* Raggio iniziale della spirale, unità mm  */
 9    float  rad_add;              /* Incremento del raggio  */
10    float  rotaxis_add;          /* Incremento della direzione dell'asse di rotazione  */
11    int rot_direction;   /* Direzione di rotazione, 0-orario, 1-antiorario  */
12    int velAccMode;      /* Modalità parametri velocità/accelerazione: 0-velocità angolare costante; 1-velocità lineare costante */
13}SpiralParam;

2.9. Pacchetto di feedback dello stato del controller

Cambiato nella versione C++SDK-v2.1.4.0.

  1/**
  2 * @brief  Pacchetto di feedback dello stato del controller
  3 */
  4typedef struct _ROBOT_STATE_PKG
  5{
  6  uint16_t frame_head;   // Intestazione del frame, convenuto come 0x5A5A
  7  uint8_t frame_cnt;     // Conteggio del frame, conteggio ciclico 0-255
  8  uint16_t data_len;     // Lunghezza del contenuto dei dati
  9  uint8_t program_state;   // Stato di esecuzione del programma, 1-stop; 2-esecuzione; 3-pausa;
 10  uint8_t robot_state;    // Stato di movimento del robot, 1-stop; 2-esecuzione; 3-pausa; 4-transcina
 11  int   main_code;     // Codice guasto principale
 12  int   sub_code;      // Codice guasto secondario
 13  uint8_t robot_mode;    // Modalità robot, 1-modalità manuale; 0-modalità automatica;
 14  double  jt_cur_pos[6];   // Posizione attuale dei giunti per 6 assi, unità deg
 15  double  tl_cur_pos[6];   // Posizione attuale dell'utensile (TCP)
 16        // tl_cur_pos[0], posizione lungo l'asse x, unità mm,
 17        // tl_cur_pos[1], posizione lungo l'asse y, unità mm,
 18        // tl_cur_pos[2], posizione lungo l'asse z, unità mm,
 19        // tl_cur_pos[3], angolo di rotazione attorno all'asse X fisso, unità deg
 20        // tl_cur_pos[4], angolo di rotazione attorno all'asse Y fisso, unità deg
 21        // tl_cur_pos[5], angolo di rotazione attorno all'asse Z fisso, unità deg
 22  double  flange_cur_pos[6]; // Posizione attuale della flangia finale
 23        // flange_cur_pos[0], posizione lungo l'asse x, unità mm,
 24        // flange_cur_pos[1], posizione lungo l'asse y, unità mm,
 25        // flange_cur_pos[2], posizione lungo l'asse z, unità mm,
 26        // flange_cur_pos[3], angolo di rotazione attorno all'asse X fisso, unità deg
 27        // flange_cur_pos[4], angolo di rotazione attorno all'asse Y fisso, unità deg
 28        // flange_cur_pos[5], angolo di rotazione attorno all'asse Z fisso, unità deg
 29  double  actual_qd[6];    // Velocità attuale dei 6 giunti, unità deg/s
 30  double  actual_qdd[6];    // Accelerazione attuale dei 6 giunti, unità deg/s^2
 31  double  target_TCP_CmpSpeed[2];
 32        // target_TCP_CmpSpeed[0], Velocità di istruzione composita TCP (posizione), unità mm/s
 33        // target_TCP_CmpSpeed[1], Velocità di istruzione composita TCP (assetto), unità deg/s */
 34  double  target_TCP_Speed[6];  // Velocità di istruzione TCP
 35          // target_TCP_Speed[0], velocità lungo l'asse x, unità mm/s,
 36          // target_TCP_Speed[1], velocità lungo l'asse y, unità mm/s,
 37          // target_TCP_Speed[2], velocità lungo l'asse z, unità mm/s,
 38          // target_TCP_Speed[3], velocità angolare attorno all'asse X fisso, unità deg/s
 39          // target_TCP_Speed[4], velocità angolare attorno all'asse Y fisso, unità deg/s
 40          // target_TCP_Speed[5], velocità angolare attorno all'asse Z fisso, unità deg/s */
 41  double  actual_TCP_CmpSpeed[2];
 42          // actual_TCP_CmpSpeed[0], Velocità effettiva composita TCP (posizione), unità mm/s
 43          // actual_TCP_CmpSpeed[1], Velocità effettiva composita TCP (assetto), unità deg/s */
 44  double  actual_TCP_Speed[6];  // Velocità effettiva TCP
 45          // actual_TCP_Speed[0], velocità lungo l'asse x, unità mm/s,
 46          // actual_TCP_Speed[1], velocità lungo l'asse y, unità mm/s,
 47          // actual_TCP_Speed[2], velocità lungo l'asse z, unità mm/s,
 48          // actual_TCP_Speed[3], velocità angolare attorno all'asse X fisso, unità deg/s
 49          // actual_TCP_Speed[4], velocità angolare attorno all'asse Y fisso, unità deg/s
 50          // actual_TCP_Speed[5], velocità angolare attorno all'asse Z fisso, unità deg/s
 51  double  jt_cur_tor[6];    // Coppia attuale dei 6 giunti, unità N·m
 52  int   tool;         // Numero del sistema di coordinate utensile applicato
 53  int   user;         // Numero del sistema di coordinate pezzo applicato
 54  uint8_t cl_dgt_output_h;   // Uscita IO digitale della scatola di controllo 15-8
 55  uint8_t cl_dgt_output_l;   // Uscita IO digitale della scatola di controllo 7-0
 56  uint8_t tl_dgt_output_l;   // Uscita IO digitale dell'utensile 7-0, solo bit0-bit1 validi
 57  uint8_t cl_dgt_input_h;    // Ingresso IO digitale della scatola di controllo 15-8
 58  uint8_t cl_dgt_input_l;    // Ingresso IO digitale della scatola di controllo 7-0
 59  uint8_t tl_dgt_input_l;    // Ingresso IO digitale dell'utensile 7-0, solo bit0-bit1 validi
 60  uint16_t cl_analog_input[2]; // cl_analog_input[0], Ingresso analogico della scatola di controllo 0
 61                // cl_analog_input[1], Ingresso analogico della scatola di controllo 1
 62  uint16_t tl_anglog_input;   // Ingresso analogico dell'utensile
 63  double  ft_sensor_raw_data[6]; // Dati grezzi del sensore di forza
 64          // ft_sensor_raw_data[0], forza lungo l'asse x, unità N
 65          // ft_sensor_raw_data[1], forza lungo l'asse y, unità N
 66          // ft_sensor_raw_data[2], forza lungo l'asse z, unità N
 67          // ft_sensor_raw_data[3], coppia attorno all'asse x, unità Nm
 68          // ft_sensor_raw_data[4], coppia attorno all'asse y, unità Nm
 69          // ft_sensor_raw_data[5], coppia attorno all'asse z, unità Nm
 70  double  ft_sensor_data[6];    // Dati del sensore di forza
 71          // ft_sensor_data[0], forza lungo l'asse x, unità N
 72          // ft_sensor_data[1], forza lungo l'asse y, unità N
 73          // ft_sensor_data[2], forza lungo l'asse z, unità N
 74          // ft_sensor_data[3], coppia attorno all'asse x, unità Nm
 75          // ft_sensor_data[4], coppia attorno all'asse y, unità Nm
 76          // ft_sensor_data[5], coppia attorno all'asse z, unità Nm
 77  uint8_t ft_sensor_active;   // Stato di attivazione del sensore di forza, 0-reset, 1-attivo
 78  uint8_t EmergencyStop;    // Flag di arresto di emergenza, 0-arresto di emergenza non premuto, 1-arresto di emergenza premuto
 79  int   motion_done;     // Segnale di movimento completato, 1-completato, 0-non completato
 80  uint8_t gripper_motiondone; // Segnale di completamento movimento pinza, 1-completato, 0-non completato
 81  int   mc_queue_len;     // Lunghezza della coda delle istruzioni di movimento
 82  uint8_t collisionState;    // Rilevamento collisione, 1-collisione, 0-nessuna collisione
 83  int   trajectory_pnum;   // Numero del punto di traiettoria
 84  uint8_t safety_stop0_state; // Segnale di stop di sicurezza SI0
 85  uint8_t safety_stop1_state; // Segnale di stop di sicurezza SI1
 86  uint8_t gripper_fault_id;   // ID pinza errata
 87  uint16_t gripper_fault;    // Guasto pinza
 88  uint16_t gripper_active;    // Stato di attivazione pinza
 89  uint8_t gripper_position;   // Posizione pinza
 90  int8_t  gripper_speed;    // Velocità pinza
 91  int8_t  gripper_current;   // Corrente pinza
 92  int   gripper_temp;     // Temperatura pinza
 93  int   gripper_voltage;   // Tensione pinza
 94  robot_aux_state aux_state;   // Stato asse estensione 485
 95  EXT_AXIS_STATUS extAxisStatus[4]; // Stato asse estensione UDP
 96  uint16_t extDIState[8];     // Ingresso DI esteso
 97  uint16_t extDOState[8];     // Uscita DO estesa
 98  uint16_t extAIState[4];     // Ingresso AI esteso
 99  uint16_t extAOState[4];     // Uscita AO estesa
100  int rbtEnableState;       // Stato abilitazione robot
101  double  jointDriverTorque[6];    // Coppia driver giunto robot
102  double  jointDriverTemperature[6];  // Temperatura driver giunto robot
103  RobotTime robotTime;       // Tempo del sistema robot
104  int softwareUpgradeState;    // Stato aggiornamento software robot
105  uint16_t endLuaErrCode;     // Stato esecuzione LUA finale
106  uint16_t cl_analog_output[2]; // Uscita analogica scatola di controllo
107  uint16_t tl_analog_output;    // Uscita analogica utensile
108  float gripperRotNum;       // Numero di giri corrente pinza rotante
109  uint8_t gripperRotSpeed;     // Percentuale velocità corrente pinza rotante
110  uint8_t gripperRotTorque;    // Percentuale coppia corrente pinza rotante
111  WELDING_BREAKOFF_STATE weldingBreakOffState; // Stato interruzione saldatura
112  double jt_tgt_tor[6];         // Coppia istruzione giunto
113  int smartToolState;          // Stato pulsante手柄 SmartTool
114  float wideVoltageCtrlBoxTemp;     // Temperatura scatola di controllo wide voltage
115  uint16_t wideVoltageCtrlBoxFanCurrent;// Corrente ventola scatola di controllo wide voltage (mA)
116  double toolCoord[6];    // Valori correnti sistema coordinate utensile; x,y,z,rx,ry,rz
117  double wobjCoord[6];    // Valori correnti sistema coordinate pezzo; x,y,z,rx,ry,rz
118  double extoolCoord[6];   // Valori correnti sistema coordinate utensile esterno; x,y,z,rx,ry,rz
119  double exAxisCoord[6];   // Valori correnti sistema coordinate asse estensione; x,y,z,rx,ry,rz
120  double load;        // Massa carico
121  double loadCog[3];     // Baricentro carico
122  double lastServoTarget[6]; // Posizione target ultimo ServoJ in coda
123  int servoJCmdNum;      // Conteggio istruzioni servoJ
124  double targetJointPos[6];  // Posizione istruzione 6 giunti, unità °
125  double targetJointVel[6];  // Velocità istruzione 6 giunti, unità °/s
126  double targetJointAcc[6];  // Accelerazione istruzione 6 giunti, unità °/s2
127  double targetJointCurrent[6]; // Corrente istruzione 6 giunti, unità A
128  double actualJointCurrent[6]; // Corrente attuale 6 giunti, unità A
129  double actualTCPForce[6];  // Coppia finale robot Nm; x,y,z,rx,ry,rz
130  double targetTCPPos[6];    // Posizione istruzione TCP robot mm; x,y,z,rx,ry,rz
131  uint8_t collisionLevel[6]; // Livello collisione robot
132  double speedScaleManual;   // Percentuale velocità globale modalità manuale
133  double speedScaleAuto;    // Percentuale velocità globale modalità automatica
134  int luaLineNum;       // Numero riga programma lua corrente in esecuzione
135  uint8_t abnomalStop;     // 0-nessuna anomalia; 1-anomalia presente
136  char currentLuaFileName[256]; // Nome programma lua corrente in esecuzione
137  uint8_t programTotalLine;   // Numero totale righe programma lua
138  uint8_t safetyBoxSingal[6]; // Stato pulsanti box sicurezza robot
139  double weldVoltage;     // Tensione saldatura V
140  double weldCurrent;     // Corrente saldatura
141  double weldTrackVel;    // Velocità tracciamento saldatura mm/s
142  uint8_t tpdException;    // Superamento limite caricamento traiettoria TPD, 0-non superato, 1-superato
143  uint8_t alarmRebootRobot;  // Avviso, 1-rilasciare pulsante arresto emergenza e riavviare scatola di controllo, 2-anomalia comunicazione giunto riavviare scatola di controllo
144  uint8_t modbusMasterConnect; // bit0-bit7 corrispondono a stato connessione master 0-7 ModbusTCP 0-non connesso 1-connesso
145  uint8_t modbusSlaveConnect;  // Stato connessione slave ModbusTCP 0-non connesso; 1-connesso
146  uint8_t btnBoxStopSignal;    // Segnale arresto emergenza pulsantiera, 0-arresto emergenza rilasciato; 1-arresto emergenza premuto
147  uint8_t dragAlarm;      // Avviso trascinamento, attualmente in modalità automatica, 0-nessun avviso, 1-avviso, 2-anomalia feedback posizione nessuna commutazione
148  uint8_t safetyDoorAlarm;    // Avviso porta di sicurezza; 0-porta sicurezza chiusa; 1-porta sicurezza aperta
149  uint8_t safetyPlaneAlarm;    // Avviso ingresso safety wall; 0-nessun ingresso safety wall; 1-ingresso safety wall
150  uint8_t motonAlarm;      // Avviso movimento
151  uint8_t interfaceAlarm;    // Avviso ingresso area interferenza
152  int udpCmdState;       // Stato connessione comunicazione UDP porta 20007
153  uint8_t weldReadyState;    // Stato preparazione saldatrice completato
154  uint8_t alarmCheckEmergStopBtn; // 0-normale; 1-anomalia comunicazione, verificare se pulsante arresto emergenza rilasciato
155  uint8_t tsTmCmdComError;    // 0-normale; 1-guasto comunicazione istruzione coppia
156  uint8_t tsTmStateComError;   // 0-normale; 1-guasto comunicazione stato coppia
157  int ctrlBoxError;       // Errore scatola di controllo
158  uint8_t safetyDataState;    // Flag stato dati sicurezza, 0-normale, 1-anomalo
159  uint8_t forceSensorErrState; // Guasto timeout connessione sensore forza; bit0-bit1 corrispondono a ID sensore forza ID1-ID2
160  uint8_t ctrlOpenLuaErrCode[4]; // Codici errore protocollo periferiche controller 4 (codice errore 500)
161  uint8_t strangePosFlag; // Flag posizione singolare attuale; 0-normale; 1-posizione singolare
162  uint8_t alarm;      // Avviso
163  uint8_t driverAlarm;    // Numero asse allarme driver
164  uint8_t aliveSlaveNumError; // Errore numero slave attivi, 0: normale; 1: errore numero
165  uint8_t slaveComError[8];   // Errore slave, 0: normale; 1: slave offline; 2: stato slave incoerente con valore impostato; 3: slave non configurato; 4: errore configurazione slave; 5: errore inizializzazione slave; 6: errore inizializzazione comunicazione mailbox slave
166  uint8_t cmdPointError;    // Errore punto istruzione
167  uint8_t IOError;      // Errore IO
168  uint8_t gripperError;    // Errore pinza
169  uint8_t fileError;     // Errore file
170  uint8_t paraError;     // Errore parametro
171  uint8_t exaxisOutLimitError;  // Errore superamento limite soft asse esterno
172  uint8_t driverComError[6];    // Guasto comunicazione con driver
173  uint8_t driverError;      // Numero asse guasto comunicazione driver
174  uint8_t outSoftLimitError;   // Guasto superamento limite soft
175  char axleGenComData[130];    // Dati feedback trasmissione trasparente finale robot
176  uint8_t socketConnTimeout;   // Timeout connessione socket, bit0-bit4: socketID 1-4
177  uint8_t socketReadTimeout;   // Timeout lettura socket, bit0-bit4: socketID 1-4
178  uint8_t tsWebStateComErr;   // Guasto comunicazione web-coppia; 0-normale; 1-guasto
179  uint8_t exaxisCoordID;     //ID del sistema di coordinate dell'asse esteso
180  uint16_t check_sum;     // Checksum
181}ROBOT_STATE_PKG;

2.10. Tipo Enumerato per la Configurazione del Feedback di Stato del Robott

  1enum class RobotState
  2{
  3    ProgramState = 3,           // Stato di esecuzione del programma, 1-arrestato; 2-in esecuzione; 3-in pausa
  4    RobotState = 4,             // Stato di movimento del robot, 1-arrestato; 2-in movimento; 3-in pausa; 4-trascinamento
  5    MainCode = 5,               // Codice guasto principale
  6    SubCode = 6,                // Codice guasto secondario
  7    RobotMode = 7,              // Modalità robot, 1-manuale; 0-automatica
  8    JointCurPos = 8,            // Posizioni articolari correnti di 6 assi, unità deg
  9    ToolCurPos = 9,             // Posizione corrente dell'utensile: [0] lungo x (mm), [1] lungo y (mm), [2] lungo z (mm), [3] rotazione attorno X fisso (deg), [4] attorno Y fisso (deg), [5] attorno Z fisso (deg)
 10    FlangeCurPos = 10,          // Posizione corrente della flangia terminale: [0] lungo x (mm), [1] lungo y (mm), [2] lungo z (mm), [3] rotazione attorno X fisso (deg), [4] attorno Y fisso (deg), [5] attorno Z fisso (deg)
 11    ActualJointVel = 11,        // Velocità correnti di 6 giunti, unità deg/s
 12    ActualJointAcc = 12,        // Accelerazioni correnti di 6 giunti, unità deg/s^2
 13    TargetTCPCmpSpeed = 13,     // Velocità di comando composita TCP: [0] posizione (mm/s), [1] orientamento (deg/s)
 14    TargetTCPSpeed = 14,        // Velocità di comando TCP: [0] lungo x (mm/s), [1] lungo y (mm/s), [2] lungo z (mm/s), [3] velocità angolare attorno X (deg/s), [4] attorno Y (deg/s), [5] attorno Z (deg/s)
 15    ActualTCPCmpSpeed = 15,     // Velocità effettiva composita TCP: [0] posizione (mm/s), [1] orientamento (deg/s)
 16    ActualTCPSpeed = 16,        // Velocità effettiva TCP: [0] lungo x (mm/s), [1] lungo y (mm/s), [2] lungo z (mm/s), [3] velocità angolare attorno X (deg/s), [4] attorno Y (deg/s), [5] attorno Z (deg/s)
 17    ActualJointTorque = 17,     // Coppie correnti di 6 assi, unità N·m
 18    Tool = 18,                  // Numero del sistema di coordinate utensile applicato
 19    User = 19,                  // Numero del sistema di coordinate pezzo applicato
 20    ClDgtOutputH = 20,          // Uscita IO digitale della scatola di controllo 15-8
 21    ClDgtOutputL = 21,          // Uscita IO digitale della scatola di controllo 7-0
 22    TlDgtOutputL = 22,          // Uscita IO digitale dell'utensile 7-0, solo bit0-bit1 validi
 23    ClDgtInputH = 23,           // Ingresso IO digitale della scatola di controllo 15-8
 24    ClDgtInputL = 24,           // Ingresso IO digitale della scatola di controllo 7-0
 25    TlDgtInputL = 25,           // Ingresso IO digitale dell'utensile 7-0, solo bit0-bit1 validi
 26    ClAnalogInput = 26,         // Ingresso analogico della scatola di controllo: [0] canale 0, [1] canale 1
 27    TlAnalogInput = 27,         // Ingresso analogico dell'utensile
 28    FtSensorRawData = 28,       // Dati grezzi del sensore di forza/coppia: [0] forza lungo x (N), [1] lungo y (N), [2] lungo z (N), [3] coppia attorno x (Nm), [4] attorno y (Nm), [5] attorno z (Nm)
 29    FtSensorData = 29,          // Dati del sensore di forza/coppia (elaborati): [0] forza lungo x (N), [1] lungo y (N), [2] lungo z (N), [3] coppia attorno x (Nm), [4] attorno y (Nm), [5] attorno z (Nm)
 30    FtSensorActive = 30,        // Stato di attivazione del sensore di forza/coppia, 0-reset, 1-attivato
 31    EmergencyStop = 31,         // Flag di arresto di emergenza, 0-non premuto, 1-premuto
 32    MotionDone = 32,            // Segnale di movimento completato, 1-completato, 0-non completato
 33    GripperMotiondone = 33,     // Segnale di movimento della pinza completato, 1-completato, 0-non completato
 34    McQueueLen = 34,            // Lunghezza della coda dei comandi di movimento
 35    CollisionState = 35,        // Rilevamento collisione, 1-collisione, 0-nessuna collisione
 36    TrajectoryPnum = 36,        // Numero del punto di traiettoria
 37    SafetyStop0State = 37,      // Segnale di arresto di sicurezza SI0
 38    SafetyStop1State = 38,      // Segnale di arresto di sicurezza SI1
 39    GripperFaultId = 39,        // Numero pinza guasta
 40    GripperFault = 40,          // Guasto pinza
 41    GripperActive = 41,         // Stato di attivazione della pinza
 42    GripperPosition = 42,       // Posizione della pinza
 43    GripperSpeed = 43,          // Velocità della pinza
 44    GripperCurrent = 44,        // Corrente della pinza
 45    GripperTemp = 45,           // Temperatura della pinza
 46    GripperVoltage = 46,        // Tensione della pinza
 47    AuxState = 47,              // Stato assi di estensione 485
 48    ExtAxisStatus = 48,         // Stato assi di estensione UDP (4 assi)
 49    ExtDIState = 49,            // Ingresso DI esteso (8)
 50    ExtDOState = 50,            // Uscita DO estesa (8)
 51    ExtAIState = 51,            // Ingresso AI esteso (4)
 52    ExtAOState = 52,            // Uscita AO estesa (4)
 53    RbtEnableState = 53,        // Stato di abilitazione del robot
 54    JointDriverTorque = 54,     // Coppia del driver dei giunti del robot (6 giunti)
 55    JointDriverTemperature = 55,// Temperatura del driver dei giunti del robot (6 giunti)
 56    RobotTime = 56,             // Tempo del sistema robot
 57    SoftwareUpgradeState = 57,  // Stato di aggiornamento del software del robot
 58    EndLuaErrCode = 58,         // Stato di esecuzione Lua dell'estremità
 59    ClAnalogOutput = 59,        // Uscita analogica della scatola di controllo (2)
 60    TlAnalogOutput = 60,        // Uscita analogica dell'utensile
 61    GripperRotNum = 61,         // Numero di giri corrente della pinza rotante
 62    GripperRotSpeed = 62,       // Percentuale di velocità di rotazione corrente della pinza rotante
 63    GripperRotTorque = 63,      // Percentuale di coppia di rotazione corrente della pinza rotante
 64    WeldingBreakOffState = 64,  // Stato di interruzione saldatura
 65    TargetJointTorque = 65,     // Coppia di comando del giunto (6 giunti)
 66    SmartToolState = 66,        // Stato del pulsante della maniglia SmartTool
 67    WideVoltageCtrlBoxTemp = 67,// Temperatura della scatola di controllo a vasta tensione
 68    WideVoltageCtrlBoxFanCurrent = 68, // Corrente della ventola della scatola di controllo a vasta tensione (mA)
 69    ToolCoord = 69,             // Valori correnti del sistema di coordinate utensile: x,y,z,rx,ry,rz
 70    WobjCoord = 70,             // Valori correnti del sistema di coordinate pezzo: x,y,z,rx,ry,rz
 71    ExtoolCoord = 71,           // Valori correnti del sistema di coordinate utensile esterno: x,y,z,rx,ry,rz
 72    ExAxisCoord = 72,           // Valori correnti del sistema di coordinate assi di estensione: x,y,z,rx,ry,rz
 73    Load = 73,                  // Massa del carico
 74    LoadCog = 74,               // Centro di gravità del carico: x,y,z
 75    LastServoTarget = 75,       // Ultima posizione target ServoJ nella coda (6 giunti)
 76    ServoJCmdNum = 76,          // Conteggio comandi ServoJ
 77    TargetJointPos = 77,        // Posizione di comando di 6 giunti, unità °
 78    TargetJointVel = 78,        // Velocità di comando di 6 giunti, unità °/s
 79    TargetJointAcc = 79,        // Accelerazione di comando di 6 giunti, unità °/s²
 80    TargetJointCurrent = 80,    // Corrente di comando di 6 giunti, unità A
 81    ActualJointCurrent = 81,    // Corrente corrente di 6 giunti, unità A
 82    ActualTCPForce = 82,        // Coppia dell'end-effector del robot: x,y,z,rx,ry,rz, unità Nm
 83    TargetTCPPos = 83,          // Posizione di comando TCP del robot: x,y,z,rx,ry,rz, unità mm
 84    CollisionLevel = 84,        // Livello di collisione del robot (6)
 85    SpeedScaleManual = 85,      // Percentuale di velocità globale in modalità manuale
 86    SpeedScaleAuto = 86,        // Percentuale di velocità globale in modalità automatica
 87    LuaLineNum = 87,            // Numero di riga corrente del programma Lua in esecuzione
 88    AbnomalStop = 88,           // 0-nessuna anomalia; 1-anomalia presente
 89    CurrentLuaFileName = 89,    // Nome del programma Lua attualmente in esecuzione
 90    ProgramTotalLine = 90,      // Numero totale di righe del programma Lua
 91    SafetyBoxSingal = 91,       // Stato dei pulsanti della scatola pulsanti del robot (6)
 92    WeldVoltage = 92,           // Tensione di saldatura V
 93    WeldCurrent = 93,           // Corrente di saldatura
 94    WeldTrackVel = 94,          // Velocità di inseguimento del cordone di saldatura mm/s
 95    TpdException = 95,          // Conteggio di caricamento traiettoria TPD superato, 0-non superato, 1-superato
 96    AlarmRebootRobot = 96,      // Avviso: 1-rilasciare l'arresto di emergenza e riavviare, 2-anomalia comunicazione giunto, riavviare
 97    ModbusMasterConnect = 97,   // bit0-7 corrispondono allo stato di connessione dei master ModbusTCP 0-7, 0-non connesso, 1-connesso
 98    ModbusSlaveConnect = 98,    // Stato di connessione slave ModbusTCP, 0-non connesso, 1-connesso
 99    BtnBoxStopSignal = 99,      // Segnale di arresto di emergenza della scatola pulsanti, 0-rilasciato, 1-premuto
100    DragAlarm = 100,            // Avviso di trascinamento: 0-nessun avviso, 1-avviso, 2-anomalia feedback posizione, nessuna commutazione
101    SafetyDoorAlarm = 101,      // Avviso porta di sicurezza: 0-chiusa, 1-aperta
102    SafetyPlaneAlarm = 102,     // Avviso parete di sicurezza: 0-non entrata, 1-entrata
103    MotonAlarm = 103,           // Avviso di movimento
104    InterfaceAlarm = 104,       // Avviso di ingresso nell'area di interferenza
105    UdpCmdState = 105,          // Stato di connessione di comunicazione UDP della porta 20007
106    WeldReadyState = 106,       // Stato di prontezza della saldatrice
107    AlarmCheckEmergStopBtn = 107, // 0-normale; 1-anomalia di comunicazione, verificare pulsante arresto emergenza
108    TsTmCmdComError = 108,      // 0-normale; 1-guasto comunicazione comando coppia
109    TsTmStateComError = 109,    // 0-normale; 1-guasto comunicazione stato coppia
110    CtrlBoxError = 110,         // Errore della scatola di controllo
111    SafetyDataState = 111,      // Stato dei dati di sicurezza, 0-normale, 1-anomalo
112    ForceSensorErrState = 112,  // Timeout connessione sensore di forza, bit0-bit1 corrispondono a ID1-ID2
113    CtrlOpenLuaErrCode = 113,   // Codici di errore del protocollo aperto del controller periferico (4 errori codice 500)
114    StrangePosFlag = 114,       // Flag di posa singolare: 0-normale, 1-posa singolare
115    Alarm = 115,                // Avviso
116    DriverAlarm = 116,          // Numero asse allarme driver
117    AliveSlaveNumError = 117,   // Errore conteggio slave attivi: 0-normale, 1-errore conteggio
118    SlaveComError = 118,        // Errore slave: 0-normale, 1-offline, 2-stato incoerente, 3-non configurato, 4-errore configurazione, 5-errore inizializzazione, 6-errore inizializzazione comunicazione mailbox
119    CmdPointError = 119,        // Errore punto di comando
120    IOError = 120,              // Errore IO
121    GripperError = 121,         // Errore pinza
122    FileError = 122,            // Errore file
123    ParaError = 123,            // Errore parametro
124    ExaxisOutLimitError = 124,  // Errore superamento limite morbido asse esterno
125    DriverComError = 125,       // Guasto comunicazione driver (6 assi)
126    DriverError = 126,          // Numero asse con guasto comunicazione driver
127    OutSoftLimitError = 127,    // Guasto superamento limite morbido
128    AxleGenComData = 128,       // Dati di feedback di trasmissione trasparente dell'end-effector del robot
129    SocketConnTimeout = 129,    // Timeout connessione socket, bit0-bit4 corrispondono a socketID 1-4
130    SocketReadTimeout = 130,    // Timeout lettura socket, bit0-bit4 corrispondono a socketID 1-4
131    TsWebStateComErr = 131,      // Guasto comunicazione web-coppia: 0-normale, 1-guasto
132    ExaxisCoordID = 132          //ID del sistema di coordinate dell'asse esteso
133};