Nel Menu Service ModBUS impostare le variabili
Unit ID : Modbus.id (default 1)
PORT: ModBus.port (default 502)
Letture e scritture con Endian: Little
Velocita Seriale 115200, 'N', 8, 1
Menu "Service ModBUS" | |||
---|---|---|---|
Variable | Description | ||
modbus.port | Per ModBUS-NET porta di connessione di default 502 | ||
modbus.id | Identificativo del dispositivo nella rete ModBUS default 1 | ||
modbus.error | Indica l'errore dell'utima operazione ModBUS in formato stringa | ||
modbus.pktRecvCnt | Indica il numero di pacchetti ricevuti | ||
modbus.pktErrCnt | Indica il numero di errori |
Command Type | |||
---|---|---|---|
For | Operation | Function Code | N. of Register |
WORD | READ | Read Holding Register (0x03) | 1 |
WORD | WRITE | Write Multiple Register (0x10) | 1 |
INT | READ | Read Holding Register (0x03) | 1 |
INT | WRITE | Write Multiple Register (0x10) | 1 |
DINT | READ | Read Holding Register (0x03) | 2 |
DINT | WRITE | Write Multiple Register (0x10) | 2 |
FLOAT | READ | Read Holding Register (0x03) | 2 |
FLOAT | WRITE | Write Multiple Register (0x10) | 2 |
Nelle piattaforme multimotore per accedere ai singoli motori è necessario sapere che l'indirizzo riportato corrisponde al motore zero (M0).
Per accedere agli altri motori è sufficiente aggiungere 1000 moltiplicato il numero del motore meno 1.
ovvero : address motore = Address + (1000 * (indice-1)).
Es.
per accedere al Motore 3 (M3) l'indirizzo sarà 9000 + 2000 ovvero 11000
Sono previsti anche indirizzi che hanno effetto su tutti i motori contemporaneamente e si ottengono con indirizzo motore zero + 4000.
qualsiasi comando venga inviato verrà copiato su tutti i motori disponibili.
Funziona solo in scrittura.
Base Addr = 0 Address 9000 |
||
---|---|---|
+ Index | Type | Description |
0 | WORD | Status Word Bit0 1=motore abilitatoBit1 1=ricevuto comando di startBit2 1=comando terminatoBit3 1=motore in movimentoBit4 1=driver in erroreBit5 1=axis homedBit6..15 N.U. |
1 | WORD | Control Word Bit0 1=abilita motore, 0=disabilita Bit1 1=attiva il comando, 0=abortisceBit2 1=stop in emergenza(quick_stop)Bit3 N.U.Bit4 1=reset erroriBit5 1=pulisce lista erroriBit6..7 N.U.Bit8..11 0..15=command Bit12..15 N.U. |
2..11 | INT | Error List[0..9] |
Control Word Bits8..11 |
||
---|---|---|
value | command | Description |
0 | CMD_NO_COMMAND | Nessun comando attivo |
1 | CMD_HOME | Comando di Home.homeTorque homeOffset homeSpeed acc dec |
2 | CMD_ABSMOVE | Comando di movimento a posizione assoluta.spaToMoveAbs speed acc dec |
3 | CMD_RELMOVE | Comando di movimento a posizione relativa.spaToMoveRel speed acc dec |
4 | CMD_VELMOVE | Comando di movimento in velocita.speed acc dec |
5 | CMD_TORQUE | Comando di applicazione coppia.Torque |
13 | CMD_MOV2POS | Comando di movimento tra due posizioni.Vedi parametri Address 9200 |
14 | CMD_SINMOVE | Comando di movimento tra due posizioni in sinusoidale.Vedi parametri Address 9200 |
Base Addr = 0 Address 9100 |
||
---|---|---|
+ Index | Type | Description |
0 | DINT | spaToMoveAbs |
2 | DINT | spaToMoveRel |
4 | DINT | limTorque Coppia massima durante le movimentazioni in velocità o posizione (limTorque / 10^torque_notation_index ) |
6 | DINT | homeTorque Coppia necessaria per ottenere l'home (homeTorque / 10^torque_notation_index ) |
8 | DINT | homeOffset Valore caricato quando in home homeOffset / 10^position_notation_index |
10 | DINT | speed |
12 | DINT | homeSpeed Velocità per andare a FC |
14 | DINT | acc Accelerazione in uso per posizione/Velocità/Home |
16 | DINT | dec Decelerazione in uso per posizione/Velocità/Home |
18 | DINT | maxdec |
20 | INT | homeMode NU (non usato) |
Base Addr = 0 Address 9200 Custom registry |
||
---|---|---|
+ Index | Type | Description |
0 | FLOAT | CMD_MOV2POS/CMD_SINMOVE spa1 = Posizione di partenza |
2 | FLOAT | CMD_MOV2POS/CMD_SINMOVE spa2 = Posizione di arrivo |
4 | FLOAT | CMD_MOV2POS Acceleration |
6 | FLOAT | CMD_MOV2POS Deceleration |
8 | FLOAT | CMD_MOV2POS Velocity |
10 | FLOAT | CMD_MOV2POS wfStr1 Attesa in posizione 1 |
12 | FLOAT | CMD_MOV2POS wfStr2 Attesa in posizione 2 |
14 | FLOAT | CMD_TORQUE fdTorque Corrente per funzionamento in torque |
16 | FLOAT | CMD_SINMOVE sinFreq Frequenza [Hz] |
18 | FLOAT | CMD_SINMOVE sinAcc [Hz/s] |
20 | FLOAT | CMD_SINMOVE sinDec [Hz/s] |
22 | FLOAT | CMD_SINMOVE sinPrcUp [% di sinFreq] |
24 | FLOAT | CMD_SINMOVE sinPrcDn [% di sinFreq] |
Base Addr = 0 Address 9300 |
||
---|---|---|
+ Index | Type | Description |
0 | DINT | actPosition |
2 | DINT | actTorque |
4 | DINT | actSpeed |
6 | DINT | actAnalogInput |
Base Addr = 0 Address 9400 |
||
---|---|---|
+ Index | Type | Description |
0 | INT | position_notation_index equivale 10^position_notation_index |
1 | INT | velocity_notation_index equivale 10^velocity_notation_index |
2 | INT | acceleration_notation_index equivale 10^acceleration_notation_index |
3 | INT | torque_notation_index equivale 10^torque_notation_index |