<< Clique para Mostrar o Sumário >> Dicas de Endereçamento (Modbus Convention) |
No tópico Configurando um Tag de Comunicação, o endereçamento dos Tags, ou seja, os parâmetros N4/B4 na configuração numérica, é descrito com base na especificação mais recente do protocolo Modbus, a versão 1.1b. Entretanto, há equipamentos que ainda utilizam a antiga convenção de endereçamentos com offsets conhecida como Modbus Convention, que acrescenta offsets a um endereço. Este tópico explica como endereçar os Tags caso o mapa de registradores de um equipamento ainda siga esta convenção antiga, originária da especificação inicial da Modicon, não mais incluída na especificação atual.
O endereço fornecido no Tag é enviado no frame de requisição do protocolo a um equipamento, acrescido ou não do offset padrão de 1 (um), requerido pelo Modbus Data Model especificado pelo protocolo, conforme configuração do campo Data Model Offset na aba Modbus da janela de configurações deste Driver.
Além deste offset padrão de 1 (um), definido na norma Modbus atual, versão 1.1b, alguns fabricantes utilizam ainda o padrão antigo da Modicon, conhecido como Modbus Convention, com um offset que pode ser acrescentado a um endereço, cujo valor depende da função Modbus utilizada, ou mais especificamente, de qual espaço de endereçamento, ou address space, esta função acessava originalmente. Este offset adicional deve ser ignorado ao definir o endereço dos Tags neste Driver. Mais adiante são fornecidos alguns exemplos. A tabela a seguir lista os offsets utilizados pelo padrão Modbus Convention.
Offsets do padrão Modbus Convention
Tipo de Dados (Standard Data Model) |
Função Modbus |
Offset |
---|---|---|
Coils |
01: Read Coils (0x), 05: Write Single Coil (0x) e 15: Write Multiple Coils (0x) |
00000 |
Discrete Inputs |
02: Read Discrete Inputs (1x) |
10000 |
Input Registers |
04: Read Input Registers (3x) |
30000 |
Holding Registers |
03: Read Holding Registers (4x), 06: Write Single Register (4x) e 16: Write Multiple Registers (4x) |
40000 |
File Register (antiga Extended Memory file) |
20: Read General Reference (6x) e 21: Write General Reference (6x) |
60000 |
Se o mapa de registradores de um equipamento utiliza esta convenção, deve-se seguir este procedimento para determinar os endereços a serem atribuídos aos Tags, no campo Item na configuração por Strings ou aos parâmetros N4 ou B4 na configuração numérica:
1.Na aba Modbus, selecione a opção Data is addressed from 1.
2.Subtraia do endereço mostrado no manual do equipamento o offset mostrado na tabela anterior para a função Modbus utilizada. DICA: Remova o quinto dígito da direita para a esquerda.
Note que, em equipamentos que utilizam esta antiga convenção, pode-se determinar quais funções Modbus devem ser usadas para acessar cada registro ou bit através do offset empregado no endereço.
Exemplos
Endereço com Offset (Equipamento) |
Endereço no Tag (Item ou N4/B4) |
Função Modbus |
---|---|---|
01234 |
1234 |
01: Read Coils, 05: Write Single Coil e 15: Write Multiple Coils |
11234 |
1234 |
02: Read Discrete Inputs |
31234 |
1234 |
04: Read Input Registers |
41234 |
1234 |
03: Read Holding Registers, 06: Write Single Register e 16: Write Multiple Registers |
45789 |
5789 |
03: Read Holding Registers, 06: Write Single Register e 16: Write Multiple Registers |
65789 |
5789 |
20: Read General Reference e 21: Write General Reference |
As funções Modbus 20 e 21 tem como característica manipular leitura ou escrita de múltiplos sub-grupos de dados, alocadas na memória extendida do equipamento, ou referências 6XXXXX, conforme a tabela a seguir.
Memória extendida ou referências 6XXXXX
Memory File Number 1 |
Memory File Number 2 |
Memory File Number 3 |
|||
---|---|---|---|---|---|
Register 600100 |
Data 1 |
Register 600200 |
Data 1 |
Register 600300 |
Data 1 |
Register 600101 |
Data 2 |
Register 600201 |
Data 2 |
Register 600301 |
Data 2 |
Register 600102 |
Data 3 |
Register 600202 |
Data 3 |
Register 600302 |
Data 3 |
Register 600103 |
Data 4 |
Register 600203 |
Data 4 |
Register 600303 |
Data 4 |
Register 600104 |
Data 5 |
Register 600204 |
Data 5 |
Register 600304 |
Data 5 |
Para utilizar um Tag PLC para leitura do segundo registrador do Memory File Number 2 do Slave ID 1 (um), utilize os seguintes parâmetros:
•Configuração numérica: N1 = 1, N2 = Oper, N3 = 2 e N4 = 201
•Configuração por Strings: Item = 1:fr2.201
Para utilizar um Tag Bloco com 3 (três) Elementos para leitura dos 3 (três) últimos registradores do Memory File Number 3 do Slave ID 2 (dois), utilize os seguintes parâmetros:
•Configuração numérica: N1 = 2, N2 = Oper, N3 = 3, N4 = 302
•Configuração por Strings: Item = 2:fr3.302
Para utilizar um Tag PLC para escrita no quarto registrador do Memory File Number 1 do Slave ID 3 (três), utilize os seguintes parâmetros:
•Configuração numérica: N1 = 3, N2 = Oper, N3 = 1, N4 = 103
•Configuração por Strings: Item = 3:fr1.103
NOTA |
O protocolo Modbus permite efetuar leituras ou escritas de múltiplos sub-grupos (file number) de dados por meio de uma única requisição via funções 20 ou 21 respectivamente. No entanto, este Driver só permite manipular um sub-grupo de dados por vez em cada Tag PLC ou Bloco. |