Aba Modbus

<< Clique para Mostrar o Sumário >>

 

Aba Modbus

A aba Modbus permite a configuração de parâmetros deste Driver e do protocolo, conforme a figura a seguir.

Aba Modbus da janela de configurações deste Driver

Aba Modbus da janela de configurações deste Driver

As seções a seguir descrevem as opções de configuração presentes nesta aba.

 

Protocol Options

Este grupo de opções reúne as opções referentes às variações no padrão do protocolo, conforme a tabela a seguir.

Opções de protocolo disponíveis na aba Modbus

Opção

Descrição

Modbus Mode

Nessa opção é possível selecionar o modo do protocolo a ser utilizado. Os modos do protocolo são variações definidas pela norma para melhor adaptá-lo a diferentes meios físicos, tais como Serial, Ethernet TCP/IP, ou RAS, entre outros. As opções disponíveis são as seguintes:

Modo RTU: Modo padrão para uso em comunicação serial. Inclui CRC de 16 bits

Modo ASCII: Também usado em comunicação serial, é utilizado em equipamentos mais simples, que não suportam os requisitos do modo RTU. Utiliza caracteres ASCII para transmissão, onde cada byte contém dois caracteres ASCII, um por nibble, e por isto menos eficiente que o modo RTU e mais raramente encontrado no mercado. Usa LRC (Longitudinal Redundancy Checking) para a verificação de erros

Modo ModbusTCP: Usado para comunicação em modo TCP/IP. Inclui um campo para verificação de transações e não possui sistema de verificação de erros. O campo de transação permite descartar respostas atrasadas, evitando assim que este Driver assuma como resposta válida para o comando atual os frames de resposta a comandos anteriores. Esta situação pode ocorrer se os modos anteriores são encapsulados em TCP/IP

Customize Max. PDU Size

Se habilitada, esta opção permite definir um tamanho máximo personalizado para o PDU (Protocol Data Unit). O PDU é a parte do protocolo que não varia entre os modos ModbusTCP, ASCII e RTU, e que contém a área de dados. O número de bytes de dados suportados em cada comunicação é dado por este valor menos os bytes do cabeçalho, que dependem da função Modbus utilizada. Se esta opção está desabilitada, o tamanho máximo considerado é o valor padrão definido pelo protocolo Modbus versão 1.1b, de 253 bytes. Esta é a opção recomendada para a maioria dos equipamentos

Use Gateway Modbus/TCP

Em modo Ethernet, via Modbus TCP, esta opção indica a presença de um Gateway Modbus para acesso a uma rede Serial RS-485, reservando o Slave ID com valor 0 (zero) para o modo Broadcast. Caso seja uma comunicação direta com um equipamento em modo Ethernet, desabilite esta opção se utilizar um Slave ID com valor 0 (zero)

Enable CMS Addressing

Esta opção deve ser usada apenas em equipamentos que suportem o protocolo TeleBUS. Se habilitada, este Driver passa a aceitar um Word de 16 bits como endereço do escravo, ou seja, passa a ser possível definir valores acima de 255 e abaixo de 65535 como endereço do escravo. Neste caso, o endereço do escravo passa a ser definido no protocolo por três bytes. Além disto, a opção Default Slave Address passa a não funcionar mais

Data Address Model Offset

Esta opção habilita ou desabilita o offset de dados padrão do protocolo, de uma unidade. As opções disponíveis são as seguintes:

Data is addressed from 1 (padrão): O endereço fornecido (endereço do campo Item na configuração por Strings ou o parâmetro N4/B4 na configuração numérica) é decrementado em 1 (um) antes de ser enviado ao equipamento. Este offset é previsto na especificação do protocolo, e portanto esta é a opção padrão

Data is addressed from 0: O endereço fornecido pelo usuário é usado nas requisições do protocolo, sem alterações

Como regra geral, selecione a primeira opção caso o mapa de registradores do equipamento inicie em 1 (um) e a segunda caso inicie em 0 (zero). Verifique também se o fabricante usa offsets adicionais da antiga Modbus Convention. Para mais informações, consulte a seção a seguir

 

DICA

Evite usar o modo RTU do protocolo encapsulado em meio Ethernet TCP/IP. Caso seja necessário encapsular a comunicação serial de equipamentos que utilizem o Modbus RTU em TCP/IP, existem gateways disponíveis no mercado que não somente encapsulam a comunicação serial em Ethernet TCP/IP, como também convertem o Modbus RTU em Modbus TCP. Em último caso, se é inevitável a utilização de Modbus RTU em meio Ethernet TCP/IP, não deixe de habilitar a opção Reconnect after Timeout, descrita na tabela a seguir.

 

Data Address Model Offset

Esta opção de configuração, descrita na tabela anterior, é fonte de frequentes dúvidas no endereçamento dos Tags de Comunicação, pois há muitas variações na maneira como é implementada pelos fabricantes. A seguir apresentamos mais informações sobre este endereçamento.

O modelo de dados padrão do protocolo define os seguintes blocos de dados, ou espaços de endereçamento: Discrete Inputs, Coils, Input Registers e Holding Registers. Em cada um destes blocos os elementos de dados são endereçados iniciando em 1 (um). Por outro lado, a especificação do frame de comunicação define um PDU contendo endereços que podem variar entre 0 (zero) e 65535. A relação entre o endereço fornecido no PDU e o endereço dos elementos de dados, portanto, possui um deslocamento (offset) de 1 (um), ou seja, se no PDU de uma requisição constar o endereço 0 (zero), o elemento de dado acessado é o endereço 1 (um).

Com esta opção da aba Modbus, o usuário pode selecionar se deseja que este Driver ajuste o valor automaticamente, de forma a permitir o uso do endereço do elemento de dado nos Tags, a opção padrão, ou se deseja que o valor enviado no PDU seja o mesmo valor fornecido na configuração dos Tags, o parâmetro N4/B4 na configuração numérica. Existem equipamentos que seguem o padrão Modbus nos mapas de endereços, iniciando em um, e outros que mapeiam os dados sem o offset padrão, usando diretamente o valor de endereço presente no frame de comunicação, iniciando em 0 (zero).

Além deste offset unitário, existem ainda equipamentos que utilizam o antigo padrão de offsets utilizado pela Modicon, empresa criadora deste protocolo, padrão conhecido como Modbus Convention, detalhado no tópico Dicas de Endereçamento (Modbus Convention). Consulte no manual do equipamento o mapa de registradores para verificar o padrão utilizado. Em caso de dúvida, consulte o suporte do fabricante.

 

NOTA

A opção Data Address Model Offset denominava-se Use Older Address nas versões anteriores à versão 2.03, onde a opção Data is addressed from 1 equivale à antiga opção Use Older Address habilitada, e a opção Data is addressed from 0 equivale à opção Use Older Address desabilitada.

 

Outras Opções

A tabela a seguir descreve as demais opções desta aba, referentes ao comportamento deste Driver.

Outras opções disponíveis na aba Modbus

Opção

Descrição

Default Slave Address

Este recurso permite configurar um endereço padrão de escravos para que não seja necessário configurá-los em cada Tag. Para utilizar este recurso, configure o Slave Id, o parâmetro N1/B1 na configuração numérica ou o campo Dispositivo na configuração por Strings, em 1000, ou seja, todos os Tags com Slave Id igual a 1000 têm este valor substituído pelo valor configurado na opção Default Slave Address. Também é possível forçar o uso do endereço padrão em todos os Tags, independente do valor de Slave Id configurado, selecionando-se a opção Use Default Address

Wait Silence on error

Se esta opção está habilitada, após cada erro de comunicação este Driver permanece em loop, recebendo dados até que ocorra um time-out. Isto limpa o canal de recepção e impede que ocorram problemas em futuras comunicações devido à recepção de bytes atrasados que ainda estejam trafegando no momento do erro, e que possam ser confundidos com uma resposta a um novo comando

Reconnect after Timeout (Ethernet only)

Com esta opção habilitada, após qualquer erro de time-out na recepção de frames do equipamento, este Driver promove a desconexão e a reconexão da camada física, limpando a conexão de possíveis frames atrasados que estejam em tráfego e que possam afetar futuras requisições. Esta opção deve sempre ser habilitada caso seja inevitável o uso de Modbus RTU em meio Ethernet TCP/IP em sistemas legados, uma vez que o modo RTU não possui controle de transação, portanto nem sempre é possível distinguir um frame de resposta correto de um outro frame atrasado resultante de leitura anterior, possivelmente de outro endereço, e que tenha falhado por time-out. Para novos projetos, recomenda-se fortemente que NÃO sejam utilizados os modos Modbus RTU ou Modbus ASC em meio Ethernet TCP/IP. Note que é preciso manter habilitada a opção Retry failed connection every da aba Setup do IOKit para que este Driver se reconecte após o time-out. Caso contrário, o time-out apenas gera uma desconexão e cabe à aplicação o gerenciamento desta nova conexão

 

NOTA

A antiga opção Swap Address Delay foi removida da janela de configuração na versão 2.08. Este Driver ainda mantém suporte a esta opção em aplicações pré-existentes e permite habilitá-la por scripts. Para mais informações, consulte o tópico Configuração em Modo Offline. Para aplicações novas, recomenda-se utilizar a opção Inter-frame Delay da aba Serial do IOKit, que substitui esta antiga opção com vantagens.

Esta página foi útil?