Thread Content
Moderadores e amigos, a comunicação via barramento 485 é amplamente utilizada, sendo que o protocolo geralmente escolhido é o MODBUS. Para o protocolo MODBUS_RTU, é possível transmitir n dados de cada vez. Qual pode ser o valor de n?
Esse valor de n, na prática, é limitado pelo comprimento total de uma mensagem. Geralmente, essa limitação vem do hardware do módulo de comunicação. Na realidade, geralmente é possível alcançar cerca de 120 bytes. Excluindo os bytes do cabeçalho e do rodapé da mensagem, pode-se estimar que haja pouco mais de 50 registradores, ou seja, cerca de 800/900 valores numéricos. Em geral, nas aplicações comuns, não há necessidade de ler uma quantidade tão grande de dados de uma só vez.
1. Tudo está descrito no protocolo Modbus da empresa Schneider; esse é o material mais oficial e confiável.
2. O comprimento das mensagens, no protocolo Modbus, é armazenado em um byte. Portanto, teoricamente, o número máximo de bytes é FF em hexadecimal, ou seja, 255 bytes.
3. Quanto à escolha do hardware, sinto muito, mas eu não trabalho com produtos. Você pode procurar informações online por conta própria
Este tópico foi editado pela última vez por hoya911 em 07/12/2015, às 11:25. O comprimento dos caracteres enviados pelo master Modbus é fixo: (código de função do dispositivo, endereço inicial alto, endereço inicial baixo, 00, quantidade de dados baixa, CRC alto, CRC baixo). São 8 bytes no total. A resposta do slave Modbus ocupa 1 bit; o valor máximo é FF, ou seja, 255. A estrutura da resposta é: (código de função do dispositivo, quantidade de respostas, dado 1 alto, dado 1 baixo, …, CRC alto, CRC baixo). Como o comprimento fixo é de 5 bytes, temos 255 – 5 = 250. 250/2 = 125. Teoricamente, são 125 respostas. No entanto, recomenda-se que não exceda 120 respostas
Acima está a resposta correta: uma única frame de informação não pode exceder 256 bytes; normalmente, contém até 120 endereços de dados.
O problema que o autor do tópico está abordando na verdade não tem grande importância prática. Isso é algo com o qual os desenvolvedores de Modbus devem se preocupar; os usuários não precisam se preocupar com isso!
O que foi dito lá em cima não está correto; ao trabalhar com comunicações, é necessário levar em consideração a quantidade de dados transmitidos, caso contrário, haverá muitos problemas.
Geralmente, atualmente, é usado em quantidades relativamente pequenas
Correto, a menos que você seja um desenvolvedor de drivers, não é necessário ter esse conhecimento. Basta ter o endereço correto, está tudo bem