Beruflich Dokumente
Kultur Dokumente
ELECTRNICA Y TELECOMUNICACIONES
SISTEMAS DIGITALES
INFORME DEL PROYECTO
Profesor: Integrantes:
Introduccin Aunque el ser humano todava no esta arraigado a las propiedades que ofrece la domtica es un hecho que en un futuro estara instalada en cualquier vivienda. Pero que es la domtica? Se podra definir como el conjunto de tecnologas aplicadas al control y la automatizacin inteligente de la vivienda, que permite una gestin eficiente del uso de la energa adems de aportar seguridad, confort, y comunicacin entre el usuario y el sistema. Para poder conseguir las propiedades comentadas anteriormente es necesario que los sistemas recojan la informacin de su entorno con sensores y dispongan de la lgica para actuar en consecuencia utilizando actuadores. Actualmente los sistemas demticos tienen un precio muy alto de instalacin con lo cual solo es posible verlo en casasde lujo. Estos suelen utilizar buses de transmisin de informacin que posibilitan una domtica robusta como son el EIB, X10, CEBus, LonWorks/LongTalk y ZigBee. Una alternativa ms barata y casera consiste en la utilizacin de placas Arduino.
Objetivos
Como objetivo de este proyecto nos hemos propuesto crear un sistema domtica simple utilizando las placas de bajo coste Arduino y otros dispositivos, como sensores, actuadores y comunicadores. Habr que dotar al sistema de la lgica necesaria para que puedan comunicarse las placas que estarn controlando la habitacin en la cual hayan sido instaladas.
El proyecto tiene como fin poner en practica todos los conocimientos adquiridos en el desarrollo de la materia, tanto en el desarrollo analtico y practico.
Marco Terico
Caractersticas bsicas de Arduino .
En este apartado vamos a describir los principales elementos que componen una placa Arduino y el entorno de desarrollo en el que se programa el cdigo, es decir la parte hardware y software que actan sobre Arduino.
Hardware
Al ser Arduino una plataforma de hardware libre tanto su diseo como su distribucin puede utilizarse libremente para el desarrollo de cualquier tipo de proyecto sin haber adquirido ninguna licencia. Por eso existen varios tipos de placa oficiales, las creadas por la comunidad Arduino o las no oficiales creadas por terceros pero con caractersticas similares. En la placa Arduino es donde conectaremos los sensores, actuadores y otros elementos necesarios para comunicarnos con el sistema. En el proyecto se han utilizado las placas que se tenan a disposicin que son Arduino Mega ADK y describiremos a continuacin.
Fig2.Reverso de la placa.
La board Arduino Mega ADK est basada en la board Mega2560 pero integra adicionalmente un Host USB para conectarla a celulares, o sistemas basados en Android, esta board tiene 54 I/O digital, de los cuales podemos usar 14 PWMs, 16 canales de entradas anlogas, 4 UARTs (hardware serial ports), a 16 MHz. Integra una conexin a USB para programacin, entrada de alimentacin tipo Jack y conector ICSP. Su uso es muy sencillo, solo se requiere conectarla al computador por medio del cable USB y ya est. Aplicaciones: Su principal uso es la creacin o diseo de aplicaciones que requieran interfasar a Arduino con Android, esto implica que desde tu Celular podras controlar servomotores, luces, leds, adquirir datos, enviar datos, entre otros. As que si alguna vez pensaste en usar el alto poder de procesamiento de tu celular, pero estabas limitado por los perifricos de salida, Arduino Mega ADK es una excelente opcin.
Software
La plataforma Arduino tiene un lenguaje propio que esta basado en C/C++ y por ello soporta las funciones del estandar C y algunas de C++. Sin embargo, es posible utilizar otros lenguajes de programacion y aplicaciones populares en Arduino como Java, Processing, Python, Mathematica, Matlab, Perl, Visual Basic, etc. Esto es posible debido a que Arduino se comunica mediante la transmisin de datos en formato serie que es algo que la mayora de los lenguajes anteriormente citados soportan. Para los que no soportan el formato serie de forma nativa, es posible utilizar software intermediario que traduzca los mensajes enviados por ambas partes para permitir una comunicacin fluida. Es bastante interesante tener la posibilidad de interactuar con Arduino mediante esta gran variedad de sistemas y lenguajes puesto que dependiendo de cuales sean las necesidades del problema que vamos a resolver podremos aprovecharnos de la gran compatibilidad de comunicacin que ofrece. El entorno de desarrollo de Arduino es sencillo e intuitivo adems puede descargarse gratuitamente desde su pagina oficial para distintos sistemas operativos. Ha sido implementado con Processing, un lenguaje similar a Java. Su ultima version es la 1.5.5 aunque en el proyecto se ha utilizado la 1.5.0. Esta formado por una serie de mens, una barra de herramientas con botones para las funciones comunes, un editor de texto donde escribiremos el cdigo, un rea de mensajes y una consola de texto. En la ilustracin 4 se puede apreciar la composicin del software de Arduino.
Fig3.IDE de Arduino .
Una vez que conocimos los elementos bsicos de arduino vamos a empezar con el desarrollo del proyecto el cual se realizara una explicacin por mdulos separados , para poder realizar un detalle completo de los sensores y el funcionamiento de los mismos.
Modulo de temperatura (Lm35) Para el modulo de temperatura utilizamos un sensor Lm35 y una LCD para visualizar la temperatura ambiente .
Para la LCD utilizamos la librera de arduino liquidCristal. La librera LiquidCrystal, permite controlar pantallas LCD que son compatibles con el controlador Hitachi HD44780. Que son la mayora de LCDS que se encuentran en el mercado local , se pueden reconocer normalmente por que poseen una interfaz de 16 pines. La conexin entre arduino y el sensor lm35 es muy fcil debido a que arduino facilita la lectura de seales analgicas , mediante los pines destinados a este fin. El sensor LM35 el cual nos mide una temperatura de -55C a 150C y una precisin de 0.5C a 25C; este sensor es suficientemente completo, se puede utilizar para realizar pequeos inventos o proyectos y que pueden ser realizados en casa.
Descripcin del circuito LCD. El pin RS del LCD conectado a la E/S digital en el pin 12 El pin enable del LCD conectado a la E/S digital en el pin 11. Los pines D4 - D7 conectado a las E/S digitales desde el pin 5 hasta el 2. Los pines de voltaje y tierra conectados a +5V y tierra. El pin Vo, que controla el constraste, conectado a un potencimetro.
Descripcin del circuito lm35. El pin 1 del sensor sensor es Vo. El pin 2 que es la salida analogca se conecta a la entrada A0 de arduino. El pin 3 se conecta a GND.
En el cual se puede observar que realizamos con ayuda de un for, la toma de 8 muestras a las cuales se le obtuvo el promedio para as mejorar la precisin . La ecuacin caracterstica del sensor se detalla en el datashett .
Ahora en nuestro caso particular debemos mostrar la temperatura del sensor en la LCD, para esto utilizamos las funciones de la librera, las cuales facilitan el desarrollo del cdigo . El cdigo implementado de este modulo se muestra a continuacin.
Re-mapea un nmero desde un rango hacia otro. sto significa que, un valor (value) con respecto al rango Parmetros value: el nmero (valor) a mapear.
Constrain Descripcin Restringe un nmero a un rango definido. Parmetros x: el nmero a restringir, cualquier tipo de datos.
b: El nmero mayor del rango, cualquier tipo de datos. Retorna x: si x est entre a y b
a: si x es menor que a
b: si x es mayor que b
10
Modulo de control desde el telfono (Bluethoo). Eldispositivo utilizado es un mdulo bluetooth HC-06 y es compatible con Arduino. Dicho mdulo trabajo mediante conexin serie con el Arduino, y se comunica con el exterior mediante bluetooth, ya sea a travs de un telfono mvil, ordenador, tablet, etc.
Fig6. Dispositivo Bluethooth HC-06. Funciona a 3.3V, Como se ve solo disponemos de 4 pines que son los necesarios, por un lado tenemos VCC que ir conectado a los 3.3V del Arduino, por otro GND que ira al pin GND de Arduino, despus tenemos TXD que ir conectado al pin RXD del Arduino y RXD que ir al pin TXD de Arduino.
11
12
Una vez detallados todos los mdulos se puede mostrar la integracin de cada uno de ellos en un solo cdigo fuente el cual fue el que se implemento en el proyecto .
13
Referencias
Ejemplo Blink LCD. [En lnea]. Disponible en: < http://arduino.cc/es/Tutorial/LiquidCrystalBlink> Pagina oficial de Arduino: [En linea] disponible en:<http://www.arduino.cc/ >
14