2. Spiegazione della Struttura Dati
2.1. Tipo di Dati Posizione Giunti
1/**
2* @brief Tipo di dati posizione giunti
3*/
4public class JointPos
5{
6 double J1;
7 double J2;
8 double J3;
9 double J4;
10 double J5;
11 double J6;
12
13 public JointPos(double j1, double j2, double j3, double j4, double j5, double j6)
14 {
15 J1 = j1;
16 J2 = j2;
17 J3 = j3;
18 J4 = j4;
19 J5 = j5;
20 J6 = j6;
21 }
22
23 public JointPos()
24 {
25
26 }
27}
2.2. Tipo di Dati Posizione Spazio Cartesiano
1/**
2* @brief Tipo di dati posizione spazio cartesiano
3*/
4public class DescTran
5{
6 public double x = 0.0; /* Coordinata asse x, unità mm */
7 public double y = 0.0; /* Coordinata asse y, unità mm */
8 public double z = 0.0; /* Coordinata asse z, unità mm */
9 public DescTran(double posX, double posY, double posZ)
10 {
11 x = posX;
12 y = posY;
13 z = posZ;
14 }
15
16 public DescTran()
17 {
18
19 }
20
21}
2.3. Tipo di Dati Orientamento Angoli di Eulero
1/**
2* @brief Tipo di dati orientamento angoli di Eulero
3*/
4public class Rpy
5{
6 public double rx = 0.0; /* Angolo di rotazione attorno all'asse X fisso, unità: deg */
7 public double ry = 0.0; /* Angolo di rotazione attorno all'asse Y fisso, unità: deg */
8 public double rz = 0.0; /* Angolo di rotazione attorno all'asse Z fisso, unità: deg */
9 public Rpy(double rotateX, double rotateY, double rotateZ)
10 {
11 rx = rotateX;
12 ry = rotateY;
13 rz = rotateZ;
14 }
15}
2.4. Tipo di Dati Posa Spazio Cartesiano
1/**
2* @brief Tipo posa spazio cartesiano
3*/
4public class DescPose
5{
6 public DescTran tran = new DescTran(0.0, 0.0, 0.0); /* Posizione spazio cartesiano */
7 public Rpy rpy = new Rpy(0.0, 0.0, 0.0); /* Orientamento spazio cartesiano */
8
9 public DescPose()
10 {
11
12 }
13
14 public DescPose(DescTran descTran, Rpy rotateRpy)
15 {
16 tran = descTran;
17 rpy = rotateRpy;
18 }
19
20 public DescPose(double tranX, double tranY, double tranZ, double rX, double ry, double rz)
21 {
22 tran.x = tranX;
23 tran.y = tranY;
24 tran.z = tranZ;
25 rpy.rx = rX;
26 rpy.ry = ry;
27 rpy.rz = rz;
28 }
29
30 public String toString()
31 {
32 return String.valueOf(tran.x) + "," + String.valueOf(tran.y) + "," +String.valueOf(tran.z) + "," +String.valueOf(rpy.rx) + "," +String.valueOf(rpy.ry) + "," +String.valueOf(rpy.rz);
33 }
34}
2.5. Tipo di Dati Posizione Assi Estesi
1/**
2* @brief Tipo di dati posizione assi estesi
3*/
4public class ExaxisPos
5{
6 public double axis1 = 0.0;
7 public double axis2 = 0.0;
8 public double axis3 = 0.0;
9 public double axis4 = 0.0;
10
11 public ExaxisPos()
12 {
13
14 }
15 public ExaxisPos(double[] exaxisPos)
16 {
17 axis1 = exaxisPos[0];
18 axis2 = exaxisPos[1];
19 axis3 = exaxisPos[2];
20 axis4 = exaxisPos[3];
21 }
22
23 public ExaxisPos(double pos1, double pos2, double pos3, double pos4)
24 {
25 axis1 = pos1;
26 axis2 = pos2;
27 axis3 = pos3;
28 axis4 = pos4;
29 }
30}
2.6. Tipo di Dati Sensore di Coppia/Forza
1/**
2* @brief Componenti forza e coppia del sensore di forza
3*/
4public class ForceTorque
5{
6 public double fx; /* Componente forza lungo l'asse x, unità N */
7 public double fy; /* Componente forza lungo l'asse y, unità N */
8 public double fz; /* Componente forza lungo l'asse z, unità N */
9 public double tx; /* Componente coppia attorno all'asse x, unità Nm */
10 public double ty; /* Componente coppia attorno all'asse y, unità Nm */
11 public double tz; /* Componente coppia attorno all'asse z, unità Nm */
12 public ForceTorque(double fX, double fY, double fZ, double tX, double tY, double tZ)
13 {
14 fx = fX;
15 fy = fY;
16 fz = fZ;
17 tx = tX;
18 ty = tY;
19 tz = tZ;
20 }
21}
2.7. Tipo di Dati Parametri Spirale
1/**
2* @brief Tipo di dati parametri spirale
3*/
4public class SpiralParam
5{
6 public int circle_num; /* Numero di giri della spirale */
7 public double circle_angle; /* Angolo di inclinazione della spirale */
8 public double rad_init; /* Raggio iniziale della spirale, unità mm */
9 public double rad_add; /* Incremento del raggio */
10 public double rotaxis_add; /* Incremento direzione asse di rotazione */
11 public int rot_direction; /* Direzione di rotazione, 0-orario, 1-antiorario */
12 public int velAccMode; /* Modalità parametri velocità/accelerazione: 0-velocità angolare costante; 1-velocità lineare costante */
13 public SpiralParam(int circleNum, double circleAngle, double radInit, double radAdd, double rotaxisAdd, int rotDirection,int vel_AccMode)
14 {
15 circle_num = circleNum;
16 circle_angle = circleAngle;
17 rad_init = radInit;
18 rad_add = radAdd;
19 rotaxis_add = rotaxisAdd;
20 rot_direction = rotDirection;
21 velAccMode=vel_AccMode;
22 }
23}
2.8. Tipo di Stato Assi Estesi
1/**
2* @brief Tipo di stato assi estesi
3*/
4public class EXT_AXIS_STATUS
5{
6 public double pos = 0; //Posizione asse esteso
7 public double vel = 0; //Velocità asse esteso
8 public int errorCode = 0; //Codice errore asse esteso
9 public int ready = 0; //Servo pronto
10 public int inPos = 0; //Servo in posizione
11 public int alarm = 0; //Allarme servo
12 public int flerr = 0; //Errore di inseguimento
13 public int nlimit = 0; //Al limite negativo
14 public int pLimit = 0; //Al limite positivo
15 public int mdbsOffLine = 0; //Driver bus 485 offline
16 public int mdbsTimeout = 0; //Timeout comunicazione 485 scheda controllo/box controllo
17 public int homingStatus = 0; //Stato homing asse esteso
18}
2.9. Tipo di Sensore
1/**
2* @brief Tipo di sensore
3*/
4public class DeviceConfig
5{
6 int company = 0; // Produttore
7 int device = 0; // Tipo/Numero dispositivo
8 int softwareVersion = 0; // Versione software
9 int bus = 0; // Posizione montaggio
10
11 public DeviceConfig()
12 {
13
14 }
15
16 public DeviceConfig(int company, int device, int softwareVersion, int bus)
17 {
18 this.company = company;
19 this.device = device;
20 this.softwareVersion = softwareVersion;
21 this.bus = bus;
22 }
23}
2.10. Configurazione Assi Estesi 485
1/**
2* @brief Configurazione assi estesi 485
3*/
4public class Axis485Param
5{
6 int servoCompany; // Produttore driver servo, 1-DynaTech
7 int servoModel; // Modello driver servo, 1-FD100-750C
8 int servoSoftVersion; // Versione software driver servo, 1-V1.0
9 int servoResolution; // Risoluzione encoder
10 double axisMechTransRatio; // Rapporto trasmissione meccanico
11
12 public Axis485Param(int company, int model, int softVersion, int resolution, double mechTransRatio)
13 {
14 servoCompany = company;
15 servoModel = model;
16 servoSoftVersion = softVersion;
17 servoResolution = resolution;
18 axisMechTransRatio = mechTransRatio;
19 }
20
21 public Axis485Param()
22 {
23
24 }
25}
2.11. Stato Controller Servo
1/**
2* @brief Stato controller servo
3*/
4public class ROBOT_AUX_STATE
5{
6 public int servoId = 0; //ID driver servo
7 public int servoErrCode = 0; //Codice errore driver servo
8 public int servoState = 0; //Stato driver servo
9 public double servoPos = 0; //Posizione corrente servo
10 public float servoVel = 0; //Velocità corrente servo
11 public float servoTorque = 0; //Coppia corrente servo 25
12}
2.12. Stato Interruzione Saldatura
1/**
2* @brief Stato interruzione saldatura
3*/
4public class WELDING_BREAKOFF_STATE
5{
6 public int breakOffState = 0; //Stato interruzione saldatura
7 public int weldArcState = 0; //Stato interruzione arco saldatura
8}
2.13. Parametri Comunicazione Assi Estesi UDP
1/**
2* @brief Parametri comunicazione assi estesi UDP
3*/
4public class UDP_EXT_AXIS_PARAM
5{
6 public String ip = "192.168.58.88";//Indirizzo IP
7 public int port = 2021; //Porta
8 public int period = 2; //Periodo comunicazione (ms, default 2, non modificare)
9 public int lossPkgTime = 50; //Tempo rilevamento perdita pacchetti (ms)
10 public int lossPkgNum = 2; //Numero perdite pacchetti
11 public int disconnectTime = 100; //Durata conferma disconnessione comunicazione
12 public int reconnectEnable = 0; //Abilita riconnessione automatica 0-disabilitato 1-abilitato
13 public int reconnectPeriod = 100; //Intervallo periodo riconnessione (ms)
14 public int reconnectNum = 3; //Numero tentativi riconnessione
15 public int selfConnect =0; //Connessione automatica dopo riavvio alimentazione; 0-non connettere; 1-connetti
16}
2.14. Tipo Struttura Feedback Stato Robot
1/**
2* @brief Tipo struttura di feedback dello stato del robot
3*/
4public class ROBOT_STATE_PKG {
5 public int frame_head; // Intestazione del frame
6 public int frame_cnt; // Conteggio frame
7 public int data_len; // Lunghezza dati
8 public int program_state; // Stato programma - 1-arrestato; 2-in esecuzione; 3-in pausa
9 public int robot_state; // Stato movimento robot - 1-arrestato; 2-in movimento; 3-in pausa; 4-trascinamento
10 public int main_code; // Codice guasto principale
11 public int sub_code; // Codice guasto secondario
12 public int robot_mode; // Modalità robot - 1-manuale; 0-automatica
13 public double[] jt_cur_pos = new double[6]; // Posizioni articolari correnti di 6 assi, unità deg
14 public double[] tl_cur_pos = new double[6]; // Posizione corrente utensile - [x,y,z,rx,ry,rz]
15 public double[] flange_cur_pos = new double[6]; // Posizione corrente flangia terminale - [x,y,z,rx,ry,rz]
16 public double[] actual_qd = new double[6]; // Velocità correnti di 6 giunti, unità deg/s
17 public double[] actual_qdd = new double[6]; // Accelerazioni correnti di 6 giunti, unità deg/s^2
18 public double[] target_TCP_CmpSpeed = new double[2]; // Velocità di comando composita TCP - [posizione mm/s, orientamento deg/s]
19 public double[] target_TCP_Speed = new double[6]; // Velocità di comando TCP - [vx,vy,vz,wx,wy,wz]
20 public double[] actual_TCP_CmpSpeed = new double[2]; // Velocità effettiva composita TCP - [posizione mm/s, orientamento deg/s]
21 public double[] actual_TCP_Speed = new double[6]; // Velocità effettiva TCP - [vx,vy,vz,wx,wy,wz]
22 public double[] jt_cur_tor = new double[6]; // Coppia articolare corrente
23 public int tool; // ID utensile
24 public int user; // ID pezzo
25 public int cl_dgt_output_h; // Byte alto uscita digitale armadio di controllo
26 public int cl_dgt_output_l; // Byte basso uscita digitale armadio di controllo
27 public int tl_dgt_output_l; // Byte basso uscita digitale utensile
28 public int cl_dgt_input_h; // Byte alto ingresso digitale armadio di controllo
29 public int cl_dgt_input_l; // Byte basso ingresso digitale armadio di controllo
30 public int tl_dgt_input_l; // Byte basso ingresso digitale utensile
31 public int[] cl_analog_input = new int[2]; // Ingresso analogico armadio di controllo
32 public int tl_anglog_input; // Ingresso analogico utensile
33 public double[] ft_sensor_raw_data = new double[6]; // Dati grezzi sensore di forza
34 public double[] ft_sensor_data = new double[6]; // Dati sensore di forza
35 public int ft_sensor_active; // Stato attivazione sensore di forza
36 public int EmergencyStop; // Stato arresto di emergenza
37 public int motion_done; // Movimento completato
38 public int gripper_motiondone; // Movimento pinza completato
39 public int mc_queue_len; // Lunghezza coda movimenti
40 public int collisionState; // Stato collisione
41 public int trajectory_pnum; // Numero sequenza punto traiettoria
42 public int safety_stop0_state; // Stato arresto di sicurezza 0
43 public int safety_stop1_state; // Stato arresto di sicurezza 1
44 public int gripper_fault_id; // ID guasto pinza
45 public int gripper_fault; // Guasto pinza
46 public int gripper_active; // Attivazione pinza
47 public int gripper_position; // Posizione pinza
48 public int gripper_speed; // Velocità pinza
49 public int gripper_current; // Corrente pinza
50 public int gripper_temp; // Temperatura pinza
51 public int gripper_voltage; // Tensione pinza
52 public AuxState aux_state = new AuxState(); // Stato assi ausiliari interni
53 public EXT_AXIS_STATUS[] extAxisStatus = new EXT_AXIS_STATUS[4]; // Array stato assi di estensione
54 public short[] extDIState = new short[8]; // I/O estesi
55 public short[] extDOState = new short[8]; // I/O estesi
56 public short[] extAIState = new short[4]; // I/O estesi
57 public short[] extAOState = new short[4]; // I/O estesi
58 public int rbtEnableState; // Stato abilitazione robot
59 public double[] jointDriverTorque = new double[6]; // Coppia driver giunti
60 public double[] jointDriverTemperature = new double[6]; // Temperatura driver giunti
61 public ROBOT_TIME robotTime = new ROBOT_TIME(); // Oggetto tempo robot
62 public int softwareUpgradeState; // Stato aggiornamento software
63 public int endLuaErrCode; // Codice errore Lua terminale
64 public int[] cl_analog_output = new int[2]; // Uscita analogica armadio di controllo
65 public int tl_analog_output; // Uscita analogica utensile
66 public float gripperRotNum; // Numero di giri pinza rotante
67 public int gripperRotSpeed; // Velocità pinza rotante
68 public int gripperRotTorque; // Coppia pinza rotante
69 public WELDING_BREAKOFF_STATE weldingBreakOffState = new WELDING_BREAKOFF_STATE(); // Stato interruzione saldatura
70 public double[] jt_tgt_tor = new double[6]; // Coppia articolare target
71 public int smartToolState; // Stato utensile intelligente
72 public float wideVoltageCtrlBoxTemp; // Temperatura armadio di controllo wide voltage
73 public int wideVoltageCtrlBoxFanCurrent; // Corrente ventola armadio di controllo wide voltage
74 public double[] toolCoord = new double[6]; // Sistema di coordinate utensile
75 public double[] wobjCoord = new double[6]; // Sistema di coordinate pezzo
76 public double[] extoolCoord = new double[6]; // Sistema di coordinate utensile esterno
77 public double[] exAxisCoord = new double[6]; // Sistema di coordinate assi di estensione
78 public double load; // Carico
79 public double[] loadCog = new double[3]; // Centro di gravità del carico
80 public double[] lastServoTarget = new double[6]; // Ultima posizione target servo J
81 public int servoJCmdNum; // Numero comandi servo J
82 public double[] targetJointPos = new double[6]; // Posizione articolare target
83 public double[] targetJointVel = new double[6]; // Velocità articolare target
84 public double[] targetJointAcc = new double[6]; // Accelerazione articolare target
85 public double[] targetJointCurrent = new double[6]; // Corrente articolare target
86 public double[] actualJointCurrent = new double[6]; // Corrente articolare effettiva
87 public double[] actualTCPForce = new double[6]; // Forza TCP effettiva
88 public double[] targetTCPPos = new double[6]; // Posizione TCP target
89 public int[] collisionLevel = new int[6]; // Livello collisione
90 public double speedScaleManual; // Scala velocità manuale
91 public double speedScaleAuto; // Scala velocità automatica
92 public int luaLineNum; // Numero riga Lua
93 public int abnomalStop; // Arresto anomalo
94 public String currentLuaFileName; // Nome file Lua corrente
95 public int programTotalLine; // Righe totali programma
96 public int[] safetyBoxSingal = new int[6]; // Segnale scatola di sicurezza
97 public double weldVoltage; // Tensione saldatura
98 public double weldCurrent; // Corrente saldatura
99 public double weldTrackVel; // Velocità tracciamento saldatura
100 public int tpdException; // Eccezione TPD
101 public int alarmRebootRobot; // Riavvio robot allarme
102 public int modbusMasterConnect; // Connessione master Modbus
103 public int modbusSlaveConnect; // Connessione slave Modbus
104 public int btnBoxStopSignal; // Segnale stop scatola pulsanti
105 public int dragAlarm; // Allarme trascinamento
106 public int safetyDoorAlarm; // Allarme porta sicurezza
107 public int safetyPlaneAlarm; // Allarme piano sicurezza
108 public int motonAlarm; // Allarme movimento
109 public int interfaceAlarm; // Allarme interferenza
110 public int udpCmdState; // Stato comando UDP
111 public int weldReadyState; // Stato pronto saldatura
112 public int alarmCheckEmergStopBtn; // Pulsante arresto emergenza controllo allarme
113 public int tsTmCmdComError; // Errore comunicazione comando
114 public int tsTmStateComError; // Errore comunicazione stato
115 public int ctrlBoxError; // Errore armadio di controllo
116 public int safetyDataState; // Stato dati sicurezza
117 public int forceSensorErrState; // Stato errore sensore di forza
118 public int[] ctrlOpenLuaErrCode = new int[4]; // Codice errore Lua open controllo
119 public int strangePosFlag; // Flag posizione singolare
120 public int alarm; // Allarme
121 public int driverAlarm; // Allarme driver
122 public int aliveSlaveNumError; // Errore numero slave attivi
123 public int[] slaveComError = new int[8]; // Errore comunicazione slave
124 public int cmdPointError; // Errore punto comando
125 public int IOError; // Errore IO
126 public int gripperError; // Errore pinza
127 public int fileError; // Errore file
128 public int paraError; // Errore parametro
129 public int exaxisOutLimitError; // Errore superamento limite morbido asse estensione
130 public int[] driverComError = new int[6]; // Errore comunicazione driver
131 public int driverError; // Errore driver
132 public int outSoftLimitError; // Errore superamento limite morbido
133 public byte[] axleGenComData = new byte[130]; // Dati comunicazione assi generali
134 public int check_sum; // Checksum
135 public int socketConnTimeout; // Timeout connessione socket
136 public int socketReadTimeout; // Timeout lettura socket
137 public int tsWebStateComErr; // Errore comunicazione stato TS Web
138 public int exaxisCoordID; // ID sistema coordinate asse esteso
139}
2.15. Classe Risultato Configurazione Feedback Stato Robot
1/**
2* Classe risultato configurazione feedback stato robot, contiene lista stati e periodo
3*/
4public static class StateConfigResult {
5 public final List<RobotState> stateList;
6 public final int period;
7}
2.16. Tipo Enumerato Configurazione Feedback Stato Robot
1/**
2* Tipo enumerato stato robot
3* Utilizzato per la configurazione del feedback di stato in tempo reale
4*/
5enum class RobotState
6{
7 ProgramState, // Stato esecuzione programma, 1-arrestato; 2-in esecuzione; 3-in pausa
8 RobotState, // Stato movimento robot, 1-arrestato; 2-in movimento; 3-in pausa; 4-traino
9 MainCode, // Codice guasto principale
10 SubCode, // Codice guasto secondario
11 RobotMode, // Modalità robot, 1-modalità manuale; 0-modalità automatica
12 JointCurPos, // Posizioni attuali giunti di 6 assi, unità deg
13 ToolCurPos, // Posizione attuale utensile: [0]posizione 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)
14 FlangeCurPos, // Posizione attuale 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)
15 ActualJointVel, // Velocità attuali 6 giunti, unità deg/s
16 ActualJointAcc, // Accelerazioni attuali 6 giunti, unità deg/s²
17 TargetTCPCmpSpeed, // Velocità composita comando TCP: [0]posizione(mm/s), [1]orientamento(deg/s)
18 TargetTCPSpeed, // Velocità 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)
19 ActualTCPCmpSpeed, // Velocità composita effettiva TCP: [0]posizione(mm/s), [1]orientamento(deg/s)
20 ActualTCPSpeed, // 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)
21 ActualJointTorque, // Coppie attuali 6 giunti, unità N·m
22 Tool, // Numero sistema coordinate utensile applicato
23 User, // Numero sistema coordinate pezzo applicato
24 ClDgtOutputH, // Uscita IO digitale scatola di controllo 15-8
25 ClDgtOutputL, // Uscita IO digitale scatola di controllo 7-0
26 TlDgtOutputL, // Uscita IO digitale utensile 7-0, solo bit0-bit1 validi
27 ClDgtInputH, // Ingresso IO digitale scatola di controllo 15-8
28 ClDgtInputL, // Ingresso IO digitale scatola di controllo 7-0
29 TlDgtInputL, // Ingresso IO digitale utensile 7-0, solo bit0-bit1 validi
30 ClAnalogInput, // Ingresso analogico scatola di controllo: [0]canale 0, [1]canale 1
31 TlAnalogInput, // Ingresso analogico utensile
32 FtSensorRawData, // Dati grezzi sensore coppia-forza: [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)
33 FtSensorData, // Dati sensore coppia-forza (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)
34 FtSensorActive, // Stato attivazione sensore coppia-forza, 0-reset, 1-attivo
35 EmergencyStop, // Flag arresto emergenza, 0-arresto emergenza non premuto, 1-arresto emergenza premuto
36 MotionDone, // Segnale movimento completato, 1-completato, 0-non completato
37 GripperMotiondone, // Segnale completamento movimento pinza, 1-completato, 0-non completato
38 McQueueLen, // Lunghezza coda comandi movimento
39 CollisionState, // Rilevamento collisione, 1-collisione, 0-nessuna collisione
40 TrajectoryPnum, // Numero punto traiettoria
41 SafetyStop0State, // Segnale arresto sicurezza SI0
42 SafetyStop1State, // Segnale arresto sicurezza SI1
43 GripperFaultId, // Numero pinza guasta
44 GripperFault, // Guasto pinza
45 GripperActive, // Stato attivazione pinza
46 GripperPosition, // Posizione pinza
47 GripperSpeed, // Velocità pinza
48 GripperCurrent, // Corrente pinza
49 GripperTemp, // Temperatura pinza
50 GripperVoltage, // Tensione pinza
51 AuxState, // Stato asse esteso 485
52 ExtAxisStatus, // Stato asse esteso UDP (4 assi)
53 ExtDIState, // Ingresso DI esteso (8)
54 ExtDOState, // Uscita DO esteso (8)
55 ExtAIState, // Ingresso AI esteso (4)
56 ExtAOState, // Uscita AO esteso (4)
57 RbtEnableState, // Stato abilitazione robot
58 JointDriverTorque, // Coppia driver giunti robot (6 giunti)
59 JointDriverTemperature, // Temperatura driver giunti robot (6 giunti)
60 RobotTime, // Tempo sistema robot
61 SoftwareUpgradeState, // Stato aggiornamento software robot
62 EndLuaErrCode, // Stato esecuzione LUA terminale
63 ClAnalogOutput, // Uscita analogica scatola di controllo (2)
64 TlAnalogOutput, // Uscita analogica utensile
65 GripperRotNum, // Giri correnti pinza rotante
66 GripperRotSpeed, // Percentuale velocità corrente pinza rotante
67 GripperRotTorque, // Percentuale coppia corrente pinza rotante
68 WeldingBreakOffState, // Stato interruzione saldatura
69 TargetJointTorque, // Coppia comando giunti (6 giunti)
70 SmartToolState, // Stato pulsanti maniglia SmartTool
71 WideVoltageCtrlBoxTemp, // Temperatura scatola di controllo ampia tensione
72 WideVoltageCtrlBoxFanCurrent, // Corrente ventola scatola di controllo ampia tensione (mA)
73 ToolCoord, // Valori coordinate utensile correnti: x,y,z,rx,ry,rz
74 WobjCoord, // Valori coordinate pezzo correnti: x,y,z,rx,ry,rz
75 ExtoolCoord, // Valori coordinate utensile esterno correnti: x,y,z,rx,ry,rz
76 ExAxisCoord, // Valori coordinate asse esteso correnti: x,y,z,rx,ry,rz
77 Load, // Massa carico
78 LoadCog, // Baricentro carico: x,y,z
79 LastServoTarget, // Ultima posizione target ServoJ in coda (6 giunti)
80 ServoJCmdNum, // Conteggio comandi servoJ
81 TargetJointPos, // Posizioni comando 6 giunti, unità °
82 TargetJointVel, // Velocità comando 6 giunti, unità °/s
83 TargetJointAcc, // Accelerazioni comando 6 giunti, unità °/s²
84 TargetJointCurrent, // Correnti comando 6 giunti, unità A
85 ActualJointCurrent, // Correnti attuali 6 giunti, unità A
86 ActualTCPForce, // Coppia terminale robot: x,y,z,rx,ry,rz, unità Nm
87 TargetTCPPos, // Posizione comando TCP robot: x,y,z,rx,ry,rz, unità mm
88 CollisionLevel, // Livello collisione robot (6)
89 SpeedScaleManual, // Percentuale velocità globale modalità manuale
90 SpeedScaleAuto, // Percentuale velocità globale modalità automatica
91 LuaLineNum, // Numero riga programma lua in esecuzione
92 AbnomalStop, // 0-nessuna anomalia; 1-anomalia presente
93 CurrentLuaFileName, // Nome programma lua in esecuzione
94 ProgramTotalLine, // Righe totali programma lua
95 SafetyBoxSingal, // Stato pulsanti scatola pulsanti robot (6)
96 WeldVoltage, // Tensione saldatura V
97 WeldCurrent, // Corrente saldatura
98 WeldTrackVel, // Velocità inseguimento cordone mm/s
99 TpdException, // Superamento limite caricamento traiettorie TPD, 0-non superato, 1-superato
100 AlarmRebootRobot, // Avviso: 1-ciclo di alimentazione necessario dopo rilascio arresto emergenza, 2-anomalia comunicazione giunto richiede ciclo alimentazione
101 ModbusMasterConnect, // bit0-7 corrispondono stato connessione master ModbusTCP 0-7, 0-non connesso, 1-connesso
102 ModbusSlaveConnect, // Stato connessione slave ModbusTCP, 0-non connesso, 1-connesso
103 BtnBoxStopSignal, // Segnale arresto emergenza scatola pulsanti, 0-arresto emergenza rilasciato, 1-arresto emergenza premuto
104 DragAlarm, // Avviso traino: 0-nessun allarme, 1-allarme, 2-anomalia feedback posizione nessun cambio
105 SafetyDoorAlarm, // Avviso porta sicurezza: 0-chiusa, 1-aperta
106 SafetyPlaneAlarm, // Avviso muro sicurezza: 0-non entrato, 1-entrato
107 MotonAlarm, // Avviso movimento
108 InterfaceAlarm, // Avviso ingresso zona interferenza
109 UdpCmdState, // Stato connessione comunicazione UDP porta 20007
110 WeldReadyState, // Stato pronto saldatrice
111 AlarmCheckEmergStopBtn, // 0-normale; 1-anomalia comunicazione, controllare pulsante arresto emergenza
112 TsTmCmdComError, // 0-normale; 1-guasto comunicazione comando coppia
113 TsTmStateComError, // 0-normale; 1-guasto comunicazione stato coppia
114 CtrlBoxError, // Errore scatola di controllo
115 SafetyDataState, // Stato dati sicurezza, 0-normale, 1-anomalo
116 ForceSensorErrState, // Timeout connessione sensore di forza, bit0-bit1 corrispondono ID1-ID2
117 CtrlOpenLuaErrCode, // Codici errore protocollo periferiche 4 controller (codice errore 500)
118 StrangePosFlag, // Flag posizione singolare: 0-normale, 1-posizione singolare
119 Alarm, // Allarme
120 DriverAlarm, // Numero asse allarme driver
121 AliveSlaveNumError, // Errore conteggio slave attivi: 0-normale, 1-errore conteggio
122 SlaveComError, // Errore slave: 0-normale, 1-offline, 2-incoerenza stato, 3-non configurato, 4-errore configurazione, 5-errore inizializzazione, 6-errore inizializzazione comunicazione mailbox
123 CmdPointError, // Errore punto comando
124 IOError, // Errore IO
125 GripperError, // Errore pinza
126 FileError, // Errore file
127 ParaError, // Errore parametro
128 ExaxisOutLimitError, // Errore superamento limite soft asse esterno
129 DriverComError, // Guasto comunicazione driver (6 assi)
130 DriverError, // Numero asse guasto comunicazione driver
131 OutSoftLimitError, // Guasto superamento limite soft
132 AxleGenComData, // Dati feedback trasmissione trasparente terminale robot
133 SocketConnTimeout, // Timeout connessione socket, bit0-bit4 corrispondono socketID 1-4
134 SocketReadTimeout, // Timeout lettura socket, bit0-bit4 corrispondono socketID 1-4
135 TsWebStateComErr, // Guasto comunicazione web-coppia: 0-normale, 1-guasto
136 ExaxisCoordID // ID sistema coordinate asse esteso
137};