Início - Aquisição de Dados - Como testar o sensor MODBUS RTU TSH300/TST300

Como testar o sensor MODBUS RTU TSH300/TST300

Leandro Roisenberg

O que é MODBUS RTU?

MODBUS é um protocolo de comunicação serial. Foi desenvolvido e publicado pela Modicon em 1979 e, de fato, é um padrão serial industrial desde então.

MODBUS é um protocolo de mensagens na camada de aplicação. No modelo OSI, está posicionado no nível 7. O protocolo fornece comunicação cliente-servidor.

MODBUS RTU utiliza RS-232 ou RS-485 como camada física. Em uma rede MODBUS RTU padrão, há um Mestre e até 247 Escravos. Cada Escravo possui um endereço único de 1 a 247. Toda comunicação entre mestre e escravos ocorre no formato requisição-resposta. Diferentes códigos de função especificam diferentes serviços. Os códigos de função fazem parte das PDUs de requisição-resposta.
O formato das PDUs de requisição-resposta é o seguinte:

modbus-rtu-pdu-fields

Mais informações sobre MODBUS RTU podem ser encontradas em www.modbus.org.

MODBUS RTU – camada física

Sistemas MODBUS RTU sobre linha serial devem implementar uma interface elétrica em conformidade com o padrão EIA/TIA-485 (também conhecido como padrão RS-485). Este padrão permite sistemas ponto a ponto e multiponto em uma “configuração de dois fios”.

Em um sistema MODBUS RTU padrão, todos os dispositivos são conectados em paralelo. O número de dispositivos conectados em paralelo depende da impedância dos dispositivos. A interface necessita de pelo menos 3 fios. Dois desses condutores (a configuração de “dois fios”) formam um par trançado balanceado para transmissão de dados bidirecional. O terceiro fio é o terra (“Comum”).

Mesmo que apenas 3 fios sejam necessários, é fortemente recomendado utilizar um cabo UTP padrão como cabo de tronco. Inclusive, o RJ45 é um dos conectores recomendados para sistemas MODBUS RTU.

Para operação adequada, um par de resistores deve ser conectado na linha balanceada RS-485:
– Resistor Pull-Up para tensão de 5V no circuito B- (D1),
– Resistor Pull-Down para o circuito comum no circuito A+ (D0).

Em ambas as extremidades da linha, devem ser instalados terminadores de 120 ohms/0,5 W.

modbus-serial-line

Pinagem RJ45

O RJ45 é um dos conectores utilizados em sistemas MODBUS RTU.

modbus-rtu-connectors

Descrição do Pino Cor dos fios UTP
não conectado Laranja/Branco Traçado
não conectado Laranja
não conectado Verde/Branco Traçado
Linha B- Azul
Linha A+ Azul/Branco Traçado
não conectado Verde
+VDD Marrom/Branco Traçado
Comum (GND) Marrom

Sinais de dados e taxas de transmissão

As taxas de transmissão (baud rates) exigidas para sensores MODBUS RTU padrão são 9600 e 19200, sendo 19200 o valor padrão.

Outras taxas de transmissão possíveis são: 1200, 2400, 4800, 38400 bps, 56 Kbps e 115 Kbps.

O modo de paridade padrão deve ser paridade par com um bit de parada.

Software de teste

Recomendamos o uso do software Simply Modbus Master. O download é gratuito. Todos os programas sem licença operam em modo demonstração com funcionalidade completa.

Recomendamos fortemente que os usuários respeitem o Simply Modbus e adquiram uma licença do programa após os testes.

Testar o sensor MODBUS RTU TSH300/TST300

Para testar a funcionalidade do sensor MODBUS RTU TSH300/TST300, sem o controlador TCW210-TH, você precisará de um PC com sistema operacional Windows, conversor USB para RS-485, cabos UTP e fonte de alimentação 5 VDC.

1. Leia atentamente o manual do usuário do sensor.

2. Realize a fiação correta do sensor, fonte de alimentação, conversor USB para RS-485 e terminador(es).

3. Execute a restauração das configurações de fábrica do sensor. Isso garantirá as seguintes configurações:

– Taxa de transmissão (Baud rate) – 19200;

– Bits de dados – 8;

– Bits de parada – 1;

– Paridade – Par;

– Endereço do Escravo (ID) – 1.

4. Alimente o sensor continuamente. O LED deve piscar brevemente a cada 3 segundos.

modbus-rtu-test-rs485-to-tsh-tst300

5. Execute o software Simply Modbus Master previamente instalado.

6. Defina a porta COM correta.

7. Configure o ID do Escravo, o código de função e os registros conforme mostrado na captura de tela abaixo:

symply-modbus-get-temp

Onde os números na janela de requisição são:

01 Endereço do Escravo (ID)

03 Código de função para leitura dos registros

00 64 Endereço do registro de temperatura em hexadecimal (100 em decimal)

00 02 Número de registros a serem lidos. Um registro equivale a 2 bytes.

B5 D4 CRC dos valores acima

8. Pressione o botão Enviar (Send).

9. Se tudo funcionar corretamente, os seguintes dados aparecerão na janela de Resposta (Response):

01 Endereço do Escravo (ID)

03 Código de função para leitura dos registros

04 Número de bytes de dados

41 D2 9E 68 Dados do registro de temperatura (26,327347 °C)

27 B8 CRC dos valores acima

Leandro Roisenberg

ARTIGOS RELACIONADOS

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Este site utiliza o Akismet para reduzir spam. Saiba como seus dados em comentários são processados.