A aba Modbus permite a configuração de parâmetros do Driver e do protocolo, conforme a figura a seguir.
Aba Modbus da janela de configurações do 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 caixa de seleçã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 (Serial, Ethernet TCP/IP, RAS, etc.). São três as opções disponíveis:
·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 o 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 forem 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
|
Enable CMS Addressing
|
Esta opção deve ser usada apenas em equipamentos que suportem o protocolo TeleBUS. Se habilitada, o 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 for 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.
No modelo de dados padrão do protocolo são definidos quatro 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 escolher se deseja que o Driver ajuste o valor automaticamente, de forma a permitir o uso do endereço do elemento de dado nos Tags (opção padrão), ou se deseja que o valor enviado no PDU seja o mesmo valor fornecido na configuração dos Tags (parâmetro N4/B4 na configuração numérica). Existem equipamentos que seguem o padrão Modbus em seus mapas de endereços (iniciando em um) e outros que mapeiam seus dados sem o offset padrão, usando diretamente o valor de endereço presente no frame de comunicação (iniciando em zero).
Além deste offset unitário, existem ainda equipamentos que utilizam o antigo padrão de offsets utilizado pela Modicon, empresa criadora do protocolo, padrão conhecido como Modbus Convention, detalhado no tópico Dicas de Endereçamento. 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 do 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 (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 caixa de ediçã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 estiver habilitada, após cada erro de comunicação o 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, o 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 o 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. O Driver ainda mantém suporte a esta opção em aplicações pré-existentes e permite habilitá-la por scripts (veja 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.
|
|