• Nenhum resultado encontrado

Prof. Ivair Teixeira INTEGRAÇÃO ANDROID & ARDUINO

N/A
N/A
Protected

Academic year: 2021

Share "Prof. Ivair Teixeira INTEGRAÇÃO ANDROID & ARDUINO"

Copied!
41
0
0

Texto

(1)
(2)

INTEGRAÇÃO ANDROID & ARDUINO

FACULDADE ANHANGUERA DE CAMPINAS

(3)

INTEGRAÇÃO 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

(4)

INTEGRAÇÃO ANDROID & ARDUINO

A página do “serviço” é: ai2.appinventor.mit.edu

É necessário uma conta de e-mail do Google.

(5)

INTEGRAÇÃO ANDROID & ARDUINO

Escolher os componentes Renomear componentes Tela Propriedades dos componentes Designer ou Blocks

(6)

INTEGRAÇÃO ANDROID & ARDUINO

Designer

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

(7)

INTEGRAÇÃO 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

(8)

INTEGRAÇÃO ANDROID & ARDUINO

Designer

Palette - Layout Arraste para a tela:

--HorizontalArrangement ----Renomear para: ha1 ----Width=Fill parent

----AlignHorizontal=Center

Arraste os dois botões para dentro do ha1

Após isso troque para a tela do editor de blocos 1

(9)

INTEGRAÇÃO 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 conexão do bloco “.Text”

----Click e escreva “Alô Mundo” Siga os mesmos passos para o btnApagar com o texto “. . .”

(10)

INTEGRAÇÃO 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.

(11)

INTEGRAÇÃO ANDROID & ARDUINO

Modo 1

Designer

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. Não funciona em redes com proxy 

1

5 1

(12)

INTEGRAÇÃO ANDROID & ARDUINO

Modo 2

Designer

Inicie o emulador pelo ícone aiStarter que foi criado quando você instalou o pacote do emulador

No menu Connect:

Selecione: Emulator, aguarde até o emulador iniciar e teste o aplicativo

2

(13)

INTEGRAÇÃO ANDROID & ARDUINO

Modo 3

Designer

Instale o emulador no computador.

Instale os drivers USB do smartphone (fabricante). Habilite no smartphone o modo programador, a depuração USB e Conecte o cabo USB.

Inicie o aiStarter

No menu Connect:

Selecione: USB, aguarde até o emulador iniciar e teste o aplicativo

3

6 3

(14)

INTEGRAÇÃO ANDROID & ARDUINO

Modo 4

Designer

No menu Build:

Selecione: App (provide QR code for .apk) e faça o download com um leitor de QR code.

Ou

Selecione: App (save .apk to my computer) e Instale o aplicativo pelo cabo USB

4

(15)

INTEGRAÇÃO ANDROID & ARDUINO

“Arduino é uma plataforma eletrônica de código

aberto, baseado em hardware e software de fácil

utilização. É destinado a qualquer pessoa que queira

fazer projetos interativos.”

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

1.430.000 vídeos no YouTube

(16)

INTEGRAÇÃO ANDROID & ARDUINO

+

+

int am = 13; //variável am esta "associada" ao pino 13 do Arduino. int vd = 12; //vd pino 12

int vm = 11; //vm pino 11

int dadoRX; //variável para armazenar o dado recebido lea serial void setup()

{

Serial.begin(9600); //comunicação serial a 9600 bits por segundo pinMode(am,OUTPUT); //am é um pino de saída

pinMode(vd,OUTPUT); pinMode(vm,OUTPUT); }

void loop() {

if(Serial.available()) //se estiver disponível um caractere na serial... {

dadoRX = Serial.read(); //leia o caractere na serial e armazene em dadoRX

if (dadoRX == 'a') //se este caractere for a então

digitalWrite(am,HIGH); //escreva 5 volts (HIGT) na saída am (LED amarelo)

if (dadoRX == 'b') digitalWrite(vd,HIGH); if (dadoRX == 'c') digitalWrite(vm,HIGH);

if (dadoRX == 'd') //se este caractere for a então {

digitalWrite(am,LOW); //escreva 0 volts (LOW) na saída am (LED amarelo)

digitalWrite(vd,LOW); digitalWrite(vm,LOW); }

(17)

INTEGRAÇÃO ANDROID & ARDUINO

Arduino UNO R3

(18)

INTEGRAÇÃO ANDROID & ARDUINO

Arduino UNO R3

(19)

INTEGRAÇÃO ANDROID & ARDUINO

-Versões da placa

UNO MEGA

Pro Mini

(20)

INTEGRAÇÃO ANDROID & ARDUINO

-14 pinos Entrada/Saída digital

-6 pinos Entrada analógica

-32 KB de memória de programa

-2 KB de memória RAM

-1 KB de memória EEPROM

-Comunicação serial

--RS232 / SPI / I2C

-6 PWM

--10%

Arduino

UNO R3

-Hardware

(21)

INTEGRAÇÃO ANDROID & ARDUINO

-Shields

Ethernet GSM WiFi USB Host Proto Motor 7 seg LCD Relê Touth

(22)

INTEGRAÇÃO ANDROID & ARDUINO

-Bibliotecas

Nativas:

--Digital I/O

--Analog I/O

--Time

--Math

--Random

--Interrupts

--Serial

--Tone

Terceiros:

--EEPROM

--Ethernet

--GSM

--WiFi

--LiquidCrystal

--TFT

--SD

--Servo

--SPI

Dedicadas:

--NRF24L01

--RTC DS1302

--Ultrasonic HC-SR04

--RFRemote

--RFID MFRC522

(23)

INTEGRAÇÃO ANDROID & ARDUINO

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

Estrutura de um programa:

//Declaração de variáveis e constantes

void setup() { //Configuração inicial } void loop() {

//código que será repetido }

(24)

INTEGRAÇÃO ANDROID & ARDUINO

Arquivos de exemplos

Arquivos  exemplos

--Exemplos da linguagem e das bibliotecas --Entre eles o “Blink”

(25)

INTEGRAÇÃO ANDROID & ARDUINO

Exemplo básico : Pisca Led.

--Conecte a placa Arduino UNO ao computador pelo cabo USB. Se for

necessário, instale o drive que está em “drivers” na pasta do Arduino.

--Menu Ferramentas: ----Placa = Arduino Uno

----Porta = porta virtual que foi criada --Menu Arquivo:

(26)

INTEGRAÇÃO ANDROID & ARDUINO

Exemplo básico : Pisca Led.

--Compile e carregue o programa no Arduino.

--Acompanhe a compilação e o carregamento

--Se não 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.

2 1

(27)

INTEGRAÇÃO ANDROID & ARDUINO

Positivo

Negativo

Saída serial

Entrada serial

Antena

Quando alimentado ele será listado no celular

Módulo Bluetooth HC-5 ou HC-06

(28)

INTEGRAÇÃO ANDROID & ARDUINO

Projeto prático : LED Control

Bluetooth

Serial

011000001

‘a’

(29)

INTEGRAÇÃO ANDROID & ARDUINO

(30)

INTEGRAÇÃO ANDROID & ARDUINO

(31)

INTEGRAÇÃO ANDROID & ARDUINO

Projeto prático : LED Control

Comunicação 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

(32)

INTEGRAÇÃO ANDROID & ARDUINO

Projeto prático : LED Control

int

am = 13; //variável am esta "associada" ao pino 13

int

vd = 12; //vd pino 12

int

vm = 11; //vm pino 11

int

dadoRX; //variável 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 saída

pinMode

(vd,

OUTPUT

);

pinMode

(vm,

OUTPUT

);

(33)

INTEGRAÇÃO ANDROID & ARDUINO

void loop

()

{

if

(

Serial.available

())

//se estiver disponível um caractere na serial...

{

dadoRX =

Serial.read

(); //leia o caractere na serial em dadoRX

if

(dadoRX ==

'a'

) //se este caractere for ‘a’ então

digitalWrite

(am,

HIGH

); //escreva 5 volts (HIGT) na saída am

if

(dadoRX ==

'b'

)

digitalWrite

(vd,

HIGH

);

if

(dadoRX ==

'c'

)

digitalWrite

(vm,

HIGH

);

if

(dadoRX ==

'd'

) //se este caractere for ‘d’ então

{

digitalWrite

(am,

LOW

); //escreva 0 volts (LOW) na saída am

digitalWrite

(vd,

LOW

);

digitalWrite

(vm,

LOW

);

}

(34)
(35)

INTEGRAÇÃO ANDROID & ARDUINO

Módulo Toque - Criação da tela (Designer)

Os componentes estão 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 APÓS va1:

(36)

INTEGRAÇÃO ANDROID & ARDUINO

Módulo Toque - Criação 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,

(37)

INTEGRAÇÃO ANDROID & ARDUINO

ha1 va1 ha2 ha3 ha4 lblTitulo Componentes Não Visíveis

(38)

INTEGRAÇÃO ANDROID & ARDUINO

(39)

INTEGRAÇÃO ANDROID & ARDUINO

Módulo Voz - Criação da tela (Designer)

Os componentes estão em: “User Interface e Media” Arraste após ha4:

--button [btnVoz]: FontSize=15, Text= Comandos de Voz, Visible= hidden Width=130, Height=60

--SpeechRecognizer[srComandosVoz]

btnVoz ha4

(40)

INTEGRAÇÃO ANDROID & ARDUINO

(41)

INTEGRAÇÃO ANDROID & ARDUINO

Referências

Documentos relacionados

Superficial Acral Fibromyxoma (SAF) is a rare tumor of soft tissues with slow growth and acral loca- tion.. It has a benign behavior, but it may persist or recur if not

New causative agents for lacrimal canaliculitis are emerging and include Streptococcus and Staphylococcus spp., and surgical removal of all concretions along with topical

Keywords: Glaucoma; Filtering surgery; Minimally invasive surgical procedures/methods; Anterior chamber.. RESUMO | Embora a cirurgia de glaucoma minimamente in- vasiva, que

Sendo da borda para o centro do plúton, descritos como porfíritico de matriz fina; equigranular de matriz média a fina e equigranular de matriz média estando os do

Para realização da inscrição, o candidato deverá inserir no Sistema de Gestão Acadêmica da Pós-graduação (SIGA, disponível no endereço eletrônico do

Os impactos ambientais analisados confirmam os resultados bacteriológicos, de modo que a interferência humana e os resíduos industriais despejados nesses lagos são os

As amostras de solos utilizadas para análise da diversidade bacteriana por metodologia independente de cultivo pela técnica de Eletroforese em Gel de Gradiente Desnaturante

A cirrose hepática por vírus C é a indicação mais comum para transplante hepático na maioria dos países, ocupando 1/3 dos casos. A seleção do doador se faz com base