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/22 16:30] – [5.10. Comandi e parametri] qem103en:software:devices:modbus [2016/12/23 16:25] – [5.10.3. Variabili] qem103
Line 322: Line 322:
 ==== - Commands and parameters ==== ==== - Commands and parameters ====
  
-=== - Simbologia adottata === +=== - Used symbols === 
-Il nome del parametrostato o comando viene riportato alla sinistra della tabella.+ 
 +The parameter namecondition or command is taken back to the left side of the table.
  
 **R**\\ **R**\\
-Indica se il relativo parametro o stato è ritentivo (al momento dell’inizializzazione del device mantiene lo stato precedentemente definito), oppure lo stato che assume al momento dell’inizializzazione del device.\\ +Indicates if the parameter or state is retentive (upon initialization of the device maintains the previously defined state), or the state assumes upon initialization of the device.\\ 
-Se il device non necessita di inizializzazione il campo “R” indica il valore che il parametro o stato assume all’accensione della scheda.\\ +If the device does not need to initialize the “R” field indicates the value that the parameter or state take at the at power-up card.\\ 
-R = Ritentivo\\ +R = Retentive\\ 
-0 = Al momento dell’inizializzazione del device il valore viene forzato a zero.\\ +0 = Upon initialization of the device the value is forced to zero.\\ 
-1 = Al momento dell’inizializzazione del device il valore viene forzato a uno.\\ +1 = Upon initialization of the device the value is forced to one.\\ 
-- = Al momento dell’inizializzazione del device viene presentato il valore significativo.+- = Upon initialization of the device is presented significant value.
  
 **D**\\ **D**\\
-Indica la dimensione del parametro.\\+Indicates the size of the parameter.\\
 F = Flag\\ F = Flag\\
 B = Byte\\ B = Byte\\
Line 341: Line 342:
 S = Single Float S = Single Float
  
-== Condizioni == +== Conditions == 
-Vengono descritte tutte le condizioni necessarie affinché il parametro sia considerato corretto o perché il comando venga accettato.\\ + 
-In alcuni casi vengono specificati dei valori limite per l’accettazione del parametrose vengono introdotti dei valori esterni +Describes all the conditions necessary for the parameter so that the parameter is considered correct or because the command is accepted.\\ 
-ai limiti impostatiil dato viene comunque accettatopertanto devono essere previsti opportuni controlli dell’applicativo tali +In some cases, limit values are specified for the acceptance of the parameterif any values outside the limits set are introducedthe data is however acceptedtherefore appropriate controls of the application must be provided to ensure the proper functioning.\\ 
-da garantire il corretto funzionamento.\\ +To execute a commandall conditions must be metotherwise the command does not execute.
-Per l’esecuzione di un comandotutte le relative condizioni devono necessariamente essere soddisfattein caso contrario +
-il comando non viene eseguito.+
    
 **A**\\ **A**\\
-Indica la modalità di accesso.\\ +Indicates the access mode.\\ 
-R = Read (lettura).\\ +R = Read.\\ 
-W = Write (scrittura).\\+W = Write.\\
 RW = Read / Write.\\ RW = Read / Write.\\
  
-=== - Parametri === +=== - Parameters === 
-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.                                                                                                               | +Name         ^ D  ^ R  ^ A    ^ Conditions  Description                                                                                                                                                                                                           ^ 
-| prot         | B  | R  | R/W  | -           | **Protocol**\\ (0 ÷ 1)\\ Definisce il tipo di protocollo Modbus da utilizzare.\\ **0** = ASCII,\\ **1** = RTU,\\ **2** = TCPIP                                                                                        | +| mode         | B  | R  | R/W  | -           | **Mode**\\ (0 ÷ 2)\\ Defines if the board should function as a master or slave.\\ **0** = master.                                                                                                               | 
-| wider        | B  | R  | R/W  | -           | **Wide Registers**\\ (0 ÷ 1)\\ Indica se utilizzare l’estensione del protocollo per i registri a 32bitVedere capitolo Estensione del protocollo” :\\ **0** = normale,\\ **1** = protocollo esteso.                 | +| prot         | B  | R  | R/W  | -           | **Protocol**\\ (0 ÷ 1)\\ Defines the type of modbus protocol to use.\\ **0** = ASCII,\\ **1** = RTU,\\ **2** = TCPIP                                                                                        | 
-| idcard       | W  | R  | R/W  | -           | **Identification Card**\\ (0 ÷ 255)\\ Nel funzionamento come master è il numero del dispositivo al quale s'intende trasmettereNel modo master è valida anche l’impostazione zero per il funzionamento broadcast.    | +| wider        | B  | R  | R/W  | -           | **Wide Registers**\\ (0 ÷ 1)\\ Indicates if to use the 32-bit registers protocol extensionSee the Extension of the Protocol” section :\\ **0** = normal,\\ **1** = extended protocol.                 | 
-| 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                                                                                                     | +| idcard       | W  | R  | R/W  | -           | **Identification Card**\\ (0 ÷ 255)\\ In the operation as the master is the device number that you want to transmitIn master mode setting of zero is also valid for operation broadcast.    | 
-| addr         | L  | 1  | R/W  | -           | **Address**\\ (1 ÷ 65535)\\ Definisce l’indirizzo utilizzato dal master per definire quale sia il dato da leggere o scrivere.                                                                                         | +| type         | B  | 1  | R/W  | -           | **Type**\\ Defines the type of request that the master must perform.\\ Allowed values: 1, 2, 3, 4, 5, 6, 15, 16                                                                                                     | 
-| 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.                                                                        | +| addr         | L  | 1  | R/W  | -           | **Address**\\ (1 ÷ 65535)\\ Defines the address used by the master to define the data to be read or write.                                                                                         | 
-| num          | W  | 1  | R/W  | -           | **Number**\\ (1 ÷ 512)\\ È il numero d'elementi da scrivere o leggere nella richiesta che compone il master.                                                                                                          | +| tabreg       | W  | 1  | R/W  | -           | **Destination**\\ (1 ÷ 512)\\ Defines the address data tables into which to write the data read or where to find the data to write.                                                                        | 
-| brate        | L  | R  | R/W  | -           | **Baud rate**\\ Baud rate della seriale.\\ Valori validi: 4800, 9600, 19200, 38400, 57600, 115200.                                                                                                                    | +| num          | W  | 1  | R/W  | -           | **Number**\\ (1 ÷ 512)\\ Is the number of items to be written to or read in the request of the master.                                                                                                          | 
-| stopb        | B  | R  | R/W  | -           | **Stop bit**\\ Valori validi: 1, 2.                                                                                                                                                                                   | +| brate        | L  | R  | R/W  | -           | **Baud rate**\\ Serial Baud rate.\\ Allowed values: 4800, 9600, 19200, 38400, 57600, 115200.                                                                                                                    | 
-| par          | B  | R  | R/W  | -           | **Parity**\\ (0 ÷ 2)\\ **0** = none (nessuna),\\ **1** = odd (dispari),\\ **2** = even (pari).                                                                                                                        | +| stopb        | B  | R  | R/W  | -           | **Stop bit**\\ Allowed values: 1, 2.                                                                                                                                                                                   | 
-| 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.                                                           | +| par          | B  | R  | R/W  | -           | **Parity**\\ (0 ÷ 2)\\ **0** = none,\\ **1** = odd,\\ **2** = even.                                                                                                                        | 
-| 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.  |+| tout         | W  | R  | R/W  | -           | **Timeout**\\ (0 ÷ 9999 msec)\\ For the master mode is the maximum time the slave must respond.\\ Setting it to zero, the Timeout is disabled.                                                           | 
 +| toutsyc      | W  | R  | R/W  | -           | **Time out synchronize**\\ (0 ÷ 9999 msec)\\ Only used to master mode is the maximum time that can elapse between sending the SENDSYC command and the RECEIVED command execution on the QEM slave.  |
 | 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 in the iword1 parameter**                                                                                                                                                                                    |
 | 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 in the oword1 parameter**                                                                                                                                                                                   |
 | olong1÷16    | L  | 0  | R/W  | -           | **Output Long nr.** (1÷16)                                                                                                                                                                                            | | olong1÷16    | L  | 0  | R/W  | -           | **Output Long nr.** (1÷16)                                                                                                                                                                                            |
  
-La possibilità di comunicare con il protocollo TCPIP è stata sviluppata in un tempo successivo rispetto alla nascita del device MODBUS. Per questo modivo l'impostazione della porta e dell'indirizzo IP viene eseguita mediante alcuni parametri che hanno un significato diverso.+The ability to communicate with the TCPIP protocol It was developed at a later time than the birth of the MODBUS deviceFor this reason the IP address and port setting is achieved using some parameters that have a different meaning.
  
-Per configurare il numero della porta TCPIP è necessario andare a scrivere sui parametri //stopb// //par//Rispettivamente :+To configure the TCPIP port number You must go and write about the //stopb// and //par// parametersRespectively :
   * **stopb** = tcpip_port / &H00000100   * **stopb** = tcpip_port / &H00000100
   * **par** = tcpip_port ANDB &H000000FF   * **par** = tcpip_port ANDB &H000000FF
-Per impostare lo slave TCPIP a cui si vuole eseguire la richiesta è necessario andare a scrivere sul parametro //brate//.\\  +To set the TCPIP slave to which you want to execute the request you must go to write on the//brate// parameter .\\  
-Un indirizzo IP può essere espresso come TcpAddr3.TcpAddr2.TcpAddr1.TcpAddr0 (per esempio 192.168.0.1).+An IP address can be expressed as TcpAddr3.TcpAddr2.TcpAddr1.TcpAddr0 (for example 192.168.0.1).
   * **brate** = (TcpAddr3 * &H01000000) + (TcpAddr2 * &H00010000) + (TcpAddr1 * &H00000100) + TcpAddr0   * **brate** = (TcpAddr3 * &H01000000) + (TcpAddr2 * &H00010000) + (TcpAddr1 * &H00000100) + TcpAddr0
  
  
-=== - Variabili === +=== - Variables === 
-Nome   ^ D  ^ R  ^ A    ^ Condizioni  Descrizione                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ^ + 
-| err    | B  | 0  | R    | -           | **Errors**\\ Indica se sono stati riscontrati errori nel protocollo.\\ In modalità master il parametro viene aggiornato in coincidenza dell’attivazione dello stato //st_sended//I valori da 49 sono quelli inviati dallo slave. I valori superiori a 50 sono generati internamente dal master. I primi valori sono normalizzati nel protocollo e sono:\\ **0** = comunicazione avvenuta senza errori,\\ **1** = ILLEGAL FUNCTION,\\ **2** = ILLEGAL DATA ADDRESS,\\ **3** = ILLEGAL DATA VALUE,\\ **4** = SLAVE DEVICE FAILURE,\\ **5** = ACKNOWLEDGE,\\ **6** = SLAVE DEVICE BUSY,\\ **7** = NEGATIVE ACKNOWLEDGE,\\ **8** = MEMORY PARITY ERROR,\\ **5**0 = UNKNOWN RECEIVED ERROR lo slave ha risposto con un codice superiore a 49,\\ **5**1 = TIMEOUT lo slave non ha risposto entro il tempo programmato nel parametro tout,\\ **52** = INVALID ANSWER,\\ **52** = INVALID FUNCTION ANSWER - Tipo funzione non supportata,\\ **53** = CHECKSUM ANSWER - Il checksum ricavato non corrisponde,\\ **54** = TRUNCATED ANSWER - Messaggio troppo corto,\\ **55** = INVALID ID ANSWER - Id slave non corrispondente,\\ **56** =  INVALID_MBAP_TRANSACTION_ID - modbus TCPIP, //transaction ID// non corretto,\\ **57** = INVALID_MBAP_PROTOCOL_ID - modbus TCPIP, //protocol ID// diverso da zero,\\ **70** = TIMEOUT SYNCHRONIZED lo slave QEM non hanno eseguito il comando RECEIVED entro il tempo programmato nel parametro toutsyc.\\ In modalità slave il parametro non viene mai aggiornato.  | +Name   ^ D  ^ R  ^ A    ^ Conditions  Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ^ 
-| serr   | B  | 0  | R/W  | -           | **Serial Errors**\\ Indica se sono stati riscontrati errori nella comunicazione serialeIl parametro viene aggiornato ad ogni errore rilevatoIl valore permane fino:\\ - ad un successivo errore;\\ - alla scrittura di uno dei seguenti parametri: mode, prot, wider, brate, stopb, par;\\ - ad una scrittura sullo stesso (qualsiasi valore lo azzera).\\ **0** = nessun errore,\\ **1** = parity error,\\ **2** = framing error,\\ **3** = overrun error.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | +| err    | B  | 0  | R    | -           | **Errors**\\ Indicates if errors occurred in the protocol.\\ In master mode the parameter is updated to coincide the activation of the //st_sended// stateThe values from to 49 are those sent by the slave. Values greater than 50 are generated internally by the master. The first velues are normalized in the protocol and are:\\ **0** = communications without errors,\\ **1** = ILLEGAL FUNCTION,\\ **2** = ILLEGAL DATA ADDRESS,\\ **3** = ILLEGAL DATA VALUE,\\ **4** = SLAVE DEVICE FAILURE,\\ **5** = ACKNOWLEDGE,\\ **6** = SLAVE DEVICE BUSY,\\ **7** = NEGATIVE ACKNOWLEDGE,\\ **8** = MEMORY PARITY ERROR,\\ **5**0 = UNKNOWN RECEIVED ERROR the slave answered with code greater than 49,\\ **5**1 = TIMEOUT the slave does not respond within the time scheduled in the tout parameter,\\ **52** = INVALID ANSWER,\\ **52** = INVALID FUNCTION ANSWER - Function type not supported,\\ **53** = CHECKSUM ANSWER - The checksum proceeds does not match,\\ **54** = TRUNCATED ANSWER - Message too short,\\ **55** = INVALID ID ANSWER - Slave ID mismatch,\\ **56** =  INVALID_MBAP_TRANSACTION_ID - modbus TCPIP, //transaction ID// incorrectly,\\ **57** = INVALID_MBAP_PROTOCOL_ID - modbus TCPIP, //protocol ID// different by zero,\\ **70** = TIMEOUT SYNCHRONIZED the slave QEM did not execute the RECEIVED command within the time scheduled in the toutsyc parameter.\\ In slave mode the parameter is never updated.  | 
-| stype  | W  | 0  | R    | -           | **Slave type**\\ Indica il tipo di slave connessoIl parametro viene aggiornato quando il parametro //st_sended// diventa e se era stato eseguito un comando READSTYPE                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |+| serr   | B  | 0  | R/W  | -           | **Serial Errors**\\ Indicates if errors occurred in serial communicationThe parameter is updated for each error encounteredThe value persists until:\\ - under a subsequent error;\\ - the writing of one of the following parameters: mode, prot, wider, brate, stopb, par;\\ - writing about himself (any value will reset).\\ **0** = no errors,\\ **1** = parity error,\\ **2** = framing error,\\ **3** = overrun error.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 
 +| stype  | W  | 0  | R    | -           | **Slave type**\\ Indicates the type of slave connectedThe parameter is updated when the //st_sended// parameter becomes and if it had been execute a READSTYPE command                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
  
  
  • Last modified: 2020/07/13 14:58