Protocolo
Protocolo uma conveno que controla e possibilita uma conexo, comunicao,
transferncia de dados entre dois sistemas computacionais.
Regras que governam a comunicao entre dispositivos eletrnicos.
MODBUS
Modbus um Protocolo de comunicao de dados utilizado em sistemas de automao
industrial. Criado originalmente na dcada de 1970, mais especificamente em 1979 , pela
fabricante de equipamentos Modicon. um dos mais antigos e at hoje mais
utilizados protocolos em redes de Controladores lgicos programveis (PLC) para aquisio de
sinais de instrumentos e comandar actuadores. A Schneider Electric (atual controladora da
Modicon) transferiu os direitos do protocolo para a Modbus Organization (Organizao
Modbus ) em 2004 e a utilizao livre de taxas de licenceamento . Por esta razo, e tambm
por se adequar facilmente a diversos meios fsicos, utilizado em milhares de equipamentos
existentes e uma das solues de rede mais baratas a serem utilizadas em Automao
Industrial.
Caractersticas tcnicas
O modbus equivale a uma camada de aplicao e pode utilizar o RS-232, RS485 ou Ethernet como meios fsicos - equivalentes camada de enlace (ou link) e camada fsica
do modelo. O mecanismo de controle de acesso do tipo mestre-escravo ou ClienteServidor. A estao mestre (geralmente um PLC) envia mensagens solicitando dos
escravos que enviem os dados lidos pela instrumentao ou envia sinais a serem
escritos nas sadas, para o controle dos atuadores ou nos registradores. O protocolo
possui comandos para envio de dados discretos (entradas esadas digitais) ou numricos
(entradas e sadas analgicas).
A imagem acima mostra um exemplo de rede Modbus com um mestre (PLC) e trs escravos
(mdulos de entradas e sadas, ou simplesmente E/S). Em cada ciclo de comunicao, o PLC
l e escreve valores em cada um dos escravos. Como o sistema de controle de acesso do
tipo mestre-escravo, nenhum dos mdulos escravos inicia comunicao a no ser para
responder s solicitaes do mestre.
Basicamente, uma comunicao em Modbus obedece a um frame que contm o endereo do
escravo, o comando a ser executado, uma quantidade varivel de dados complementares e
uma verificao de consistncia de dados (CRC).
Exemplo-1: Se o PLC precisa ler as 10 primeiras entradas analgicas (do endereo 0000 ao
0009) no mdulo 2. Para isso preciso utilizar o comando de leitura de mltiplos registros
analgicos (comando 3). O frame de comunicao utilizado mostrado abaixo (os endereos
so mostrados em sistema hexadecimal):
00
A resposta do escravo seria um frame semelhante composto das seguintes partes: O endereo
do escravo, o nmero do comando, os dez valores solicitados e um verificador de erros (CRC).
Em caso de erros de resposta (por exemplo um dos endereos solicitados no existe) o
escravo responde com um cdigo de erro.
Nible
= 4 bits
Byte
= 8 bits
Word
= 16 bits
Agora que ja sabemos o que byte podemos ento decifrar o frame da rede modbus.
Exemplo-2: Reposta da pergunta citada no exemplo-1.
RX 02 03 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 (xx xx CRC)
Comandos do MODBUS
Os principais comandos do Modbus so mostrados na tabela abaixo:
Para alguns comandos de diagnstico, tais como reincio de comunicao, reset do mdulo ou
sincronizao de relgio, podem ser utilizados comunicaes do tipo broadcast, ou seja,
destinada a todos os escravos simultaneamente.
Modos de transmisso
Em redes seriais baseadas em RS-485 ou RS-232 o Modbus pode ter dois modos de
transmisso: RTU e ASCII.
Modbus RTU
O termo RTU, do ingls Remote Terminal Unit, refere-se ao modo de transmisso onde
endereos e valores so representados em formato binrio. Neste modo para cada byte
transmitido so codificados dois caracteres. Nmeros inteiros variando entre -32768 e 32767
podem ser representados por 2 bytes. O mesmo nmero precisaria de quatro caracteres ASCII
para ser representado (em hexadecimal). O tamanho da palavra no modo RTU de 8 bits.
Endereo do Escravo
1 byte
Cdigo da Funo
1 byte
Dados
0 a 252 bytes
CRC
2 bytes (CRC-16)
Modbus ASCII
Os dados so dados codificados e transmitidos atravs de caracteres ASCII - cada byte
transmitido atravs de dois caracteres. Apesar de gerar mensagens legveis por pessoas este
modo consome mais recursos da rede. Por exemplo, para transmitir o byte 0x5B este dever
ser codificado em dois caracteres ASCII: 0x35 (5) e 0x42 (B). O tamanho da palavra no
modo ASCII de 7 bits. Somente so permitidos caracteres contidos nos intervalos
0-9
A-F
Endereo
2
caractere
s
Funo
2
caractere
s
Dados
0 a 2 x 252
caracteres
LRC
2
caractere
s
Final
CR+LF (ASCII
0x0Dh + 0x0Ah)
Variaes
Variaes
Modbus/TCP - Aqui os dados so encapsulados em formato binrio em frames TCP para
a utilizao do meio fsico Ethernet (IEEE 802.3). Quando o Modbus/TCP utilizado, o
mecanismo de controle de acesso o CSMA-CD (Prprio da rede Ethernet) e as estaes
utilizam o modelo cliente-servidor.
Modbus Plus - Verso que possui vrios recursos adicionais de roteamento, diagnstico,
endereamento e consistncia de dados. Esta verso ainda mantida sob domnio da
Schneider Electric e s pode ser implantada sob licena deste fabricante.
Protocolo HART
PROFIBUS
PROFIBUS (acrnimo de Process Field Bus) o 2 tipo mais popular sistema de comunicao
em rede Fieldbus ficando atrs somente do protocolo Modbus, sendo que em 2004, estimavase que existiriam mais de 10 milhes de ns instalados mundialmente.
PROFIBUS foi desenvolvido em 1987 por Johan Sartwish Wilman, em So Petersburgo.
Existem trs diferentes verses de PROFIBUS:
ETHERNET
Os padres atuais do protocolo Ethernet so os seguintes: - 10 megabits/seg:
10Base-T Ethernet (IEEE 802.3) - 100 megabits/seg: Fast Ethernet (IEEE 802.3u) - 1
gigabits/seg: Gigabit Ethernet (IEEE 802.3z) - 10 gigabits/seg: 10 Gigabit Ethernet (IEEE
802.3ae)
Porta lgica
Uma porta de software uma conexo virtual que pode ser usada na transmisso de dados. As
mais comuns so as portas TCP e UDP, que so usadas para conexo entre
os computadores e a Internet. J uma porta de hardware serve como elemento de ligao entre
um computador e outro, ou entre um computador e um perifrico.
Porta fsica
Fisicamente, uma porta a parte de um equipamento na qual se conecta um plug ou um cabo.
O termo
O uso do termo "porta", em informtica, deriva da traduo de um falso cognato port, que em
ingls significa "porto". A semelhana fsica com os portos nuticos onde os mesmo atracam
e permitem a transferncia de mercadorias e pessoas. Neste caso o porto informtico permite o
fluxo de informao. Porm, mesmo com a traduo incorreta, o nome "porta" foi bem
assimilado pela lngua portuguesa, pela analogia que se pode fazer com a porta de uma casa,
por exemplo: uma porta, em informtica, o ponto de entrada de um dispositivo externo
no computador.
Portas ou servios
O TCP introduz o conceito de porta tipicamente associado a um servio (camada
aplicao)/ligao especfica. Assim, cada um dos intervenientes na conexo dispe de uma
porta associada (um valor de 16 bit) que dificilmente ser o mesmo do interlocutor. Alguns
servios (que fazem uso de protocolos especficos) so tipicamente acessveis em portas fixas,
conhecidas como portas bem conhecidas, que so aqueles numerados do 1 ao 1023. Alm
destas, existem ainda duas gamas de portas, registradas e privadas ou dinmicas. As portas
bem conhecidas so atribudas pela Internet Assigned Numbers Authority (IANA) e so
tipicamente utilizados por processos com direitos de sistema ou super-utilizador. Nestas portas
encontram-se em escuta passiva os servios triviais, como HTTP, SSH, FTP, etc. Todos os
protocolos da suite IP se encontram registrados dentro desta gama.
A gama de portas privadas segue regras de atribuio especficas do sistema operativo e serve
para abrir ligaes a outras mquinas, como surfar na rede, por exemplo.
Portas TCP/UDP
Port
TCP
UDP
Description
Status
UDP
Reserved
Official
TCP
UDP
Official
TCP
UDP
Official
TCP
UDP
Official
TCP
UDP
Unassigned
Official
TCP
UDP
Official
TCP
UDP
Echo Protocol
Official
TCP
UDP
Unassigned
Official
TCP
UDP
Discard Protocol
Official
Port
TCP
UDP
Description
Status
UDP
Wake-on-LAN
Unofficial
10
TCP
UDP
Unassigned
Official
11
TCP
UDP
Official
12
TCP
UDP
Unassigned
Official
13
TCP
UDP
Official
14
TCP
UDP
Unassigned
Official
15
TCP
UDP
Unofficial
16
TCP
UDP
Unassigned
Official
17
TCP
UDP
Official
18
TCP
UDP
Official
19
TCP
UDP
Official
20
TCP
UDP
Official
21
TCP
Official
22
TCP
Official
UDP
Port
TCP
UDP
Description
Status
23
TCP
UDP
Official
24
TCP
UDP
Official
25
TCP
Official
26
TCP
UDP
Unassigned
Official
27
TCP
UDP
Official
29
TCP
UDP
MSG ICP
Official
33
TCP
UDP
Official
35
TCP
UDP
Official
37
TCP
UDP
TIME protocol
Official
Official
39
TCP
UDP
40
TCP
UDP
Unassigned
Official
42
TCP
UDP
Official
42
TCP
UDP
Unofficial
Port
TCP
43
TCP
47
TCP
49
UDP
Description
Status
WHOIS protocol
Official
UDP
NI FTP[7]
Official
TCP
UDP
Official
50
TCP
UDP
Official
51
TCP
UDP
Official
52
TCP
UDP
Official
53
TCP
UDP
Official
54
TCP
UDP
Official
55
TCP
UDP
Official
56
TCP
UDP
Official
56
TCP
UDP
Unofficial
57
TCP
Official
58
TCP
UDP
Official
64
TCP
UDP
Official
Port
TCP
UDP
Description
Status
67
UDP
Official
68
UDP
Official
69
UDP
Official
70
TCP
Gopher protocol
Official
71
TCP
NETRJS protocol
Official
72
TCP
NETRJS protocol
Official
73
TCP
NETRJS protocol
Official
74
TCP
NETRJS protocol
Official
79
TCP
Finger protocol
Official
80
TCP
Official[10]
81
TCP
TorparkOnion routing
Unofficial
UDP
TorparkControl
Unofficial
82
88
TCP
UDP
Kerberosauthentication system
Official
90
TCP
UDP
Official
Port
TCP
UDP
Description
Status
90
TCP
99
TCP
PointCast (dotcom)
Unofficial
Unofficial
Unofficial
TCP
Official
102
TCP
Official
104
TCP
UDP
Official
105
TCP
UDP
Official
107
TCP
Official
108
TCP
Official
109
TCP
Official
110
TCP
Official
111
TCP
Official
100
101
UDP
UDP
UDP
UDP
Port
TCP
113
TCP
113
UDP
UDP
Description
Status
Official
Official
115
TCP
Official
117
STD
Official
118
TCP
Official
119
TCP
Official
UDP
Official
Official
123
UDP
126
TCP
UDP
135
TCP
UDP
Official
Unofficial
135
TCP
UDP
137
TCP
UDP
Official
138
TCP
UDP
Official
Port
TCP
UDP
139
TCP
UDP
143
TCP
152
TCP
UDP
Official
153
TCP
UDP
Official
156
TCP
UDP
SQL Service
Official
158
TCP
UDP
Unofficial
UDP
Official
UDP
Official
161
Description
Status
Official
162
TCP
170
TCP
Official
175
TCP
Official
177
TCP
Official
179
TCP
Official
194
TCP
Official
UDP
UDP
Port
TCP
UDP
Description
Status
199
TCP
UDP
Official
201
TCP
UDP
Official
209
TCP
UDP
Official
210
TCP
UDP
ANSI Z39.50
Official
213
TCP
UDP
Official
218
TCP
UDP
Official
220
TCP
UDP
Official
259
TCP
UDP
Official
264
TCP
UDP
Official
280
TCP
UDP
http-mgmt
Official
300
TCP
Unofficial
308
TCP
Official
311
TCP
Official
Port
TCP
UDP
Description
Status
318
TCP
UDP
Official
319
UDP
Official
320
UDP
Official
350
TCP
UDP
Official
351
TCP
UDP
Official
366
TCP
UDP
Official
369
TCP
UDP
Rpc2portmap
Official
370
TCP
Official
Official
370
UDP
370
UDP
371
TCP
UDP
ClearCase albd
Official
383
TCP
UDP
Official
384
TCP
UDP
Official
387
TCP
UDP
Official
Port
TCP
UDP
389
TCP
UDP
Official
399
TCP
UDP
Official
401
TCP
UDP
Official
427
TCP
UDP
Official
443
TCP
Official
444
TCP
Official
445
TCP
Official
445
TCP
Official
464
TCP
Official
465
TCP
Official
475
TCP
Official
497
TCP
Dantz Retrospect
Official
UDP
Official
UDP
Modbus, Protocol
Unofficial
500
502
TCP
UDP
UDP
UDP
Description
Status
Port
TCP
UDP
504
TCP
UDP
512
TCP
512
513
UDP
TCP
513
514
UDP
TCP
514
515
UDP
TCP
Description
Status
Official
Official
rlogin
Official
Who[20]
Official
Official
Official
Official
517
UDP
Talk
Official
518
UDP
NTalk
Official
Official
UDP
Official
UDP
520
TCP
520
524
TCP
Port
TCP
UDP
Description
Status
525
UDP
Timed, Timeserver
Official
530
TCP
UDP
RPC
Official
531
TCP
UDP
Unofficial
532
TCP
netnews
Official
Official
Official
Official
533
UDP
540
TCP
542
TCP
543
TCP
Official
544
TCP
Official
545
TCP
Unofficial
546
TCP
UDP
DHCPv6 client
Official
547
TCP
UDP
DHCPv6 server
Official
548
TCP
Official
550
TCP
new-rwho, new-who[20]
Official
UDP
UDP
Port
TCP
UDP
554
TCP
UDP
556
TCP
Description
Status
Official
Official
560
UDP
Official
561
UDP
monitor
Official
UDP
Official
563
TCP
587
TCP
Official
591
TCP
Official
593
TCP
Official
604
TCP
Official
UDP
Official
623
UDP
631
TCP
UDP
Official
631
TCP
UDP
Unofficial
Port
TCP
UDP
635
TCP
UDP
RLZ DBase
Official
636
TCP
UDP
Official
639
TCP
UDP
Official
641
TCP
UDP
646
TCP
UDP
Official
647
TCP
Official
648
TCP
Official
651
TCP
UDP
IEEE-MMS
Official
653
TCP
UDP
Official
654
TCP
Official
657
TCP
UDP
Description
Status
Port
TCP
UDP
Description
Status
partition reconfiguration
660
TCP
666
UDP
Official
Official
666
TCP
Unofficial
674
TCP
Official
688
TCP
Official
691
TCP
MS Exchange Routing
Official
694
TCP
Official
695
TCP
Official
Official
TCP
Official
TCP
698
700
701
UDP
UDP
UDP
Port
TCP
UDP
Description
Status
702
TCP
706
TCP
711
TCP
712
TCP
Official
749
TCP
UDP
Official
UDP
Official
UDP
Unofficial
UDP
Unofficial
Official
750
751
TCP
752
753
TCP
Official
Official
753
UDP
Official
753
UDP
Unofficial
754
TCP
tell send
Official
754
TCP
Unofficial
Port
TCP
754
UDP
Description
Status
UDP
tell send
Official
UDP
Unofficial
760
TCP
782
TCP
Unofficial
783
TCP
Unofficial
mdbe daemon
Official
800
UDP
808
TCP
Official
829
TCP
Unofficial
843
TCP
Adobe Flash[38]
Unofficial
847
TCP
Official
848
TCP
Official
860
TCP
Official
861
TCP
UDP
Official
862
TCP
UDP
Official
873
TCP
Official
UDP
Port
TCP
888
TCP
897
TCP
898
TCP
901
901
UDP
Description
Status
Unofficial
UDP
Unofficial
UDP
Unofficial
TCP
Unofficial
TCP
Unofficial
Unofficial
Official
901
UDP
902
TCP
ideafarm-door
902
TCP
902
UDP
ideafarm-door
Official
902
UDP
Unofficial
903
TCP
Unofficial
904
TCP
Unofficial
911
TCP
Unofficial
Port
TCP
UDP
Description
Status
over OpenSSH
944
953
TCP
973
UDP
Unofficial
UDP
Unofficial
UDP
Unofficial
981
TCP
987
TCP
Unofficial
989
TCP
UDP
Official
990
TCP
UDP
Official
991
TCP
UDP
Official
992
TCP
UDP
Official
993
TCP
Official
995
TCP
Official
999
TCP
Unofficial
Port
TCP
UDP
1002
TCP
Unofficial
1010
TCP
Unofficial
1023
TCP
Reserved[1]
Official
UDP
Description
Status
Ethernet
10BASE-T -- Opera com 4 fios (dois conjuntos de par tranado) num cabo de cat3 ou cat-5. Um hub ou switch fica no meio e tem uma porta para cada n da rede. Essa
tambm a configurao usada para a ethernet 100BASE-T e a Gigabit.
FOIRL -- Link de fibra tica entre repetidores. O padro original para ethernet sobre
fibra.
10BASE-FP -- Uma rede passiva em estrela que no requer repetidores, nunca foi
implementada.
Fast Ethernet
100BASE-T -- Designao para qualquer dos trs padres para 100 Mbit/s ethernet
sobre cabo de par tranado.
Utiliza todos os quatro pares no cabo. Atualmente obsoleto, cabeamento cat-5 o padro.
Limitado a Half-Duplex.
100 Mbit/s ethernet sobre cabeamento cat-3. Suporta full-duplex, e usa apenas dois pares. Seu
funcionamento equivalente ao 100BASE-TX, mas suporta cabeamento antigo.
100BASE-FX -- 100 Mbit/s ethernet sobre fibra ptica. Usando fibra tica multimodo
62,5 mcrons tem o limite de 400 metros.
Gigabit Ethernet
1000BASE-LX -- 1 Gbit/s sobre fibra. Otimizado para distncias maiores com fibra
mono-modo.
1000BASE-CX -- Uma soluo para transportes curtos (at 25m) para rodar ethernet
de 1 Gbit/s num cabeamento especial de cobre. Antecede o 1000BASE-T, e agora
obsoleto.
10GBASE-LR e 10GBASE-ER --
esses
padres
suportam
10 km
40 km