Campus Party 2014 - Internet das Coisas com coisas reais

42
@vsenger Campus Party 2014 @globalcode

description

Palestra da Globalcode apresentada na CBR7 sobre Java e Internet das coisas com Raspberry Pi GEMALTO e muito mais!

Transcript of Campus Party 2014 - Internet das Coisas com coisas reais

Page 1: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Page 2: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Homenagem ao Alberto Fabiano (TechBerto)Homenagem ao Alberto Fabiano (TechBerto)

Page 3: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Eu...Eu...

Vinicius Senger - @vsenger

[email protected]

Sortudo morador de Ubatuba

Programador há 20 anos

Fundador de Globalcode

Page 4: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

AgendaAgenda

Internet das Coisas / Internet of Things

Computadores da Internet

Arduino, Raspberry Pi e outras

Protocolos MQTT, Mosquito e Arquiteturas do Futuro

Demos

Page 5: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Internet of Things - IoTInternet of Things - IoT

Internet das pessoas: pessoa + device + conexão

Mais e mais devices por pessoa: laptop, video-games, phones, tablets!

Internet das coias: coisa + device + conexão

Mais e mais devices para coisas: árvores, refrigeradores, animais, casas, drones, etc.

Page 6: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Internet of ThingsInternet of Things

Page 7: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Internet of ThingsInternet of Things

Page 8: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Internet of ThingsInternet of Things

Page 9: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Meus devices...Meus devices...

Page 10: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Satélites, Balões e DronesSatélites, Balões e Drones

Page 11: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Cavalos...Cavalos...

Page 12: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Barcos

Page 13: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

E até..E até..

Page 14: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Internet das PessoasInternet das Pessoas

Informações (geradas por pessoas) mais atualizadas;

Mais informações (de pessoas);

Democratização do conhecimento;

Conveniência e bem estar;

Socialização;

Comunicação humana contínua;

Page 15: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Internet das CoisasInternet das Coisas

Informações mais atualizadas (de sensores);

Mais informações (de objetos);

Democratização do conhecimento (smart devices);

Meio-ambiente e qualidade de vida: florestas, vazamentos, consumo de energia;

Socialização (padrões de uso de devices);

Comunicação contínua de pequenos dispositivos;

Page 16: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Internet das Coisas: novos desafiosInternet das Coisas: novos desafios Novas arquiteturas e paradigmas: embedded-cloud

Profissionais multi-disciplinares

TCP/IP como idioma universal efetivo: gateways IR, RFID, Bluetooth etc.

Criatividade é uma moeda

Testes (mais e mais) complexos

Fragmentação em todos lados

Hardware é o passado.

Page 17: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Oportunidades da Internet das CoisasOportunidades da Internet das Coisas

•Área de saúde

•Supply chain

•Indústria automotiva

•Medidores Inteligentes

•Agricultura

•Monitores Ambientais

•Smart Building / Smart City / Smart qualquer coisa

Muitos dispositivos, inúmeras oportunidades:

Page 18: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Computadores das PessoasComputadores das Pessoas

PC, laptop, phones, video-games, tablets, etc.

Muito poder de processamento, armazenamento, memória e alto consumo de energia. Conectividade completa!

Permite plugarmos devices USB: impressoras, scanners, cameras, joysticks, etc.

Page 19: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Computador das CoisasComputador das Coisas

System-on-a-chip: Raspberry Pi, Beagle Bone, Galileo

Microcontrolador: Atmegas Arduino, PIC e outros

Baixo consumo de energia e poder de processamento suficiente para tarefas limitadas e específicas

Permite plugarmos sensores, motores, lâmpadas, aparelhos domésticos, etc.

Milhares de opções de computadores de coisas

Page 20: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

ArduinoArduino

Famosa plataforma para prototipagem eletrônica

Barato, simples e comunidade gigante;

Open-source: você pode clonar gratuitamente!

Conectividade e Manutenção de código limitadas;

Diferentes Tipos e marcas no mundo todo:

Page 21: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Raspberry PiRaspberry Pi

•Computador compacto de R$ 150,00

•ARM11 700mhz / 512MB memória RAM

•SD Card

•Vídeo por HDMI ou composto

•Ethernet e 2 USBs

•GPIO: UART, I2C, SPI, digitais

•Audio

•LCD / Camera

Computador pequeno, portátil e barato!

Page 22: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Page 23: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Raspberry Vs. ArduinoRaspberry Vs. Arduino

•Arduino: 2k RAM

•Raspberry: 512 Megas

•Arduino: real-time

•Raspberry: multi-task, pode ser real-time RTOS

•Arduino: nice IOs com 20 pins, Digital, Analog, PWM

•Raspberry: GPIO limitiado

•Raspberry + Arduino: o melhor dos dois mundo!

Page 24: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Gemalto: computadores 3GGemalto: computadores 3G

•Internet das Coisas com 3G + Java ME + GPIO

•Manutenção, debug, OTA, ferramentas

•Baixo custo no Brasil: U$ 5 para larga escala!

•Indústria, protótipos e "Do It Your Self"

•Concept Board Gemalto

Geração Java ME pós-celular

Page 25: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Intel GalileoIntel Galileo

•Super Lançamento!

•Utiliza SoC Quark

•Poder do Linux com pinagem Arduino embutida

•Shields Arduino + Linux!

Arduino com Raspberry Pi?

Page 26: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Beagle Bone BlackBeagle Bone Black

•Cortex A8 – 1Ghz

•Pode rodar Ubuntu, Angstrom, Android e outos

•Menor comunidade se comparado com Raspberry

Raspberry Pi Turbo?

Page 27: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Android Mini-PCsAndroid Mini-PCs

•Dezenas (ou centenas de opções)

•Alto custo / benefício

•Não costumam oferecer GPIO, necessitam do ADK!

Page 28: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Java e a Internet das CoisasJava e a Internet das Coisas

Enterprise Data & Applications

Cloud para dispositivos embarcado

s

Cloud para dispositivos embarcado

s

Meters

Smart Appliances &

electronics

Personal Devices

Med-Large Embedded / Multi-function Devices

VoIP Comm

Industrial controls / Network Appliances

Management / Monitoring / Operations

Sensors / Microcontroller

s

Connected Vehicles

Page 29: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Java EmbeddedJava Embedded

Pequeno

• Leitores RFID

• Tarifadores de Estacionamento

• Leitores Inteligentes

• Caneta Inteligente

Médio

• Routeadores & Switches

• Devices para Armazenamento

• Network Management Systems

• Sistemas de automação fábrica

• Sistemas de segurança

Grande• Impressoras multi-

funcionais• ATMs e sistemas de POS• In-Flight Entertainment

Systems• Sistema votação

eletrônica• Imagens médica

Page 30: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Java EmbarcadoJava Embarcado

Page 31: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Java + Raspberry PiJava + Raspberry Pi

•Java SE Embedded totalmente otimizado

•Java EE: rode tomcat, jetty e até mesmo Glassfish

•Java FX: crie interfaces gráficas e use o poder da GPU

•Java ME: crie apps no Raspberry Pi e migre para dispositivos ainda menores

•PI4J: acesso ao GPIO com API fantástica!

A melhor plataforma para IoT com RPi

Page 32: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

pi4j LED Blinkpi4j LED Blink

GpioPinDigitalOutput myLed[] = new GpioPinDigitalOutput[3];

GpioController gpio = GpioFactory.getInstance();

myLed[0] = gpio.provisionDigitalOutputPin(RaspiPin.GPIO_01);

myLed[0].setState(true);

Thread.sleep(500);

myLed[0].setState(false);

Thread.sleep(500);

Page 33: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

MQTTMQTT

Internet das Coisas não se resume a placas e linguagens apenas!

MQTT: protocolo para conectividade voltado para IoT e machine-to-machine (M2M) computing

Protocolo extremamente leve com enfileiramento publish-subscribe

IANA port 1883 / 8883 para MqTT sob SSL

Page 34: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Mosquito.orgMosquito.org

"Servidor" MQTT / MQTT Broker

Open-source

Versão para Raspberry Pi

Exemplo de aplicação: https://github.com/thomas-kriechbaum/iot-sandbox/tree/master/mqtt-my-raspi

Page 35: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Mosquito.orgMosquito.org

"Servidor" MQTT / MQTT Broker

Open-source

Versão para Raspberry Pi

Exemplo de aplicação: https://github.com/thomas-kriechbaum/iot-sandbox/tree/master/mqtt-my-raspi

Page 36: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Things APIThings API

•Promove integração entre computadores, tiny computers e microcontroladores!

Page 37: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Things4ArduinoThings4Arduino

Page 38: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Things Java APIThings Java API

Sintaxe Super Simples!

git clone https://github.com/vsenger/things-api

Page 39: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

Things Gateway EmbeddedThings Gateway Embedded

http://ip:8080/things/red/200http://ip:8080/things/lighthttp://ip:8080/things/distance

Raspberry Pi Server

Things API

Arduino

Page 40: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

DEMONSTRAÇÕESDEMONSTRAÇÕES

Embedded Panel

Page 41: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

DEMONSTRAÇÃO: IoT MonetizaçãoDEMONSTRAÇÃO: IoT Monetização Paypal oferece inúmeras formas para facilitar o

processo de monetização do seu negócio

Paypal Checkin: pague por proximidade!

Page 42: Campus Party 2014 - Internet das Coisas com coisas reais

@vsenger Campus Party 2014 @globalcode

DEMONSTRAÇÕESDEMONSTRAÇÕES

Things Hacker Team: Ricardo Ogliari

Pedro Padilha

Ryoji Kuwae Neto

Vinicius / Hugo