Buscar

UNIDADE_4

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 18 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 18 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 18 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

O protocolo pode ser apresentado como a “linguagem” utilizada pelos componentes de 
uma rede para a troca de dados. Para que isto ocorra, é necessário que 
envolvidos façam uso de um mesmo protocolo.
Uma das funções do protocolo é dividir uma mensagem em pequenos pacotes de 
tamanho fixo, minimizando desta forma a taxa de ocupação do meio no envio de grandes 
mensagens e otimizando o uso da rede
oportunidade de transmitir seus dados. Obviamente cada pacote tem o seu endereço de 
origem e destino previamente estabelecidos e incorporados ao pacote para que somente a 
estação destino o aceite. As interfaces ou 
gravado em hardware a fim de identificá
No passado a maioria dos protocolos utilizados 
RS485 eram proprietários, ou seja, desenvolvidos pelos próprios fabricante
específicas. Atualmente existem protocolos abertos utilizados por vários fabricantes que 
possibilitam a comunicação entre estes diversos equipamentos.
Um dos protocolos que se destacou pala sua larga utilização na area industrial é o 
MODICON MODBUS. 
4.1. Histórico 
O protocolo Modbus foi desenvolvido pela Modicon Industrial Automation
hoje Schneider, para comunicar um dispositivo mestre com outros dispositivos escravos. 
Embora seja utilizado normalmente sobre conexões seriais 
também pode ser usado como um protocolo da camada de aplicação de redes industriais tais 
como TCP/IP sobre Ethernet. Este á talvez o protocolo de mais larga utilização em automação 
industrial, pela sua simplicidade e facilidade 
 Redes Industriais �
Protocolo ModBus
O protocolo pode ser apresentado como a “linguagem” utilizada pelos componentes de 
uma rede para a troca de dados. Para que isto ocorra, é necessário que os dispositivos 
envolvidos façam uso de um mesmo protocolo. 
Uma das funções do protocolo é dividir uma mensagem em pequenos pacotes de 
tamanho fixo, minimizando desta forma a taxa de ocupação do meio no envio de grandes 
mensagens e otimizando o uso da rede, permitindo que outras estações tenham a 
oportunidade de transmitir seus dados. Obviamente cada pacote tem o seu endereço de 
origem e destino previamente estabelecidos e incorporados ao pacote para que somente a 
estação destino o aceite. As interfaces ou placas de rede tem um endereço fixo e único, 
gravado em hardware a fim de identificá-las em uma rede. 
No passado a maioria dos protocolos utilizados nas comunicações seriais RS232
RS485 eram proprietários, ou seja, desenvolvidos pelos próprios fabricantes para aplicações 
. Atualmente existem protocolos abertos utilizados por vários fabricantes que 
possibilitam a comunicação entre estes diversos equipamentos. 
Um dos protocolos que se destacou pala sua larga utilização na area industrial é o 
O protocolo Modbus foi desenvolvido pela Modicon Industrial Automation Systems, 
hoje Schneider, para comunicar um dispositivo mestre com outros dispositivos escravos. 
Embora seja utilizado normalmente sobre conexões seriais padrão RS-232 e RS-485
também pode ser usado como um protocolo da camada de aplicação de redes industriais tais 
como TCP/IP sobre Ethernet. Este á talvez o protocolo de mais larga utilização em automação 
industrial, pela sua simplicidade e facilidade de implementação. 
Unidade 
� 1 � 
 
Protocolo ModBus 
O protocolo pode ser apresentado como a “linguagem” utilizada pelos componentes de 
os dispositivos 
Uma das funções do protocolo é dividir uma mensagem em pequenos pacotes de 
tamanho fixo, minimizando desta forma a taxa de ocupação do meio no envio de grandes 
, permitindo que outras estações tenham a 
oportunidade de transmitir seus dados. Obviamente cada pacote tem o seu endereço de 
origem e destino previamente estabelecidos e incorporados ao pacote para que somente a 
placas de rede tem um endereço fixo e único, 
nas comunicações seriais RS232 e 
s para aplicações 
. Atualmente existem protocolos abertos utilizados por vários fabricantes que 
Um dos protocolos que se destacou pala sua larga utilização na area industrial é o 
Systems, 
hoje Schneider, para comunicar um dispositivo mestre com outros dispositivos escravos. 
485, ele 
também pode ser usado como um protocolo da camada de aplicação de redes industriais tais 
como TCP/IP sobre Ethernet. Este á talvez o protocolo de mais larga utilização em automação 
4 
� 2 � Redes Industriais 
 
 
4.2. Tipos de Protocolos ModBus 
 O protocolo Modbus pode ser utilizado em todos os níveis de rede da Automação 
Industrial. São três os diferentes tipos de protocos Modbus existentes (Modbus TCP/IP, 
Modbus Plus e Modbus Padrão). Na figura abaixo é apresentada uma aplicação com o 
protocolo Modbus atuando nos níveis de supervisão, controle e campos de uma planta 
industria.l 
 
O MODBUS TCP/IP é usado para comunicação entre sistemas de supervisão e 
controladores lógicos programáveis. O protocolo Modbus é encapsulado no protocolo TCP/IP e 
transmitido através de redes padrão ethernet com controle de acesso ao meio por CSMA/CD 
(Carrier-Sense Multiple Acces with Collision Detection). 
O MODBUS PLUS é usado para comunicação entre si de controladores lógicos 
programáveis, módulos de E/S, chaves de partida eletrônica de motores, interfaces homem 
máquina etc. O meio físico é o RS-485 com taxas de transmissão de 1 Mbps, controle de 
 
 Redes Industriais � 3 � 
acesso ao meio por HDLC (High Level Data Link Control ). 
O MODBUS PADRÃO é usado para comunicação dos CLPs com os dispositivos de 
entrada e saída de dados, instrumentos eletrônicos inteligentes (IEDs) como relés de proteção, 
controladores de processo, atuadores de válvulas, transdutores de energia e etc. o meio físico 
é o RS-232 ou RS-485 e o controle de acesso ao meio é o mestre-escravo. 
O padrão MODBUS PLUS define um Protocolo de mensagens na camada de 
aplicação, posicionado no 7º nível do Modelo de Referência OSI que provê 
comunicação “cliente/servidor” entre dispositivos conectados a diferentes tipos de 
barramentos ou topologias de rede. Este padrão também especifica um protocolo de 
comunicação serial para requisições MODBUS PLUS e MODBUS PADRÃO entre um mestre e 
um ou vários escravos conforme a figura abaixo. 
 
 
4.3. Controle de Acesso ao Meio 
Os protocolos de acesso ao meio, regras para acesso ao meio físico, são funções da 
camada de enlace do modelo OSI. Na maioria das vezes foram desenvolvidos para uma 
topologia particular de rede, embora possam ser usados em qualquer topologia. 
A avaliação de protocolos de controle de acesso considera atributos específicos como: 
� 4 � Redes Industriais 
• capacidade: vazão máxima, em porcentagem da banda passante disponível, que o 
método de acesso pode tirar do meio. Variáveis que podem afetar a capacidade são: 
taxa de transmissão, comprimento da rede, número de nós, tamanho do quadro, 
tamanho do cabeçalho, retardo em cada estação. 
• prioridade: desejável principalmente nas aplicações de tempo real. 
• retardo de transferência: soma dos retardos de acesso e transmissão. Embora, no 
geral, se apresente como variável aleatória, em alguns protocolos tem valor máximo 
limitado. 
 O nível de enlace se preocupa exclusivamente com os procedimentos a serem 
seguidos na transmissão e recepção das mensagens, recuperação de erros, sincronismo entre 
os equipamentos em relação à comunicação, conexão e desconexão, etc., deixando para o 
nível de aplicação o tratamento das informações relativas ao processo que se deseja 
supervisionar e/ou controlar. 
 O controle da comunicação é disciplinado por códigos HEXA ou ASCII (dependendo 
do protocolo utilizado) transmitidos em uma determinada sequências sendo que os 
procedimentos referentesao sincronismo entre as mensagens e equipamentos são 
implementadas pelos processos de select e polling. 
Para o protocolo Modbus podemos analisar o funcionamento dos três método de 
acesso utilizado. 
4.3.1. CSMA/CD 
No método CSMA/CD (Carrier-Sense Multiple Acces with Collision Detection) a 
deteção de colisão é feita durante a transmissão. O nó escuta a rede durante toda a 
transmissão e a aborta assim que ocorra colisão, então espera por um tempo para tentar a 
retransmissão. 
Um fator limitante do método é a necessidade que o quadro tenha um tamanho 
mínimo para que uma colisão possa ser detectada por todas as estações. 
Detectada a colisão, duas técnicas de retransmissão podem ser utilizadas: 
• espera aleatória exponencial truncada (truncated exponential back off): ao detectar a 
colisão, a estação espera por um tempo aleatório de 0 a um limite superior. A cada 
 
 Redes Industriais � 5 � 
nova colisão o limite é dobrado, de forma a controlar o canal e mantê-lo estável 
mesmo com tráfego alto. 
• retransmissão ordenada (orderly back off): após a detecção da colisão, as estações só 
podem começar a transmitir em intervalos de tempo a eles determinado previamente. 
Terminada a transmissão das mensagens colididas, a estação com o menor intervalo 
tem direito de transmitir sem colisão. Se não o fizer passa seu direito à segunda, e 
sucessivamente até que ocorra uma transmissão, quando o algoritmo CSMA/CD se 
reinicia. 
O CSMA/CD com espera aleatória exponencial truncada tornou-se padrão 
internacional (ISO 8802-3/IEEE 802.3), sendo atualmente o mais popular, com larga escala de 
produção em chipset para comunicação. 
4.3.2. HDLC 
 Protocolo desenvolvido pela ISO em 1979 com o objetivo de padronizar um protocolo 
orientado a bit para transmissão de dados síncronos half ou full-duplex, com configuração 
ponto a ponto ou multiponto, em linhas comutadas ou permanentes. 
O campo de informações possui tamanho variável, não necessariamente múltiplo de 8 
bits, podendo conter de 1 bit até um tamanho máximo em torno de 2 Kbytes . 
 
FLAG 
8 
BITS 
ENDEREÇO 
8 BITS 
CONTROLE 
8 BITS 
INFORMAÇÃO 
N BITS 
FCS 
16 
BITS 
FLAG 
8 
BITS 
 
Tal protocolo proporciona uma melhor utilização do canal de comunicação por poder 
operar em full-duplex, permitindo o envio de até 7 quadros consecutivos sem a necessidade de 
confirmação individual de recebimento de cada quadro por parte da estação receptora. Isso 
não acontece em protocolos half-duplex (ex: protocolo BSC), onde, para cada mensagem 
enviada, a estação transmissora fica esperando uma confirmação (positiva ou negativa) da 
estação receptora. Este tempo de espera do transmissor por uma resposta do receptor é 
reduzido significativamente em protocolos full-duplex . 
� 6 � Redes Industriais 
4.3.3. Mestre-Escravo (Select / Polling) 
O protocolo Modbus operando em linha serial é um protocolo mestre-escravos. Isso 
significa que somente um mestre é conectado ao barramento ao mesmo tempo. Quanto aos 
escravos, um ou mais nós (número máximo de 247) podem ser conectados a este mesmo 
barramento. 
Uma comunicação Modbus é sempre iniciada pelo mestre. O nó escravo nunca irá 
transmitir dados sem receber uma requisição do nó mestre. Os nós escravos nunca irão se 
comunicar entre eles. O nó mestre inicia somente uma transação Modbus por vez. 
O nó mestre emite uma requisição para um nó escravo em dois modos: 
Unicast – o mestre endereça a somente um escravo. Depois de receber e 
processar a requisição, o escravo retorna uma mensagem de resposta para o mestre. Neste 
modo, uma transação Modbus consiste de 2 mensagens: uma requisição do mestre e 
uma resposta do escravo. Cada escravo deve ter um endereço único (de 1 a 247) de forma 
a poder ser endereçado independentemente de outros nós. 
 
Ao receber a mensagem enviada pelo mestre, o escravo executa a função solicitada e 
envia uma resposta contendo o resultado desta função. Este processo da comunicação é 
chamado de select. 
Ao receber a mensagem, o escravo realiza a função solicitada e envia uma resposta 
contendo o resultado. Este processo da comunicação é chamado de polling. 
Broadcast – o nó mestre pode enviar uma mensagem para todos os escravos. 
Nenhuma resposta deve ser retornada para requisições broadcast enviadas pelo mestre. As 
requisições broadcast são necessariamente mensagens de escrita. Todos os dispositivos 
devem aceitar mensagens broadcast para escrita. O endereço 0 é reservado para 
identificar uma mensagem broadcast. 
 
 Redes Industriais � 7 � 
 
4.4. Modos de Transmissão 
 
Existem dois modos de transmissão: ASCII (American Code for Informastion 
Interchange) e RTU (Remote Terminal Unit), que são selecionados durante a configuração dos 
parâmetros de comunicação. 
Estes modos definem o conteúdo em bits dos campos das mensagens transmitidas 
serialmente no barramento. Eles determinam como a informação é empacotada nos 
campos das mensagens e, posteriormente, como são decodificadas. 
O modo de transmissão (e o padrão da porta serial) deve ser o mesmo em todos os 
dispositivos conectados a linha serial. 
Embora o modo ASCII seja requirido em algumas aplicações específicas, 
interoperabilidade entre dispositivos Modbus pode ser alcançada somente se cada 
dispositivo tiver o mesmo modo de transmissão. Todos os dispositivos devem 
implementar o modo RTU. A modo de transmissão ASCII é opcional. 
Os dispositivos devem ser configurados pelos usuários para o modo de 
transmissão desejado, RTU ou ASCII. O modo padrão deve ser RTU. 
 
4.4.1. Modo de transmissão ASCII 
 Quando o dispositivo for configurado para este modo, para cada palavra de dados da 
mensagem são enviados dois caracteres no padrão ASCII. A principal vantagem do modo 
ASCII é a possibilidade de haver intervalos grandes entre o envio dos dados de uma mesma 
mensagem. Em relação à formação da palavra de dados que comporá o conjunto de dados 
� 8 � Redes Industriais 
(framing) da mensagem, são adotados alguns critérios. 
Como todos os dados são enviados no padrão ASCII, o framing apresentará apenas 
valores de 30H à 39H e 41H à 46H, que correspondem respectivamente aos números 0 à 9 e A 
à F no padrão hexadecimal, que correspondem aos números 0 à 9 e 10 à 15 no padrão 
decimal. 
 A quantidade de bits por cada palavra de dados sempre será igual a 10. 
 - 1 START bit, 7 DATA bits, SEM paridade, 2 STOP 
- 1 START bit, 7 DATA bits, paridade PAR, 1 STOP 
- 1 START bit, 7 DATA bits, paridade IMPAR, 1 STOP 
 O campo de checksum, usado para checar a integridade da mensagem enviada, é 
gerada pelo método LRC. 
 
4.4.2. Modo de transmissão RTU 
 Quando o dispositivo for configurado para este modo, para cada byte (8 bits) na 
mensagem irá conter 2 caracteres hexadecimais de 4 bits.. A principal vantagem do modo RTU 
em relação ao ASCII é a maior densidade de caracteres que é enviada numa mesma 
mensagem, aumentando o desempenho da comunicação. Em relação à formação da palavra 
de dados que comporá o conjunto de dados (framing) da mensagem, são adotados alguns 
critérios. 
 A quantidade de bits por cada palavra de dados sempre será igual a 11. 
 
- 1 START bit, 8 DATA bits, SEM paridade, 2 STOP 
- 1 START bit, 8 DATA bits, paridade PAR, 1 STOP bits 
- 1 START bit, 8 DATA bits, paridade IMPAR, 1 STOP bits 
Paridade par é requerida, outros modos (paridade impar, sem paridade) podem ser 
utilizados. No sentido de garantir maior compatibilidade com outros produtos é 
recomendado suportaro modo sem paridade. O modo de paridade padrão deve ser paridade 
par. 
 
 Redes Industriais � 9 � 
Como os caracteres são transmitidos serialmente: 
Cada caracter é enviado nesta ordem (da esquerda para a direita). Bit menos 
significante ... Bit mais significante. 
 
 
 O campo de checksum, usado para checar a integridade da mensagem enviada, é 
gerada pelo método CRC. 
 
4.5. Regras de Endereçamento ModBus 
 
O espaço de endereçamento Modbus compreende 256 diferentes endereços. 
 
O endereço 0 é reservado para broadcast. Todos os escravos devem reconhecer o 
endereço de broadcast. O mestre Modbus não tem endereço específico, somente os nós 
escravos devem ter um endereço. Os endereços devem ser únicos em um barramento 
Modbus serial. 
 
� 10 � Redes Industriais 
4.6. Formato de Mensagem 
 
 Na transmissão de uma mensagem Modbus, há identificadores de início e fim de 
framing, específicos para cada um dos modos de transmissão. Este recurso permite aos 
dispositivos da rede detectarem o início de uma mensagem, ler o seu campo de endereço e 
determinar qual dispositivo está sendo endereçado (ou todos no caso do acesso ser tipo 
broadcast) e finalmente, ler todo o conteúdo da mensagem até o seu final. 
O protocolo de aplicação Modbus define uma simples unidade de dados de 
protocolo (Protocol Data Unit – PDU) independentemente das camadas adjacentes. 
 
 
As características do protocolo Modbus em um barramento ou topologia de rede 
específica introduzem alguns campos adicionais ao PDU. O cliente que inicializa uma 
transação Modbus constrói um Modbus PDU e, então adiciona campos para que construa o 
PDU apropriado para uma dada comunicação. 
 
 
Em uma comunicação Modbus sobre barramento serial, o campo endereço contém o 
endereço de um determinado escravo. Como descrito anteriormente, os endereços válidos 
para nós escravos estão na faixa de 0 a 247 decimal. Um mestre endereça um escravo 
colocando o endereço do escravo no campo endereço da mensagem. Quando o escravo 
retorna sua resposta, ele coloca o seu próprio endereço no campo endereço da mensagem de 
resposta para permitir que o mestre identifique qual escravo está respondendo. 
 
O código de função indica para o servidor que tipo de ação deve se executada. O
código de função pode ser seguido por um campo de dados que contém parâmetros da
requisição e da resposta. 
O campo de verificação de erro é resultado de um cálculo de verificação de
redundância que é adicionado ao conteúdo da mensagem. Dois métodos para cálculo são
usados, dependendo do modo de transmissão que está sendo utilizado (RTU ou ASCII).
 
4.6.1. Framing no Modo ASCII
 
Neste modo o início das mensagens são identificadas através do caracter dois pontos 
( : ), correspondente ao valor ASCII 
caracteres Retorno de Carro (Carriage Return 
respectivamente com correspondentes em ASCII aos valores 
Os caracteres permitidos para transmissão para todo o resto da mensagem são 0 à 9 
e A à F, respectivamente correspondentes aos caracteres ASCII 
Abaixo é apresentada a tabela ASCII onde pode ser conferido os valores dos caracteres.
 Redes Industriais � 
O código de função indica para o servidor que tipo de ação deve se executada. O
código de função pode ser seguido por um campo de dados que contém parâmetros da
campo de verificação de erro é resultado de um cálculo de verificação de
redundância que é adicionado ao conteúdo da mensagem. Dois métodos para cálculo são
usados, dependendo do modo de transmissão que está sendo utilizado (RTU ou ASCII). 
1. Framing no Modo ASCII 
Neste modo o início das mensagens são identificadas através do caracter dois pontos 
, correspondente ao valor ASCII 3AH, e o seu término é identificado pelo conjunto de 
caracteres Retorno de Carro (Carriage Return – CR) e Avanço de Linha (Line Feed –
respectivamente com correspondentes em ASCII aos valores 0DH e 0AH. 
Os caracteres permitidos para transmissão para todo o resto da mensagem são 0 à 9 
e A à F, respectivamente correspondentes aos caracteres ASCII 30H à 39H e 41H à 
Abaixo é apresentada a tabela ASCII onde pode ser conferido os valores dos caracteres. 
 11 � 
O código de função indica para o servidor que tipo de ação deve se executada. O 
código de função pode ser seguido por um campo de dados que contém parâmetros da 
campo de verificação de erro é resultado de um cálculo de verificação de 
redundância que é adicionado ao conteúdo da mensagem. Dois métodos para cálculo são 
Neste modo o início das mensagens são identificadas através do caracter dois pontos 
, e o seu término é identificado pelo conjunto de 
– LF), 
Os caracteres permitidos para transmissão para todo o resto da mensagem são 0 à 9 
à 46H. 
 
 
� 12 � Redes Industriais 
 
Os dispositivos da rede monitoram continuamente o barramento e quando é detectado 
o caracter 3AH tem início a decodificação do próximo campo, que indica para quem é a 
mensagem que está sendo transmitida. 
Intervalos de até 1 segundo podem ocorrer entre o envio de cada caracter dentro de 
uma mesma mensagem sendo que para intervalos maiores, o escravo assume ocorrência de 
erro. A seguir é mostrado um framing típico no modo ASCII. 
 
 
 
O exemplo a seguir utiliza valores em DECIMAL e respectivos em HEXA e ASCII, 
usados para ilustrar a formação do framing de dados: 
 - endereço do indicador: 69 = 45H = 34H 35H 
 - função Modbus: leitura de registradores: 03 = 03H = 30H 33H 
 - registrador inicial a ser lido: 11 = 0BH – pela norma Modbus: 000AH = 30H 30H 30H 
41H 
 - número total de registradores a serem lidos: 1 = 0001H = 30H 30H 30H 31H 
 - Checksum (LRC) gerado: 173 = ADH = 41H 44H 
Para os valores acima será gerado o seguinte framing de dados: 
 
 
4.6.2. Framing no Modo RTU 
 
Diferentemente do modo ASCII, o modo RTU não possui bytes que indiquem início e 
 
 Redes Industriais � 13 � 
fim de framing. Para identificar estes campos, não deve haver nenhuma transmissão de dados 
por um período mínimo, equivalente a 3.5 vezes o tamanho da palavra de dados. 
Por exemplo, suponha que a taxa de transmissão seja de 19200 bps. Para esta taxa, 
o tempo total para envio de 1 palavra de dados (11 bits) é de 572.9 us (11 x (1 / 19200)) 
portanto, para identificar um início e/ou término de framing, não deve haver transmissão por um 
período mínimo de 2.005 ms (3.5 x 572.9 us). 
Para o restante da mensagem são aceitos todos os caracteres hexadecimais. 
Os dispositivos ficam monitorando o barramento e checando intervalos de silêncio 
que, após detectados, dá início à recepção da mensagem, de maneira similar ao modo ASCII. 
Após a recepção de toda a mensagem, deve ser gerado pelo mestre um intervalo silêncio 
similar ao do início da mensagem, caracterizando o fim da mesma. A seguir é mostrado um 
framing típico no modoRTU. 
 
 
 
Os campos Endereço do Indicador e Função Modbus possuem um único byte ao 
invés de 2 como no modo ASCII e outra particularidade está na sequência de envio dos bytes 
de checksum da mensagem. O primeiro byte enviado é o menos significativo e depois o mais 
significativo. 
 O exemplo a seguir utiliza os mesmos valores do exemplo empregado no modo 
ASCII: 
 - endereço do indicador: 69 = 45H 
 - função Modbus: leitura de registradores: 03 = 03H 
 - registrador inicial a ser lido: 11 = 0BH – pela norma Modbus: 000AH 
 - número total de registradores a serem lidos: 1 = 0001H 
 - Checksum (CRC) gerado: 19627 = 4CABH – pela norma Modbus RTU = ABH 4CH 
� 14 � Redes IndustriaisPara os valores acima será gerado o seguinte framing de dados: 
 
 
 
4.7. Funções ModBus 
 
Existem três categorias de códigos de funções Modbus disponíveis, os códigos ditos 
públicos, os códigos definidos pelo fabricantes e os reservados, normalmente utilizados por 
algumas empresas para registrar produtos, não disponíveis para uso público. 
Serão descritas em detalhes apenas as funções da categoria pública para os modos 
ASCII e RTU mas antes, é necessário saber como os dados são referenciados no protocolo 
Modbus. 
Os códigos variam de 1 a 255 (0x01 a 0xff), mas apenas a faixa de 1 a 127 (0x01 a 
0x7f) é utilizada, já que o bit mais significativo é reservado para indicar respostas de exceção. 
Normalmente, uma resposta inclui o código de função da requisição que lhe deu origem. No 
entanto, em caso de falha, o bit mais significativo do código é ativado para indicar que o 
conteúdo do campo de dados não é a resposta esperada, mas sim um código de diagnóstico. 
 
 
 Redes Industriais � 15 � 
 
 
Função 01 – Lê estado das saídas 
 
Este código de função é utilizado para ler o estado de 1 a 2000 saídas contíguas de 
um dispositivo remoto. A PDU do pedido especifica o endereço inicial (1ª saída) e o número de 
saídas. A mensagem de resposta contém bits de dados correspondents aos estados das 
saídas (1 bit para cada saída). O estado é indicado como: 1=Ligado, 0=Desligado. Se o 
número de saídas não é um múltiplo de 8, eles serão preenchidos com “0” para completar um 
múltiplo de 8. 
 
Função 02 – Lê entradas discretas 
 
Este código de função é utilizado para ler o estado de 1 a 2000 entradas discretas 
contíguas de um dispositivo remoto. A PDU do pedido especifica o endereço inicial (1ª entrada) 
e o número de entradas. A mensagem de resposta contém bits de dados correspondents aos 
� 16 � Redes Industriais 
estados das entradas (1 bit para cada entrada). O estado é indicado como: 1=Ligado, 
0=Desligado. Se o número de entradas não é um múltiplo de 8, eles serão preenchidos com “0” 
para completar um múltiplo de 8. 
 
Função 03 – Lê registradores internos 
 
Este código de função é utilizado para ler o conteúdo de um bloco de registradore es 
internos contíguos de um dispositivo remoto. A PDU do pedido especifica o endereço inicial (1ª 
registrador) e o número de registradores. A mensagem de resposta contém 2 bytes de dados 
para cada registrador. O primeiro byte contém os bits de ordem mais alta e o Segundo byte 
contém os bits de ordem mais baixa. 
 
Função 04 – Lê Registradores de Entrada (Entradas Analógicas) 
 
Este código de função é utilizado para ler de 1 a aproximadamente 125 registradors 
registradores de entrada (entradas analógicas) de um dispositivo remoto. A PDU do pedido 
especifica o endereço inicial (1ª registrador) e o número de registradores. A mensagem de 
resposta contém 2 bytes de dados para cada registrador. O primeiro byte contém os bits de 
ordem mais alta e o Segundo byte contém os bits de ordem mais baixa. 
 
Função 5 – Escreve em uma saída discreta 
 
Este código de função é utilizado para escrever “0” ou “1” em uma única saída 
discreta de um dispositivo remoto. O pedido de escrita especifica uma constante no campo de 
dados para determinar a ação ON / OFF. O valor FF00h liga a saída e o valor 0000h a desliga. 
Qualquer outro valor é inválido e consequentemente não afetará a saída. A PDU especifica o 
endereço da saída a ser manipulada. 
 
 
 Redes Industriais � 17 � 
Função 6 – Escreve em um registrador interno 
 
Este código de função é utilizado para escrever em um registrador interno de um 
dispositivo remoto. A PDU do pedido especifica o endereço do registrador a ser escrito. A 
mensagem de resposta (sem erro) é um eco do pedido, enviada após a execução do comando. 
 
Função 15 – Escreve em saídas 
 
Este código de função é utilizado para escrever (FORCE) em uma série de saídas 
contíguas de um dispositivo remoto. As saídas recebem os valores “1” ON e “0” OFF. A PDU 
do pedido especifica o endereço do registrador a ser escrito. A mensagem de resposta contém 
2 bytes de dados para cada registrador. O primeiro byte contém os bits de ordem mais alta e o 
Segundo byte contém os bits de ordem mais baixa. 
 
Função 16 – Escreve em registradores de retenção 
 
Este código de função é utilizado para escrever em um bloco de registradores 
contíguos de um dispositivo remoto. Os valores a serem escritos nos registradores são 
especificados no campo de dados (2 bytes por registrador). 
 
Função 20 – Leitura de arquivo de registros 
 
Este código de função é utilizado para realizar a leitura de um arquivo (registros) de 
um dispositivo remoto. Os pedidos de dados (comprimento) são providos em termos de bytes e 
a resposta é provida em termos de registros. Um arquivo é um conjunto de registros. Cada 
arquivo contém 10000 registros, endereçados de 0000 à 9999 em decimal ou 0000 à 270Fh. 
Por exemplo, o registro 12 é endereçado como 12. 
� 18 � Redes Industriais 
 
Função 21 – Escrita em arquivo de registros 
 
Este código de função é utilizado para escrever em um arquivo (registros) de um 
dispositivo remoto. Os pedidos de dados (comprimento) são providos em termos de bytes e a 
resposta é provida em termos de words. Um arquivo é um conjunto de registros. 
 
Função 22 – Máscara lógica com registrador 
 
Este código de função é utilizado para modificar o conteúdo de um registrador de 
retenção específico através de operações de mascaramento com o conteúdo do registrador. 
Esta função pode ser utilizada para posicionar (“1”) ou zerar (“0”) bits individuais do registrador. 
 
 
Função 23 – Leitura / Escrita em registradores. 
 
Esta função estabelece uma operação de leitura e uma de escrita em uma única 
transação. O pedido especifica o endereço inicial e o número de registradores de retenção a 
serem lidos e endereço inicial e número de registradores a serem escritos. A resposta normal 
(sem erro) contém os dados do grupo de registradores que foram lidos. 
 
Função 43 – Leitura de Identificação do dispositivo 
 
Esta função permite ler a identificação e informações adicionais relativas às 
características físicas e funcionais de um dispositivo remoto.

Continue navegando