Configuração para o Modbus-TCP Cliente
Configuração para o Modbus-TCP Cliente
Configuração para o Modbus-TCP Cliente
o Modbus/TCP
cliente
ÍNDICE
ÍNDICE .................................................................................................................................................... 2
ÍNDICE DE FIGURAS ............................................................................................................................ 3
ÍNDICE DE TABELAS ........................................................................................................................... 4
1. Introdução ....................................................................................................................................... 5
1.1. Características do Modbus/TCP cliente ..................................................................................... 5
2. Configuração Modbus/TCP ............................................................................................................ 5
2.1. Parâmetros para a configuração Modbus/TCP Cliente............................................................... 8
3. Diagnósticos.................................................................................................................................. 13
3
Configuração para o Modbus-TCP Cliente.doc _________________________________
ÍNDICE DE FIGURAS
Figura 2.1 – Configuração gráfica da MCPU-1 versão 1.20 ou superior ...................................... 6
Figura 2.2 – Configuração gráfica para o Cliente Modbus/TCP .................................................... 6
Figura 2.3 – Inserindo um servidor na configuração ....................................................................... 7
Figura 2.4 – Configuração gráfica para os servidores Modbus/TCP ........................................... 7
Figura 2.1.1 – Desabilitando comandos 05 e 06 do Modbus (parte 1) ....................................... 12
Figura 2.1.2 – Desabilitando comandos 05 e 06 do Modbus (parte 2) ...................................... 13
Figura 3.1 – Monitoração dos servidores (parte 1) ....................................................................... 14
Figura 3.2 – Monitoração dos servidores (parte 2) ....................................................................... 15
4 _________________________________________________________
Configuração para o Modbus-TCP Cliente.doc
ÍNDICE DE TABELAS
Tabela 1.1.1 – Principais características para a configuração Modbus/TCP cliente ................................. 5
Tabela 2.1.1 – Parâmetros de comunicação .............................................................................................. 8
Tabela 2.1.2 – Parâmetros de acesso a dados ......................................................................................... 10
Tabela 2.1.3 – Suporte para os comandos Modbus TCP ....................................................................... 11
Tabela 2.1.4 – Tamanho máximo para os comandos Modbus suportados............................................. 11
Tabela 2.1.5 – Definição do comando Modbus ..................................................................................... 12
Tabela 3.1 – Diagnóstico das conexões estabelecidas no Modbus/TCP cliente .................................... 13
5
Configuração para o Modbus-TCP Cliente.doc _________________________________
1. Introdução
O objetivo é descrever a configuração Modbus/TCP Cliente utilizando o CitrinoTools.
Comandos Modbus/TCP atendidos Read Coil, Read Discrete Input, Read Holding
Register, Read Input Register, Write Single Coil,
Write Single Register, Write Multiples Coils, Write
Multiples Registers, Mask 4x Write Register
Capacidade máxima de Servidores Até 32 Servidores configurados individualmente
configurados
Capacidade máxima de Acessos Até 512 acessos (média de 16 acessos por servidor)
2. Configuração Modbus/TCP
O Software CitrinoTools deverá montar graficamente a configuração do Cliente
Modbus/TCP muito parecida com o que foi feito para a configuração Modbus-RTU. Nas
figuras abaixo é mostrada a parte gráfica da configuração:
Abaixo está relacionado às definições e limites para cada uma das variáveis
dentro das estruturas:
8 Configuração para o Modbus-TCP Cliente.doc
_________________________________________________________
Parâmetros de comunicação:
Estes parâmetros são válidos para todo o servidor, ou seja, mesmo que se tenha
vários acessos no servidor 1, por exemplo, estes parâmetros valerão para todos os
acessos do servidor 1. Na abaixo está a definição de cada um dos parâmetros.
Parâmetros de
Limites Descrição
comunicação
Não pode ser Endereço IP do servidor a ser
Endereço IP
XXX.XXX.XXX.255 ou 0.0.0.0 lido ou escrito
Porto Default: 502 Número do porto Modbus/TCP
Tempo de scan 1 ≤ scan time ≤ 100 Tempo de scan em 0.1 segundos
Timeout das mensagens em
Timeout 1 ≤ timeout ≤ 60
segundos
Número de tentativas de
Tentativas 0 ≤ retries ≤ 10
mensagens
Habilita ou desabilita a
Comunicação Default: Habilita
comunicação com este servidor
Estes parâmetros são válidos para todo o servidor, ou seja, mesmo que se tenha
vários acessos no servidor 1, por exemplo, estes parâmetros valerão para todos os
acessos do servidor 1. Na abaixo está a definição de cada um dos parâmetros.
9
Configuração para o Modbus-TCP Cliente.doc _________________________________
Parâmetros Características da
Descrição
de Acesso configuração
Tem a função de “trigar” a comunicação
quando necessário. Pode ser usado quando
o usuário escolher que determinado
Variáveis do tipo bit – ST,
Trigger da acesso ocorra somente se algum evento
DI, DO, WM, DM e sempre
comunicação (bit) estiver setado. Ou seja, como
ativado
trigger é uma variável do tipo bit, o
usuário poderá digitar por exemplo,
DI33, DO52, WM27.3, ST128.7, DM25.1
Quando DI ou DO – Índice é É um número que depende da variável
inteiro; escolhida no Trigger. Se a variável
Quando ST ou WM escolhida for DI ou DO, o número
Índice do Índice = X.Y digitado deverá ser um inteiro. Se a
Trigger X é inteiro variável for ST, WM ou DM, a variável
0 ≤ Y ≤ 15 deverá ser representada por X.Y onde Y
Quando DM é o valor do bit. Por exemplo:
0 ≤ Y ≤ 31 ST1.1, WM53.14, DM 1000.31
É o endereço do protocolo Modbus (este
Será verificado se a variável
endereço é herdado do protocolo
digitada está entre os
Endereço Modbus-RTU). Ou seja, não basta
valores inteiros 0 e 247 e
equipamento especificar o IP do equipamento, tem que
também poderá ser
ser dado um endereço físico caso
representado pelo valor 255
estejamos comunicando com um gateway.
Indica o sentido da operação. Se o
usuário escolher Local → Remoto,
Local → Remoto indicará que ele fará uma operação de
Operação
Local ← Remoto escrita. E se o usuário escolher Local ←
Remoto, indicará que ele fará uma
operação de leitura.
São as variáveis que serão utilizadas para
Variável Variáveis ST, DI, DO, AI,
fazer a operação de escrita (Local →
Local AO, WM, WF, DM, DF e RM
Remoto) ou leitura (Local ← Remoto).
É semelhante ao Índice do trigger, porém
Vale o mesmo raciocínio do
deve ser acrescentado o valor referente
Índice do Trigger, porém
às outras variáveis (AI, AO, WF, DF e
aqui o Índice não será
Índice da RM). O Software bloqueará a utilização
somente do tipo bit. Quando
variável local de certas variáveis de acordo com a
a variável não for bit,
operação. Por exemplo, não pode ser feito
simplesmente coloque o valor
uma operação de leitura nas variáveis
inteiro
ST<128, DI ou AI.
0xNúmero do “Coil”,
Serão representados os comandos 0x, 1x,
1xNúmero da Entrada
Variável 3x e 4x assim como nos sistemas
Discreta, 3xEndereço da
Remota supervisórios. Uma explicação mais
Entrada de Registros ou
detalhada será dado na Tabela 2.1.3.
4xEndereço de “Holding”
10 Configuração para o Modbus-TCP Cliente.doc
_________________________________________________________
Parâmetros Características da
Descrição
de Acesso configuração
Nesta coluna é representado o número de
operações de leitura e/ou escrita. A
quantidade está relacionada a variável
remota (0x, 1x, 3x ou 4x). Por exemplo se o
usuário configurar para leitura uma
Depende da variável remota
quantidade de 6, a variável local como sendo
e seu tamanho também
RM100 e utilizando o comando 4x, então o
depende do tamanho da
Quantidade usuário lerá o valor e armazenará em 3 RMs
configuração das variáveis
(RM100, RM101 e RM102) ou 6 Holding
locais no Tab memória e
Registers. Quando os comandos forem 3x e
Tags no CitrinoTools
4x (comandos 03, 04, 06, 16 e 22 do
Modbus), a quantidade será referente a
words e se forem utilizados comandos 0x e
1x (comandos 01, 02, 05 e 15), a quantidade
será referente a bits.
Nesta coluna é representado o erro
referente ao acesso (poll Record)
selecionado. A função deste bit é a de
disponibilizar para o usuário uma
Variável bit somente em
Erro informação de que a operação desejada não
WM ou opção nenhum
foi efetuada. O usuário poderá jogar esta
informação somente na região de WM. Se o
usuário não quiser tratar os erros no
Ladder bastará escolher a opção Nenhum.
WM
Índice do Índice = X.Y É semelhante ao Índice do trigger, porém
Erro X é inteiro só deverá ser utilizada a região de WM.
0 ≤ Y ≤ 15
<Tipo> <Endereço>
Por exemplo – 4x10, 4x500, 0x100, 3x15, 1x200.
O CitrinoTools fará a codifcação de acordo com o comando Modbus
especificado. Por exemplo, se o usuário digitar 4x500 e a operação for
Local ← Remoto, o software deverá interpretar da seguinte maneira:
Holding Register = 500;
Comando Read Holding Register = 03;
Vale lembrar que o software verificará todos os limites dos comandos
Modbus contidos na norma. Por exemplo para o comando Read Coil (01), a
quantidade máxima de leitura é de 2000. Se o usuário digitar um valor
11
Configuração para o Modbus-TCP Cliente.doc _________________________________
Índice
Tipo Operação Variável Remota Quantidade Comando
Variável Local
Local ← Remote 0x..... 0-15 ou 0-31 Não importa 01 – Read Coil
Bit
Local ← Remote 1x..... 0-15 ou 0-31 Não importa 02 – Read Input Discrete
Local ← Remote 3x..... Não tem Não importa 04 – Read Input Register
Word
Local ← Remote 4x..... Não tem Não importa 03 – Read Holding Register
Local → Remote 0x..... 0-15 ou 0-31 1 05 – Write Single Coil
Bit Local → Remote 0x..... 0-15 ou 0-31 >1 15 – Write Multiples Coils
Local → Remote 4x..... 0-15 1 22 – Mask 4x Write Register
Local → Remote 4x..... Não tem 1 06 – Write Single Register
Word
Local → Remote 4x..... Não tem >1 16 – Write Multiple Register
3. Diagnósticos
Para que o software possa indicar na monitoração se há algum erro em um
determinado servidor, qualquer erro no Poll Record daquele servidor deverá ser
representado nos status ST32 e ST33 de acordo com a ordem em que o servidor é
colocado graficamente. Ou seja, a primeira conexão será representada pelo bit ST32.0.
A segunda conexão será representada pelo bit ST32.1 e assim por diante até a conexão
32 ser representada pelo bit ST33.15. Se houver erro em pelo menos 1 poll Record
daquela conexão, o seu status ST32.x deverá ser setado para simbolizar o erro. O set e o
reset dos bits ST32.0 - ST32.15 e dos bits ST33.0 – ST33.15 serão feitos pelo
firmware. Observe a Tabela 3.1 que representa os valores das conexões em seus
respectivos status.
Mesmo que o usuário tenha configurado Nenhum na tabela Erro, o bit ST32.x
referente àquela conexão ainda assim poderá ser setado pelo firmware. Isto ocorrerá se
a conexão cair ou qualquer outro erro no poll record.
*
B0 – Byte 0; B1 – Byte 1 e assim por diante
†
C1 – Conexão 1; C1 – Conexão 2 e assim por diante
14 Configuração para o Modbus-TCP Cliente.doc
_________________________________________________________
1 localizada na Destilaria esteja desabilitada (ou seja não será acessada pelo nosso
Modbus/TCP cliente) e que o cabo ethernet da MCPU-1 esteja com defeito. Desta
maneira, quando clicarmos em monitoração, teremos algo semelhante ao que acontece na
Figura 3.2.
Observe que a Destilaria encontra-se em cinza pelo fato dela estar desabilitada