en:software:devices:modbus

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revisionBoth sides next revision
en:software:devices:modbus [2016/12/21 18:03] – [Force multiple register] qem103en:software:devices:modbus [2016/12/22 16:07] – [5.8. Identificazione degli Slave] qem103
Line 210: Line 210:
 (addr + num - 1) <= 32 e (tabreg + num - 1) <= 32 otherwise the request will fail (reporting by wcmd). (addr + num - 1) <= 32 e (tabreg + num - 1) <= 32 otherwise the request will fail (reporting by wcmd).
  
-==== - Esempi ====+==== - Examples ====
  
-1) Impostazioni modbus e apertura del canale di comunicazione di tipo seriale+1) Modbus settings and opening of serial communication
 <code QCL> <code QCL>
 modbus.mode = 0                             ; modbus master modbus.mode = 0                             ; modbus master
Line 247: Line 247:
 </code> </code>
  
-3) Lettura del registro input nr.7 dello slave id 67+3) Reading the registry input nr.7 of the slave id 67
 <code QCL> <code QCL>
 modbus.idcard = 67 modbus.idcard = 67
Line 257: Line 257:
 WAIT modbus.st_sended WAIT modbus.st_sended
 IF (modbus.err) IF (modbus.err)
-    CALL ErroreModbus+    CALL ErrorModbus
 ENDIF ENDIF
-slVelocita = modbus.iword7+slSpeed = modbus.iword7
 </code> </code>
  
-4) Lettura dei holding register dal nr.600 al nr.606 dello slave id 8\\ +4) Reading of the holding register from nr.600 to nr.606 of the slave id 8\\ 
-Siccome l’area di scambio dati QCL non supporta l’indirizzo 600, si utilizza il parametro tabreg per salvare i dati letti all’indirizzo 10+The area of QCL data exchange does not support the address 600, you use the tabreg parameter to save the data read at 10 address
 <code QCL> <code QCL>
 modbus.idcard = 8 modbus.idcard = 8
Line 273: Line 273:
 WAIT modbus.st_sended WAIT modbus.st_sended
 IF (modbus.err) IF (modbus.err)
-    CALL ErroreModbus+    CALL ErrorModbus
 ENDIF ENDIF
          
 swTemp1 = modbus.iword10 swTemp1 = modbus.iword10
-slVelocita = modbus.ilong6+slSpeed = modbus.ilong6
 slPosiz = modbus.ilong7 slPosiz = modbus.ilong7
 swTemp1 = modbus.iword15 swTemp1 = modbus.iword15
 </code> </code>
-==== - Schema a blocchi ====+==== - Block diagrams ==== 
 {{:software:devices:modbus:modbus_01.png?nolink400|}} {{:software:devices:modbus:modbus_01.png?nolink400|}}
  
 ==== - Broadcast ==== ==== - Broadcast ====
-Il Broadcast è un messaggio speciale che viene inviato dal Master e viene ricevuto contemporaneamente da tutti gli slave 
-connessi. La funzionalitá broadcast (idcard = 0) è supportata solamente in modo master e se viene usato un messaggio 
-con type = 5, 6, 15 e 16 (solo scrittura). In questa modalità lo stato st_sended viene attivato appena terminata la trasmissione 
-e non alla ricezione della conferma dallo slave. Infatti non esiste nessuna risposta degli slave per questo tipo di 
-messaggi. Non è possibile utilizzare il comando SENDSYC. 
  
-==== - Identificazione degli Slave ==== +The Broadcast is a special message that is sent by the Master and is received simultaneously from all connected slaves. The broadcast function (idcard = 0) is supported only in master mode and if you use a message with type = 5, 6, 15 and 16 (write only). In this mode the st_sended state is activated once ended the transmission and not on receipt of confirmation by the slave. There isn't answer on the slaves to such messages. You cannot use the SENDSYC command. 
-La scheda quando funziona in modalità Master permettecon un speciale comandodi riconoscere se lo slave collegato è + 
-di tipo QEM. In caso affermativo determina anche il modello di slave connessoQuesto permette di realizzare una diagnostica +==== - Slaves indentification ==== 
-sulla corretta configurazione della reteNon è possibile estendere questo controllo tutti i tipi di slave esistenti + 
-perché il protocollo non prevede una modalità standard di riconoscimento slave.\\ +When the card works in master mode allowswith specila commandtell if the slave connected is a QEM. If so also determines the pattern of slave connectedThis allows a diagnostic on the correct network configurationYou cannot extend this control to all types of existing slaves because the protocol does not provide a standard way of slave recognition.\\ 
-Il comando READSTYPE eseguito dopo aver opportunamente selezionato lo slave (tramite parametro idcard) invia allo +The READSTYPE command executed after selecting the slave (through idcard parametersend a nr.17 modbus request to the slave for recognitionThe slave will responds with a default value and can be read in the stype parameter of the master. If the slave is not produced by QEM, the parameter will be –1 value to indicate that the slave is connected but you cannot identify it.\\ 
-slave una richiesta modbus nr.17 per il riconoscimentoLo slave risponderà con un suo valore predefinito e potrà essere +For the MODBUS device the ID slave is different depending on the slave QEM usedFor encoding of the slaves see the slave Firmware used.
-letto nel parametro stype del master. Nel caso lo slave non sia prodotto da QEM srlil parametro avrà valore –1 ad indicare che lo +
-slave è connesso ma non è possibile identificarlo.\\ +
-Per il device MODBUS lo slave ID è diverso a seconda dello slave QEM utilizzatoPer una codifica degli slave in questo +
-senso vedere il manuale Firmware dello slave utilizzato.+
  
-Esempio d'identificazione dello slave nr.12:+Example of slave identification nr.12:
 <code QCL> <code QCL>
 modbus:idcard = 12 modbus:idcard = 12
  • Last modified: 2020/07/13 14:58