redes de comunicação - robotica ufscararoca/disciplinas/mecatronica/aulas/17_19...sistemas...
TRANSCRIPT
Sistemas Mecatrônicos 1 Redes de comunicação
Prof. Rafael V. Aroca
Departamento de Engenharia Mecânica Universidade Federal de São Carlos
Redes de comunicação
Figura: http://www.ti.com/corp/docs/innovation/innovation-stories/connectivity/connectivity.html
Redes de comunicação
Figura: https://www.eclipse.org/proposals/technology.paho/
Redes de comunicação
Figura: http://factory-automation.blogspot.com.br/2012/07/raytek-introduces-marathon-mm-series.html
Redes de comunicação
• Principais aplicações para robótica a automação
– Controle e atuação
– Monitoramento e supervisão
– Acesso/operação remota
Redes de comunicação
• Formas de controle em automação e robótica
– Centralizado
– Hierárquico
– Distribuído
• Nível 1: Medição e atuação
• Nível 2: Controle digital direto e sequencial
• Nível 3: Controle supervisório
• Nível 4: Controle de gerenciamento de projeto
Controle e atuação
Figura: http://www.globalspec.com/learnmore/networking_communication_equipment/networking_equipment/distributed_control_systems_dcs
Monitoramento e supervisão
Figura: http://www.watertechonline.com/articles/165866-northern-rockies-regional-municipality-upgrades-its-scada-for-all-water-and-wastewater-treatment-operations?v=preview
Internet of things (IoT)
Figura: http://convergenciadigital.uol.com.br/cgi/cgilua.exe/sys/start.htm?infoid=36312&sid=97#.VVebXvkRHIU
Redes de comunicação
Figura: http://concursosenado.blogspot.com.br/2012/04/modelo-osi-x-tcpip.html
Topologias
• Características das redes industriais – Topologias de rede
• Barramento de dados • Estrela • Hierárquico ou árvore • Anel • Malha
• Controle de acesso ao meio – Token – TDM: Time Division Multiplexing – CSMA/CD (Carrier Sense Multiple Access / Colision
Detection)
Portas seriais
• Groover
– Controle numérico distribuído
• 60: várias máquinas ferramenta, 1 computador
• 80: várias máquinas com CPU + computador central
– RS-232 (TX, RX, GND)
• Padrão universal
• Multi-serial
– Redes com RS-232 ou LAN
Portas seriais
• Síncrona
• Assíncrona
Figuras: http://maxembedded.com/2013/09/serial-communication-introduction/
Relembrando – porta serial RS-232
• TTL / RS-232 (0-5V / -12V a 12V)
• USB-Serial
• Muitos dispositivos e máquinas
• Loopback
– TX+RX
Figura: http://www.best-microcontroller-projects.com/how-rs232-works.html
RS-232
• Comunicação serial full duplex a 3 fios
– TX, RX, GND
– CTS, RTS, DTR
• 60 metros @ 2kbps
• 2 metros @ 57kbps
• Cabos especiais > 100 metros
• Ponto a ponto
Dispositivos RS-232
• Arduino • Centros de usinagem • Scanners laser • Impressoras fiscais • Leitores de código de barras • GPS • PABX (bilhetagem CDR e monitoramento) • IMU • OBD2 • Balanças industriais • Inclinômetro • Controle de acesso • ...
Simples, mas muito usada: RS-485
Figura: http://www.seika.de/english/html_e/NG360_e.htm
RS-485
• Rede com barramento compartilhado
Figura: http://www.smar.com/newsletter/marketing/index172.html
RS-485
• Comunicação full duplex com 4 fios • Comunicação half duplex com 2 fios • Rede local de baixo custo • 35Mbps @ 10 metros ou 100kpbs @ 1000 metros • Multiponto com “enable” (terminador)
• Par trançado • Master/slave • Enable
– Tempo
RS-485
Amplamente usado em automação industrial e rede de câmeras de segurança
Figura: http://www.aliexpress.com/ptz-keyboard-controller_reviews.html
RS-485
Figura: http://lusorobotica.com/index.php?topic=5206.0
RS-485
Figura: http://www.tbreak.com/rq-huno-robot-kit-review/
RS-485
Figura adaptada de: http://humanoids.dem.ist.utl.pt/pc_rs232/overview.html
RS-485
Figura: http://www.pablogindel.com/informacion/the-arduinodynamixel-resource-page/
Alguém lembra?
Figura: http://www.atlasbombas.com.br/inversor-de-frequencia-weg-cfw-08-220v-p147
Dispositivos RS-485
• Muitos! • Sensores de pressão • Termômetros • Sensores de fluxo e vazão • Detectores de gases • Sistemas de alarme • Câmeras de segurança • Controladores Lógicos Programáveis (CLPs) • ...
Controller Area Network (CAN)
• Rede Multiponto • 2 fios com velocidade de 1Mbps a 40m, podendo chegar até +1000m • Terminador • CSMA/CD com NDA (Arbitração não destrutiva) • TT-CAN • Redes veiculares • Rede interna de alguns robôs • Padrões para várias indústrias • Frames de 5 a 13 bytes • 44 a 108 bits • Overhead • Exemplo de produto: EPOS (Maxon) • Disponível em muitos microcontroladores
• Flexray
Rede CAN automotiva
Figura: http://www.aa1car.com/library/can_systems.htm
All your devices can be hacked
https://www.ted.com/talks/avi_rubin_all_your_devices_can_be_hacked?language=en
Could someone hack your pacemaker? At TEDxMidAtlantic, Avi Rubin explains how hackers are compromising cars, smartphones and medical devices, and
warns us about the dangers of an increasingly hack-able world. (TEDxMidAtlantic.)
DNS Poisoning 216.172.160.123
Protocolos
• Organização dos dados “no fio”
– Dados de controle
– Dados úteis (payload)
– Regras em comum
• Exemplo
– TCP/IP
– Protocolo para acessar páginas web
– Ethernet → IP → TCP → HTTP
Protocolos
• 1,200,200 • 2,300,500 • Endereçamento
– Individual – Broadcast
• Binário ou ASCII • Verificação e correção de erros
– Checksum, CRC – Com ou sem confirmação – Retransmissão
Protocolos
• Muitos
• Necessidade de padronização
• Industriais: FieldBus
– Modbus
– ProfiBus
– DeviceNet
– ...
• CAN, SAE, ISOBUS,
Modems
• MOdulator – DEModulator
– BBS
– Dial up
Figuras: http://www.necoso.com/s2e.htm
Modems
Figura: http://atomictoasters.com/2012/04/user-input-ludicrous-speed-2/
Modems
• Acesso remoto
• Acesso remoto a aplicações na nuvem (70s)
– Bill Gates
• Machine to Machine (M2M)
– Alarmes e outros sistemas de monitoramento
– Sistemas de rastreamento
BBS
Figura: http://www.watson.org/~robert/star-lit/wwiv/
ARPANET – 60s
Figura: http://www.vrworld.com/2011/06/29/social-networking-90-reboot-history-of-social-networking/
ARPANet
• ARPANet -> Internet
Fonte: http://www.cs.kent.edu/~rothstei/10051/history/Hobbes-Internet-Timeline.html
Internet X Web
• A Internet não é a web!
Figura: http://www.extremetech.com/extreme/147320-cern-boosts-its-search-for-antimatter-with-yandexs-matrixnet-search-engine-tech
Web
• 1980-89 – Tim Berners Lee
– Info.cern.ch • HTTP
• URL
• HTML
– NeXTcube • CPU 25MHz / 64MB RAM
– Apenas um serviço
da Internet
Figura: http://pt.wikipedia.org/wiki/Tim_Berners-Lee
Web
Figura: http://www.netcraft.com/internet-data-mining/
TCP/IP
Figura: http://www.devmedia.com.br/via-de-mao-dupla-com-websockets-revista-java-magazine-117/28281
Camada de rede / física
• Modems (par trançado de longa distância)
• Fibras oceânicas e terrestres
• Rádios (incluindo Wifi) / Satélites
• Ethernet – Rede LOCAL
– Xerox PARC
– Cabo coaxial
– Cabos de par trançado com Hubs
– Switches
Ethernet
Ethernet is Popping up in Many New Places
From cars to data centers, it’s not just a LAN any more. Despite its original intent as a local network for workstations, Ethernet is
showing up in all sorts of applications for which it is not obviously a good choice. Find out why this keeps happening, and what new areas
Ethernet is likely to dominate.
Fonte: http://app.design.altera.com/e/er?s=1680167719&lid=725&elq=438908b256b24b55b911891eaf2c95d
d http://www.altera.com/technology/system-design/articles/2015/whither-
ethernet.html?utm_source=altera&utm_medium=email&utm_campaign=system_design_journal&utm_content=
Ethernet
• 10Mbps-10Gbps
• MAC Address (6 bytes)
Figura: https://www.edu.uwo.ca/mis/intranet.html
Ethernet
• Carrier Sense Multiple Access with Collision Detection
– CSMA/CD
Figura: http://www.technick.net/public/code/cp_dpage.php?aiocp_dp=guide_networking_switching
EtherCAT
• Ethernet não garante tempos e determinismo
• Ethernet for Control and Automation – Kuka, PR2, Siemens, ABB, etc...
– Controladores dedicados (passagem)
“As is always said about numbers; “figures don’t lie but liars figure”. Giving any performance numbers for an industrial network is open to suspicion but generally 1000s digital IOs can be updated in 30 microseconds and 100 Servos can be updated at 10Khz.”
Texto: http://www.rtaautomation.com/technologies/ethercat/
Mais informações: http://cdn.ethercat.org/2014/brasil/download/
Frame Ethernet
Figura: http://www.just2good.co.uk/ethernetFrame.php
Internet Protocol (IP)
Figura: http://computing.dcu.ie/~humphrys/Notes/Networks/network.layer.html
Camada Internet
• Endereçamento
– IPs reais
– Ips “falsos”
• Configuração básica
– IP
– Máscara de sub-rede
– Gateway
– DNS
Sub-redes
• Rede local ou outra rede?
• Decisão de roteamento
• Tabela de roteamento – Gateway para redes específicas
– Gateway padrão
– Network Address Translation (NAT)
• Roteamento de borda (BGP) – Estático X dinâmico
– PTTs
Troca de tráfego (http://ptt.br/)
Figura: http://ptt.br/. Obtida em 19/05/2015 9:12
PTT São Paulo (capital/parcial)
Figura: http://ptt.br/particip/sp. Obtida em 19/05/2015 9:15
Roteadores (em casa)
Figura: http://www.conceptdraw.com/examples/how-to-draw-a-network-diagram-on-a-map
Roteadores (na região)
Figura: http://phoenix.goucher.edu/~kelliher/s2011/cs325/apr27.html
Comutação de pacotes
Figura: http://jeromeabel.net/ressources/xbee-arduino
Teste prático
• ICMP – route print / route -n
• Gateway padrão • Rede / Custo / Máscara / Interface
– ping localhost – ping 192.168.0.1
• Rotas – tracert localhost / traceroute localhost – tracert 192.168.0.1 / traceroute 192.168.0.1 – tracert www.ufscar.br / traceroute www.ufscar.br – tracert www.mit.edu / traceroute www.mit.edu – ...
Camada de transporte
• UDP ou TCP
• UDP – User datagram Protocol
– DNS
– Vídeo
– Chamadas telefônicas
– Não tem confirmação de recebimento
– Não tem retransmissão
– Serviço (porta)
UDP
Figura: http://www.voip-sip-sdk.com/p_231-user-datagram-protocol-voip.html
UDP
Figura: http://www.highteck.net/EN/Transport/OSI_Transport_Layer.html
UDP: Aplicação
• Domain Name Service (DNS)
– Resolução de nome
– DNS reverso
Figura: http://computer.howstuffworks.com/dns.htm
TCP
Figura: http://www.kashif-ali.com/2011/06/tcp-vs-udp/
Camada de transporte
• Transfer Control Protocol (TCP)
– Conexão (circuito virtual)
– Confirmação de recebimento
– Garantia de entrega
– Verificação
– Sequência
– Serviço (porta)
Lembrando
Figura: http://www.cisco.com/en/US/docs/internetworking/troubleshooting/guide/tr1907.html
TCP
Figura: http://www.cisco.com/en/US/docs/internetworking/troubleshooting/guide/tr1907.html
Camada de aplicação
• Portas típicas TCP – HTTP: 80
– STMP: 25
– POP: 110
– FTP: 21
– DNS: 53
– Telnet: 21
– DHCP: 546
– NetBIOS: 137
– ...
Figura: http://www.cisco.com/en/US/docs/internetworking/troubleshooting/guide/tr1907.html
Firewall
• Bloqueio de portas (filtro de pacotes)
• Detecção de intrusão (IDS)
Comutação de pacotes: http://computer.howstuffworks.com/firewall.htm
Exemplos práticos
• ICMP – Ping
– tracert / traceroute
• DNS – ping / nslookup
• HTTP – telnet www.uol.com.br 80
• SMTP – telnet smtp.ufscar.br 25
Serviços via web
• Servidor web em Arduino para leitura remota de sensor via web
– Ethernet Shield / Wifi Shield / Arduino YUN
– Exemplos -> Ethernet -> WebServer
Figura: http://www.chipkin.com/arduino-ethernet-shield-a-better-webserver/
Sockets
• Modelo cliente-servidor – Cliente = qualquer máquina
• Exemplo App Inventor
– Servidor = qualquer máquina
• MATLAB – Servidor
– Cliente • tcpip()
– Envio e recepção
MATLAB
• Sockets
– t = tcpip('www.uol.com.br',80);
– fopen(t)
– fwrite()
– fread()
http://www.mathworks.com/help/instrument/using-tcpip-server-sockets.html
MATLAB
• Sockets Web
– A = urlread('http://www.uol.com.br')
– A(1)
– A(n)....
– A = urlread('http://<ip-arduino>/liga')
– A = urlread('http://<ip-arduino>/desliga')
Considerações finais
• Hoje tudo está conectado • Baixo custo de redes Ethernet • Equipamentos industriais com um IP • Controle e monitoramento de muitos dispositivos via
web • Comodidade para sistemas de manufatura integrada
por computador (CIM) • Riscos de segurança
– Caso da Boeing e Airbus – Aniônica com Ethernet e problemas com a FAA
• “How to Hack Into a Boeing 787”
Leitura recomendada
• Vídeos recomendados – The Good Warriors of the Net - IP for Peace
• https://www.youtube.com/watch?v=x9XWxD6cJuY
– Nerds 2.0.1
– A vingança dos Nerds
– Software: Wireshark
• Leitura – Bolton, Redes de Comunicação
– Bayle, J. C Programming for Arduino • Capítulo 11