jueves, 24 de mayo de 2012

Proyecto Arduino

Proyecto Arduino - Casa Inteligente (Iluminación)





Como ya la mayoría sabe, mi proyecto de Arduino trata sobre un módulo de la casa inteligente, en específico, la iluminación.

A principio de semestre yo tenía la idea de controlar la iluminación por medio de distintos medios, por ejemplo, se me había ocurrido controlar las luces por medio de aplausos, o también por medio de la voz. Pero al final, para combinar el proyecto de Cómputo Integrado con el de Dispositivos Móviles decidí en controlar la iluminación desde un móvil con Android, además esa idea ya la tenía junto con mis compañeros de equipo del semestre pasado, de hecho el trabajo de móviles (la aplicación), es decir, la parte del control de este proyecto la realizamos entre todos los elementos del equipo del semestre pasado.


Bueno, como ya había comentado en posts anteriores, mi proyecto básicamente se compone de 2 circuitos fundamentales, el circuito de control (Arduino) y el circuito de potencia (el que controla las altas tensiones de 110v).



Herramientas utilizadas



  • Simulador de Android
  • Eclipse
  • IDE de Arduino
  • CIRCAD (Software para diseño de PCB's)
  • Java (Comunicación por medio de sockets con la aplicación móvil)
  • Arduino UNO
  • Tablet con Android para las pruebas en dispositivo


Simulador de Android 




Antes de pasar la aplicación y probarla en un dispositivo móvil, iba realizando las pruebas en el simulador.


 
IDE de Arduino UNO


Esta es la primera parte del código que está almacenado en el microcontrolador de Arduino, lo que hicé fue declarar los pines 12 y 13 como salidas, para simular focos en el 1er 2do piso de una casa, aunque los ffocos los puse uno seguido de otro :p. Pero esa es la idea.

También establezco la velocidad de transferencia de los datos a 9600 baudios





En la siguiente imagen lo que hago es leer los datos que envía la PC (a la PC le llegan del móvil), luego comparar para obtener la salida deseada






CIRCAD

El siguiente es el diseño que realicé del circuito de potencia, en el extremo izquierdo se encuentran las entradas del circuito (donde se conectan los pines de salida de Arduino). En el extremo derecho se encuentran pads para meter un molex, en el molex podremos conectar las salidas para los focos (voltaje de 110), es por eso que puse esas líneas más gruesas, ya que por ahí cruzará alta tensión





Java

Utilicé una sola función para envíar mensajes. Toda esta comunicación entre Arduino y Java (PC) la pude realizar gracias a la librería Rxtx de Java, la instalación un código los he explicado en un post pasado que trata sobre la librería Rxtx.





Después ya cuando llegan los Strings desde la aplicación móvil, los comparo en java y dependiendo de lo recibido yo decido que parametro pasarle a Arduino mediante mi función sendMessage, como pueden ver en las imágenes de arriba, programé el arduino para que cuando reciba un "1" la luz se encienda, haciendo lo contrario para el parámetro "2" (ver la imagen siguiente).
  








Arduino UNO



 



Arduino UNO facilitó mucho la comunicación entre el microcontrolador y Java (PC), ya que si no lo hubiera usado, la programación se extendería demasiado, también hubiera sido más complejo aunque importara librerías.
 
 
A continuación les dejo con unas imágenes que tomé del proyecto finalizado:

















En un futuro subiré los códigos realizados, el archivo de PCB creado en CIRCAD y un video del proyecto en acción :)



Saludos!



No hay comentarios:

Publicar un comentario