Skip to content

Conexión entre el Particle Photon y MIT AppInventor

Notifications You must be signed in to change notification settings

fexadom/photon-appinventor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

85 Commits
 
 
 
 
 
 

Repository files navigation

Taller de conexión entre Particle y MIT AppInventor

En este taller se demuestra como conectar el dispositivo de prototipado IoT Particle Photon con la herramienta de prototipado de aplicaciones móviles MIT AppInventor.

La intergración entre ambas plataformas se puede efectuar a través de la base de datos en tiempo real Firebase usando la siguiente arquitectura:

arquitectura

Requisitos

  • 1 Partical Photon
  • 1 Protoboard
  • 1 PushButton
  • 2 cables conectores
  • (opcional) 1 led, una resistencia de 200Ohm y 2 cables adicionales

Requerimientos

Particle Photon conectado así: Photon esquematico Photon foto

Configuración Photon

Photon foto

  • Resetear el Wifi del Photon de fábrica para poder reconfigurar mediante el botón que dice RESET.
  • Verificar que el led este parpadeando en azul, en caso de no parpadear en azul, tener presionado por 3 o 4 segundos el boton de SETUP. (Led parpadeo azul significa que esta activado el módulo wifi)
  • Conectar el Photon al internet usando la aplicación de Particle
  • Descargar el archivo html y abrirlo html foto
  • Conectar el wifi de la pc al wifi del proton llamado "Proton…".

Wifi nombre Proton

  • El archivo html automaticamente se actualizará para conecta nuestro PHOTON a un wifi cercano. html foto2

  • Si nuestro led enciende con el color cyan, la conexión fue exitosa, en caso de que solo sea azul o verde, por favor repetir los pasos desde reabrir el archivo html y resetear el PHOTON. html foto3

  • El nombre del dispositivo lo pueden elegir

  • Listo, nuestro PHOTON esta conectado a una red photon_wifi_aprovado

  • Verificar que el photon pueda ser controlado mediante el App de Particle (encender y apagar el LED azul en D7), para esto debe crear una nueva aplicación en el Web IDE de Particle y copiar el código de comled.ino

Photon_device

  • Cargar o hacer Flash a la aplicación comled hacia el Photon

Flash

  • Una vez termina el flashing, probar el botón físico en el Photon, debe de encender y apagar el LED azul en D7

Configuración Firebase

Nombre: Photon Le damos continuar hasta que nos avise que esta creado
Inicio Final
  • Paso 1: Vamos a crear nuestra base de datos en tiempo real para eso seguimos las intrucciones Nuevo proyecto FireBase
Paso 2 Paso 3
Nuevo proyecto FireBase Nuevo proyecto FireBase
Paso 4 Paso 5
Le damos a siguiente Nuevo proyecto FireBase
  • Ir a la sección de la base de datos y copiar el enlace. Nuevo proyecto Firebase
  • Ir a la sección de reglas (Rules) y abrir la base de datos para uso sin autenticación. Aquí el antes y después:
Antes Después
Antes Después

Conexión Nube Particle con Firebase

En el código en comled.ino cada vez que se actualiza el led, este evento es publicado a la nube de particle:

digitalWrite(led, ledStatus);
Particle.publish("ledstatus",String(ledStatus));

Es necesario crear un Webhook el cuál actualice Firebase cada vez que se genera este evento:

Ir a consola Crear Webhook
Ir a consola Después

Webhook

Y finalmente editar el Webhook de la siguiente forma:

Webhook

Verificar en Firebase que el campo respectivo en la base de datos se actualize cada vez que el led cambia:

Firebase actualización

Cuando esto este funcionando, se puede usar la extensión de Firebase en AppInventor para capturar eventos de cambios remotos en Firebase.

Configuración MIT AppInventor con Firebase

Iniciamos sesión en MIT AppInventor y creamos un nuevo proyecto. MitAppProyecto MitAppProyecto

Conectar la aplicación de MIT AppInventor a Firebase usando la extensión FirebaseDB:

Firbase extensión

En la configuración de la extensión de Firebase:

  • Remover el visto en Use Default
  • Configurar de la siguiente forma: Firebase configuración

Para sacar la url y el token, nos vamos a configuración de nuestro proyecto en Firebase. Firebase_token Firebase_token

Para nuestra App, agregaremos un botón y una etiqueta App_Firebase

Nos vamos a la sección de bloques para realizar la programación de bloques ![Block_FireBase](/imagenes/App_Paso 1__Firebase.png)

Y tendremos que realizar nuestra programación de tal manera que queda asi ![Block_FireBase](/imagenes/App_Paso 2_Firebase.png) ![Block_FireBase](/imagenes/App_Paso 3_Firebase.png)

*En el primer bloque realizamos la llamada de la base de datos, cuando aplastamos el botón *En el segundo bloque comprobamos el estado del led

Conexión MIT AppInventor con Particle

En el código en comled.ino la función "led":

Particle.function("led",ledCommand);

es registrada en la nube de Particle y por lo tanto se la pueda ejecutar remotamente usando un API request. Este es un ejemplo de un botón en AppIventor que al ser presionado, llama a esta función remotamente:

Ejemplo Método 1

Ejemplo bloques

Ejemplo Método 2

Ejemplo bloques2

El campo debe de ser reemplazada por el Access Token de su aplicación:

Access Token

Para que esto funcione, es necesario primero seleccionar el componente Web (agregarlo desde la sección Connectivity) en AppInventor:

Extensión Web

Para configurar la extensión Web:

  • En AppInventor, en la configuración de la extensión Web, en el campo URL usar:
https://api.particle.io/v1/devices/<Device ID>/led

About

Conexión entre el Particle Photon y MIT AppInventor

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages