SlideShare una empresa de Scribd logo
1 de 25
Descargar para leer sin conexión
Protocolos de
Comunicação - Sistemas
Embarcados
Prof. Romulo Fagundes Cantanhede
Tópicos
Guardião Cloud
Protocolos de Comunicação:
HTTP
MQTT
CoAP
Guardião Cloud System
O que é?
Plataforma de IoT, que tem permite o controle e
recebimento de informações de dispositivos diversos.
Existe 3 tipos de dispositivos:
Coleta de dados.
Controlar dispositivos.
Disparar gatilhos.
Dispositivo de Coleta
Permite o recebimento de informações, em formato
variado, sem restrição de campos.
Podemos, por exemplo:
Receber dados GPS.
Receber dados de sensores de temp./hum.
Receber dados de computadores e celulares.
Controlar Dispositivos
Que tal ligar uma lâmpada remotamente? É possível
dizer em que estado, determinado dispositivo deva
estar.
Podemos por exemplo:
Ligar/desligar um relé a distância (sirene/lâmpada).
Posicionar um servo motor.
Disparar um Gatilho
Que tal detectar e realizar alguma ação em caso de
incêndio? Ou detectar a presença de uma pessoa?
Podemos por exemplo:
Disparar um alerta em caso de presença de intruso.
Disparar um alerta em caso de incêndio.
Dashboard
Informações do Projeto
Api Key - Número único vinculado ao projeto.
Prefixo - Será utilizado na sequência para criação de
cada novo dispositivo.
O que precisa?
Se cadastrar! Com diversos planos, dentre eles
Gratuito.
API de Serviço - Use os dados como quiser.
Boa documentação: http://docs.guardiaocloud.com.br
Diversos exemplo e propostas.
Protocolos de Comunicação
Protocolo - HTTP
RFC 2616
Protocolo simples de ser implementado e utilizado.
Em IoT, para leitura de informações, se utiliza do método
GET e POST.
Porém a mensagem HTTP, inclui várias informações no
cabeçalho.
Em condições e baixo consumo de banda, é
desaconselhado.
Exemplo HTTP - Coleta
$ curl -X GET 'http://127.0.0.1:3000/collect/
WBS0007/?apiKey=69f827f9-512d-4b4e-8867-
d761c4fb9ce3&temperatura=10&humidade=20&lumin
osidade=5'
Dado Valor
temperatura 10
humidade 20
luminosidade 5
Exemplo HTTP - Atuador
$ curl -X GET 'http://127.0.0.1:3000/actuator/
WBS0002/?apiKey=69f827f9-512d-4b4e-8867-
d761c4fb9ce3'
{"state":43} {"state":1}
Exemplo HTTP - Gatilho
$ curl -X GET ‘http://127.0.0.1:3000/trigger/
WBS0008/on/?apiKey=69f827f9-512d-4b4e-8867-
d761c4fb9ce3'
{“status”:true,”dateUpdated":"..."}
on
{“status”:false,”dateUpdated":"..."}
off
Protocolo - MQTT
Sem RFC - Muito simples para tanto…(site).
Utiliza TCP, porta 1883.
Baseado em um modelo de Publisher/Subscribe.
Precisa de um broker e de simples conexão.
Recomendado para IoT e M2M.
MQTT é mais simples que o HTTP, em relação a
tamanho de mensagem - economia de banda.
Protocolo MQTT - App
Para utilizar o MQTT é possível utilizar o app:
Mosquitto:
Possui lib para Python: paho-mqtt
App nativo, instalado através do pacote: mosquitto.
mosquitto_pub - publicar mensagem.
mosquitto_sub - inscrever mensagem.
Protocolo MQTT - Pub
mosquitto_pub -h 127.0.0.1 -u
“romulo.fagundes@gmail.com” -P
“69f827f9-512d-4b4e-8867-d761c4fb9ce3” -t “WBS/
collect/WBS0007” -m ‘{“data”:{“temperatura”:
15,”humidade”:25,”luminosidade":10}}'
O usuário (-u) é o login do projeto.
A senha (-P) é a ApiKey do projeto.
A lista (-t) é aonde os dados serão publicados.
E os dados (-m) é os dados em formato JSON.
Protocolo MQTT - Sub
mosquitto_sub -h 127.0.0.1 -u
"romulo.fagundes@gmail.com" -P
"69f827f9-512d-4b4e-8867-d761c4fb9ce3" -t "WBS/
collect/WBS0007" -v
O usuário (-u) é o login do projeto.
A senha (-P) é a ApiKey do projeto.
A lista (-t) é aonde os dados serão acompanhados.
Para exibir os dados no console, utilize o -v.
Protocolo MQTT
As listas disponíveis pelo Guardião, são:
/collect/ - Alterar e coletar dados.
/trigger/ - Alterar e acompanhar gatilho.
/actuator/ - Alterar e acompanhar dados de um
atuador.
Protocolo - CoAP
RFC 7252.
Utiliza UDP porta 5683.
Baixo consumo de energia e banda.
Recomendado para IoT e M2M.
Imagine o HTTP/REST, porém utilizando UDP.
Protocolo - CoAP - App
É possível instalar o coap-cli, utilizando Node.JS.
O Guardião implementa apenas 2 métodos do CoAP:
GET - Acompanhar dados publicados.
PUT - Enviar dados para coleta/alteração.
Exemplo CoAP - Envio
coap put coap://127.0.0.1/gcs/WBS/collect/WBS0007
-p ‘{“data”:{"temperatura":10,"umidade":
30,"luminosidade":15},"auth":
{"apiKey":"69f827f9-512d-4b4e-8867-
d761c4fb9ce3","email":"romulo.fagundes@gmail.com"}
}'
Exemplo CoAP - Acompanhar
coap get coap://127.0.0.1/gcs/WBS/collect/WBS0007
-p ‘{"auth":{"apiKey":"69f827f9-512d-4b4e-8867-
d761c4fb9ce3","email":"romulo.fagundes@gmail.com"}
}' -o
Realiza o acompanhamento (-o) para os dados que
estão sendo enviados.
Sendo enviar os dados(-p) apenas realizar a
autenticação.
Dúvidas?

Más contenido relacionado

La actualidad más candente

Workshop Introducao ao IoT - Arduino Day Recife 2017
Workshop Introducao ao IoT - Arduino Day Recife 2017Workshop Introducao ao IoT - Arduino Day Recife 2017
Workshop Introducao ao IoT - Arduino Day Recife 2017
Eronides Neto
 

La actualidad más candente (20)

Localização indoor com redes de beacons inteligentes
Localização indoor com redes de beacons inteligentesLocalização indoor com redes de beacons inteligentes
Localização indoor com redes de beacons inteligentes
 
Internet of things
Internet of thingsInternet of things
Internet of things
 
Workshop de IoT e Inteligência na CPBR10 parte 1
Workshop de IoT  e Inteligência na CPBR10 parte 1Workshop de IoT  e Inteligência na CPBR10 parte 1
Workshop de IoT e Inteligência na CPBR10 parte 1
 
Rede CAN em Linux Embarcado para Aplicações Conectadas
Rede CAN em Linux Embarcado para Aplicações ConectadasRede CAN em Linux Embarcado para Aplicações Conectadas
Rede CAN em Linux Embarcado para Aplicações Conectadas
 
Arduino Yún - À nuvem e além
Arduino Yún - À nuvem e alémArduino Yún - À nuvem e além
Arduino Yún - À nuvem e além
 
Arduino Day 2014 - Cloud para Internet das Coisas & Intel Galileo
Arduino Day 2014 - Cloud para Internet das Coisas & Intel GalileoArduino Day 2014 - Cloud para Internet das Coisas & Intel Galileo
Arduino Day 2014 - Cloud para Internet das Coisas & Intel Galileo
 
Veja como hackear seu carro usando Rede CAN com Arduino Due
Veja como hackear seu carro usando Rede CAN com Arduino DueVeja como hackear seu carro usando Rede CAN com Arduino Due
Veja como hackear seu carro usando Rede CAN com Arduino Due
 
NFC - Uma Nova Possibilidade - TDC Porto Alegre 2014
NFC - Uma Nova Possibilidade - TDC Porto Alegre 2014NFC - Uma Nova Possibilidade - TDC Porto Alegre 2014
NFC - Uma Nova Possibilidade - TDC Porto Alegre 2014
 
IoT Usando Azure Como Backend
IoT Usando Azure Como BackendIoT Usando Azure Como Backend
IoT Usando Azure Como Backend
 
Se você é .NET, você é NETDUINO - TDC 2013 - Porto Alegre
Se você é .NET, você é NETDUINO - TDC 2013 - Porto AlegreSe você é .NET, você é NETDUINO - TDC 2013 - Porto Alegre
Se você é .NET, você é NETDUINO - TDC 2013 - Porto Alegre
 
Internet das Coisas - Na nuvem além da telemetria
Internet das Coisas - Na nuvem além da telemetriaInternet das Coisas - Na nuvem além da telemetria
Internet das Coisas - Na nuvem além da telemetria
 
QCon Rio 2015 - IoT é muito mais que hardware conectado: explorando arquitetu...
QCon Rio 2015 - IoT é muito mais que hardware conectado: explorando arquitetu...QCon Rio 2015 - IoT é muito mais que hardware conectado: explorando arquitetu...
QCon Rio 2015 - IoT é muito mais que hardware conectado: explorando arquitetu...
 
Workshop Introducao ao IoT - Arduino Day Recife 2017
Workshop Introducao ao IoT - Arduino Day Recife 2017Workshop Introducao ao IoT - Arduino Day Recife 2017
Workshop Introducao ao IoT - Arduino Day Recife 2017
 
Drones - Programando sistemas embarcados voadores e... autônomos!
Drones - Programando sistemas embarcados voadores e... autônomos!Drones - Programando sistemas embarcados voadores e... autônomos!
Drones - Programando sistemas embarcados voadores e... autônomos!
 
TDC2017 - Sistemas Assimétricos com ARM e FPGA
TDC2017 - Sistemas Assimétricos com ARM e FPGATDC2017 - Sistemas Assimétricos com ARM e FPGA
TDC2017 - Sistemas Assimétricos com ARM e FPGA
 
Plataformas de Hardware para o seu Projeto - Quais seus diferenciais? Uma vis...
Plataformas de Hardware para o seu Projeto - Quais seus diferenciais? Uma vis...Plataformas de Hardware para o seu Projeto - Quais seus diferenciais? Uma vis...
Plataformas de Hardware para o seu Projeto - Quais seus diferenciais? Uma vis...
 
Segurança com Software Livre
Segurança com Software LivreSegurança com Software Livre
Segurança com Software Livre
 
IoT – Internet of Things. Do Básico ao Hello World!
IoT – Internet of Things. Do Básico ao Hello World!IoT – Internet of Things. Do Básico ao Hello World!
IoT – Internet of Things. Do Básico ao Hello World!
 
Sistemas Embarcados Híbridos - Processamento Assimétrico
Sistemas Embarcados Híbridos - Processamento AssimétricoSistemas Embarcados Híbridos - Processamento Assimétrico
Sistemas Embarcados Híbridos - Processamento Assimétrico
 
Oficina de IoT #02 - Quarta Temporada
Oficina de IoT #02 - Quarta TemporadaOficina de IoT #02 - Quarta Temporada
Oficina de IoT #02 - Quarta Temporada
 

Similar a Protocolos de Sistemas Embarcados

ffffFicha 8 Nº.docx
ffffFicha 8 Nº.docxffffFicha 8 Nº.docx
ffffFicha 8 Nº.docx
AgiltonOliveiraOlive
 
Tecnologia Dr4 Stc Marco1
Tecnologia Dr4 Stc Marco1Tecnologia Dr4 Stc Marco1
Tecnologia Dr4 Stc Marco1
guest564c19
 
Tecnologia Dr4 Stc Marco
Tecnologia Dr4 Stc MarcoTecnologia Dr4 Stc Marco
Tecnologia Dr4 Stc Marco
mega
 

Similar a Protocolos de Sistemas Embarcados (20)

Apicon2018.pptx
Apicon2018.pptxApicon2018.pptx
Apicon2018.pptx
 
IoT: construindo ideias com nodeMCU e MQTT
IoT: construindo ideias com nodeMCU e MQTTIoT: construindo ideias com nodeMCU e MQTT
IoT: construindo ideias com nodeMCU e MQTT
 
Protocolo MQTT - Redes de Computadores
Protocolo MQTT - Redes de Computadores Protocolo MQTT - Redes de Computadores
Protocolo MQTT - Redes de Computadores
 
Ferment io t - Distributed and Scalable IoT Solution
Ferment io t - Distributed and Scalable IoT SolutionFerment io t - Distributed and Scalable IoT Solution
Ferment io t - Distributed and Scalable IoT Solution
 
Webinar: Monitorando sensores IoT: Do ESP32 ao Grafana
Webinar: Monitorando sensores IoT: Do ESP32 ao GrafanaWebinar: Monitorando sensores IoT: Do ESP32 ao Grafana
Webinar: Monitorando sensores IoT: Do ESP32 ao Grafana
 
Protocolo MQTT: Message Queuing Telemetry Transport
Protocolo MQTT: Message Queuing Telemetry TransportProtocolo MQTT: Message Queuing Telemetry Transport
Protocolo MQTT: Message Queuing Telemetry Transport
 
ffffFicha 8 Nº.docx
ffffFicha 8 Nº.docxffffFicha 8 Nº.docx
ffffFicha 8 Nº.docx
 
Internet das coisas + Guardião Cloud
Internet das coisas + Guardião CloudInternet das coisas + Guardião Cloud
Internet das coisas + Guardião Cloud
 
Redes de computador
Redes de computadorRedes de computador
Redes de computador
 
Eica 2015.2 - Introdução ao IOT
Eica 2015.2 - Introdução ao IOTEica 2015.2 - Introdução ao IOT
Eica 2015.2 - Introdução ao IOT
 
CLASS 2018 - Palestra de Alexandre Freire (Industrial Cybersecurity Sales Eng...
CLASS 2018 - Palestra de Alexandre Freire (Industrial Cybersecurity Sales Eng...CLASS 2018 - Palestra de Alexandre Freire (Industrial Cybersecurity Sales Eng...
CLASS 2018 - Palestra de Alexandre Freire (Industrial Cybersecurity Sales Eng...
 
Multicast on Cisco Network
Multicast on Cisco NetworkMulticast on Cisco Network
Multicast on Cisco Network
 
Desenhando Arquiteturas de Segurança Cibernética Centradas na Prevenção de Si...
Desenhando Arquiteturas de Segurança Cibernética Centradas na Prevenção de Si...Desenhando Arquiteturas de Segurança Cibernética Centradas na Prevenção de Si...
Desenhando Arquiteturas de Segurança Cibernética Centradas na Prevenção de Si...
 
Que tal Hackear seu carro e plugá-lo na nuvem ?!
Que tal Hackear seu carro e plugá-lo na nuvem ?!Que tal Hackear seu carro e plugá-lo na nuvem ?!
Que tal Hackear seu carro e plugá-lo na nuvem ?!
 
Desafios do IoT
Desafios do IoTDesafios do IoT
Desafios do IoT
 
Computação Física e Internet das Coisas
Computação Física e Internet das CoisasComputação Física e Internet das Coisas
Computação Física e Internet das Coisas
 
"Evolution of Computing, IoT & Cloud Computing"
"Evolution of Computing, IoT & Cloud Computing""Evolution of Computing, IoT & Cloud Computing"
"Evolution of Computing, IoT & Cloud Computing"
 
Tecnologia Dr4 Stc Marco1
Tecnologia Dr4 Stc Marco1Tecnologia Dr4 Stc Marco1
Tecnologia Dr4 Stc Marco1
 
Tecnologia Dr4 Stc Marco
Tecnologia Dr4 Stc MarcoTecnologia Dr4 Stc Marco
Tecnologia Dr4 Stc Marco
 
Intro_redes.pdf
Intro_redes.pdfIntro_redes.pdf
Intro_redes.pdf
 

Último

Último (8)

ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdf
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdf
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 

Protocolos de Sistemas Embarcados

  • 1. Protocolos de Comunicação - Sistemas Embarcados Prof. Romulo Fagundes Cantanhede
  • 2. Tópicos Guardião Cloud Protocolos de Comunicação: HTTP MQTT CoAP
  • 4. O que é? Plataforma de IoT, que tem permite o controle e recebimento de informações de dispositivos diversos. Existe 3 tipos de dispositivos: Coleta de dados. Controlar dispositivos. Disparar gatilhos.
  • 5. Dispositivo de Coleta Permite o recebimento de informações, em formato variado, sem restrição de campos. Podemos, por exemplo: Receber dados GPS. Receber dados de sensores de temp./hum. Receber dados de computadores e celulares.
  • 6. Controlar Dispositivos Que tal ligar uma lâmpada remotamente? É possível dizer em que estado, determinado dispositivo deva estar. Podemos por exemplo: Ligar/desligar um relé a distância (sirene/lâmpada). Posicionar um servo motor.
  • 7. Disparar um Gatilho Que tal detectar e realizar alguma ação em caso de incêndio? Ou detectar a presença de uma pessoa? Podemos por exemplo: Disparar um alerta em caso de presença de intruso. Disparar um alerta em caso de incêndio.
  • 9. Informações do Projeto Api Key - Número único vinculado ao projeto. Prefixo - Será utilizado na sequência para criação de cada novo dispositivo.
  • 10. O que precisa? Se cadastrar! Com diversos planos, dentre eles Gratuito. API de Serviço - Use os dados como quiser. Boa documentação: http://docs.guardiaocloud.com.br Diversos exemplo e propostas.
  • 12. Protocolo - HTTP RFC 2616 Protocolo simples de ser implementado e utilizado. Em IoT, para leitura de informações, se utiliza do método GET e POST. Porém a mensagem HTTP, inclui várias informações no cabeçalho. Em condições e baixo consumo de banda, é desaconselhado.
  • 13. Exemplo HTTP - Coleta $ curl -X GET 'http://127.0.0.1:3000/collect/ WBS0007/?apiKey=69f827f9-512d-4b4e-8867- d761c4fb9ce3&temperatura=10&humidade=20&lumin osidade=5' Dado Valor temperatura 10 humidade 20 luminosidade 5
  • 14. Exemplo HTTP - Atuador $ curl -X GET 'http://127.0.0.1:3000/actuator/ WBS0002/?apiKey=69f827f9-512d-4b4e-8867- d761c4fb9ce3' {"state":43} {"state":1}
  • 15. Exemplo HTTP - Gatilho $ curl -X GET ‘http://127.0.0.1:3000/trigger/ WBS0008/on/?apiKey=69f827f9-512d-4b4e-8867- d761c4fb9ce3' {“status”:true,”dateUpdated":"..."} on {“status”:false,”dateUpdated":"..."} off
  • 16. Protocolo - MQTT Sem RFC - Muito simples para tanto…(site). Utiliza TCP, porta 1883. Baseado em um modelo de Publisher/Subscribe. Precisa de um broker e de simples conexão. Recomendado para IoT e M2M. MQTT é mais simples que o HTTP, em relação a tamanho de mensagem - economia de banda.
  • 17. Protocolo MQTT - App Para utilizar o MQTT é possível utilizar o app: Mosquitto: Possui lib para Python: paho-mqtt App nativo, instalado através do pacote: mosquitto. mosquitto_pub - publicar mensagem. mosquitto_sub - inscrever mensagem.
  • 18. Protocolo MQTT - Pub mosquitto_pub -h 127.0.0.1 -u “romulo.fagundes@gmail.com” -P “69f827f9-512d-4b4e-8867-d761c4fb9ce3” -t “WBS/ collect/WBS0007” -m ‘{“data”:{“temperatura”: 15,”humidade”:25,”luminosidade":10}}' O usuário (-u) é o login do projeto. A senha (-P) é a ApiKey do projeto. A lista (-t) é aonde os dados serão publicados. E os dados (-m) é os dados em formato JSON.
  • 19. Protocolo MQTT - Sub mosquitto_sub -h 127.0.0.1 -u "romulo.fagundes@gmail.com" -P "69f827f9-512d-4b4e-8867-d761c4fb9ce3" -t "WBS/ collect/WBS0007" -v O usuário (-u) é o login do projeto. A senha (-P) é a ApiKey do projeto. A lista (-t) é aonde os dados serão acompanhados. Para exibir os dados no console, utilize o -v.
  • 20. Protocolo MQTT As listas disponíveis pelo Guardião, são: /collect/ - Alterar e coletar dados. /trigger/ - Alterar e acompanhar gatilho. /actuator/ - Alterar e acompanhar dados de um atuador.
  • 21. Protocolo - CoAP RFC 7252. Utiliza UDP porta 5683. Baixo consumo de energia e banda. Recomendado para IoT e M2M. Imagine o HTTP/REST, porém utilizando UDP.
  • 22. Protocolo - CoAP - App É possível instalar o coap-cli, utilizando Node.JS. O Guardião implementa apenas 2 métodos do CoAP: GET - Acompanhar dados publicados. PUT - Enviar dados para coleta/alteração.
  • 23. Exemplo CoAP - Envio coap put coap://127.0.0.1/gcs/WBS/collect/WBS0007 -p ‘{“data”:{"temperatura":10,"umidade": 30,"luminosidade":15},"auth": {"apiKey":"69f827f9-512d-4b4e-8867- d761c4fb9ce3","email":"romulo.fagundes@gmail.com"} }'
  • 24. Exemplo CoAP - Acompanhar coap get coap://127.0.0.1/gcs/WBS/collect/WBS0007 -p ‘{"auth":{"apiKey":"69f827f9-512d-4b4e-8867- d761c4fb9ce3","email":"romulo.fagundes@gmail.com"} }' -o Realiza o acompanhamento (-o) para os dados que estão sendo enviados. Sendo enviar os dados(-p) apenas realizar a autenticação.