Sunteți pe pagina 1din 41

INTEGRAO ANDROID & ARDUINO

Prof. Ivair Teixeira

INTEGRAO ANDROID & ARDUINO

FACULDADE ANHANGUERA DE CAMPINAS


Unidade 2 Via norte

Prof. Ivair Teixeira

ivair.teixeira@anhanguera.com
Coordenador dos cursos de:
CC SI TADS - Redes

INTEGRAO ANDROID & ARDUINO

App Inventor uma ferramenta baseada em nuvem


para construir aplicativos Android, ou seja, voc
pode programar diretamente no navegador web.
http://appinventor.mit.edu/explore

86400 vdeos no YouTube


Prof. Ivair Teixeira

INTEGRAO ANDROID & ARDUINO

A pgina do servio : ai2.appinventor.mit.edu


necessrio uma conta de e-mail do Google.

Prof. Ivair Teixeira

INTEGRAO ANDROID & ARDUINO


Designer
ou Blocks

Escolher os
componentes

Renomear
componentes

Tela

Propriedades
dos
componentes

Prof. Ivair Teixeira

INTEGRAO ANDROID & ARDUINO

Designer
Components
--Selecione: Screen1
Properties
--AlignHorizontal=Center
--Title=Arduino1

Prof. Ivair Teixeira

INTEGRAO ANDROID & ARDUINO


Designer
Palette - User Interface
Arraste para a tela:
--Label
----Renomear para: lblTexto
----FontSize=30
----Text= . . .
--Button
----Renomear para: btnEscrever
----FontSize=20
----Text= Escrever
--Button
----Renomear para: btnApagar
----FontSize=20
----Text= Apagar
Prof. Ivair Teixeira

INTEGRAO ANDROID & ARDUINO


Designer
Palette - Layout
Arraste para a tela:
--HorizontalArrangement
----Renomear para: ha1
----Width=Fill parent
----AlignHorizontal=Center
Arraste os dois botes para
dentro do ha1
Aps isso troque para a tela
do editor de blocos 1

Prof. Ivair Teixeira

INTEGRAO ANDROID & ARDUINO


Blocks
Screen1 Selecione:
--btnEscrever
----Arraste o bloco .Click para
o centro da tela.
--lblTexto
----Arraste o bloco .Text para
dentro do bloco .Click
Built -In Selecione:
--Text
----Arraste o bloco vazio para
a conexo do bloco .Text
----Click e escreva Al Mundo
Siga os mesmos passos para o
btnApagar com o texto . . .
Prof. Ivair Teixeira

INTEGRAO ANDROID & ARDUINO

Testando o Aplicativo
Existem basicamente quatro formas de testar o aplicativo:
1. Se o computador e o smartphone estiverem em uma rede
wireless baixe no smartphone o aplicativo: MIT ai2companion.
2. Instale o emulador no computador fazendo o download em:
http://appinv.us/aisetup_windows.
3. Habilite o modo programador no Android e teste o aplicativo
pelo cabo USB.
4. Faa o download do aplicativo para o celular/computador.

Prof. Ivair Teixeira

INTEGRAO ANDROID & ARDUINO

Modo 1
Designer
1 No menu Connect:
Selecione: Ai Companion
No smartphone, utilize o
aplicativo AI Companion
para fotografar o QRCode
que ir aparecer.

O aplicativo transferido
para o smartphone e
funciona em tempo real.
No funciona em redes
com proxy

Prof. Ivair Teixeira

15

INTEGRAO ANDROID & ARDUINO

Modo 2
Designer
Inicie o emulador pelo
cone aiStarter que foi
criado quando voc
instalou o pacote do
emulador

2 No menu Connect:
Selecione: Emulator,
aguarde at o emulador
iniciar e teste o aplicativo

Prof. Ivair Teixeira

INTEGRAO ANDROID & ARDUINO

Modo 3
Designer
Instale o emulador no
computador.
Instale os drivers USB do
smartphone (fabricante).
Habilite no smartphone o
modo programador, a
depurao USB e Conecte
o cabo USB.
Inicie o aiStarter

3 No menu Connect:
Selecione: USB, aguarde
at o emulador iniciar e
teste o aplicativo

Prof. Ivair Teixeira

6
3

INTEGRAO ANDROID & ARDUINO

Modo 4
Designer
4 No menu Build:
Selecione: App (provide
QR code for .apk) e faa o
download com um leitor
de QR code.
Ou
Selecione: App (save .apk
to my computer) e Instale
o aplicativo pelo cabo USB

Prof. Ivair Teixeira

INTEGRAO ANDROID & ARDUINO

O que Arduino
Arduino uma plataforma eletrnica de cdigo
aberto, baseado em hardware e software de fcil
utilizao. destinado a qualquer pessoa que queira
fazer projetos interativos.

http://http://www.arduino.cc

1.430.000 vdeos no YouTube


Prof. Ivair Teixeira

INTEGRAO ANDROID & ARDUINO

O que Arduino

+
Prof. Ivair Teixeira

int am = 13; //varivel am esta "associada" ao pino 13 do Arduino.


int vd = 12; //vd pino 12
int vm = 11; //vm pino 11
int dadoRX; //varivel para armazenar o dado recebido lea serial
void setup()
{
Serial.begin(9600); //comunicao serial a 9600 bits por segundo
pinMode(am,OUTPUT); //am um pino de sada
pinMode(vd,OUTPUT);
pinMode(vm,OUTPUT);
}
void loop()
{
if(Serial.available()) //se estiver disponvel um caractere na serial...
{
dadoRX = Serial.read(); //leia o caractere na serial e armazene em
dadoRX
if (dadoRX == 'a')
//se este caractere for a ento
digitalWrite(am,HIGH); //escreva 5 volts (HIGT) na sada am (LED
amarelo)
if (dadoRX == 'b')
digitalWrite(vd,HIGH);
if (dadoRX == 'c')
digitalWrite(vm,HIGH);
if (dadoRX == 'd')
//se este caractere for a ento
{
digitalWrite(am,LOW); //escreva 0 volts (LOW) na sada am (LED
amarelo)
digitalWrite(vd,LOW);
digitalWrite(vm,LOW);
}
}
}

INTEGRAO ANDROID & ARDUINO

Arduino UNO R3

Prof. Ivair Teixeira

INTEGRAO ANDROID & ARDUINO

Arduino UNO R3

Microntrolador Atmel, pr programado com um bootloader, que


recebe o programa da IDE.
Modularizado, linguagem simples, muitos exemplos e baixo custo
Prof. Ivair Teixeira

INTEGRAO ANDROID & ARDUINO


-Verses da placa

UNO

MEGA

Pro Mini
DUE 32 bits
Prof. Ivair Teixeira

INTEGRAO ANDROID & ARDUINO


-Hardware
-14 pinos Entrada/Sada digital
-6 pinos Entrada analgica
-32 KB de memria de programa
-2 KB de memria RAM
-1 KB de memria EEPROM
-Comunicao serial
--RS232 / SPI / I2C
-6 PWM
--10%
--50%
--90%
Prof. Ivair Teixeira

Arduino
UNO R3

INTEGRAO ANDROID & ARDUINO


-Shields

Ethernet

Rel

Touth
GSM

LCD
Motor

7 seg
Prof. Ivair Teixeira

Proto

WiFi

USB
Host

INTEGRAO ANDROID & ARDUINO


-Bibliotecas
Nativas:
--Digital I/O
--Analog I/O
--Time
--Math
--Random
--Interrupts
--Serial
--Tone

Prof. Ivair Teixeira

Terceiros:
--EEPROM
--Ethernet
--GSM
--WiFi
--LiquidCrystal
--TFT
--SD
--Servo
--SPI
--Wire

Dedicadas:
--NRF24L01
--RTC DS1302
--Ultrasonic HC-SR04
--RFRemote
--RFID MFRC522

INTEGRAO ANDROID & ARDUINO

--Baixar a IDE em: http://arduino.cc/en/Main/Software


Estrutura de um programa:
//Declarao de variveis e constantes
void setup()
{
//Configurao inicial
}
void loop()
{
//cdigo que ser repetido
}

Prof. Ivair Teixeira

INTEGRAO ANDROID & ARDUINO

Arquivos de exemplos
Arquivos exemplos
--Exemplos da linguagem e das bibliotecas
--Entre eles o Blink

Prof. Ivair Teixeira

INTEGRAO ANDROID & ARDUINO

Exemplo bsico : Pisca Led.


--Conecte a placa Arduino UNO ao
computador pelo cabo USB. Se for
necessrio, instale o drive que est em
drivers na pasta do Arduino.

--Menu Ferramentas:
----Placa = Arduino Uno
----Porta = porta virtual que foi criada
--Menu Arquivo:
----Exemplos 01.Basics Blink

Prof. Ivair Teixeira

INTEGRAO ANDROID & ARDUINO

Exemplo bsico : Pisca Led.


--Compile e carregue o programa no
Arduino. 1
--Acompanhe a compilao e o
carregamento 2
--Se no houver erros, no final
aparece a mensagem Carregado
--O pino 13 est conectado a um LED
na placa, que dever piscar com um
intervalo de 1 segundo.

Prof. Ivair Teixeira

INTEGRAO ANDROID & ARDUINO


Projeto prtico : LED Control
Mdulo Bluetooth HC-5 ou HC-06
Antena
Positivo
Negativo
Sada serial
Entrada serial

Prof. Ivair Teixeira

Quando alimentado ele ser listado no celular


como um dispositivo bluetooth.

INTEGRAO ANDROID & ARDUINO


Projeto prtico : LED Control

Prof. Ivair Teixeira

011000001

Bluetooth

Serial

INTEGRAO ANDROID & ARDUINO


Projeto prtico : LED Control

Prof. Ivair Teixeira

INTEGRAO ANDROID & ARDUINO


Projeto prtico : LED Control

Prof. Ivair Teixeira

INTEGRAO ANDROID & ARDUINO


Projeto prtico : LED Control
Comunicao serial:
Serial.begin(taxa bps);
var = Serial.available();
var = Serial.read();
Serial.write(mensagem);
Entrada/Saida
var = digitalRead(pino)
var = analogRead(pino);
digitalWrite(pino, estado); //liga(5 V) ou desliga (0 V)
analogWrite(pino, valor); //Pulso de 0 a 255
Prof. Ivair Teixeira

INTEGRAO ANDROID & ARDUINO


Projeto prtico : LED Control
int am = 13; //varivel am esta "associada" ao pino 13
int vd = 12; //vd pino 12
int vm = 11; //vm pino 11
int dadoRX; //varivel para o dado recebido pela serial
void setup()
{
Serial.begin(9600); //com. serial a 9600 bauds por segundo
pinMode(am, OUTPUT); //am um pino de sada
pinMode(vd, OUTPUT);
pinMode(vm, OUTPUT);
}
Prof. Ivair Teixeira

INTEGRAO ANDROID & ARDUINO


void loop()
{
if (Serial.available()) //se estiver disponvel um caractere na serial...
{
dadoRX = Serial.read();
//leia o caractere na serial em dadoRX
if (dadoRX == 'a')
//se este caractere for a ento
digitalWrite(am, HIGH); //escreva 5 volts (HIGT) na sada am
if (dadoRX == 'b')
digitalWrite(vd, HIGH);
if (dadoRX == 'c')
digitalWrite(vm, HIGH);
if (dadoRX == 'd')
//se este caractere for d ento
{
digitalWrite(am, LOW); //escreva 0 volts (LOW) na sada am
digitalWrite(vd, LOW);
digitalWrite(vm, LOW);
}
} }
Prof. Ivair Teixeira

INTEGRAO ANDROID & ARDUINO

Prof. Ivair Teixeira

INTEGRAO ANDROID & ARDUINO


Mdulo Toque - Criao da tela (Designer)
Os componentes esto em: User Interface, Layout e Connectivity.
Marque acima da tela: Display hidden components in Viewer
Selecione Screen1
--AlignHorizontal = Center , Title = LED Control
Arraste para a tela:
--BluetoothClient1
--Label [lblTitulo]:FontBold, FontSize=50, Text=LED Control, TextColor=Blue
--VerticalArrangement [va1]: Width=Fill parent, AlignHorizontal= Center,
Visible=hidden
Arraste DENTRO de va1:
--HorizontalArrangement [ha1]: Width=Fill parent, AlignHorizontal= Center
--HorizontalArrangement [ha2]: Width=Fill parent, AlignHorizontal= Center
--HorizontalArrangement [ha3]: Width=Fill parent, AlignHorizontal= Center
Arraste APS va1:
--HorizontalArrangement [ha4]: Width=Fill parent, AlignHorizontal= Center
Prof. Ivair Teixeira

INTEGRAO ANDROID & ARDUINO


Mdulo Toque - Criao da tela (Designer)
Arraste DENTRO de ha1:
--Label [lblCor]: FontBold, FontSize=30, Text= . . .
Arraste dentro de ha2:
--button [btnVM]: BackgroundColor=red, FontSize=15, Text=
Vermelho, Width=105, Height=80
--button [btnVD]: BackgroundColor=green, FontSize=15, Text=
Verde, Width=100, Height=80
--button [btnAM]: BackgroundColor=yelow, FontSize=15, Text=
Amarelo, Width=105, Height=80
Arraste dentro de ha3:
--button [btnAM]: FontSize=15, Text= Apagar, Width=90, Height=80
Arraste dentro de ha4:
--ListPicker [lstConectar]: FontSize=15, Text= Conectar, Width=130, Height=50
--button [btnDesconectar]: FontSize=15, Text= Desconectar, Width=130,
Height=50
Prof. Ivair Teixeira

INTEGRAO ANDROID & ARDUINO

lblTitulo
ha1

va1

ha2

ha3
ha4

Componentes
No Visveis
Prof. Ivair Teixeira

Designer

Smartphone

INTEGRAO ANDROID & ARDUINO


Mdulo Toque - Programao (Blocks)

Prof. Ivair Teixeira

INTEGRAO ANDROID & ARDUINO


Mdulo Voz - Criao da tela (Designer)
Os componentes esto em: User Interface e Media
Arraste aps ha4:
--button [btnVoz]: FontSize=15, Text= Comandos de Voz, Visible= hidden
Width=130, Height=60
--SpeechRecognizer[srComandosVoz]

ha4
btnVoz
Prof. Ivair Teixeira

srComandosVoz

INTEGRAO ANDROID & ARDUINO


Mdulo Voz - Programao (Blocks)

Prof. Ivair Teixeira

INTEGRAO ANDROID & ARDUINO


PrintScreen do Smartphone

Prof. Ivair Teixeira

S-ar putea să vă placă și