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/15 15:55] – [5.5.3. Identificazione degli Slave] qem207software:devices:modbus [2015/09/15 16:54] – [Table] qem207
Linea 347: Linea 347:
 perché il protocollo non prevede una modalità standard di riconoscimento slave.\\ perché il protocollo non prevede una modalità standard di riconoscimento slave.\\
 Il comando READSTYPE eseguito dopo aver opportunamente selezionato lo slave (tramite parametro idcard) invia allo Il comando READSTYPE eseguito dopo aver opportunamente selezionato lo slave (tramite parametro idcard) invia allo
-slave una richiesta modbus nr.17 per il riconoscimento. Lo slave risponderà con un suo valore definito dal parametro stype nello slave e potrà essere+slave una richiesta modbus nr.17 per il riconoscimento. Lo slave risponderà con un suo valore predefinito e potrà essere
 letto nel parametro stype del master. Nel caso lo slave non sia prodotto da QEM srl, il parametro avrà valore –1 ad indicare che lo letto nel parametro stype del master. Nel caso lo slave non sia prodotto da QEM srl, il parametro avrà valore –1 ad indicare che lo
 slave è connesso ma non è possibile identificarlo.\\ slave è connesso ma non è possibile identificarlo.\\
Linea 421: Linea 421:
  
 === - Parametri - Modbus Master === === - Parametri - Modbus Master ===
-^Nome^D^R^A^Condizioni^Descrizione^ +^ Nome         ^ D  ^ R  ^ A    ^ Condizioni  ^ Descrizione                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
-|mode|B|R|R/W|-|**Mode**\\ (0 ÷ 2)\\ Definisce se la scheda deve funzionare come master o come slave.\\ **0** = master;\\ **1** = slave con area di scambio dati fissa;\\ **2** = slave senza area di scambio dati fissa: ad ogni scrittura o lettura eseguita dal master viene messi a 1 il flag st_msgrx.\\ Contemporaneamente i parametri //type//, //addr// e //num// indicano le caratteristiche del messaggio ricevuto.\\ - **Type** indica il tipo di funzione che vuole fare ill master (lettura o scrittura),\\ - **addr** indica l'indirizzo dell'inizio del blocco di dati scritti o letti,\\ - **num*** indica il numero di dati letti o scritti (a bit o a byte a seconda del valore di type).\\ Il device controllerà, in ricezione, solamente num (size di messaggio) che non sia superiore a 32word ma non più l'indirizzo che può essere ora qualsiasi.\\ Se è una scrittura (lo si capisce dal valore di type se è 5,6,15,16) vengono riportati i dati nelle variabili di scambio input (sempre a partire dalla prima word) ed il device attende il comando RECEIVED.\\ Se è una lettura il device attende che il QLC depositi i dati nelle word variabili di scambio output ed attende il comando VALIDATE.| +| mode         | B  | R  | R/W  | -           | **Mode**\\ (0 ÷ 2)\\ Definisce se la scheda deve funzionare come master o come slave.\\ **0** = master;\\ **1** = slave con area di scambio dati fissa;\\ **2** = slave senza area di scambio dati fissa: ad ogni scrittura o lettura eseguita dal master viene messi a 1 il flag st_msgrx.\\ Contemporaneamente i parametri //type//, //addr// e //num// indicano le caratteristiche del messaggio ricevuto.\\ - **Type** indica il tipo di funzione che vuole fare ill master (lettura o scrittura),\\ - **addr** indica l'indirizzo dell'inizio del blocco di dati scritti o letti,\\ - **num** indica il numero di dati letti o scritti (a bit o a byte a seconda del valore di type).\\ Il device controllerà, in ricezione, solamente num (size di messaggio) che non sia superiore a 32word ma non più l'indirizzo che può essere ora qualsiasi.\\ Se è una scrittura (lo si capisce dal valore di type se è 5,6,15,16) vengono riportati i dati nelle variabili di scambio input (sempre a partire dalla prima word) ed il device attende il comando RECEIVED.\\ Se è una lettura il device attende che il QCL depositi i dati nelle word variabili di scambio output ed attende il comando VALIDATE.  
-|prot|B|R|R/W|-|**Protocol**\\ (0 ÷ 1)\\ Definisce il tipo di protocollo Modbus da utilizzare.\\ **0** = ASCII,\\ **1** = RTU| +| prot         | B  | R  | R/W  | -           | **Protocol**\\ (0 ÷ 1)\\ Definisce il tipo di protocollo Modbus da utilizzare.\\ **0** = ASCII,\\ **1** = RTU,\\ **2** = TCPIP                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 
-|wider|B|R|R/W|-|**Wide Registers**\\ (0 ÷ 1)\\ Indica se utilizzare l’estensione del protocollo per i registri a 32bit. Vedere capitolo “Estensione del protocollo” :\\ **0** = normale,\\ **1** = protocollo esteso.| +| wider        | B  | R  | R/W  | -           | **Wide Registers**\\ (0 ÷ 1)\\ Indica se utilizzare l’estensione del protocollo per i registri a 32bit. Vedere capitolo “Estensione del protocollo” :\\ **0** = normale,\\ **1** = protocollo esteso.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
-|idcard|W|R|R/W|-|**Identification Card**\\ (0 ÷ 255)\\ Nel funzionamento come master è il numero del dispositivo al quale s'intende trasmettere. Nel modo master è valida anche l’impostazione zero per il funzionamento broadcast.| +| idcard       | W  | R  | R/W  | -           | **Identification Card**\\ (0 ÷ 255)\\ Nel funzionamento come master è il numero del dispositivo al quale s'intende trasmettere. Nel modo master è valida anche l’impostazione zero per il funzionamento broadcast.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             
-|type|B|1|R/W|-|**Type**\\ Definisce il tipo di richiesta che il master deve eseguire.\\ Valori ammessi: 1, 2, 3, 4, 5, 6, 15, 16| +| type         | B  | 1  | R/W  | -           | **Type**\\ Definisce il tipo di richiesta che il master deve eseguire.\\ Valori ammessi: 1, 2, 3, 4, 5, 6, 15, 16                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              
-|addr|L|1|R/W|-|**Address**\\ (1 ÷ 65535)\\ Definisce l’indirizzo utilizzato dal master per definire quale sia il dato da leggere o scrivere.| +| addr         | L  | 1  | R/W  | -           | **Address**\\ (1 ÷ 65535)\\ Definisce l’indirizzo utilizzato dal master per definire quale sia il dato da leggere o scrivere.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
-|tabreg|W|1|R/W|-|**Destination**\\ (1 ÷ 512)\\ Definisce l’indirizzo nelle tabelle dei dati in cui scrivere il dato letto o in cui trovare il dato da scrivere.| +| tabreg       | W  | 1  | R/W  | -           | **Destination**\\ (1 ÷ 512)\\ Definisce l’indirizzo nelle tabelle dei dati in cui scrivere il dato letto o in cui trovare il dato da scrivere.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 
-|num|W|1|R/W|-|**Number**\\ (1 ÷ 512)\\ È il numero d'elementi da scrivere o leggere nella richiesta che compone il master.| +| num          | W  | 1  | R/W  | -           | **Number**\\ (1 ÷ 512)\\ È il numero d'elementi da scrivere o leggere nella richiesta che compone il master.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   
-|brate|L|R|R/W|-|**Baud rate**\\ Baud rate della seriale.\\ Valori validi: 4800, 9600, 19200, 38400, 57600.| +| brate        | L  | R  | R/W  | -           | **Baud rate**\\ Baud rate della seriale.\\ Valori validi: 4800, 9600, 19200, 38400, 57600, 115200                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            
-|stopb|B|R|R/W|-|**Stop bit**\\ Valori validi: 1, 2.| +| stopb        | B  | R  | R/W  | -           | **Stop bit**\\ Valori validi: 1, 2.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            
-|par|B|R|R/W|-|**Parity**\\ (0 ÷ 2)\\ **0** = none (nessuna),\\ **1** = odd (dispari),\\ **2** = even (pari).| +| par          | B  | R  | R/W  | -           | **Parity**\\ (0 ÷ 2)\\ **0** = none (nessuna),\\ **1** = odd (dispari),\\ **2** = even (pari).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 
-|tout|W|R|R/W|-|**Timeout**\\ (0 ÷ 9999 msec)\\ Per la modalitá master è il tempo massimo in cui lo slave deve rispondere.\\ Impostandolo a zero il Timeout è disabilitato.| +| tout         | W  | R  | R/W  | -           | **Timeout**\\ (0 ÷ 9999 msec)\\ Per la modalitá master è il tempo massimo in cui lo slave deve rispondere.\\ Impostandolo a zero il Timeout è disabilitato.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
-|toutsyc|W|R|R/W|-|**Time out synchronize**\\ (0 ÷ 9999 msec)\\ Utilizzato solamente per la modalitá master è il tempo massimo che puó trascorrere tra l’invio del comando SENDSYC e l’esecuzione del comando RECEIVED nello slave QEM.| +| toutsyc      | W  | R  | R/W  | -           | **Time out synchronize**\\ (0 ÷ 9999 msec)\\ Utilizzato solamente per la modalitá master è il tempo massimo che puó trascorrere tra l’invio del comando SENDSYC e l’esecuzione del comando RECEIVED nello slave QEM.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           
-|iword1÷32|W|0|R|-|**Input Word nr.** (1Input Long nr. (1÷16)32)| +| iword1÷32    | W  | 0  | R    | -           | **Input Word nr.** (1Input Long nr. (1÷16)32)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
-|st_ibit0÷15|F|0|R|-|**Input bit nel parametro iword1**| +| st_ibit0÷15  | F  | 0  | R    | -           | **Input bit nel parametro iword1**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             
-|ilong1÷16|L|0|R|-|**Input Long nr.** (1÷16)| +| ilong1÷16    | L  | 0  | R    | -           | **Input Long nr.** (1÷16)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      
-|oword1÷32|W|0|R/W|-|**Output Word nr.** (1÷32)| +| oword1÷32    | W  | 0  | R/W  | -           | **Output Word nr.** (1÷32)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     
-|st_obit0÷15|F|0|R/W|-|**Output bit nel parametro oword1**| +| st_obit0÷15  | F  | 0  | R/W  | -           | **Output bit nel parametro oword1**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            
-|olong1÷16|L|0|R/W|-|**Output Long nr.** (1÷16)|+| olong1÷16    | L  | 0  | R/W  | -           | **Output Long nr.** (1÷16)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | 
 + 
 + 
 +Per configurare il numero della porta TCPIP è necessario andare a scrivere sui parametri brate, stopb e par. Rispettivamente :\\  
 +brate = &HFFFFFFFF\\  
 +stopb = tcpip_port / &H00000100\\  
 +par   = tcpip_port ANDB &H000000FF 
 + 
 + 
 + 
  
 === - Variabili - Modbus Master === === - Variabili - Modbus Master ===
  • Ultima modifica: 2020/07/13 15:15