palestra plataforma radiuino #tdc2012 floripa
DESCRIPTION
Minha palestra no #TDC2012 da Globalcode em Floripa está aqui! Enjoy!TRANSCRIPT
![Page 1: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/1.jpg)
RF + Arduino
Omar Ferroni Branquinho @omarfb
omarfb.wordpress.com.br
![Page 2: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/2.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Internet of Things
![Page 3: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/3.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc O que significa IoT?
3
Fonte: http://blogs.cisco.com/news/the-internet-of-things-infographic/ (Cisco)
![Page 4: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/4.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc
Mas, o que é uma Rede de Sensores Sem Fio?
“(...) consiste de sensores autônomos espacialmente distribuídos para monitorar condições físicas ou ambientais (...) e cooperativamente transmitir os dados da rede para um local principal.”
Wikipedia
![Page 5: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/5.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Arquitetura Básica
• Vários sensores
• Dados escoam para um gateway
• Novos paradigmas de comunicação
![Page 6: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/6.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc O que é um sensor?
![Page 7: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/7.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Nem tudo são flores...
• Problemas na utilização de kits de comunicação utilizando RF para Redes de Sensores – Pouca flexibilidade
– Desempenho fraco
– Alto custo
• Falta de controle de funcionamento da rede – Gerência de rede por conta do fabricante
• Pouca possibilidade de expansão das plataformas antigas
7
![Page 8: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/8.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc
8
IDEs de Arrepiar!
![Page 9: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/9.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Então faça-se o Radiuino
• Plataforma Open Source para RSSF
• Hospedada no Sourceforge.net
– http://www.sourceforge.net/p/radiuino
• Em busca de colaboradores para
– Manutenção da plataforma
– Inclusão de novas features
• Acesse: www.radiuino.cc
9
![Page 10: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/10.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc
10
Objetivos da Plataforma Radiuino
Facilidade de implementação
Arquitetura robusta
Hardware de baixo custo
Customização de hardware
Firmware estruturado
Integração com a Internet
![Page 11: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/11.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Sobre a plataforma
• Utiliza o mesmo IDE do Arduino;
• Desenvolvimento de firmware específico para atender as necessidades de rede de sensores;
• Criação de bibliotecas específicas;
• A proposta é facilidade de utilização para formação de rede de sensores;
• Distribuição de firmware por aplicação
• Na versão disponível a camada física utiliza o CC1101
• Capacidade de implementar as funções da pilha de protocolo para investigação e ensino
11
![Page 12: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/12.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Diagrama em Blocos
12
Sensor Base Computador USB
• Configuração básica – Computador, mas pode ser Web também
– Uma base conectada via USB a um computador ou Ethernet para ligar em rede
– Um sensor: • Transceptor
• Microcontrolador
• Transdutores
• Atuadores
• Bateria
Request
Answer
![Page 13: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/13.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Divisão da plataforma
• Padronizado e de baixo custo Hardware
• Estruturação de pilha de protocolos Firmware
• Integração de plataforma Software
![Page 14: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/14.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Arduino e redes sem fio
• Hardwares que englobam apenas a parte de Rádio
• Hardwares que incluem o Rádio e o microcontrolador
Chinês Feito no Brasil
![Page 15: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/15.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc BE900
15
• Módulo desenvolvido para ser compatível com a plataforma Arduino
• Opção de utilizar conector SMA para ligar antena externa
• Baixo custo e possibilita desenvolvimento de aplicações
• Fabricante: www.radioit.com.br
• Atende especificações para certificação pela ANATEL
• Pino compatível TX/RX e alimentação com XBee
Microcontrolador
• Atmega368 (8 bits, 8 MHZ)
• 32k Flash
• 512 EEPROM
• 1k RAM
Transceptor
• CC1101
• 915MHz
• Potência TX 10dBm
• Excelente Sensibilidade
• Diferentes Modulações
• Mudança da Taxa
![Page 16: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/16.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Hardware
• Hardware:
– Microcontroladores AVR Atmel
– Circuito de RF CC1101 Texas Instruments
– Placas de adaptação e kits de desenvolvimento
Sensor e Base do início do projeto
![Page 17: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/17.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Placas de Aplicação
• Para exemplificar a utilização da plataforma foi desenvolvida uma aplicação com os seguintes elementos no sensor: – Um relé
– Um LDR
– Um Led
– Um transdutor de temperatura
17
![Page 18: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/18.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc “Tecniquês”
18
PHY
MAC (Enlace)
NET
TRANSP
APP Funções ligadas ao desenvolvimento das aplicações diretamente, como medidas de grandezas e controle de processos.
Funções de controle da comunicação como ACK, contagem de pacotes, disciplina de transmissão.
Identificação do sensor e rede contemplando funções para tratamento de roteamento de pacotes na rede.
Funções para controlar os processos de recepção e principalmente transmissão. Política de economia de energia.
Funções relacionadas com a parte de rádio como: potência, canal. Possível evoluir para alterar outras características do rádio.
![Page 19: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/19.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Pilha Radiuino
19
Radiuino
CC1101 ou outra interface rádio
![Page 20: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/20.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Mapa do Pacote
20
• Frame com 52 bytes
– Phy – 4 bytes
– MAC – 4 bytes
– Net – 4 bytes
– Transporte – 4 bytes
– Seis AD com 3 bytes cada um
– Seis I/O com 3 bytes cada um
Phy MAC Net Transp
RSSI_DLINK LQI_DLINK
RSSI_ULINK
LQI_UPLINK TBD TBD TBD TBD DST_ID DST_NID SRC_ID SRC_NID COUNT TBD TBD TBD
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
AD0 AD1 AD2 AD3 AD4 AD5
AD0_W AD0_H AD0_L AD1_W AD1_H AD1_L AD2_W AD2_H AD2_L AD3_W AD3_H AD3_L AD4_W AD4_H AD4_L AD5_W AD5_H AD5_L
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
IO0 IO1 IO2 IO3 IO4 IO5
IO0_W IO0_H IO0_L IO1_W IO1_H IO1_L IO2_W IO2_H IO2_L IO3_W IO3_H IO3_L IO4_W IO4_H IO4_L IO5_W IO5_H IO5_L
34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
![Page 21: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/21.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Desenvolvimento de Projeto
• Pense primeiro na aplicação
• Projeto do hardware
• Projeto do firmware
• Desenvolvimento do Software
21
![Page 22: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/22.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Pacote
• O Headers.h define a composição do pacote
• O pacote tem 52 bytes sendo composto das seguintes partes:
– Física
– MAC
– Rede
– Transporte
– Aplicação • AD
• IO
22
![Page 23: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/23.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Código da Base
• Abrir o arduino e dentro do Arduino abrir o código da base;
• Vão existir as seguintes abas – Radiuino_Base
– Headers.h
– _1_Phy
– _2_MAC
– _3_Net
• No IDE (Integrated Development Environment) do Arduino vai ficar como abaixo.
23
![Page 24: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/24.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Base
• A base possui somente três camadas uma vez que não se espera que seja feita nenhuma aplicação na base;
• Sua função é fazer a ligação dos dados da interface USB ligada no computador com o sensor e vice versa;
• Os parâmetros a serem ajustados na base:
– Camada Phy • Potência
• Canal
– Camada MAC • Nenhum parâmetro específica para esta versão, já é default ponto multi ponto
– Camada Net • Endereço da base
– Conexão USB • Taxa da serial
24
![Page 25: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/25.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Parâmetros da Phy da base
25
![Page 26: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/26.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc MAC da Base
• A base não possui nenhuma função adicional na MAC
• Na versão inicial do Radiuino não está previsto que a base tenha autonomia quanto a comunicação com o sensor
• Observar as funções previstas em cada camada: – Construtor que instancio objeto
– Inicialização
– Envio
– Recebimento
26
![Page 27: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/27.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Camada Net
• Endereço da base é a única informação da camada Net nesta versão 1.1
27
![Page 28: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/28.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Código do Sensor
• No sensor são implementadas as 5 camadas
– Phy
• Potência
• Canal
– MAC • Nenhum parâmetro de ajuste nesta versão
– Net • Endereço do sensor
– Transporte • Contador de pacotes
– Aplicação • Acionamento de relés e medidas de temperatura e luminosidade
28
![Page 29: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/29.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Pinagem Arduino x RFBee
Correspondência dos Pinos Arduino e RFBee
Função Pino Arduino BE900 Número do Pino BE900
ADC
AD0_PIN 0 PC0 15
AD1_PIN 1 PC1 13
AD2_PIN 2 PC2 12
AD3_PIN 3 PC3 11
AD4_PIN 4 PC4 20
AD5_PIN 5 PC5 19
IO
IO0_PIN 4 PD4 4
IO1_PIN 5 PD5 17
IO2_PIN 6 PD6 18
IO3_PIN 7 PD7 8
IO4_PIN 8 PB0 7
IO5_PIN 9 PB1 6
Serial TX 1DIO TX 2
RX 0DIO RX 3
29
![Page 30: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/30.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc
Firmware da Aplicação no Sensor
• Definição dos pinos da mesma forma como é feito no Arduino
• Definição da função dos pinos
30
![Page 31: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/31.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Acionar LED e Relé
• Observar a facilidade de ligar ou desligar o led ou o relé
• O código é bastante simples bastando avaliar a posição do IO desejado se está 1 para ligar e 0 para desligar.
31
![Page 32: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/32.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Leitura do AD e Transmissão
• Leitura do AD é feita da mesma forma que no Arduino
• São 3 bytes: o primeiro é o tipo do sensor e outros dois o valor em dois bytes
• Para transmitir o pacote
32
![Page 33: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/33.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Software
• Docklight
• Python – Requisição
– Controle e requisição
• Java customizado
• C# (Novo!!!)
• ScadaBR
• HTTP
• SNMP
![Page 34: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/34.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Pacote montado no Docklight
34
ID Sensor
Liga Relé Liga Led
![Page 35: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/35.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Python
35
![Page 36: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/36.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Acionar Relé e Led
36
![Page 37: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/37.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Temperatura e Luminosidade
37
![Page 38: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/38.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Conheça!
38
![Page 39: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/39.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Colabore!
39
![Page 40: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/40.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Aplicação C#
40
Versão BETA ;)
![Page 41: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/41.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Gateway WiFi
41
![Page 42: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/42.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc
42
ScadaBR - Radiuino
![Page 43: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/43.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc
43
Aplicação REAL
![Page 44: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/44.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Quem fabrica?
44
www.spreadcom.com.br
![Page 45: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/45.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc Onde Comprar?
45
www.robocore.net
www.radioit.com.br
![Page 46: Palestra Plataforma Radiuino #TDC2012 Floripa](https://reader034.vdocuments.us/reader034/viewer/2022051314/559b4ffe1a28ab2c448b45ab/html5/thumbnails/46.jpg)
Radiuino – All Rights Reserved 2011
www.radiuino.cc
46
Obrigado!
Omar Ferroni Branquinho www.radiuino.cc
@omarfb