![]() |
Mapa de Memória - Versão de Impressão +- Fórum Marrari (https://forum.marrari.com.br) +-- Fórum: PSi 4 (https://forum.marrari.com.br/forumdisplay.php?fid=1) +--- Fórum: Conceitos Básicos (https://forum.marrari.com.br/forumdisplay.php?fid=9) +---- Fórum: Mapa de memória (https://forum.marrari.com.br/forumdisplay.php?fid=15) +---- Tópico: Mapa de Memória (/showthread.php?tid=10) |
Mapa de Memória - PSi4 - 10-06-2022 As informações são armazenadas no dispositivo Slave em quatro tabelas diferentes onde duas tabelas armazenam valores discretos on/off (bobinas) e outras duas tabelas armazenam valores numéricos (registros). Entenda duas tabelas para cada tipo devido ao fato de que uma tabela é apenas leitura (read-only) e a outra tabela é leitura-escrita (read-write) e indepedente da tabela, elas possuem as mesmas caracteristicas, sendo que:
Slave ID Para cada Slave na rede é atribuido um unico endereço de 1 a 247 e quando o Master requisita dados, o primeiro byte da mesagem contem o endereço do Slave. Dessa forma, cada Slave sabe deve ou não ignorar a mensagem. Em outras palabras ele sabe se a mensagem é para ele ou não Código de Função O segundo byte da mensagem enviada pelo Master é o código de função e este numero diz ao escravo qual tabela deve acessar e se deve somente ler ou ler e escrever. CRC O CRC é uma checagem de redundancia ciclica e trata-se de dois bytes adicionais ao final de cada mensagem Modbus para detecção de erro. Cada byte na mensagem é utilizada para calcular o CRC e o dispositivo receptor também calcula o CRC e compara com o recebido pelo Master. Se qualquer bit enviado na mensagem estiver incorreto, o CRC calculado diferira do recebido e um erro será gerado. Exemplo de Comando e Requisição Modbus Imagine dois dispositivos interligados por uma rede serial que se comunica em Modbus. Em determinado momento, o Master precisa acessar os dispositivos Slave com endereço 17 e ler os valores de registro de saída analógica armazenada entre os endereços 40108 a 40110. A requisição do Master para o exemplo acima ficara da seguinte forma: 11 03 006B 00003 7687, onde:
Assim que o dispositivo com o endereço 17 receber a mesagem do Master, ele responderá com a seguinte mensagem: 11 03 06 AE41 5642 4340 49AD, onde:
|