REDES INDUSTRIAIS Prof. Igarashi · Hub Switch Hub Dispositivo 1 Dispositivo 2 Dispositivo 4...
Transcript of REDES INDUSTRIAIS Prof. Igarashi · Hub Switch Hub Dispositivo 1 Dispositivo 2 Dispositivo 4...
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 2
REDES INDUSTRIAIS
Exemplos de aplicação: Automação Industrial
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 3
REDES INDUSTRIAIS
Exemplos de aplicação: Automação de Sistemas Elétricos
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 4
REDES INDUSTRIAIS
Exemplos de aplicação: Automação Veicular
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 5
REDES INDUSTRIAIS
Exemplos de aplicação: Automação da Aviação
Canal do Youtube:
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 6
REDES INDUSTRIAIS
Exemplos de aplicação: Automação da Agricultura
Rastreamento: ¨Transformar o campo em fábrica¨
José Carlos Bueno (Gerente)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 7
REDES INDUSTRIAIS
Exemplos de aplicação: Automação de Serviços
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 8
CONCEITOS GERAIS DE REDES DE COMUNICAÇÃO DE DADOS
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 9
Definição de Comunicação e de Protocolo de Comunicação
Pode-se definir como Comunicação o processo que envolve a transmissão e a recepção de mensagens entre uma fonte emissora e um destinatário receptor,
no qual as informações são transmitidas através de um meio físico (ar, fios elétricos, etc.) através de recursos físicos (som, luz, eletricidade, etc.) segundo
um conjunto de regras pré-determinadas. A este conjunto de regras pode-se dar o nome de Protocolo de Comunicação.
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 10
REDES DE COMUNICAÇÃO DE DADOS
IoT (Internet of Things)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 11
REDES DE COMUNICAÇÃO DE DADOS
Big Data, Computação Cognitiva e Cloud Computing
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 12
REDES DE COMUNICAÇÃO DE DADOS
Industria 4.0
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 13
REDES DE COMUNICAÇÃO DE DADOS
Cybersecurity
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 14
Conceitos gerais de redes de comunicação de dados
- Modelos de comunicação
- Topologia de rede
- Formatos de transmissão dos dados binários
- Fluxo de dados
- Metodologias para a obtenção de informações
- Modalidades de endereçamento
- Padrões físicos para a transmissão de dados
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 15
Modelos de comunicação
Refere-se a forma como os dispositivos se organizam para definir como serão
feitas as solicitações e as respostas na rede.
Os principais modelos são:
- Mestre-escravo
- Multimestre
- Peer-to-peer
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 16
Mestre-escravo
Principais características:
- somente um dispositivo mestre na rede.
- demais dispositivos são escravos.
- os escravos somente respondem as solicitações do mestre.
- não ocorrem colisões no barramento de rede
Mestre
Escravo A
Escravo B
Escravo C
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 17
Multimestre
Principais características:
- mais de um dispositivo pode ser definido como mestre na rede.
- demais dispositivos são escravos.
- os escravos somente respondem as solicitações do mestre.
- mais de um mestre pode solicitar informações, portanto, podem ocorrer
colisões.
Mestre A
Escravo A
Escravo B
Escravo C
Mestre B
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 18
Peer-to-peer (ponto a ponto)
Principais características:
- quaisquer dispositivos podem ser mestres ou escravos.
- antes da troca de informações é definido através de mensagens específicas um
par de dispositivos que irão trocar informações.
- pode-se definir neste par de dispositivos quem será o mestre e quem será o
escravo.
- mais de um solicitante na rede, portanto, podem ocorrer colisões.
Dispositivo 1
Dispositivo 3
Dispositivo 4
Dispositivo 5
Dispositivo 2
Conexão lógica
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 19
Conceitos gerais de redes de comunicação de dados
- Modelos de comunicação
- Topologia de rede
- Formatos de transmissão dos dados binários
- Fluxo de dados
- Metodologias para a obtenção de informações
- Modalidades de endereçamento
- Padrões físicos para a transmissão de dados
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 20
Topologia de rede
Refere-se a forma como os dispositivos estão fisicamente interligados.
Os principais modelos são:
- Barramento
- Anel
- Estrela
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 21
Barramento
Principais características:
- geralmente o meio físico é um par de fios que é compartilhado por todos os
dispositivos da rede.
- quando se remove um dispositivo da rede ela continua operando.
- quando ocorrer um curto em qualquer ponto da rede toda a rede para.
Dispositivo 1
Dispositivo 3
Dispositivo 4
Dispositivo 5
Dispositivo 2
V(t)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 22
Anel
Principais características:
- geralmente utiliza um par de fios
- normalmente a informação circula em um determinado sentido.
- quando ocorrer um curto em um trecho da rede somente aquele trecho para.
- quando se remove um dispositivo da rede toda a rede para.
Dispositivo 1
Dispositivo 2
Dispositivo 3
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 23
Estrela
Principais características:
- necessita de um dispositivo central (hub, switch) encarregado de replicar as
mensagens.
- caso um dos trechos de rede apresentar problemas somente o trecho para.
- caso ocorra um problema no dispositivo central todos os dispositivos a ele
conectados param.
Dispositivo central
Dispositivo 1
Dispositivo 2
Dispositivo 3
Dispositivo 4
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 24
Hub Switch
Hub
Dispositivo 1
Dispositivo 2
Dispositivo 4
Dispositivo 3
Switch
Dispositivo 1
Dispositivo 2
Dispositivo 4
Dispositivo 3
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 25
Conceitos gerais de redes de comunicação de dados
- Modelos de comunicação
- Topologia de rede
- Formatos de transmissão dos dados binários
- Fluxo de dados
- Metodologias para a obtenção de informações
- Modalidades de endereçamento
- Padrões físicos para a transmissão de dados
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 26
Formatos de transmissão dos dados binários
Refere-se a forma de transmissão dos dados binários no barramento de rede.
Os principais modelos são:
- Serial
- Paralelo
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 27
Serial
Os bits são transmitidos de forma sequencial, um a um.
Dispositivo 1
Dispositivo 2
V(t)
1 0 1 1 0 1 0 0
V(t)
t
Valor B4H = 1 0 1 1 0 1 0 0B
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 28
Paralelo
Os bits são transmitidos simultaneamente através de várias linhas de dados.
Dispositivo 1
V1(t)
Valor B4H = 1 0 1 1 0 1 0 0B
Dispositivo 2
V2(t)
V3(t)
.....
1
0
1
1
0
1
0
0
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 29
Serial Paralelo
Quantidade de fios Menor Maior
Velocidade Menor Maior
Custo Menor Maior
Distância Maior Menor
Tabela comparativa
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 30
Conceitos gerais de redes de comunicação de dados
- Modelos de comunicação
- Topologia de rede
- Formatos de transmissão dos dados binários
- Fluxo de dados
- Metodologias para a obtenção de informações
- Modalidades de endereçamento
- Padrões físicos para a transmissão de dados
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 31
Fluxo de dados
Refere-se a maneira como as solicitações e as respostas podem transitar em
uma determinada rede.
Os principais modelos são:
- Simplex
- Half-duplex
- Full-duplex
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 32
Simplex
- As mensagens fluem na rede somente em um sentido.
- Maximiza o uso do canal de comunicação.
- Não existe a possibilidade de confirmação de recepção da mensagem enviada.
Dispositivo 1
Dispositivo 2
mensagem
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 33
Half-duplex
- As mensagens fluem em ambos os sentidos, mas não simultaneamente.
- Reduz o uso do canal de comunicação.
- Existe a possibilidade de confirmação de recepção da mensagem enviada.
Dispositivo 1
Dispositivo 2
solicitação
Dispositivo 1
Dispositivo 2
resposta
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 34
Full-duplex
- As mensagens fluem em ambos os sentidos, simultaneamente.
- Maximiza o uso do canal de comunicação.
- Existe a possibilidade de confirmação de recepção da mensagem enviada.
Dispositivo 1
Dispositivo 2
solicitação A
solicitação B
Dispositivo 1
Dispositivo 2
resposta B
resposta A
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 35
Conceitos gerais de redes de comunicação de dados
- Modelos de comunicação
- Topologia de rede
- Formatos de transmissão dos dados binários
- Fluxo de dados
- Metodologias para a obtenção de informações
- Modalidades de endereçamento
- Padrões físicos para a transmissão de dados
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 36
Metodologias para a obtenção de informações
Refere-se a maneira como as solicitações e as respostas são realizadas para se
obter as informações desejadas na rede.
Os principais modelos são:
- Pooling
- Token ring
- Intervalo de tempo constante
- Evento
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 37
Pooling
É feita uma varredura (scan) com todos os dispositivos que se deseja obter
informações.
M
S1 S2 S3
M
S1 S2 S3
M
S1 S2 S3
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 38
Token ring
Utilizado para gerenciar o fluxo de informações em redes na configuração em
anel através de mensagem token.
A
mensagem
B
C
A B
C
A B
C
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 39
Intervalo de tempo constante
A cada intervalo de tempo programado previamente nos dispositivos uma
solicitação é realizada.
Mestre A
Escravo A
Escravo B
Escravo C
Mestre B
TA = 1s TB = 100ms TC = 300ms
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 40
Evento
O envio da mensagem ocorre quando acontecer um determinado evento
definido no dispositivo.
Configuração interessante para otimização de tráfego na rede.
Mestre
Escravo A
Escravo B
Escravo C
evento
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 41
subestação alimentador
Evento
Exemplo de automação dos religadores de poste
supervisório
138KV
religador religador
13,8KV
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 42
Transformador de poste, religador de poste e alimentador
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 43
evento
subestação alimentador
Evento
Exemplo de automação dos religadores de poste
supervisório
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 44
Conceitos gerais de redes de comunicação de dados
- Modelos de comunicação
- Topologia de rede
- Formatos de transmissão dos dados binários
- Fluxo de dados
- Metodologias para a obtenção de informações
- Modalidades de endereçamento
- Padrões físicos para a transmissão de dados
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 45
Modalidades de endereçamento
Geralmente, cada dispositivo da rede precisa ser identificado com um número
para que as mensagens possam ser encaminhadas para ele. Este número é
chamado Endereço de Rede.
As modalidades de endereçamento se referem a forma como as mensagens são
endereçadas.
Os principais modelos são:
- Unicast
- Multicast
- Broadcast
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 46
Unicast
Nesta modalidade a mensagem é endereçada somente para um determinado
dispositivo.
Dispositivo 1
Dispositivo 3
Dispositivo 4
Dispositivo 5
Dispositivo 2
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 47
Dispositivo 1
Dispositivo 3
Dispositivo 4
Dispositivo 5
Dispositivo 2
Multicast
Nesta modalidade a mensagem é endereçada para um determinado grupo de
dispositivos.
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 48
Broadcast
Nesta modalidade a mensagem é endereçada para todos os dispositivos da
rede.
Dispositivo 1
Dispositivo 3
Dispositivo 4
Dispositivo 5
Dispositivo 2
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 49
Dispositivo 1
Dispositivo 3
Dispositivo 4
Dispositivo 5
Dispositivo 2
V(t)
Endereçamento Unicast, Multicast e Broadcast na
topologia de rede em barramento
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 50
Conceitos gerais de redes de comunicação de dados
- Modelos de comunicação
- Topologia de rede
- Formatos de transmissão dos dados binários
- Fluxo de dados
- Metodologias para a obtenção de informações
- Modalidades de endereçamento
- Padrões físicos para a transmissão de dados
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 51
Padrões físicos para a transmissão de dados
Refere-se as características físicas do meio no qual os dados são transmitidos.
Os principais modelos são:
- RS232
- RS485
- Fibra óptica
- Wireless
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 52
RS232
Principais características:
- Transmissão dos dados através de sinais elétricos.
- Níveis lógicos são implementados de forma inversa ao valor da tensão:
- nível lógico 0 = +7V (aprox.)
- nível lógico 1 = -7V (aprox.)
- Todos os sinais são referenciados a um terra em comum.
- Possui uma via para transmissão e uma via para recepção.
- Distância máxima da ordem de algumas dezenas de metros.
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 55
RS485
Principais características:
- Transmissão dos dados através de sinais elétricos.
- Os dados são transmitidos de forma diferencial.
- A mesma via pode ser utilizada tanto para transmissão quanto para recepção.
- Distância máxima da ordem de algumas centenas de metros.
- Até 32 dispositivos conectados num mesmo barramento
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 56
RS485
Transmissão diferencial dos dados
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 57
RS485
Interligação dos dispositivos na configuração barramento
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 58
RS485
Velocidade de transmissão x distância
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 59
Fibra óptica
Principais características:
- Transmissão de dados através da propagação de um feixe de luz.
- A mesma via pode ser utilizada tanto para transmissão quanto para recepção.
- Distância máxima da ordem de algumas centenas de metros.
- Atinge altas velocidades de comunicação.
- São mais imunes as interferências eletromagnéticas.
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 60
Luz
Modelos utilizados para análise
- Óptica física
- Óptica eletromagnética
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 62
Fibras ópticas
Princípio de funcionamento
www.thefoa.org
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 63
Fibras ópticas
Modelos de fibras ópticas
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 65
Introdução as Redes Sem Fio (Wireless)
Transmissão através de ondas de rádio
- Princípios básicos de antena (ex: antena dipolo)
- Princípios básicos de modulação (ex: AM-DSB-FC)
- Modulação digital
- Dispositivos: Router, Repetidor, Access Point
- Exemplos de protocolos para redes sem fio por ondas de rádio
Transmissão através de luz
- Padrão Li-Fi
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 66
Princípios básicos de antenas Ondas eletromagnéticas
James Clerk Maxwell (1831 – 1879)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 67
Princípios básicos de antenas Antena dipolo básica
Comprimento = __c__ de onda () f
c = velocidade da luz (300 000 000 m/s) f = frequência do sinal (Hertz)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 68
Princípios básicos de antenas Comprimento da antena dipolo
Para um melhor rendimento
L =
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 69
Princípios básicos de antenas Alguns modelos de antenas
Antena Dipolo Antena Yagi
Excitador Refletor Diretores
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 70
Princípios básicos de modulação A modulação AM-DSB-FC
Porque modular um sinal?
Ex: comprimento da antena p/ transmissão sinal 20KHz
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 71
Princípios básicos de modulação A modulação AM-DSB-FC
(Amplitude Modulation – Double Side Band – Full Carrier)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 72
Princípios básicos de modulação A modulação AM-DSB-FC
(Amplitude Modulation – Double Side Band – Full Carrier)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 73
Princípios básicos de modulação A modulação AM-DSB-FC
(Amplitude Modulation – Double Side Band – Full Carrier)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 74
Princípios básicos de modulação Outros tipos de modulação
AM-DSB-SC (Amplitude Modulation – Double Side Band – Supressed Carrier) AM-SSB (Amplitude Modulation – Single Side Band) FM (Frequency Modulation) PM (Phase Modulation)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 75
Princípios básicos de modulação
Exercício: - Qual seria a distribuição espectral de um sinal de áudio que
possui uma banda de 0Hz a 20KHz modulado em AM-DSB-FC com uma portadora em 780KHz (rádio CBN)?
- Qual seria o comprimento aproximado de uma antena dipolo 1/2L utilizado para transmitir este sinal?
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 77
Modulação digital Modulações básicas
a) QPSK (Quadrature Phase Shift Keying) b) QAM-16 (Quadrature Amplitude Modulation – 16) c) QAM-64 (Quadrature Amplitude Modulation – 64)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 78
Padrões físicos para a transmissão de dados (Wireless) Router: Encaminha pacotes de dados entre redes de computadores de nomes diferentes. Repetidor: Repete uma determinada rede com as mesmas características, inclusive o mesmo nome. Access Point: Gera uma rede sem fio a partir de uma rede com fio.
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 79
Redes Ad-Hoc Rede onde todos os dispositivos podem assumir papel de roteador
encaminhando mensagens recebidas para dispositivos vizinhos
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 80
Protocolos para redes sem fio por ondas de rádio Exemplos de protocolos
- IEEE 802.11 (Wi-Fi)
- Bluetooth
- Zigbee
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 81
Redes wireless através de luz – O padrão Li-Fi
Professor Harald Hass University of
Edinburgh (UK)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 83
Análise Li-Fi x Wi-Fi - Fluxo de dados?
- Segurança?
- E se a luz apagar?
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 86
Pirâmide da Automação
Ex: Automação do Sistema Elétrico Brasileiro
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 88
Operador Nacional do Sistema Elétrico (ONS)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 90
Redes analógicas
- Antes do surgimento da tecnologia digital já existia a necessidade de se
transmitir informação entre diferentes equipamentos
- No passado se transmitiam informações através da variação proporcional de
uma grandeza elétrica (geralmente tensão ou corrente)
- Padrões mais adotados:
- 0 a 20mV
- 0 a 20mA
- 4 a 20mA
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 91
Redes analógicas (Exercício)
Sensor CLP
Range: 0o a 200oC
Interface: 4 a 20mA
Medido
120oC
I = ?
R
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 93
Introdução aos protocolos de comunicação de dados
- Protocolos de rede são regras pré-estabelecidas de uma determinada rede de
comunicação de dados para a troca de mensagens entre os dispositivos.
- Para esta introdução será utilizado um protocolo mais simples, muito utilizado
em automação elétrica, que servirá como base para compreender diversos
conceitos: o MODBUS-RTU.
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 94
Protocolo MODBUS-RTU
- Desenvolvido pela empresa MODICON na década de 70 inicialmente para uso
em seus CLPs.
- Atualmente a MODICON pertence a empresa Schneider Electric.
- Seus direitos foram transferidos para a Modbus Organization em 2004.
- É um protocolo totalmente aberto (ou seja, o acesso a sua documentação é
gratuito e o seu uso em equipamentos é livre de taxa de licenciamento).
- É um protocolo simples de ser implementado e possui grande versatilidade.
- Possibilidade de implementação em redes Ethernet (MODBUS over TCP/IP)
www.modbus.org
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 95
MODBUS-RTU
Classificação básica de uma rede MODBUS-RTU
- Modelos de comunicação : Mestre, Multimestre e Peer-to-peer
- Topologia de rede: Barramento, Anel ou Estrela
- Formatos de transmissão dos dados binários: Serial ou Paralelo
- Fluxo de dados: Simplex, Half-Duplex ou Full-Duplex
- Metodologias para a obtenção de informações: Pooling, Token-Ring ou Event
- Modalidades de endereçamento : Unicast, Multicast ou Broadcast
- Padrões físicos para a transmissão: RS232, RS485, Fibra óptica ou Wireless
M
S1 S2 S3
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 97
MODBUS-RTU
Como os dados são transmitidos serialmente: a codificação dos dados (bytes)
Conversor USB/RS485
Dispositivo 1
Dispositivo 2
Dispositivo 3
V(t)
Frame MODBUS-RTU
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 98
MODBUS-RTU
Como os dados são transmitidos serialmente: a codificação dos dados (bytes)
Start: star bit (nível lógico 0).
bits de 1 a 8: dado (bit 1 o menos significativo, e o bit 8 o mais significativo).
Par: bit de paridade:
par: total de “1s” entre o start e o stop bits é um número par.
ímpar: total de “1s” entre o start e o stop bits é um número ímpar.
sempre 1: bit sempre nível lógico 1.
sempre 0: bit sempre nível lógico 0.
sem paridade: bit de paridade não transmitido
Stop: stop bit (nível lógico 1).
1 stop bit: 1 bit no final
2 stop bits: 2 bits no final
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 99
MODBUS-RTU
Como os dados são transmitidos serialmente: a codificação dos dados (bytes)
Exemplo: transmissão do valor 5CH = 0101 1100B com paridade ímpar
Bits gerados:
V(t)
t
1
0
Bit 8 Bit 1
Bit 8 Bit 1
Caracter MODBUS-RTU
0 0 0 1 1 1 0 1 0 1 1
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 100
MODBUS-RTU
Como os dados são transmitidos serialmente: a codificação dos dados (bytes)
Conversor USB/RS485
Dispositivo 1
Dispositivo 2
Dispositivo 3
V(t)
Frame MODBUS-RTU ex: valor 5CH
V(t)
t
1
0 0 0 0 1 1 1 0 1 0 1 1
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 101
MODBUS-RTU
Siglas de três caracteres para identificação de paridade
1º caractere: quantidade de bits de dados transmitidos
2º caractere: lógica de paridade implementada
O -> odd (ímpar)
E -> even (par)
M -> mark (sempre 1)
S -> space (sempre 0)
N -> none (sem paridade)
3º caractere: quantidade de stop bits
Ex: 8N1 -> 8 bits de dados, paridade none e 1 stop bit
7E2 -> 7 bits de dados, paridade even e 2 stop bits
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 103
MODBUS-RTU
Tempo de transmissão do frame
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 104
MODBUS-RTU
Tempo de transmissão do frame
- Velocidade informada em bits por segundo, ou seja, em bps.
- Exemplos de velocidades padrão: 9600bps, 19200bps, 28800bps.
- Quando se utiliza “K” é igual a 103, e não 1024, ou seja:
9,6Kbps = 9,6 x 103 = 9600bps
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 105
MODBUS-RTU
Tempo de transmissão do frame
Exemplo: cálculo do tempo de transmissão do frame abaixo:
01H 03H 00H 00H 00H 02H 5AH 71H
admitindo:
- paridade par
- 1 stop bit
- velocidade de 9600bps
Qtde de bits em cada caracter: 1 start + 8 dados + 1 parid + 1 stop = 11 bits
Qtde total de bits transmitidos: 8 caracteres x 11 bits = 88 bits
Tempo de transmissão: ( 1 / 9600 ) x 88 bits = 9,16ms
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 106
MODBUS-RTU
Tempo de transmissão e identificação de fim de frame
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 107
MODBUS-RTU
Taxa efetiva de transmissão
- Representa a ocupação do canal na transmissão efetiva da informação
- Pode ser calculado através da fórmula:
Taxa efetiva = qtde de bits de dados x 100%
qtde total de bits transmitidos
Exemplo: calcular a taxa efetiva de transmissão para a transmissão de um único
caracter MODBUS-RTU na configuração 8N2.
Vídeo sobre ajuste serial softstarter Schneider
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 110
Tipos de variáveis
- Variáveis são utilizadas para expressar o estado, ou o valor, de determinadas
grandezas do sistema.
- No MODBUS-RTU existem duas categorias de variáveis:
* variáveis tipo Register (Registro): representam grandezas de natureza
analógica. Ex: tensão de linha, carga do trafo, corrente de linha.
* variáveis tipo Coil (Bobina): representam grandezas de natureza binária,
com dois estados. Ex: posição de contatos, indicação luminosa.
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 111
Variáveis tipo Register
- Expressam grandezas de natureza analógica.
- Tamanho de 16 bits (número inteiro), portanto, faixa de valores de 0 a 65535.
ex: tensão de linha = 13800 V → registro = 13800D = 35E8H
- Utilização, por exemplo, de campo unit para expressar valores decimais. Este
campo informa quanto vale cada bit do registro.
ex: corrente de linha = 547,2 A → admitindo campo unit = 0,1A
547,2 A = 5472 x 0,1A
portanto, registro = 5472D = 1560H
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 112
Variáveis tipo Register
- São identificados dentro dos dispositivos através de um número de 16 bits,
chamado Endereço de Registro.
- Dispositivos MODBUS-RTU informam seus registros disponíveis através de uma
Tabela de Registros.
Exemplo de tabela de registros:
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 113
Variáveis tipo Coil
- Expressam grandezas de natureza binária.
- Tamanho de 1 bit (somente dois estados).
- Utilização, por exemplo, de campo convenção para informar a convenção
adotada, ou seja, o que “0” significa e o que “1” significa.
ex: contato = fechado → admitindo convenção: 0 = aberto / 1 = fechado
portanto, coil = 1
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 114
Variáveis tipo Coil
- São identificados dentro dos dispositivos através de um número de 16 bits,
chamado Endereço de Coil.
- Dispositivos MODBUS-RTU informam seus coils disponíveis através de uma
Tabela de Coils.
Exemplo de tabela de coils:
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 117
Construção do frame
- Tamanho máximo do frame: 256 bytes
- Composto por quatro campos: Slave Address, Function Code, Data e CRC
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 118
Construção do frame
Slave Address
- Número que identifica o endereço físico do dispositivo slave na rede.
- Valor único para cada dispositivo slave.
-Faixa de valores:
* 0 : Broadcast
* 1 a 247 : Endereços individuais dos slaves
* 248 a 255 : Reservados
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 119
Construção do frame
Function Code
- Número que identifica a função a ser executada pelo slave.
- Exemplos de funções mais utilizadas:
* código 3 : leitura de registro (read holding register)
* código 6 : escrita de registro (write single register)
* código 1 : leitura de coil (read coils)
* código 5 : escrita de coil (write single coil)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 120
Construção do frame
Data
- Dados (bytes) referentes a função executada
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 121
Construção do frame
CRC
- Utilizado para checagem de integridade da mensagem
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 122
Construção do frame
Utilizando o simulador MODBUS-RTU
Download no site: gigarashi.wordpress.com
Solicitação
Resposta
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 123
Construção do frame
Configuração da interface serial dos dispositivos
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 124
Construção do frame
Exemplo de configuração da interface serial dos dispositivos
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 125
Construção do frame
Função: Leitura de Registro (código 03H)
Objetivo: Ler o valor de determinados registros de um determinado dispositivo
Sintaxe:
Solicitação Resposta
Byte Descrição Byte Descrição
1 End. Slave 1 End. Slave
2 Código função (03H) 2 Código função (03H)
3 End. Inicial (HI) 3 Contador de bytes dos registros
4 End. Inicial (LO) 4 Valor 1º registro (HI)
5 Nº de registros (HI) 5 Valor 1º registro (LO)
6 Nº de registros (LO) ... ...
7 CRC (LO) penúlt. CRC (LO)
8 CRC (HI) último CRC (HI)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 126
Construção do frame
Exemplo: Ler os valores das correntes medidas nas fases A e B.
Solicitação Solicitação a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 ???
2 Código função (03H) 2 ???
3 End. Inicial (HI) 3 ???
4 End. Inicial (LO) 4 ???
5 Nº de registros (HI) 5 ???
6 Nº de registros (LO) 6 ???
7 CRC (LO) 7 ???
8 CRC (HI) 8 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 127
Construção do frame
Exemplo: Ler os valores das correntes medidas nas fases A e B.
Solicitação Solicitação a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H → endereço do slave
2 Código função (03H) 2 ???
3 End. Inicial (HI) 3 ???
4 End. Inicial (LO) 4 ???
5 Nº de registros (HI) 5 ???
6 Nº de registros (LO) 6 ???
7 CRC (LO) 7 ???
8 CRC (HI) 8 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 128
Construção do frame
Exemplo: Ler os valores das correntes medidas nas fases A e B.
Solicitação Solicitação a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função (03H) 2 03H → código da função
3 End. Inicial (HI) 3 ???
4 End. Inicial (LO) 4 ???
5 Nº de registros (HI) 5 ???
6 Nº de registros (LO) 6 ???
7 CRC (LO) 7 ???
8 CRC (HI) 8 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 129
Construção do frame
Exemplo: Ler os valores das correntes medidas nas fases A e B.
Solicitação Solicitação a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função (03H) 2 03H
3 End. Inicial (HI) 3 00H → endereço inicial 0000H
4 End. Inicial (LO) 4 00H
5 Nº de registros (HI) 5 ???
6 Nº de registros (LO) 6 ???
7 CRC (LO) 7 ???
8 CRC (HI) 8 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 130
Construção do frame
Exemplo: Ler os valores das correntes medidas nas fases A e B.
Solicitação Solicitação a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função (03H) 2 03H
3 End. Inicial (HI) 3 00H
4 End. Inicial (LO) 4 00H
5 Nº de registros (HI) 5 00H → a partir do end. inicial 0000H
6 Nº de registros (LO) 6 02H ler 2 registros
7 CRC (LO) 7 ???
8 CRC (HI) 8 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 131
Construção do frame
Exemplo: Ler os valores das correntes medidas nas fases A e B.
Solicitação Solicitação a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função (03H) 2 03H
3 End. Inicial (HI) 3 00H
4 End. Inicial (LO) 4 00H
5 Nº de registros (HI) 5 00H
6 Nº de registros (LO) 6 02H
7 CRC (LO) 7 XXH → CRC (será explicado mais
8 CRC (HI) 8 XXH à frente)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 132
Construção do frame
Exemplo: Ler os valores das correntes medidas nas fases A e B.
Resposta Resposta esperada
Byte Descrição Byte Descrição
1 End. Slave 1 ???
2 Código função (03H) 2 ???
3 Contador de bytes dos registros 3 ???
4 Valor 1º registro (HI) 4 ???
5 Valor 1º registro (LO) 5 ???
... ... 6 ???
penúlt. CRC (LO) 7 ???
último CRC (HI) 8 ???
9 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 133
Construção do frame
Exemplo: Ler os valores das correntes medidas nas fases A e B.
Resposta Resposta esperada
Byte Descrição Byte Descrição
1 End. Slave 1 01H → endereço do slave
2 Código função (03H) 2 ???
3 Contador de bytes dos registros 3 ???
4 Valor 1º registro (HI) 4 ???
5 Valor 1º registro (LO) 5 ???
... ... 6 ???
penúlt. CRC (LO) 7 ???
último CRC (HI) 8 ???
9 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 134
Construção do frame
Exemplo: Ler os valores das correntes medidas nas fases A e B.
Resposta Resposta esperada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função (03H) 2 03H → código da função
3 Contador de bytes dos registros 3 ???
4 Valor 1º registro (HI) 4 ???
5 Valor 1º registro (LO) 5 ???
... ... 6 ???
penúlt. CRC (LO) 7 ???
último CRC (HI) 8 ???
9 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 135
Construção do frame
Exemplo: Ler os valores das correntes medidas nas fases A e B.
Resposta Resposta esperada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função (03H) 2 03H
3 Contador de bytes dos registros 3 04H → contador (2 regs = 4 bytes)
4 Valor 1º registro (HI) 4 ???
5 Valor 1º registro (LO) 5 ???
... ... 6 ???
penúlt. CRC (LO) 7 ???
último CRC (HI) 8 ???
9 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 136
Construção do frame
Exemplo: Ler os valores das correntes medidas nas fases A e B.
Resposta Resposta esperada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função (03H) 2 03H
3 Contador de bytes dos registros 3 04H
4 Valor 1º registro (HI) 4 00H → valor do registro 0000H
5 Valor 1º registro (LO) 5 15H 21D = 0015H
... ... 6 ???
penúlt. CRC (LO) 7 ???
último CRC (HI) 8 ???
9 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 137
Construção do frame
Exemplo: Ler os valores das correntes medidas nas fases A e B.
Resposta Resposta esperada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função (03H) 2 03H
3 Contador de bytes dos registros 3 04H
4 Valor 1º registro (HI) 4 00H
5 Valor 1º registro (LO) 5 15H
... ... 6 00H → valor do registro 0001H
penúlt. CRC (LO) 7 25H 37D = 0025H
último CRC (HI) 8 ???
9 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 138
Construção do frame
Exemplo: Ler os valores das correntes medidas nas fases A e B.
Resposta Resposta esperada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função (03H) 2 03H
3 Contador de bytes dos registros 3 04H
4 Valor 1º registro (HI) 4 00H
5 Valor 1º registro (LO) 5 15H
... ... 6 00H
penúlt. CRC (LO) 7 25H
último CRC (HI) 8 XXH → CRC (será explicado mais
9 XXH à frente)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 139
Construção do frame
Exemplo: Ler os valores das correntes medidas nas fases A e B.
Portanto:
Solicitação: 01H 03H 00H 00H 00H 02H XXH XXH
Resposta: 01H 03H 04H 00H 15H 00H 25H XXH XXH
Solicitação
Resposta
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 140
Construção do frame
Exercício: Ler os valores dos set points programados nas funções 51, 50N e 51N.
Portanto:
Solicitação: ?????
Resposta: ?????
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 141
Construção do frame
Função: Escrita de Registro (código 06H)
Objetivo: Alterar o valor de um registro de um determinado dispositivo
Sintaxe:
Solicitação Resposta
Byte Descrição Byte Descrição
1 End. Slave 1 End. Slave
2 Código função (06H) 2 Código função (06H)
3 End. registro (HI) 3 End. registro (HI)
4 End. registro (LO) 4 End. registro (LO)
5 Novo valor (HI) 5 Novo valor (HI)
6 Novo valor (LO) 6 Novo valor (LO)
7 CRC (LO) 7 CRC (LO)
8 CRC (HI) 8 CRC (HI)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 142
Construção do frame
Exemplo: Alterar o valor do set point da função 51 para 2,7A.
Solicitação Solicitação a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 ???
2 Código função (06H) 2 ???
3 End. registro (HI) 3 ???
4 End. registro (LO) 4 ???
5 Novo valor (HI) 5 ???
6 Novo valor (LO) 6 ???
7 CRC (LO) 7 ???
8 CRC (HI) 8 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 143
Construção do frame
Exemplo: Alterar o valor do set point da função 51 para 2,7A.
Solicitação Solicitação a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H → endereço do slave
2 Código função (06H) 2 ???
3 End. registro (HI) 3 ???
4 End. registro (LO) 4 ???
5 Novo valor (HI) 5 ???
6 Novo valor (LO) 6 ???
7 CRC (LO) 7 ???
8 CRC (HI) 8 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 144
Construção do frame
Exemplo: Alterar o valor do set point da função 51 para 2,7A.
Solicitação Solicitação a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função (06H) 2 06H → código da função
3 End. registro (HI) 3 ???
4 End. registro (LO) 4 ???
5 Novo valor (HI) 5 ???
6 Novo valor (LO) 6 ???
7 CRC (LO) 7 ???
8 CRC (HI) 8 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 145
Construção do frame
Exemplo: Alterar o valor do set point da função 51 para 2,7A.
Solicitação Solicitação a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função (06H) 2 06H
3 End. registro (HI) 3 00H → endereço do registro
4 End. registro (LO) 4 21H
5 Novo valor (HI) 5 ???
6 Novo valor (LO) 6 ???
7 CRC (LO) 7 ???
8 CRC (HI) 8 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 146
Construção do frame
Exemplo: Alterar o valor do set point da função 51 para 2,7A.
Solicitação Solicitação a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função (06H) 2 06H
3 End. registro (HI) 3 00H
4 End. registro (LO) 4 21H
5 Novo valor (HI) 5 00H → novo valor (27D = 001BH)
6 Novo valor (LO) 6 1BH
7 CRC (LO) 7 ???
8 CRC (HI) 8 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 147
Construção do frame
Exemplo: Alterar o valor do set point da função 51 para 2,7A.
Solicitação Solicitação a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função (06H) 2 06H
3 End. registro (HI) 3 00H
4 End. registro (LO) 4 21H
5 Novo valor (HI) 5 00H
6 Novo valor (LO) 6 1BH
7 CRC (LO) 7 XXH → CRC (será explicado
8 CRC (HI) 8 XXH mais à frente)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 148
Construção do frame
Exemplo: Alterar o valor do set point da função 51 para 2,7A.
Resposta Resposta a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H → idêntica à solicitação
2 Código função (06H) 2 06H
3 End. registro (HI) 3 00H
4 End. registro (LO) 4 21H
5 Novo valor (HI) 5 00H
6 Novo valor (LO) 6 1BH
7 CRC (LO) 7 XXH
8 CRC (HI) 8 XXH
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 149
Construção do frame
Exemplo: Alterar o valor do set point da função 51 para 2,7A.
Portanto:
Solicitação: 01H 06H 00H 21H 00H 1BH XXH XXH
Resposta: 01H 06H 00H 21H 00H 1BH XXH XXH
Solicitação
Resposta
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 150
Construção do frame
Exercício: Alterar o tempo da função 51 para 8 s.
Portanto:
Solicitação: ?????
Resposta: ?????
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 151
Construção do frame
Exemplo: Ler valor do set point da função 50, alterar seu valor para 5,5A e ler novo valor.
Solicitação: 01H 03H 00H 20H 00H 01H XXH XXH leitura do valor atual = 5,0A
Resposta: 01H 03H 02H 00H 32H XXH XXH
Solicitação: 01H 06H 00H 20H 00H 37H XXH XXH alterar valor para 5,5A
Resposta: 01H 06H 00H 20H 00H 37H XXH XXH
Solicitação: 01H 03H 00H 20H 00H 01H XXH XXH leitura do novo valor = 5,5A
Resposta: 01H 03H 02H 00H 37H XXH XXH
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 152
Construção do frame
Função: Leitura de Coil (código 01H)
Objetivo: Ler o valor de determinados coils de um determinado dispositivo
Sintaxe:
Solicitação Resposta
Byte Descrição Byte Descrição
1 End. Slave 1 End. Slave
2 Código função (01H) 2 Código função (01H)
3 End. Inicial (HI) 3 Contador de bytes dos coils
4 End. Inicial (LO) 4 Valor dos coils
5 Nº de coils (HI) ... ...
6 Nº de coils (LO) penúlt. CRC (LO)
7 CRC (LO) último CRC (HI)
8 CRC (HI)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 153
Construção do frame
Exemplo: Ler o status das funções 51 e 50N (se estão habilitadas ou não).
Solicitação Solicitação a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 ???
2 Código função (01H) 2 ???
3 End. Inicial (HI) 3 ???
4 End. Inicial (LO) 4 ???
5 Nº de coils (HI) 5 ???
6 Nº de coils (LO) 6 ???
7 CRC (LO) 7 ???
8 CRC (HI) 8 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 154
Construção do frame
Exemplo: Ler o status das funções 51 e 50N (se estão habilitadas ou não).
Solicitação Solicitação a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H → endereço do slave
2 Código função (01H) 2 ???
3 End. Inicial (HI) 3 ???
4 End. Inicial (LO) 4 ???
5 Nº de coils (HI) 5 ???
6 Nº de coils (LO) 6 ???
7 CRC (LO) 7 ???
8 CRC (HI) 8 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 155
Construção do frame
Exemplo: Ler o status das funções 51 e 50N (se estão habilitadas ou não).
Solicitação Solicitação a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função (01H) 2 01H → código da função
3 End. Inicial (HI) 3 ???
4 End. Inicial (LO) 4 ???
5 Nº de coils (HI) 5 ???
6 Nº de coils (LO) 6 ???
7 CRC (LO) 7 ???
8 CRC (HI) 8 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 156
Construção do frame
Exemplo: Ler o status das funções 51 e 50N (se estão habilitadas ou não).
Solicitação Solicitação a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função (01H) 2 01H
3 End. Inicial (HI) 3 00H → endereço inicial (0001H)
4 End. Inicial (LO) 4 01H
5 Nº de coils (HI) 5 ???
6 Nº de coils (LO) 6 ???
7 CRC (LO) 7 ???
8 CRC (HI) 8 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 157
Construção do frame
Exemplo: Ler o status das funções 51 e 50N (se estão habilitadas ou não).
Solicitação Solicitação a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função (01H) 2 01H
3 End. Inicial (HI) 3 00H
4 End. Inicial (LO) 4 01H
5 Nº de coils (HI) 5 00H → quantidade de coils para ler
6 Nº de coils (LO) 6 02H (02D = 0002H)
7 CRC (LO) 7 ???
8 CRC (HI) 8 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 158
Construção do frame
Exemplo: Ler o status das funções 51 e 50N (se estão habilitadas ou não).
Solicitação Solicitação a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função (01H) 2 01H
3 End. Inicial (HI) 3 00H
4 End. Inicial (LO) 4 01H
5 Nº de coils (HI) 5 00H
6 Nº de coils (LO) 6 02H
7 CRC (LO) 7 XXH → CRC ( será explicado mais
8 CRC (HI) 8 XXH adiante)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 159
Construção do frame
Exemplo: Ler o status das funções 51 e 50N (se estão habilitadas ou não).
Resposta Resposta a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 ???
2 Código função (01H) 2 ???
3 Contador de bytes dos coils 3 ???
4 Valor dos coils 4 ???
5 CRC (LO) 5 ???
6 CRC (HI) 6 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 160
Construção do frame
Exemplo: Ler o status das funções 51 e 50N (se estão habilitadas ou não).
Resposta Resposta a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H → endereço do slave
2 Código função (01H) 2 ???
3 Contador de bytes dos coils 3 ???
4 Valor dos coils 4 ???
5 CRC (LO) 5 ???
6 CRC (HI) 6 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 161
Construção do frame
Exemplo: Ler o status das funções 51 e 50N (se estão habilitadas ou não).
Resposta Resposta a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função (01H) 2 01H → código da função
3 Contador de bytes dos coils 3 ???
4 Valor dos coils 4 ???
5 CRC (LO) 5 ???
6 CRC (HI) 6 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 162
Construção do frame
Exemplo: Ler o status das funções 51 e 50N (se estão habilitadas ou não).
Resposta Resposta a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função (01H) 2 01H
3 Contador de bytes dos coils 3 01H → contador (2 bits → 1 byte)
4 Valor dos coils 4 ???
5 CRC (LO) 5 ???
6 CRC (HI) 6 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 163
Construção do frame
Exemplo: Ler o status das funções 51 e 50N (se estão habilitadas ou não).
Resposta Resposta a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função (01H) 2 01H
3 Contador de bytes dos coils 3 01H
4 Valor dos coils 4 01H → valor 01H = 0 0 0 0 0 0 0 1B
5 CRC (LO) 5 ???
6 CRC (HI) 6 ???
Coil 0001H
(Sim = 1) Coil 0002H
(Não = 0)
Demais coils
são zerados
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 164
Construção do frame
Exemplo: Ler o status das funções 51 e 50N (se estão habilitadas ou não).
Resposta Resposta a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função (01H) 2 01H
3 Contador de bytes dos coils 3 01H
4 Valor dos coils 4 01H
5 CRC (LO) 5 XXH → CRC (será explicado mais
6 CRC (HI) 6 XXH adiante)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 165
Construção do frame
Exemplo: Ler o status das funções 51 e 50N (se estão habilitadas ou não).
Portanto:
Solicitação: 01H 01H 00H 01H 00H 02H XXH XXH
Resposta: 01H 01H 01H 01H XXH XXH
Solicitação
Resposta
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 166
Construção do frame
Exercício: Ler o status de todos os contatos.
Portanto:
Solicitação: ?????
Resposta: ?????
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 167
Construção do frame
Função: Escrita de Coil (código 05H)
Objetivo: Alterar o valor de um determinado coil de um determinado dispositivo
Sintaxe:
Solicitação Resposta
Byte Descrição Byte Descrição
1 End. Slave 1 End. Slave
2 Código função (05H) 2 Código função (05H)
3 End. coil (HI) 3 End. coil (HI)
4 End. coil (LO) 4 End. coil (LO)
5 Novo valor (0=00H / 1=FFH) 5 Novo valor (0=00H / 1=FFH)
6 00H 6 00H
7 CRC (LO) 7 CRC (LO)
8 CRC (HI) 8 CRC (HI)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 168
Construção do frame
Exemplo: Habilitar a função 50N.
Solicitação Solicitação a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 ???
2 Código função (05H) 2 ???
3 End. coil (HI) 3 ???
4 End. coil (LO) 4 ???
5 Novo valor (0=00H / 1=FFH) 5 ???
6 00H 6 ???
7 CRC (LO) 7 ???
8 CRC (HI) 8 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 169
Construção do frame
Exemplo: Habilitar a função 50N.
Solicitação Solicitação a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H → endereço slave
2 Código função (05H) 2 ???
3 End. coil (HI) 3 ???
4 End. coil (LO) 4 ???
5 Novo valor (0=00H / 1=FFH) 5 ???
6 00H 6 ???
7 CRC (LO) 7 ???
8 CRC (HI) 8 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 170
Construção do frame
Exemplo: Habilitar a função 50N.
Solicitação Solicitação a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função (05H) 2 05H → código da função
3 End. coil (HI) 3 ???
4 End. coil (LO) 4 ???
5 Novo valor (0=00H / 1=FFH) 5 ???
6 00H 6 ???
7 CRC (LO) 7 ???
8 CRC (HI) 8 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 171
Construção do frame
Exemplo: Habilitar a função 50N.
Solicitação Solicitação a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função (05H) 2 05H
3 End. coil (HI) 3 00H → endereço do coil (0002H)
4 End. coil (LO) 4 02H
5 Novo valor (0=00H / 1=FFH) 5 ???
6 00H 6 ???
7 CRC (LO) 7 ???
8 CRC (HI) 8 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 172
Construção do frame
Exemplo: Habilitar a função 50N.
Solicitação Solicitação a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função (05H) 2 05H
3 End. coil (HI) 3 00H
4 End. coil (LO) 4 02H
5 Novo valor (0=00H / 1=FFH) 5 FFH → coil = 1
6 00H 6 00H
7 CRC (LO) 7 ???
8 CRC (HI) 8 ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 173
Construção do frame
Exemplo: Habilitar a função 50N.
Solicitação Solicitação a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função (05H) 2 05H
3 End. coil (HI) 3 00H
4 End. coil (LO) 4 02H
5 Novo valor (0=00H / 1=FFH) 5 FFH
6 00H 6 00H
7 CRC (LO) 7 XXH → CRC (será explicado mais
8 CRC (HI) 8 XXH adiante)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 174
Construção do frame
Exemplo: Habilitar a função 50N.
Resposta Resposta a ser enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H → idem à solicitação
2 Código função (05H) 2 05H
3 End. coil (HI) 3 00H
4 End. coil (LO) 4 02H
5 Novo valor (0=00H / 1=FFH) 5 FFH
6 00H 6 00H
7 CRC (LO) 7 XXH
8 CRC (HI) 8 XXH
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 175
Construção do frame
Exemplo: Habilitar a função 50N.
Portanto:
Solicitação: 01H 05H 00H 02H FFH 00H XXH XXH
Resposta: 01H 05H 00H 02H FFH 00H XXH XXH
Solicitação
Resposta
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 176
Construção do frame
Exercício: Ler o status de todas as funções (se estão habilitadas ou não), desabilitar a função 51
e checar novamente os status das funções.
Solicitação: ??? Leitura do status de todas as funções
Resposta: ???
Solicitação: ??? Desabilitar a função 51
Resposta: ???
Solicitação: ??? Checar status de todas as funções
Resposta: ???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 177
MODBUS-RTU
Confiabilidade do canal de
comunicação
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 178
Confiabilidade do canal de comunicação
Na prática podem ocorrer diversos imprevistos que podem acarretar no mal
funcionamento da rede de comunicação de dados. Exemplos: ruído, elaboração
de comandos errados, etc.
É importante, portanto, que o protocolo ofereça recursos para que tais
imprevistos possam ser contornados para que a rede de comunicação de dados
possa continuar operante.
Os principais recursos que o MODBUS-RTU oferece são:
- Bit de paridade
- Confirmação de comando
- CRC
- Respostas de excessão
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 179
Bit de paridade
Testa a integridade dos bits do caracter (se selecionado paridade par ou ímpar)
Exemplo: transmissão do valor 5CH = 0101 1100B com paridade ímpar
Bits gerados: 0 0 0 1 1 1 0 1 0 1 1
V(t)
t
1
0
Bit 8 Bit 1
Bit 8 Bit 1
Caracter MODBUS-RTU
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 180
Confirmação de comando
Para toda solicitação existe uma resposta (mesmo se for uma réplica da solicitação)
que pode ser utilizada pelo mestre para testar a integridade do canal e para
assegurar que a solicitação foi executada.
Solicitação
Resposta
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 181
CRC
O CRC (Cyclical Redundancy Checking) é um algoritmo de verificação que calcula
um valor de 16 bits a partir dos bytes que compõem um frame MODBUS-RTU. Ele
é utilizado para teste de integridade do frame recebido.
Frame: 01H 05H 00H 02H FFH 00H XXH XXH
CRC calculado em função dos bytes do frame
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 182
CRC
Ex: transmissão do frame 01H 05H 00H 02H 00H 00H XXH XXH do mestre para o
Dispositivo A
CRC calculado pelo mestre em função dos bytes do frame e inserido no final do frame (nos bytes XXH)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 183
CRC
Ex: transmissão do frame 01H 05H 00H 02H 00H 00H XXH XXH do mestre para o
Dispositivo A
Solicitação enviada pelo mestre contendo o CRC calculado
Solicitação
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 184
CRC
Ex: transmissão do frame 01H 05H 00H 02H 00H 00H XXH XXH do mestre para o
Dispositivo A
Dispositivo A recalcula o CRC (com base nos bytes recebidos) e compara com o CRC recebido
Se forem iguais o comando é interpretado normalmente. Se forem diferentes o comando é recusado. O slave não envia nenhuma resposta ao mestre.
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 185
Algoritmo para cálculo do CRC Exemplo: CRC do frame 02H 03H 00H 00H 00H 01H XXH XXH
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 186
Algoritmo para cálculo do CRC Exemplo: CRC do frame 02H 03H 00H 00H 00H 01H XXH XXH Carregar CRC16 = FFFFH
Variáveis: CRC16 = FFFFH
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 187
Algoritmo para cálculo do CRC Exemplo: CRC do frame 02H 03H 00H 00H 00H 01H XXH XXH
CRC16 = FFFFH = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1B
1º byte = 02H = 0 0 0 0 0 0 1 0B XOR
CRC16 = FFFDH = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1B
1º byte
Variáveis: CRC16 = FFFFH → CRC16 = FFFDH
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 188
Algoritmo para cálculo do CRC Exemplo: CRC do frame 02H 03H 00H 00H 00H 01H XXH XXH
Carregar N = 0
Variáveis: CRC16 = FFFDH
N = 0
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 189
Algoritmo para cálculo do CRC Exemplo: CRC do frame 02H 03H 00H 00H 00H 01H XXH XXH
CRC16 = FFFDH = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 B
CRC16 = 7FFEH = 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0B
. . . . .
Inserir zero
Variáveis: CRC16 = FFFDH → CRC16 = 7FFEH
N = 0 Carry = 1
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 190
Algoritmo para cálculo do CRC Exemplo: CRC do frame 02H 03H 00H 00H 00H 01H XXH XXH
Carry over
Variáveis: CRC16 = 7FFEH
N = 0 Carry = 1
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 191
Algoritmo para cálculo do CRC Exemplo: CRC do frame 02H 03H 00H 00H 00H 01H XXH XXH
CRC16 = 7FFEH = 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0B
POLY = A001H = 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1B XOR
CRC16 = DFFFH = 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1B
Variáveis: CRC16 = 7FFEH → CRC16 = DFFFH
N = 0 Carry = 1
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 192
Algoritmo para cálculo do CRC
Incrementar o valor de N
Exemplo: CRC do frame 02H 03H 00H 00H 00H 01H XXH XXH
Variáveis: CRC16 = DFFFH
N = 0 → N = 1 Carry = 1
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 193
Algoritmo para cálculo do CRC
N não é maior que 7
Exemplo: CRC do frame 02H 03H 00H 00H 00H 01H XXH XXH
Variáveis: CRC16 = DFFFH
N = 1 Carry = 1
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 194
Algoritmo para cálculo do CRC
Portanto,esta parte do programa será repetida 8 vezes
Exemplo: CRC do frame 02H 03H 00H 00H 00H 01H XXH XXH
Variáveis: CRC16 = DFFFH
N = 1 Carry = 1
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 195
Algoritmo para cálculo do CRC
Verificado se é o último byte da mensagem. Como nós temos ainda mais 5 bytes ele carrega o próximo byte (03H) e executa o loop novamente
Exemplo: CRC do frame 02H 03H 00H 00H 00H 01H XXH XXH
Variáveis: CRC16 = DFFFH
N = 1 Carry = 1
Próximo byte
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 196
Algoritmo para cálculo do CRC
No final teremos o valor calculado para o CRC16 Para o frame exemplo o valor de CRC16 = 3984H Este valor é inserido no frame da seguinte forma: 84H 39H
02H 03H 00H 00H 00H 01H XXH XXH
Frame final: 02H 03H 00H 00H 00H 01H 84H 39H
Exemplo: CRC do frame 02H 03H 00H 00H 00H 01H XXH XXH
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 197
Exercícios
1) Calcule o CRC do seguinte frame MODBUS-RTU:
02H 07H ??H ??H
2) Desafio (bit paridade vs checksum vs CRC): a partir de um comando
MODBUS-RTU válido tente invalidar este comando e verifique se o
CRC se mantém inalterado.
ex: 01H 03H 00H 00H 00H 01H 84H 0AH
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 198
Respostas de excessão
São utilizadas pelo slave para reportar ao master que houve um erro na composição da
mensagem recebida.
Sintaxe:
Resposta
Byte Descrição
1 End. Slave
2 Código função recebida OR 80H
3 Código de excessão
01H: erro de função 02H: erro de endereço 03H: erro de dados
4 CRC (LO)
5 CRC (HI)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 199
Resposta de Excessão: Erro de Função
Ex: num dispositivo com endereço físico 01H e tabela de coils abaixo, executar função 50H
Solicitação: 01H 50H 00H 00H 00H 00H XXH XXH
Resposta Resposta enviada
Byte Descrição Byte Descrição
1 End. Slave 1 ???
2 Código função recebida OR 80H 2 ???
3 Código de excessão 3 ???
01H: erro de função 02H: erro de endereço 03H: erro de dados
4 CRC (LO) 4 ???
5 CRC (HI) 5 ???
Erro! Esta função não existe
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 200
Resposta de Excessão: Erro de Função
Ex: num dispositivo com endereço físico 01H e tabela de coils abaixo, executar função 50H
Solicitação: 01H 50H 00H 00H 00H 00H XXH XXH
Resposta Resposta enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H → endereço slave
2 Código função recebida OR 80H 2 ???
3 Código de excessão 3 ???
01H: erro de função 02H: erro de endereço 03H: erro de dados
4 CRC (LO) 4 ???
5 CRC (HI) 5 ???
Erro! Esta função não existe
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 201
Resposta de Excessão: Erro de Função
Ex: num dispositivo com endereço físico 01H e tabela de coils abaixo, executar função 50H
Solicitação: 01H 50H 00H 00H 00H 00H XXH XXH
Resposta Resposta enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função recebida OR 80H 2 D0H → 50H OR 80H
3 Código de excessão 3 ??? 0 1 0 1 0 0 0 0 → 50H
01H: erro de função OR 1 0 0 0 0 0 0 0 → 80H 02H: erro de endereço 03H: erro de dados 1 1 0 1 0 0 0 0 → D0H
4 CRC (LO) 4 ???
5 CRC (HI) 5 ???
Erro! Esta função não existe
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 202
Resposta de Excessão: Erro de Função
Ex: num dispositivo com endereço físico 01H e tabela de coils abaixo, executar função 50H
Solicitação: 01H 50H 00H 00H 00H 00H XXH XXH
Resposta Resposta enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função recebida OR 80H 2 D0H
3 Código de excessão 3 01H → código de erro
01H: erro de função 02H: erro de endereço 03H: erro de dados
4 CRC (LO) 4 ???
5 CRC (HI) 5 ???
Erro! Esta função não existe
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 203
Resposta de Excessão: Erro de Função
Ex: num dispositivo com endereço físico 01H e tabela de coils abaixo, executar função 50H
Solicitação: 01H 50H 00H 00H 00H 00H XXH XXH
Resposta Resposta enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função recebida OR 80H 2 D0H
3 Código de excessão 3 01H
01H: erro de função 02H: erro de endereço 03H: erro de dados
4 CRC (LO) 4 XXH → CRC
5 CRC (HI) 5 XXH
Erro! Esta função não existe
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 204
Resposta de Excessão: Erro de Função
Ex: num dispositivo com endereço físico 01H e tabela de coils abaixo, executar função 50H
Portanto:
Solicitação: 01H 50H 00H 00H 00H 00H XXH XXH
Resposta: 01H D0H 01H XXH XXH
Solicitação
Resposta
Erro! Esta função não existe
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 205
Resposta de Excessão: Erro de Endereço
Ex: num dispositivo com endereço físico 01H e tabela de coils abaixo, zerar coil de endereço 0050H
Solicitação: 01H 05H 00H 50H 00H 00H XXH XXH
Resposta Resposta enviada
Byte Descrição Byte Descrição
1 End. Slave 1 ???
2 Código função recebida OR 80H 2 ???
3 Código de excessão 3 ???
01H: erro de função 02H: erro de endereço 03H: erro de dados
4 CRC (LO) 4 ???
5 CRC (HI) 5 ???
Erro! Este endereço não existe
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 206
Resposta de Excessão: Erro de Endereço
Ex: num dispositivo com endereço físico 01H e tabela de coils abaixo, zerar coil de endereço 0050H
Solicitação: 01H 05H 00H 50H 00H 00H XXH XXH
Resposta Resposta enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H → endereço slave
2 Código função recebida OR 80H 2 ???
3 Código de excessão 3 ???
01H: erro de função 02H: erro de endereço 03H: erro de dados
4 CRC (LO) 4 ???
5 CRC (HI) 5 ???
Erro! Este endereço não existe
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 207
Resposta de Excessão: Erro de Endereço
Ex: num dispositivo com endereço físico 01H e tabela de coils abaixo, zerar coil de endereço 0050H
Solicitação: 01H 05H 00H 50H 00H 00H XXH XXH
Resposta Resposta enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função recebida OR 80H 2 85H → 05H OR 80H
3 Código de excessão 3 ??? 0 0 0 0 0 1 0 1 → 05H
01H: erro de função OR 1 0 0 0 0 0 0 0 → 80H 02H: erro de endereço 03H: erro de dados 1 0 0 0 0 1 0 1 → 85H
4 CRC (LO) 4 ???
5 CRC (HI) 5 ???
Erro! Este endereço não existe
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 208
Resposta de Excessão: Erro de Endereço
Ex: num dispositivo com endereço físico 01H e tabela de coils abaixo, zerar coil de endereço 0050H
Solicitação: 01H 05H 00H 50H 00H 00H XXH XXH
Resposta Resposta enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função recebida OR 80H 2 85H
3 Código de excessão 3 02H → código do erro
01H: erro de função 02H: erro de endereço 03H: erro de dados
4 CRC (LO) 4 ???
5 CRC (HI) 5 ???
Erro! Este endereço não existe
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 209
Resposta de Excessão: Erro de Endereço
Ex: num dispositivo com endereço físico 01H e tabela de coils abaixo, zerar coil de endereço 0050H
Solicitação: 01H 05H 00H 50H 00H 00H XXH XXH
Resposta Resposta enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função recebida OR 80H 2 85H
3 Código de excessão 3 02H
01H: erro de função 02H: erro de endereço 03H: erro de dados
4 CRC (LO) 4 XXH → CRC
5 CRC (HI) 5 XXH
Erro! Este endereço não existe
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 210
Resposta de Excessão: Erro de Endereço
Ex: num dispositivo com endereço físico 01H e tabela de coils abaixo, zerar coil de endereço 0050H
Portanto:
Solicitação: 01H 05H 00H 50H 00H 00H XXH XXH
Resposta: 01H 85H 02H XXH XXH
Solicitação
Resposta
Erro! Este endereço não existe
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 211
Resposta de Excessão: Erro de Dados
Ex: num dispositivo com endereço físico 01H e tabela de coils abaixo, habilitar a função 50N
Solicitação: 01H 05H 00H 02H 01H 00H XXH XXH
Resposta Resposta enviada
Byte Descrição Byte Descrição
1 End. Slave 1 ???
2 Código função recebida OR 80H 2 ???
3 Código de excessão 3 ???
01H: erro de função 02H: erro de endereço 03H: erro de dados
4 CRC (LO) 4 ???
5 CRC (HI) 5 ???
Erro! Correto seria FFH
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 212
Resposta de Excessão: Erro de Dados
Ex: num dispositivo com endereço físico 01H e tabela de coils abaixo, habilitar a função 50N
Solicitação: 01H 05H 00H 02H 01H 00H XXH XXH
Resposta Resposta enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H → endereço slave
2 Código função recebida OR 80H 2 ???
3 Código de excessão 3 ???
01H: erro de função 02H: erro de endereço 03H: erro de dados
4 CRC (LO) 4 ???
5 CRC (HI) 5 ???
Erro! Correto seria FFH
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 213
Resposta de Excessão: Erro de Dados
Ex: num dispositivo com endereço físico 01H e tabela de coils abaixo, habilitar a função 50N
Solicitação: 01H 05H 00H 02H 01H 00H XXH XXH
Resposta Resposta enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função recebida OR 80H 2 85H → 05H OR 80H
3 Código de excessão 3 ??? 0 0 0 0 0 1 0 1 → 05H
01H: erro de função OR 1 0 0 0 0 0 0 0 → 80H 02H: erro de endereço 03H: erro de dados 1 0 0 0 0 1 0 1 → 85H
4 CRC (LO) 4 ???
5 CRC (HI) 5 ???
Erro! Correto seria FFH
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 214
Resposta de Excessão: Erro de Dados
Ex: num dispositivo com endereço físico 01H e tabela de coils abaixo, habilitar a função 50N
Solicitação: 01H 05H 00H 02H 01H 00H XXH XXH
Resposta Resposta enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função recebida OR 80H 2 85H
3 Código de excessão 3 03H → código de erro
01H: erro de função 02H: erro de endereço 03H: erro de dados
4 CRC (LO) 4 ???
5 CRC (HI) 5 ???
Erro! Correto seria FFH
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 215
Resposta de Excessão: Erro de Dados
Ex: num dispositivo com endereço físico 01H e tabela de coils abaixo, habilitar a função 50N
Solicitação: 01H 05H 00H 02H 01H 00H XXH XXH
Resposta Resposta enviada
Byte Descrição Byte Descrição
1 End. Slave 1 01H
2 Código função recebida OR 80H 2 85H
3 Código de excessão 3 03H
01H: erro de função 02H: erro de endereço 03H: erro de dados
4 CRC (LO) 4 XXH → CRC
5 CRC (HI) 5 XXH
Erro! Correto seria FFH
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 216
Resposta de Excessão: Erro de Dados
Ex: num dispositivo com endereço físico 01H e tabela de coils abaixo, habilitar a função 50N
Portanto:
Solicitação: 01H 05H 00H 02H 01H 00H XXH XXH
Resposta: 01H 85H 03H XXH XXH
Solicitação
Resposta
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 217
Resposta de Excessão
Exemplo de fluxograma para tratamento do comando de escrita de coil recebido pelo slave
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 219
Classes de Implementação (Profiles)
Definir categorias onde em cada uma delas são especificadas quais características do
protocolo deverão ser implementadas.
No MODBUS-RTU são definidas duas classes: BASIC e REGULAR.
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 220
Profiles
Exemplo de profile do Protocolo Profibus DP
INTEROPERABILITY versus INTEROPERABLE
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 221
O Modelo Internet para redes de
comunicação de dados
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 222
Modelo Internet
- Internet é um sistema global de redes de computadores que utilizam como base o
Modelo Internet de protocolos para interliga-los e prover serviços de acessos a
esta rede para todo o mundo.
- O Modelo Internet começou no final da década de 60, a partir da ARPANET, com o
objetivo de definir um protocolo para interligar computadores militares.
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 223
Modelo Internet
Pode ser considerado um modelo simplificado do Modelo ISO/OSI
Modelo ISO/OSI (7 camadas)
Modelo Internet (4 camadas)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 224
Modelo Internet
Utiliza diversos protocolos, cada um com uma função específica
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 225
Protocolo Ethernet
- Definido pela IEEE 802.3
- Desenvolvido pela Xerox na década de 60.
- Nome “fantasia” para o protocolo CSMA/CD (Carrier Sense Multiple Access with
Collision Detection), derivado do conceito de éter luminífero (suposto meio de
propagação da luz)
- Velocidades mais usuais: 10Mbits/s e 100Mbits/s
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 226
Modelo ISO/OSI (7 camadas)
Modelo Internet (4 camadas)
Protocolo Ethernet
Localização no Modelo Internet
Software
Hardware
Ethernet
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 227
Protocolo Ethernet
Exemplos de alguns padrões para implementação do meio físico
Microcontrolador
MAC
PHY (para RJ45)
Conector para RJ45 Tranceptor para fibra óptica
PHY (para FO)
Microcontrolador MAC
Interface RMII Interface MII
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 228
Protocolo Ethernet Codificação dos dados
- Codificação Manchester especificada pela IEEE 802.3, onde:
Bit 1: Começa com -V e termina com +V
Bit 0: Começa com +V e termina com –V
-O sinal é “simétrico” e sem componente DC, ou seja, possui área positiva e negativa iguais, o que permite seu acoplamento através de indutores/capacitores
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 230
Protocolo Ethernet
Exercício:
1) Qual a velocidade de operação?
2) Qual a sequência de bits enviada?
3) Qual a sequência de bytes enviada?
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 231
Protocolo Ethernet
cabo comum / cabo cross-over / cabo par trançado
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 233
Protocolo Ethernet
Power over Ethernet (PoE)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 234
Protocolo Ethernet
Endereço MAC
- Endereço físico do dispositivo composto por 6 bytes, separados por dois pontos “ : “
- Controlado pelo IEEE-SA (IEEE Standards Association)
- Os 3 primeiros bytes são denominados OUI (Organizationally Unique Identifier) e
são atribuídos pelo IEEE-SA
- Os outros 3 bytes são atribuídos pelo próprio fabricante
- O fabricante deve garantir que o MAC seja único
-Exemplo de endereço MAC:
08 : 00: 02 : 04 : e8 : 6f (hexa)
IEEE-SA fabricante
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 235
Modelo Internet
Utiliza diversos protocolos, cada um com uma função específica
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 236
Protocolo IP
- Protocolo IP (Internet Protocol) é definido pela RFC 791
- Utilizado para direcionar as mensagens ao seu destino
- Não oferece garantia de que a mensagem foi recebida pelo destino
- Deve-se identificar a rede utilizando IP para evitar a intervenção de outros nós
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 237
Protocolo IP
Endereço IP
- Endereço lógico formado por 4 bytes, representados separados por ponto “ . “
- Trabalha em conjunto com a Máscara de Rede e o Endereço de Gateway para o
direcionamento das mensagens
- Gateway é um dispositivo físico responsável por interligar redes
- Pode ser programado pelo usuário
- Exemplo de endereço IP:
194.168.0.1 (decimal)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 238
Protocolo IP
Endereçamento
Rede
IP: 192.168.0.1
MSK: 255.255.0.0
GW: 192.168.0.10
switch
gateway gateway
switch
Endereço IP do dispositivo
Máscara de subrede
Endereço IP do gateway
A B
C
X
Y Z
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 239
Protocolo IP
Endereçamento
Rede
IP: 192.168.0.1
MSK: 255.255.0.0
GW: 192.168.0.10
switch
gateway gateway
switch
Resultado da operação lógica AND entre o IP e o MSK gera um número IP denominado IP de subrede que identifica a subrede ao qual o dispositivo esta conectado: IP : 192.168.0.1 MSK: 255.255.0.0 AND IP subrede: 192.168.0.0
A B
C
X
Y Z
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 240
Protocolo IP
Endereçamento
IP: 192.168.0.1 = 11000000 10101000 00000000 00000001
MSK: 255.255.0.0 = 11111111 11111111 00000000 00000000 AND
IP subrede = 11000000 10101000 00000000 00000000
(192.168.0.0)
192 168 0 0
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 241
Protocolo IP
Endereçamento
Rede
IP: 192.168.0.1
MSK: 255.255.0.0
GW: 192.168.0.10
switch
gateway gateway
switch
IP subrede 200.208.0.0
IP: 192.168.0.2
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 192.168.0.3
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 192.168.0.10
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 200.208.0.1
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.3
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.4
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.20
MSK: 255.255.0.0
GW: 200.208.0.20
A B
C
X
Y Z
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 242
Exemplo: Mensagem → :
Rede
IP: 192.168.0.1
MSK: 255.255.0.0
GW: 192.168.0.10
switch
gateway gateway
switch
IP: 192.168.0.2
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 192.168.0.3
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 192.168.0.10
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 200.208.0.1
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.3
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.4
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.20
MSK: 255.255.0.0
GW: 200.208.0.20
A B
C
X
Y Z
A C
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 243
Exemplo: Mensagem → :
Rede
IP: 192.168.0.1
MSK: 255.255.0.0
GW: 192.168.0.10
switch
gateway gateway
switch
IP: 192.168.0.2
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 192.168.0.3
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 192.168.0.10
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 200.208.0.1
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.3
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.4
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.20
MSK: 255.255.0.0
GW: 200.208.0.20
A B
C
X
Y Z
A C
Antes de enviar mensagem C precisa verificar se A pertence a mesma subrede que ele
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 244
IP: 192.168.0.1 = 11000000 10101000 00000000 00000001
MSK: 255.255.0.0 = 11111111 11111111 00000000 00000000 AND
IP subrede = 11000000 10101000 00000000 00000000
(192.168.0.0)
192 168 0 0
C
IP: 192.168.0.2 = 11000000 10101000 00000000 00000010
MSK: 255.255.0.0 = 11111111 11111111 00000000 00000000 AND
IP subrede = 11000000 10101000 00000000 00000000
(192.168.0.0)
192 168 0 0
A IP de subrede iguais, portanto, pertencem a mesma subrede
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 245
Exemplo: Mensagem → :
Rede
IP: 192.168.0.1
MSK: 255.255.0.0
GW: 192.168.0.10
switch
gateway gateway
switch
IP: 192.168.0.2
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 192.168.0.3
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 192.168.0.10
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 200.208.0.1
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.3
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.4
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.20
MSK: 255.255.0.0
GW: 200.208.0.20
A B
C
X
Y Z
A C
C envia mensagem contendo: IP origem: 192.168.0.1 [IP C] IP destino: 192.168.0.2 [IP A]
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 246
Exemplo: Mensagem → :
Rede
IP: 192.168.0.1
MSK: 255.255.0.0
GW: 192.168.0.10
switch
gateway gateway
switch
IP: 192.168.0.2
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 192.168.0.3
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 192.168.0.10
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 200.208.0.1
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.3
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.4
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.20
MSK: 255.255.0.0
GW: 200.208.0.20
A B
C
X
Y Z
C Y
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 247
Antes de enviar mensagem Y precisa verificar se C pertence a mesma subrede que ele
Exemplo: Mensagem → :
Rede
IP: 192.168.0.1
MSK: 255.255.0.0
GW: 192.168.0.10
switch
gateway gateway
switch
IP: 192.168.0.2
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 192.168.0.3
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 192.168.0.10
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 200.208.0.1
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.3
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.4
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.20
MSK: 255.255.0.0
GW: 200.208.0.20
A B
C
X
Y Z
C Y
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 248
IP: 200.208.0.3 = 11001000 11010000 00000000 00000001
MSK: 255.255.0.0 = 11111111 11111111 00000000 00000000 AND
IP subrede = 11001000 11010000 00000000 00000000
(200.208.0.0)
200 208 0 0
Y
IP: 192.168.0.1 = 11000000 10101000 00000000 00000001
MSK: 255.255.0.0 = 11111111 11111111 00000000 00000000 AND
IP subrede = 11000000 10101000 00000000 00000000
(192.168.0.0)
192 168 0 0
C IP de subrede diferentes, portanto, não pertencem a mesma subrede
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 249
Exemplo: Mensagem → :
Rede
IP: 192.168.0.1
MSK: 255.255.0.0
GW: 192.168.0.10
switch
gateway gateway
switch
IP: 192.168.0.2
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 192.168.0.3
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 192.168.0.10
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 200.208.0.1
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.3
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.4
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.20
MSK: 255.255.0.0
GW: 200.208.0.20
A B
C
X
Y Z
C Y
Y envia mensagem contendo: IP origem: 200.208.0.3 [IP Y] IP destino: 192.168.0.1 [IP C]
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 250
Exemplo: Mensagem → :
Rede
IP: 192.168.0.1
MSK: 255.255.0.0
GW: 192.168.0.10
switch
gateway gateway
switch
IP: 192.168.0.2
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 192.168.0.3
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 192.168.0.10
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 200.208.0.1
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.3
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.4
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.20
MSK: 255.255.0.0
GW: 200.208.0.20
A B
C
X
Y Z
C Y
Y envia mensagem contendo: IP origem: 200.208.0.3 [IP Y] IP destino: 192.168.0.1 [IP C]
Pergunta: Se o IP destino é o IP C como a mensagem chegará ao gateway???
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 251
Modelo Internet
Utiliza diversos protocolos, cada um com uma função específica
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 252
Protocolo ARP
- Protocolo ARP (Address Resolution Protocol) definido pela RFC 826
- Responsável pela tradução do endereço lógico (endereço IP) para o endereço físico
(MAC address)
- É necessário se conhecer o endereço físico de um dispositivo sempre que for enviar
uma mensagem para ele
- Para isto, antes de enviar a mensagem, o dispositivo envia uma mensagem
Broadcast (MAC address = ff : ff : ff : ff : ff : ff) perguntando qual é o MAC address do
dispositivo com o IP destino
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 253
Exemplo: Mensagem → :
Rede
IP: 192.168.0.1
MSK: 255.255.0.0
GW: 192.168.0.10
switch
gateway gateway
switch
IP: 192.168.0.2
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 192.168.0.3
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 192.168.0.10
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 200.208.0.1
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.3
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.4
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.20
MSK: 255.255.0.0
GW: 200.208.0.20
A B
C
X
Y Z
C Y
Y envia mensagem ARP broadcast perguntando MAC address do gateway
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 254
Exemplo: Mensagem → :
Rede
IP: 192.168.0.1
MSK: 255.255.0.0
GW: 192.168.0.10
switch
gateway gateway
switch
IP: 192.168.0.2
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 192.168.0.3
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 192.168.0.10
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 200.208.0.1
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.3
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.4
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.20
MSK: 255.255.0.0
GW: 200.208.0.20
A B
C
X
Y Z
C Y
gateway responde para Y informando seu MAC address
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 255
Exemplo: Mensagem → :
Rede
IP: 192.168.0.1
MSK: 255.255.0.0
GW: 192.168.0.10
switch
gateway gateway
switch
IP: 192.168.0.2
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 192.168.0.3
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 192.168.0.10
MSK: 255.255.0.0
GW: 192.168.0.10
IP: 200.208.0.1
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.3
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.4
MSK: 255.255.0.0
GW: 200.208.0.20
IP: 200.208.0.20
MSK: 255.255.0.0
GW: 200.208.0.20
A B
C
X
Y Z
C Y
Y envia mensagem contendo: MAC origem: [MAC Y] MAC destino: [MAC gateway] IP origem: 200.208.0.3 [IP Y] IP destino: 192.168.0.1 [IP C]
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 256
Protocolo ARP
Consulta a tabela ARP
- Abra o prompt de comando e digite o comando “arp -a”
Será exibido a tabela ARP contendo os endereços IP atualmente traduzidos
para seu correspondente endereço MAC e armazenados em uma tabela
interna para posterior consulta.
- Digite o comando “arp” e explore as demais opções deste comando.
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 257
Protocolo IP
Programação dos parâmetros IP, MSK e GW
Basicamente, pode ser feita de duas formas:
- Manualmente (mais comum nos dispositivos industriais)
- Automaticamente (através do sistema operacional em conjunto com protocolo
específico)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 258
Protocolo IP
Programação dos parâmetros IP, MSK e GW
Importante: A escolha do valor do MSK é um dos fatores que define a quantidade de
dispositivos que podem ser conectados a uma determinada subrede.
IP: 192.168.0.1 = 11000000 10101000 00000000 00000001
MSK: 255.255.0.0 = 11111111 11111111 00000000 00000000 AND
IP subrede = 11000000 10101000 00000000 00000000
(192.168.0.0)
192 168 0 0
Calc qtde de dispositivos
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 259
Modelo Internet
Utiliza diversos protocolos, cada um com uma função específica
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 260
Protocolo DHCP
- Protocolo DHCP (Dynamic Host Configuration Protocol) definido pela RFC 2131
- Responsável por oferecer configuração dinâmica de alguns dos parâmetros de rede
dos dispositivos.
- Dentre estes parâmetros se encontram o IP, MSK e GW.
- Para isto o dispositivo envia uma mensagem Broadcast perguntando para um
Servidor DHCP qual a configuração necessária para se conectar a subrede.
- Este servidor responde para o dispositivo estas configurações e ele se ajusta
automaticamente.
Config de rede no Windows
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 261
Modelo Internet
Utiliza diversos protocolos, cada um com uma função específica
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 262
Protocolo ICMP
- Protocolo ICMP (Internet Control Message Protocol) definido pela RFC 792
- Oferece recursos para diagnóstico de rede
- Principais comandos:
PING [endereço IP ou URL] → testa conexão entre dois dispositivos
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 263
Protocolo ICMP
Curiosidade: www.submarinecablemap.com
TRACERT [endereço IP ou URL] → mostra a rota de conexão entre dois dispositivos
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 264
Protocolo DNS
- Protocolo DNS (Domain Name System) definido pela RFC 1034
- Oferece recursos para a conversão de um determinado endereço URL para o seu
endereço IP correspondente
- Para isto ele efetua uma consulta a um servidor DNS instalado na internet capaz de
converter o endereço URL para o endereço IP correspondente
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 265
Tarefa
Descubra qual o endereço IP do micro do seu colega ao lado e realize as seguintes
análises:
a) Envie o comando ping para este micro e monitore os frames gerados. Verifique se
houve erros na conexão.
b) Envie o comando tracert para este micro e monitore os frames gerados através do
ping. Descubra, por exemplo, se existem roteadores/gateways no caminho.
c) Envie o comando ping para um endereço URL e verifique o endereço IP do servidor
que mantém esse endereço URL.
d) Utilize o comando nslookup para descobrir o servidor DNS cadastrado em seu
computador e digite nslookup <endereço URL> para o protocolo DNS requisitar o
endereço IP deste endereço URL no servidor DNS.
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 266
Modelo Internet
Utiliza diversos protocolos, cada um com uma função específica
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 267
Protocolo TCP
- Protocolo TCP (Transmition Control Protocol) definido pela RFC 793
- Robustez do sistema: recuperação de dados perdidos, danificados, duplicados ou
fora de ordem
- Transferência básica de dados: recurso de fragmentação das mensagens
- Controle de fluxo: controle de dados aceitos e que faltam ser recebidos
- Multiplexação: múltiplas conexões simultâneas (ports)
- Conexão lógica (sockets)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 268
Protocolo TCP Estabelecimento de conexão lógica (Three Way Handshake) e Comunicação Confiável (ACK)
Estabelece o Número de Sequência Inicial ISN (Initial Sequence Number) gerado randomicamente a cada início de conexão
ISN incrementado a cada mensagem transmitida
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 269
Protocolo TCP Sockets e Multiplexação
- Definido por uma par número de IP + número de Porta
- Permite o uso de diversos protocolos em uma mesma rede física
- Permite o acesso de diversos protocolos em um mesmo equipamento
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 270
DNP3 MODBUS
TCP TCP
DNP3
TCP
MODBUS
Protocolo TCP Sockets e Multiplexação
IP: 192.168.0.1 IP: 192.168.0.5 IP: 192.168.0.3
Porta: 20000 Porta: 20000 Porta: 502 Porta: 502
Socket com Porta: 20000
IP orig: 192.168.0.1 IP dest: 192.168.0.5
Socket com Porta: 502
IP orig: 192.168.0.3 IP dest: 192.168.0.5
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 271
Protocolo TCP Segmentação, Controle de Fluxo e Controle de Congestionamento
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 272
Encapsulamento e a pilha de
protocolos no Modelo Internet
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 274
ETHERNET
IP
MODBUS
TCP
ETHERNET
IP
MODBUS
TCP
Rede
Internet
Aplicação
Transporte
Modelo Internet (pilha com 4 camadas)
Encapsulamento
Como o frame é efetivamente construído
Ler a corrente da fase A
Tabela de Registros End Descrição 0000H Corrente fase A 0001H Corrente fase B 0002H Corrente fase C
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 275
MODBUS-RTU
Endereço do slave Código da função Dados da função CRC
Tabela de Registros End Descrição 0000H Corrente fase A 0001H Corrente fase B 0002H Corrente fase C
01H 03H 00H 00H 00H 01H XXH XXH
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 276
MODBUS over TCP/IP
Endereço do slave Código da função Dados da função CRC
Tabela de Registros End Descrição 0000H Corrente fase A 0001H Corrente fase B 0002H Corrente fase C
01H 03H 00H 00H 00H 01H XXH XXH
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 277
MODBUS over TCP/IP
7 bytes 03H 00H 00H 00H 01H
Código da função Dados da função
Tabela de Registros End Descrição 0000H Corrente fase A 0001H Corrente fase B 0002H Corrente fase C
Cabeçalho MBAP
Total: 12 bytes
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 278
MODBUS over TCP/IP
Cabeçalho MBAP (Modbus Application Protocol)
Total: 7 bytes
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 279
Encapsulamento
ETHERNET
IP
MODBUS
TCP
ETHERNET
IP
MODBUS
TCP
Ler a corrente da fase A
Tabela de Registros End Descrição 0000H Corrente fase A 0001H Corrente fase B 0002H Corrente fase C
12 bytes
Nosso frame
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 280
Cabeçalho do Protocolo TCP
Total: 20 bytes (mínimo)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 281
Cabeçalho do Protocolo TCP
Porta de destino: 502 = 0000 0001 1111 0110B
Sequência de bytes da camada superior Número ISN estabelecido no inicio da conexão e incrementado a cada envio de nova mensagem
Total: 20 bytes (mínimo)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 282
Encapsulamento
ETHERNET
IP
MODBUS
TCP
ETHERNET
IP
MODBUS
TCP
Ler a corrente da fase A
Tabela de Registros End Descrição 0000H Corrente fase A 0001H Corrente fase B 0002H Corrente fase C
12 bytes
Nosso frame
12 bytes 20 bytes
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 283
Cabeçalho do Protocolo IP
Total: 20 bytes (mínimo)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 284
Cabeçalho do Protocolo IP
Total: 20 bytes (mínimo)
IP de origem
IP de destino Ex: 200.208.0.5 (decimal) =
= 1100 1000 . 1101 0000 . 0000 0000 . 0000 0101 (binário) Sequência de bytes da camada superior
20 bytes (IP) + 20 bytes (TCP) + 12 bytes (MODBUS) = 52 bytes
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 285
Encapsulamento
ETHERNET
IP
MODBUS
TCP
ETHERNET
IP
MODBUS
TCP
Ler a corrente da fase A
Tabela de Registros End Descrição 0000H Corrente fase A 0001H Corrente fase B 0002H Corrente fase C
12 bytes
Nosso frame
12 bytes 20 bytes
12 bytes 20 bytes 20 bytes
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 286
Cabeçalho do Protocolo Ethernet
Total: 22 bytes
(no início)
Total: 4 bytes (no fim)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 287
Cabeçalho do Protocolo Ethernet
MAC destino Ex: 0c : 0f : 75 : 00 : 00 : 0a
MAC origem
Sequência de bytes da camada superior
Frame Check Sequence = CRC de 4 bytes
Bytes utilizados
no cálculo do FCS
Total: 22 bytes
(no início)
Total: 4 bytes (no fim)
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 288
Encapsulamento
ETHERNET
IP
MODBUS
TCP
ETHERNET
IP
MODBUS
TCP
Ler a corrente da fase A
Tabela de Registros End Descrição 0000H Corrente fase A 0001H Corrente fase B 0002H Corrente fase C
12 bytes
Nosso frame
12 bytes 20 bytes
12 bytes 20 bytes 20 bytes
12 bytes 20 bytes 20 bytes 22 bytes 4 bytes
Total = 78 bytes
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 289
Análise da pilha de protocolos no
Modelo Internet
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 290
Wireshark
- Conhecido anteriormente como Ethereal
- Software livre amplamente utilizado para análise e solução de problemas para
diversos tipos de protocolos de rede
- Download e informações no site:
www.wireshark.org
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 291
ETHERNET
IP
MODBUS
TCP
ETHERNET
IP
MODBUS
TCP
Ler a corrente da fase A
Tabela de Registros End Descrição 0000H Corrente fase A 0001H Corrente fase B 0002H Corrente fase C
12 bytes
Nosso frame
12 bytes 20 bytes
12 bytes 20 bytes 20 bytes
12 bytes 20 bytes 20 bytes 22 bytes 4 bytes
Desktop com software Wireshark monitorando a placa de rede
Wireshark
IP: 192.168.1.44 IP: 192.168.1.152
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 293
Tela do software Wireshark
Frames capturados
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 294
Tela do software Wireshark Selecionando o 18º frame capturado (MODBUS
over TCP/IP)...
... aparece neste campo a sua análise
detalhada
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 295
Tela do software Wireshark
... e neste campo
os bytes efetivamente
enviados
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 296
Tarefa
Abra o arquivo modbus.pcap e analise o comando MODBUS over TCP/IP enviado na
linha 18, respondendo:
a) Qual a função MODBUS executada? (leitura de registro, escrita de coil, etc...)
b) Qual(is) endereços de coil, ou registro, estão sendo acessados? O que está sendo
feito?
c) Em qual linha está o comando de resposta desta solicitação? Esta resposta foi
executada corretamente?
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 297
Tela do software Wireshark
Selecionando um protocolo
específico (ex: MODBUS)
aparece sua análise
detalhada
... e são destacados em azul os seus bytes no frame 03H 00H 00H 00H 01H Ler corrente da fase A
Prof. Igarashi
Depto Eletrica – DEL
IFSP – campus SPO
slide 298
Tarefa
a) Abra o software Wireshark e habilite a captura de pacotes na interface de rede
utilizada pelo seu computador para acesso à internet. Utilizando algum browser
digite um site que você ainda não acessou no dia de hoje. Verifique com o software
Wireshark todas as mensagens trocadas para que a solicitação do site feita através do
browser seja processada.
b) Teste os comandos vistos até agora (ping, tracert, nslookup, etc...) e verifique
como se comportam através do software Wireshark.
c) Envie um comando ping para o colega ao lado e descubra qual o endereço MAC
dele.