Rufistofeles

Visita mi perfil de GitHub para obtener los archivos y el documento de mi tesis.

Proyecto Final de Tesis

Hola a todos, mi nombre es Rafael Pérez y este es mi proyecto final de tesis.

Presento el diseño y construcción de un sistema domótico, para controlar el encendido y apagado de luminarias en una casa habitación por medio de algún dispositivo móvil que incorpore tecnología WiFi, como puede ser una Tablet o un teléfono inteligente, y usando el protocolo de comunicación X10.

Para lograr lo anterior, se utilizaron dispositivos con tecnologías actuales, como un microcontrolador Arduino para establecer comunicación X10 con los módulos de transmisión y recepción utilizando como medio, la red eléctrica. Es decir, se utilizaron los mismos cables de la red eléctrica para controlar remotamente, en este caso, una lámpara.

También se utilizó una computadora “Raspberry Pi” que funciona como servidor para permitir que los dispositivos móviles se puedan conectar y manipular este sistema domótico.

La idea de un sistema domótico surgio a partir del diagnostico medico de mi madre; ella sufre de artrosis de rodilla.

La artrosis de rodilla es una enfermedad degenerativa que se caracteriza por el deterioro paulatino de la articulación de la rodilla. Es una de las principales causas de incapacidad en Estados Unidos según el centro para la prevención y el control de las enfermedades (CDC). El desarrollo de la enfermedad es lento y el dolor empeora con el paso del tiempo.

En México en una muestra de 2500 individuos se encontró una prevalencia de artrosis del 2.3% en la población adulta. En cuanto a su impacto, la artrosis en el Instituto Mexicano del Seguro Social (IMSS) constituye uno de los 10 principales motivos de consulta al médico familiar.

Marco Teórico

Protocolo X10

X-10 es uno de los protocolos más antiguos que se están usando en aplicaciones domóticas. Fue diseñado en Escocia en los años 70’s con el objetivo de transmitir datos por las líneas de baja tensión a muy baja velocidad (60 bps en EEUU y 50 bps en Europa) y costos muy bajos.

Al usar las líneas eléctricas de la vivienda, no es necesario tender nuevos cables para conectar dispositivos.

El transmisor X-10 está pendiente de los pasos por cero de la onda senoidal para insertar en un instante después una ráfaga muy corta de señal en una frecuencia fija. Las señales de control de X10 se basan en la transmisión de ráfagas de pulsos de RF (120 KHz) que representan información digital.

La codificación de un 1 o de un 0, depende de cómo se inyecte esta señal en los dos semiciclos. Un 1 binario se representa por un pulso de 120 KHz durante 1 milisegundo y el 0 binario se representa por la ausencia de ese pulso.

Primero se transmite una orden con el Código de Casa y el Número de Módulo que direccionan el módulo en cuestión. Luego se transmite otra orden con el código de función a realizar (Function Code). Hay 256 direcciones soportadas por el protocolo.

Arduino

Arduino es una plataforma de hardware libre, basada en una placa con un microcontrolador y un entorno de desarrollo, diseñada para facilitar el uso de la electrónica en proyectos multidisciplinarios.

Arduino facilita la el desarrollo de experimentos y proyectos tales como:

Robots en sus múltiples formas, seguidores de lineas, luchadores de sumo, barredoras, sensores de temperatura, cuadracopteros que son la base para los drones, etc.

Raspberry Pi

La Raspberry Pi es una computadora del tamaño de una tarjeta de crédito que se puede conectar a una TV y a un teclado. Desarrollada por una fundación que lleva el mismo nombre, es capaz de operar la mayoría de las cosas que una computadora normal, como hojas de cálculo, procesar palabras y juegos. También reproduce video de alta definición.

Su procesador está diseñado para correr aplicaciones multimedia en dispositivos móviles y embebidos. Tiene 2 puertos USB, salida de video RCA, una ranura para tarjeta SD, Ethernet y tiene una memoria SDRAM de 512MB.

Mide 8cm x 5cm y pesa solamente 45g.

Django

Django es un framework de desarrollo web que ahorra tiempo y hace que este proceso sea divertido. Utilizando Django se puede crear y mantener aplicaciones web de alta calidad con un mínimo esfuerzo.

Django está escrito en Python, que es un lenguaje muy expresivo, es decir, los programas Python son muy compactos: un programa en Python suele ser bastante más corto que su equivalente en lenguajes como C. Se considera como un lenguaje de alto nivel.

Varios sitios importntes estan hechos en Django, los mas sobresalientes son: Instagram, Pinterest, Rdio, Mozilla.

Firmata

Es un protocolo genérico para comunicación con microcontroladores desde el software en una computadora “host”. El objetivo central es hacer del micro-controlador una extensión del entorno de programación, de una manera que se sienta natural.

Fue diseñado para ser flexible y abierto de modo que cualquier entorno de programación pueda soportarlo y que sea fácil de implementar en ambos, el micro-controlador y la computadora host.

Diseño del Sistema

Modelo del Sistema

Servidor

Se utiliza una minicomputadora Raspberry Pi modelo B; por su tamaño y versatilidad (Sistema operativo, aplicaciones, puertos de comunicación, etc.), para cumplir con las funciones necesarias y funcionar como servidor del sistema.

Interfaz web

Para la interfaz se necesitaba algo sencillo, sin mucho icono que hiciera que el usuario se perdiera o que no encontrara lo que buscaba, algo que no tomara mucho tiempo para aprender a manejar y que se viera bien en cualquier dispositivo.

Se optó por una interfaz que pareciera una pagina de encuestas, ya que es lo mas básico que un usuario puede manejar.

Así que lo único que habría que hacer era elegir una opción, oprimir el botón que acreditaba esa acción

Después se muestra una pagina con los resultados obtenidos, “elegiste encender la lampara” y unos datos que solo son estadística del proyecto.

Actuadores

Cualquier modelo de arduino se puede ocupar para este proyecto, pero se eligió el modelo Mega2560 por la cantidad de entradas y salidas digitales y analógicas, con miras a seguir expandiendo el proyecto y poder conectar mas elementos.

Modulo PSC05 permite interconectar el equipo con la línea eléctrica de 120 V mediante el protocolo X10. Se conecta por medio de un cable RJ11.

Modulo LM465 Este módulo es un receptor que responde a señales X10 generadas por controladores conectados en la línea eléctrica. Simplemente se tiene que seleccionar el código adecuado para direccionar el módulo y poder enviarle las ordenes.

Construcción

Conexiones

Para realizar la conexión eléctrica entre el microcontrolador Arduino y el módulo PSC05, se toma un cable telefónico de 4 hilos y cortando uno de los extremos se conecta de acuerdo al siguiente esquema.

Se puede apreciar como quedó conectado el cable telefonico al arduino.

Diagrama Completo de Conexiones

Conclusiones

Para este proyecto se investigaron los siguientes temas:

Poco a poco y mediante la búsqueda de información en libros, manuales y cursos en línea se pudo obtener más destreza y habilidad en los temas mencionados antes.

Los resultados de las pruebas fueron satisfactorios ya que se logró el control de una luminaria a través del sistema que se desarrolló a lo largo de este proyecto. El sistema se desempeña muy bien tanto en computadoras como en dispositivos móviles, ajustándose a la gran variedad de anchos de pantalla y a los diferentes navegadores.

Todos los archivos del proyecto, así como mi tesis se encuentran alojados en mi perfil de GitHub...