Andruino

36
Andruino = Android + Arduino Una introducción al Android Open Accessory Marco Avendaño @marcoviaweb linkedin.com/in/marcoviaweb

Transcript of Andruino

Andruino = Android + ArduinoUna introducción al Android Open Accessory

Marco Avendaño

@marcoviaweblinkedin.com/in/marcoviaweb

Hogar “Smarth” hogar…

Internet de las cosas

¿Por donde empezar?

Arduino + Android

?

Arduino

Está relacionado con la conexión de cosas electrónicas

No posee una interface de usuario para su interacción

Android

Tiene grandes capacidades en interface de usuario

No se puede conectar directamente con dispositivos electrónicos

Integración

AndroidOpen

Accesory

Algunos conceptos

Arduino

• Plataforma de hardware libre.• Basado en una placa con microcontrolador.• Diseñado para interactuar con la computadora o ser

programados para trabajar de manera independiente.• Dispone de una serie de sockets para conectarse con

dispositivos electrónicos externos.• Desarrollado para que sea fácil de usar y estar

disponible para todo tipo de usuarios.• Orientado a llevar la electrónica digital a la educación e

investigación.

Complementos a la tarjeta

• Shields

• Sensores

• Actuadores

Shields

• Tarjetas complementarias que proporcionan funcionalidades adicionales y especificas.

• Ejemplos:– USB master shield

– Ethernet shield

Sensores

• Componentes electrónicos que recolectan datos del mundo físico y los traducen en impulso electrónico para que puedan ser leídos por un microcontrolador.

• Ejemplos:– Medidores de temperatura,

signos vitales, etc.

Actuadores

• Dispositivos que pueden transformar la electricidad en: luz, movimiento, calor o cualquier otra manifestación física de la energía.

• Ejemplos: – Bocinas

– Motores

– Pantallas

Tarjetas tipo ADK

Google ADK Arduino ADK

Seeeduino ADK Sparkfun IOIO

Comparación de tarjetas ADK

Android

• Sistema Operativo y plataforma de desarrollo Open Source para dispositivos móviles y “no móviles”.

¿Por qué Android?

Android Open Accesory

En el Google I/O 2011, se presentó el primer estándar para que los dispositivos Android se comuniquen con hardware externo: Android Open Accessory (AOA).

AOA

• Está orientado a manejar comunicación entre un dispositivo Android y cualquier periférico.

• El kit de desarrollo de Android Open Accesory sirve para crear Gadgets con Arduino.

• El Android Open Accessory se compone de lo siguiente:– Android Open Accessory framework: protocolo que controla

la comunicación entre dispositivos.

– Accessory Development Kit (ADK): hardware y software necesario para que un accesorio sea compatible con Android.

¿Cómo funciona la integración?

USB Host USB Client

Un ejemplo

• Accesorio para medir la temperatura ambiente– Se necesita una aplicación

para hacer que funcione.

– Lo que el accesorio hace es informar al teléfono:• El nombre del artefacto

• El fabricante

• La versión de software

• El nombre de la aplicación

• La URL donde se puede descargar la aplicación

Entornos de desarrollo

Entorno de programación Android• Java Development Kit– www.oracle.com/technetwork/java/javase/downloads/index.

html

– Configurar las variables de entorno: JAVA_HOME y PATH

• Android IDE– Android Studio

– Eclipse IDE

• Android SDK– Instalar: Android SDK, Android SDK Platform-tools, SDK

Platform for Android, Google APIs by Google Inc., Google USB Driver package, Android Compatibility package.

Una alternativa: App Inventor

• Herramienta que permite crear aplicaciones Android mediante una página web.

• Basada en el método de programación visual por “bloques”.

• Orientada a personas que no están tan relacionadas al área de programación.

Entorno de programación Arduino

• Arduino IDE

• Arduino USB Driver

• ADK Library

Arduino IDE• El código que se escribe

es en C.

• Los programas para Arduino son llamados “sketches”.

• El IDE incluye biblioteca para distintas operaciones IO.

• URL de descarga http://arduino.cc/en/Main/Software

Programación grafica

• Scratch For Arduino http://s4a.cat/

• Mindplus http://www.mindplus.cc/

• Minibloq http://blog.minibloq.org/

• Modkit http://www.modkit.com/

• Ardublock http://blog.ardublock.com/

Arduino USB Driver

ADK Library

• Contiene las funciones para usar el modo “USB Host”.

• Descargar la librería de http://labs.arduino.cc/uploads/ADK/GettingStarted/ArduinoADK-beta-001.zip

• Descomprimir y copiar al directorio de librerías de Arduino.

• Reiniciar el IDE.

Un ejemplo:El sensor de temperatura

Componentes

1 Arduino Mega ADK 1 breadboard

1 sensor de temperatura (TMP36) cables

El circuito

Sketch

• Leer el pin analógico al que esta conectado el sensor.

• Convertir el valor leído a un valor de temperatura mas apropiado (Kelvin).

• Escribir el valor de la temperatura al USB.

El sensor em funcionamiento

Andruino = Android + ArduinoUna introducción al Android Open Accessory

Gracias