Comunicação em série com o protocolo Modbus

Nov 22, 2024 Deixe um recado

1. Métodos de comunicação básica

 

Existem dois métodos básicos de comunicação: comunicação paralela e comunicação serial.

Comunicação paralela: este é um método de comunicação no qual cada bit de dados é transmitido ao mesmo tempo.

Comunicação serial: Este é um método de comunicação no qual os dados são transmitidos um por um de maneira seqüencial.

 

2. Dois tipos de comunicação serial

 

Duas formas básicas de comunicação serial: comunicação síncrona e comunicação assíncrona.

A comunicação assíncrona transmite um formato de quadro de dados que consiste em um bit de início, 1 a 9 bits de dados e 1 a 2 bits, contando com os bits de início e parada para manter o sincronizado;

O formato do quadro de dados de comunicação síncrona é composto por múltiplos bytes de um quadro, cada quadro possui dois (ou um) caracteres de sincronização como o bit inicial para acionar o relógio de sincronização para começar a enviar ou receber dados.

 

3. Classificação de acordo com a direção da transmissão

 

A comunicação serial pode ser categorizada em Simplex, Half-Duplex e Full-Duplex, de acordo com a direção da transmissão de informações. Se em qualquer momento do processo de comunicação, as informações só poderão ser transmitidas de uma parte A para a outra parte B, é chamada simplex. Se a qualquer momento, as informações podem ser transmitidas de A a B e de B a A, mas apenas pela presença de transmissão em uma direção, é chamada de transmissão semi-duplex. Se, a qualquer momento, houver sinalização bidirecional na linha de A a B e de B a A, ela é chamada de duplex completo.

 

4. Interface de comunicação serial

 

Interface física de comunicação serial de acordo com os padrões e protocolos elétricos para incluir rs -232, rs -422, rs485, etc., aqui principalmente sobre algumas das interface RS485 mais usadas.

 

5. Interface RS485circuito

info-1-1

Como circuito de demonstração, o chip SP485R é frequentemente usado e pode ser incorporado diretamente em um circuito de aplicação RS -485 real. A porta serial padrão do microprocessador está diretamente conectada ao pino RO do chip SP485R via RXD e ao pino DI do chip SP485R via TXD.

 

Saída do sinal R/D do microprocessador controla diretamente o transmissor/receptor de chip SP485R Ativar: R/D Sinal para o "1", o transmissor de chips SP485R é válido, o receptor é proibido; neste momento, o microprocessador pode ser para Rs -485 barramento para enviar bytes de dados; O sinal R / D para o sinal R / D é "0", então o transmissor de chip SP485R é desativado, o receptor é válido; neste momento, o microprocessador pode receber bytes de dados do rs -485 . Neste circuito, a qualquer momento no chip SP485R "receptor" e "transmissor" só pode ter um estado de trabalho.

 

Resistor de pull-up R7 conectado ao pino A e resistor de puxar R8 conectado ao pino B são usados ​​para garantir que o chip SP485R não conectado esteja em um estado ocioso, fornecendo proteção de falhas de rede para melhorar a confiabilidade do RS -485 Nó e a rede.

 

Se o SP485R estiver conectado à porta serial UART do chip Microprocessador 80C51, o pino RO do chip SP485R não precisará ser puxado para cima; Caso contrário, é necessário considerar se adicionar ou não um resistor de pull-up de cerca de 10k ao pino RO de acordo com a situação real.

6. Comunicação em série Modbus

 

Modbus como regra de troca de dados em circuitos de comunicação industrial tem sido amplamente utilizado em vários campos, tornando conveniente se comunicar com dispositivos com o protocolo de comunicação Modbus, como PLCs, inversores, medidores de fluxo, temperatura e umidade, software de configuração de grupo de computadores hospedeiros, software e uma variedade de sensores e instrumentos.

 

O protocolo de comunicação Modbus é dividido em dois modos de comunicação serial, modos de comunicação ASCII e RTU. Em uso, você precisa definir o modo de comunicação e a porta serial RS232, parâmetros de comunicação RS485 (taxa de transmissão, paridade, endereço de escravo, bits de dados, bits de parada, ordem de byte), todos os dispositivos no barramento Modbus devem ter o mesmo modo de comunicação e Parâmetros de comunicação serial.

 

Estrutura do quadro de mensagem Modbus

 

endereço Código da função Endereço de dados Dados 1 Dados... Dados n

CRC16

 

7. Mensagem de comando modbus
Leia os dados
Mestre envia

endereço Código da função Dados Inicie o endereço Alto Dados Inicie o endereço baixo Número de dados altos Número de dados baixos CRC16 High Crc16 Bit Bit

 

Retornar:

endereço Código da função Comprimento de byte Dados 1 alto Dados 1 baixo Dados 2 High Dados 2 Baixos

CRC16 Alto CRC16 BAIXO

 

8. Modbus Key Concepts

 

(1) O computador superior lê os dados cada vez que o intervalo geralmente não é inferior a 100ms

(2) Endereço do dispositivo: Endereço de comunicação de escravos Modbus, não pode haver dois endereços idênticos em uma rede. (3) Código da função: código da função especificado pelo protocolo Modbus.

(4) Registrar endereço e número de registros

O parâmetro no comando mestre é o registro do endereço do registro, leia o comprimento do registro dos n registros. (5) dados de resposta a escravos

Os dados de resposta a escravos são: número de bytes e dados de seção numérica.

 

9. Operações comuns do Modbus Master

 

(1) Leia otimização:Para a leitura de dados do endereço descontínuo, seja lendo ou não embalado, o sistema usa o comando de leitura embalada para concluir a leitura de vários endereços ao mesmo tempo.

(2) Leia o intervalo de otimização:Ao ler a otimização, se o intervalo entre os endereços for menor que esse intervalo, eles serão empacotados juntos e lidos ao mesmo tempo usando o comando de leitura múltipla.

(3) Comprimento máximo do pacote:O comprimento máximo de dados permitiu uma comunicação.

(4) Ordem de byte:Ajuste a ordem de decodificação de 32- bit palavras duplas.

Tome 32- bit inteiro como exemplo para ilustrar o significado da ordem de bytes:.

1234:indica que os componentes de dupla palavra não são processados ​​diretamente decodificados.

Por exemplo: os dados lidos na porta serial são 0000 00 01 significa 1.

2143:indica que os componentes de duas palavras das palavras altas e baixas não são revertidas, mas a palavra dentro dos bytes altos e baixos revertidos.

Por exemplo, os dados lidos na porta serial são {{0}} significa 0x00000100 (ou seja, 256).

3412:indica que as palavras altas e baixas do componente de palavras duplas são revertidas, mas os bytes altos e baixos da palavra não são revertidos.

Por exemplo, os dados lidos na porta serial são {{0}}, que significa 0x00010000 (ou seja, 65536).

4321: Indica que todos os 4 bytes no elemento duplo da palavra são revertidos.

Por exemplo: os dados lidos na porta serial são {{0}} significa 0x 0100 0000 (ie 1677 721).

 

10. Modbus Comissioning Software Modbus Pull

Pegue o endereço de escravo como 1, taxa de transmissão 9600, leia todos os dados em tempo real como exemplo, o método de configuração é o seguinte.
De acordo com a Tabela 2: Iniciar o endereço do registro 4113 do número de registros é 22
1. Os comandos de aquisição de configuração incluem o endereço do dispositivo (1), o código da função Modbus (04), o endereço de registro (4113), o comprimento do registro (2) e o intervalo de aquisição (1000).
info-1-1

2. Defina os dados da porta serial
De acordo com o formato da porta serial escravo (bit de início de 1 bit, bit de dados de 8 bits, bit de parada de 1 bit, sem paridade), defina a figura a seguir:
info-1-1

3. Definindo o formato de exibição de dados
info-1-1

4. Tela de sucesso da comunicação
info-1-1

Enviar inquérito

whatsapp

Telefone

Email

Inquérito