software:devices:modbus

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Entrambe le parti precedenti la revisione Revisione precedente
Prossima revisione
Revisione precedente
Prossima revisioneEntrambe le parti successive la revisione
software:devices:modbus [2015/09/16 09:24] – [Esempio:] qem207software:devices:modbus [2015/09/16 10:07] – [5.5. Esempi] qem207
Linea 270: Linea 270:
 modbus.par = 0                              ; parity modbus.par = 0                              ; parity
 modbus.tout = 100                           ; timeout modbus.tout = 100                           ; timeout
-tm_opencom = 2000                           ; timeout for OPENCOM command+tm_opencom = 200                            ; timeout for OPENCOM command
 modbus.OPENCOM modbus.OPENCOM
 WAIT modbus.st_opencom OR tm_opencom WAIT modbus.st_opencom OR tm_opencom
Linea 487: Linea 487:
   * processare i parametri tipo iwordNN, ilongNN (che sono stati scritti dal master)   * processare i parametri tipo iwordNN, ilongNN (che sono stati scritti dal master)
  
 +=== - Impostazioni modbus e apertura del canale di comunicazione di tipo seriale ===
 +<code QCL>
 +modbus.mode = 1                             ; modbus slave
 +modbus.prot = 1                             ; RTU
 +modbus.brate = 57600                        ; baudrate
 +modbus.stopb = 1                            ; stop bits
 +modbus.par = 0                              ; parity
 +modbus.idcard = 1                           ; slave id
 +
 +modbus.OPENCOM
 +tm_opencom = 100                            ; timeout for OPENCOM command
 +WAIT modbus.st_opencom OR tm_opencom
 +IF NOT modbus.st_opencom
 +    OpenComError = 1                        ; com not opened
 +ENDIF
 +</code>
 === - Aggiornamento dei parametri tipo owordNN === === - Aggiornamento dei parametri tipo owordNN ===
 Per aggiornare i parametri tipo owordNN il QCL deve scrivere i valori nei parametri quindi inviare il comando VALIDATE. Per aggiornare i parametri tipo owordNN il QCL deve scrivere i valori nei parametri quindi inviare il comando VALIDATE.
Linea 496: Linea 512:
 == Esempio: == == Esempio: ==
 <code QCL> <code QCL>
-     modbus.olong1 = anpos.speed +modbus.olong1 = anpos.speed 
-     modbus.oword1 = npezzi +modbus.oword1 = npezzi 
-     modbus.oword2 = npezzitot +modbus.oword2 = npezzitot 
-     modbus.oword3 = anpos.dir +modbus.oword3 = anpos.dir 
-     modbus.olong2 = anpos.posit +modbus.olong2 = anpos.posit 
-     modbus.VALIDATE+modbus.VALIDATE
 </code> </code>
  
Linea 512: Linea 528:
 Esempio: Esempio:
 <code QCL> <code QCL>
-MAIN: +WAIT modbus.st_msgrx 
-     WAIT modbus:st_msgrx +anpos.speed = modbus.ilong1 
-     anpos:speed = modbus:ilong1 +anpos:posit = modbus.ilong2 
-     anpos:posit = modbus:ilong2 +npezzi = modbus.iword1 
-     switch = modbus:iword1 +RECEIVED modbus
-     RECEIVED modbus +
-     WAIT 1 +
-     JUMP MAIN+
 </code> </code>
 Naturalmente non esiste nessun controllo per evitare che durante la lettura dei parametri //iwordNN// il master erroneamente Naturalmente non esiste nessun controllo per evitare che durante la lettura dei parametri //iwordNN// il master erroneamente
  • Ultima modifica: 2020/07/13 15:15