Saltar la navegación

Control de un LED vía bluetooth

De interés

Con el proyecto "APP-lícate" vamos a hacer una inmersión en el mundo del pensamiento computacional utilizando el IoT como excusa. El producto final será el diseño y programación de una aplicación para dispositivos móviles que sea capaz de controlar a una cierta distancia dos diodos LED utilizando tecnología Bluetooth. Para lograr esto debemos realizar antes una serie de tareas. Posteriormente haremos difusión del resultado obtenido.

Partiremos de la representación gráfica de las acciones que queremos que realice nuestro sistema al completo, tanto el digital en la APP como el físico que va a controlar los ledes. Si somos capaces de realizar este cometido, podremos ser capaces de diseñar un sistema que controle la instalación eléctrica de nuestra vivienda o de controlar un brazo robot (ver propuestas de ampliación en la página "referencias bibliográficas"). Dicha representación gráfica la vamos a hacer mediante los diagramas de flujo que ya hemos estudiado y utilizado en otros proyectos.

El resultado debe ser algo parecido a lo que se ve en el siguiente vídeo:

Antonio Muñoz Pancorbo. Control de ledes desde un móvil (CC BY-NC-SA)

Para el correcto desarrollo del proyecto las tareas a realizar, por grupos, serán las siguientes:

  1. Diseño de los diagramas de flujo (maestro y esclavo) que representan los programas necesarios.
  2. Control de un diodo LED con la IDE de Arduino.
  3. Creación de una APP sencilla que utilice botones y sus propiedades.
  4. Establecer comunicación entre APP (con botones) y dos diodos LED controlados con Arduino.
  5. Creación de un medio expositivo (web, presentación, panel, etc.) y difusión en redes.

¡EMPECEMOS!

Alta en APPInventor

Aún no hemos hecho ningún proyecto para generar una aplicación móvil ni conocemos la interfaz del espacio web con el que las vamos a generar. APPInventor es una aplicación de programación on-line desarrollada por el MIT (Massachusetts Institute of Technology) para facilitar que los estudiantes se puedan adentrar en el mundo del pensamiento computacional sin necesidad de tener ningún robot de por medio pero de una forma cercana. Con APPInventor vamos a generar una serie de aplicaciones para dispositivos móviles Android que posteriormente podríamos publicar. Al tratarse de una aplicación on-line, no tendremos que instalar absolutamente nada en nuestro dispositivo por lo que podremos trabajar tanto en clase como en casa.

Es cierto que el diseño y la programación con APPInventor difiere por completo de lo que hemos utilizado hasta ahora, ya que nos vamos a dedicar a programar distintos objetos y sus propiedades, pudiendo interactuar con ellos de diversas formas.

Para ir introduciéndonos en distintos conceptos relacionados con las comunicaciones bluetooth, nuestro dispositivo móvil va a ser el "maestro", es decir, el emisor de señales.


ACTIVIDAD A REALIZAR: accede a APPInventor y registra tu cuenta de correo electrónico del instituto. Comprueba que puedes acceder sin problema a tu nuevo usuario. El profesor te irá indicando cómo es la interfaz de APPInventor antes de que comiences a trabajar con él.

Comprobar la disponibilidad de la IDE de Arduino

En toda comunicación bluetooth, siempre debemos tener un sistema que hará las veces de "esclavo", este será el receptor de señales que en nuestro proyecto va a ser la placa de Arduino. Para poder programarla correctamente, utilizaremos el software de programación textual original ya que nos da todas las opciones posibles de programación, a este le vamos a denominar IDE de Arduino. Debes comprobar que el ordenador que estás utilizando tiene instalado el software mencionado, en caso contrario habrá que instalarlo.

En el caso de ser necesaria la instalación en un ordenador con EducaAndOS será fácil, solo debemos acceder al centro de descarga de software y activarlo. En el caso de un ordenador Windows habrá que acudir a la sección de software de la página oficial de Arduino (arduino.cc) y descargar la versión adecuada para nuestro SO. En el caso de utilizar Raspbian, debemos seleccionar una de las versiones Linux para arquitectura ARM, descargarlo y proceder a la instalación desde la terminal con permisos de administrador (hay mucha información en Internet para proceder a hacerlo).

Recuerda que por defecto Arduino se abrirá de la siguiente forma:

Antonio Muñoz Pancorbo. IDE de Arduino (CC0)

Tal y como se ve en la imagen, el espacio entre las llaves ({ }) de void setup () está preparado para el código que queremos que se ejecute una única vez y el espacio entre las llaves de void loop() está destinado para el programa que va a estar en bucle. Siempre habrá que tener cuidado con la sintaxis que debes utilizar y habrá que tener en cuenta que la definición de variables se hace antes de las líneas de código de void setup().


ACTIVIDAD A REALIZAR: comprueba que en tu equipo (ya sea Windows, EducaAndOS o Raspbian) está instalada la IDE de Arduino, en caso contrario debes proceder a instalarla siguiendo las instrucciones dadas anteriormente.

El profesor te irá indicando cómo es la interfaz de APPInventor antes de que comiences a trabajar con él.

Recuerda que, de cara a empezar a programar, debes tener muy claro cuál es el espacio reservado para la declaración de variables, y de qué se ocuparán void setup() y void loop().