Globalcode – Open4education
Android com ArduinoVinicius Senger
Programador / Fundador da Globalcode
Globalcode – Open4education
@vsenger
Agenda
Introdução a Arduino
Integração Arduino + Android
Bluetooth e Amarino
Android Development Kit – Google ADK
Comunicação Wifi
Demos
Globalcode – Open4education
@vsenger
Vinicius Senger
E-mail [email protected]
Twitter @vsenger
Programador e Fundador da Globalcode
Desenvolvimento de produtos, treinamentos e consultorias
Vendedor de muambas de arduino:Www.eletronlivre.com.br
Globalcode – Open4education
@vsenger
O que é Arduino?
• Plataforma para programação de pequenos computadores em diversos projetos de eletrônica
void setup() {
pinMode(13, OUTPUT);
}
void loop() {
digitalWrite(13, HIGH); //HIGH = 1 = TRUE
delay(500);
digitalWrite(13, LOW); //LOW = 0 = FALSE
delay(500);
}
SEU PROGRAMA FERRAMENTA ARDUINO PLACA ARDUINO
Globalcode – Open4education
@vsenger
Arduino
• Plataforma baseada em ATMega;• Oferece um IDE e bibliotecas de programação de
alto nível;• Open-source hardware• Ampla comunidade• Programado em C/C++
Globalcode – Open4education
@vsenger
Atuadores
• Leds• Buzzer• Solenóide• Relês• Motores DC• Servo Motor• Motor de passo• Nitinol / Flexinol
Globalcode – Open4education
@vsenger
Sensores
• Luz• Cor• Distância• Infravermelho• Acelerômetro• Bússola• GPS• E.C.G.
Globalcode – Open4education
@vsenger
Comunicação
• WIFI• xBee – zigbee• 433 hz• Bluetooth
Globalcode – Open4education
@vsenger
Projetos
• Roupas eletrônicas• Robôs• Automações diversas• Instrumentação• Instalações artísticas• Invenções em geral
Globalcode – Open4education
@vsenger
Android + Arduino
• Permite ligar componentes customizados no seu aparelho Android:• Motores• Luzes / Tomadas / Relés• Sensores especiais: álcool• Entradas especiais: joysticks, bananas• Saídas especiais: vídeo nitinol / flexinol
Globalcode – Open4education
@vsenger
Arduino + Android
• Permite estender as capacidades do Arduino com todo poder do seu aparelho Android;
• Arduino tem pouca memória e clock:• Processar sons e imagens;• Threads;• Conectividade;
• Permite você usar os sensores do Android no Arduino: GPS, acelerômetro, bússola;
Globalcode – Open4education
@vsenger
Como?
• Bluetooth;• Bluetooth + Amarino;• Google Accessory Development kit 2011;• Google Accessory Development kit 2012;• WIFI;
Globalcode – Open4education
@vsenger
Bluetooth + Amarino
• Escreve uma App no Android que se comunica vioa bluetooth;
• Utiliza um Arduino com um módulo bluetooth (ex. Bluesmirf SparkFun)
• Dados do Android para Arduino e vice-versa• Amarino: plataforma que promove integração
entre Arduino e Android via bluetooth;
Globalcode – Open4education
@vsenger
DEMO
• Vídeo: Automação náutica com Android e Arduino• Apresentar fragmentos de código• Apresentar o Amarino• Exemplos ao-vivo com DevBot• Camera• DevBot• Celular ou Tablet
Globalcode – Open4education
@vsenger
Google ADK
• Accessory Development Kit é a plataforma de criação de acessórios customizados para Android;
• Conexão entre Arduino e Android via cabo USB;• Duas versões:
• 2011: Arduino Mega, USB Host, Shield• 2012: ARM Cortex, NFC, vários sensores,
bluetooth, a coisa ficou séria...• Aqui vamos falar só do 2011, infelizmente :(
Globalcode – Open4education
@vsenger
Google ADK
• Suporte a partir do Google API 10;• Você desenvolve dois softwares:
• Android App: com interface para usuário que chama o Arduino• Arduino App (firmware): responde as
requisições do Android• Android Open Accessory Protocol:• protocolo entre o Android e Arduino;
Globalcode – Open4education
@vsenger
Google ADK 2011
• Kit original é composto por:• Placa Arduino Mega 2560 com dois USB's• USB Arduino que é ligado no PC• USB Android que é ligado no dispositivo
• Shield (placa acessório) contendo:• 2 Relés / Joystick• Temperatura• LED RGB
Globalcode – Open4education
@vsenger
DEMO
• Apresentar kit ADK na camera;• Apresentar Eclipse com aplicativo ADK;• Apresentar Arduino com aplicativo ADK;• Mostrar rodando;
Globalcode – Open4education
@vsenger
WIFI
• Forma mais robusta porém maior consumo;• Todo dispositivo Android tem!• Shield WIFI para Arduino ainda são caros;• Pode-se utilizar um ethernet shield no Arduino
ligado a um roteador WIFI;• Comunicação TCP/IP completa com TCP e UDP;• Maior custo, maior consumo e maior benefício;
Globalcode – Open4education
@vsenger
DEMO
• jHome Automation: Android App
Globalcode – Open4education
@vsenger
Conclusões
• Arduino: n possibilidades de computação física;• Android: alto poder de processamento, sensores
avançados e programação Java;• Android + Arduino: oportunidades3
Está só começando...
Globalcode – Open4education
@vsenger
Obrigado!
Perguntas e respostas;
E-mail [email protected]
Twitter @vsenger