Está en la página 1de 44

PROYECTO FINAL DE AULA SEMESTRAL

SISTEMA AUTOMÁTICO PARA EL CONTROL DE CARGAS A TRAVÉS DE


LA PLATAFORMA ARDUINO Y UNA APLICACIÓN PARA DISPOSITIVOS
MÓVILES.

JUAN CARLOS RIVERO

JUAN DAVID GONZALES

JAIDER FELIPE FRAY

RAFAEL SABIE LOBO

UNIVERSIDAD DE CÓRDOBA FACULTAD DE INGENIERÍA


DEPARTAMENTO DE INGENIERÍA DE SISTEMAS Y
TELECOMUNICACIONESINGENIERÍA DE SISTEMAS

05/06/18

MONTERÍA
Tabla de contenido
INTRODUCCIÓN ................................................................................................ 3
1. Planteamiento del problema ........................................................................... 4
1.1 Problema principal .................................................................................... 4
1.2 Problema Secundario ................................................................................ 4
1.3. Descripción del problema ......................................................................... 5
1.4. Justificación ............................................................................................ 6
2. OBJETIVOS ................................................................................................... 7
2.1. OBJETIVO GENERAL ................................................................................ 7
2.2. OBJETIVOS ESPECÍFICOS ........................................................................ 7
3. Antecedentes. ............................................................................................... 8
3.1. Contexto Internacional ............................................................................ 8
3.2. Contexto nacional .................................................................................... 8
3.3. Contexto Regional ................................................................................... 8
4. Metodología .................................................................................................. 9
4.1. Tipo de trabajo ....................................................................................... 9
4.2. Estrategias de recolección de la información ........................................... 10
4.3. Proceso de la investigación........................................................................ 10
4.3.1. Fase I: Estudio, análisis e interpretación del sistema ............................. 10
4.3.2. Fase II: Caracterización del sistema ..................................................... 11
4.3.3. Fase III: Diseño e implementación del sistema ..................................... 11
4.3.4. Fase IV: Descripción de pruebas.......................................................... 12
5. Diseño Arquitectónico .................................................................................. 13
5.1.1. Dibujo del artefacto o dispositivo ......................................................... 13
5.1.2. Descripción del dibujo ......................................................................... 13
5.1.3. Diagramas de actividades ................................................................... 14
5.1.4. Diagrama de secuencia ....................................................................... 15
5.3. Pruebas del sistema............................................................................... 18
6. Conclusiones ............................................................................................... 21
7. Recomendaciones ........................................................................................ 22
8. Trabajos Futuros ......................................................................................... 22
10. ANEXOS .................................................................................................... 25
A. Manual de usuario ............................................................................... 25
Introducción ................................................................................................ 25
Entrando a la aplicación ............................................................................... 25
Interfaz de la aplicación. .............................................................................. 26
Componentes de la aplicación ....................................................................... 27
Funcionalidad. ............................................................................................. 28
B. Manual del sistema. ................................................................................. 30
Introducción ................................................................................................ 30
C. Evidencias fotográficas ............................................................................. 32
D. Códigos fuente. ....................................................................................... 33
E. Codigo Fuente del Modulo 1. .................................................................... 35
F. Código fuente del Modulo 2. ..................................................................... 39
INTRODUCCIÓN

Es un hecho que en la actualidad la tecnología ha tenido un avance


considerable a comparación de años anteriores, lo que ha permitido el
desarrollo de diferentes aplicaciones y dispositivos, donde muchas de
las actividades cotidianas son realizadas por medio de dispositivos
electrónicos.

Es un hecho que la domótica está generando gran impacto en la


sociedad, y que en un futuro no muy lejano, gracias a las ventajas que
ofrece, será la gran tendencia mundial. Y no solo la domótica se está
posicionando fuerte, en nuestra sociedad hay un boom tecnológico por
así decirlo, en cuanto al uso de celulares inteligentes y tabletas.

Los Smartphone, como se conocen los celulares inteligentes, tienen


gran impacto a nivel mundial, donde una parte considerable de la
humanidad posee este tipo de dispositivo electrónico. En países como
estados unidos se tiene cifras de que alrededor de más del 50% de los
usuarios de Smartphone, poseen celulares con sistema operativo
Android, el sistema operativo que sigue en la lista es iOS de iPhone,
con un 15%, mostrando una alta tendencia por los dispositivos con el
sistema operativo que provee Google.

Basándose en esta tendencia en los Smartphone, en cuanto a su


preferencia por sistema operativo, y llegando a la conclusión que los
usuarios también prefieren el sistema operativo Android en las Tablet,
se decide crear una aplicación para los dispositivos que utilizan este
sistema operativo.

La aplicación tiene como fin combinar el uso de estos dispositivos


electrónicos con la domótica, creando un prototipo, Sistema
automático para el control de cargas a través de la plataforma
Arduino y una aplicación para dispositivos móviles, el cual
permitirá controlar los aires acondicionados.
1. Planteamiento del problema

En el Ciudad de Montería se encuentra ubicado la academia militar


Gustavo rojas pinillas, que tienen como expectativa principal controlar
el flujo de corriente de los aires acondicionados existen además otros
aparatos además de aires que se pueden controlar atreves de esta
técnica.

La situación actual de la escuela militar ubicado en el centro de


Montería Con lo que se refiere con el control de apagado de los aires
se realiza de forma manual la persona encargada de esta función debe
de realizar el trabajo de ir en salón apagando los aires.

1.1 Problema principal

 No existe un prototipo de un sistema de automatización de


apagado y encendidos de aires.

1.2 Problema Secundario

 No existe un estudio de los distintos componentes electrónicos


que interactúen en un sistema de automatización de control de
energía.

 No existe un diseño del circuito del sistema de control de la


automatización.
 No existe una implementación de un sistema de control
automático de los aires producido en la escuela militar Gustavo
rojas pinillas.

1.3. Descripción del problema

Con los crecientes índices del gasto de energía por los que
atravesamos en la actualidad, nos hemos visto forzados a buscar
distintas formas de control que nos permita el ahorro de energía.
Desde sistemas novedosos de control de energía incorporación de
nuevas tecnologías en donde poco a poco tengamos al alcance de
nuestras manos un sinfín de servicios propios de la evolución constante
en la que nos encontramos. De esta misma forma la incidencia de las
constantes transformaciones económicas, sociales, políticas y por
supuesto tecnológicas influyen en las necesidades de los seres
humanos.

Hoy en día el ahorro de energía es uno de las grandes necesidades


que exige nuestro medio debido a que esto representan un gran
porcentaje en la que la conservación de la naturaleza se refiere la
tecnología es una gran herramienta para la optimización en el ahorro
de energía eléctrica ya que si bien es cierto en nuestra actualidad se
ve un déficit energético en nuestra actualidad que muchas veces
razonamiento refleja y en muchas ocasiones conflictos sociales.

La idea principal de este proyecto es describir e implementar una


solución piloto haciendo uso de la tecnología que facilite el control de
los aires acondicionados de forma remota proveyendo una interfaz de
manejo fácil y asequible.
1.4. Justificación

Analizando el estado actual de la domótica, y de los diferentes tipos de


sistemas de control domótico que se han desarrollado hasta el
momento, se evidencia claramente el avance tecnológico que ha tenido
este tipo de sistemas. Aunque son infinidad los proyectos de domótica
que se han creado, se ha escuchado o en otras palabras se ha visto
muy poco la implementación de sistemas de control de domótico
manejados por medio del celular. Este tipo de sistemas de control,
podrían generar un auge, ya que permiten una mayor interacción entre
el usuario y el sistema, ya a la vez mayor comodidad para la persona,
debido a que puede controlar los aparatos electrónicos por medio de
su celular.

El mercado actual de los Smartphone y las Tablets, está presentando


un crecimiento acelerado, donde las tendencias y las preferencias de
los usuarios cada vez es más notoria, donde los dispositivos con
sistema Android están marcando la diferencia.

El presente trabajo, tiene como fin integrar la domótica con los


dispositivos Android, creando un sistema automático para el control de
cargas a través de la plataforma Arduino y una aplicación para
dispositivos móviles, con fin de controlar el encendido y apagado de
los aires acondicionados de la escuela militar Gustavo rojas pinillas, es
una forma más fácil de ahorrar electricidad, manejado ya sea por un
Smartphone o una Tablet, con sistema operativo Android.
2. OBJETIVOS

2.1. OBJETIVO GENERAL

 Desarrollar un sistema automático para el control de cargas por


medio de Arduino, a través de una aplicación móvil ejecutada por
dispositivos que cuenten con Android, que permita el control
remoto de encendido y apagado de los componentes asociados a
este sistema.

2.2. OBJETIVOS ESPECÍFICOS

 Desarrollar una aplicación móvil en Android studio para Android.

 Controlar los aires acondicionado por medio del dispositivo móvil


celular a través de WIFI
 Recibir datos por medio de WIFI y procesarlos a través de
Arduino.

 Desarrollar la operación del sistema en un modelo temporizador


para evaluar las diferentes funcionalidades.

 Establecer las diferentes funciones a implementar en el sistema


de control de cargas durante su continuo desarrollo.
3. Antecedentes.

3.1. Contexto Internacional

En el contexto internacional en la Escuela Universitaria de Ingeniería


Técnica de Telecomunicación en Madrid en al año 2000 se desarrolló
un trabajo de grado el cual consistía en un Control de módulo 3G
mediante aplicación Android Este proyecto describe la metodología a
seguir para conectar la plataforma Arduino a dispositivos Android y
establecer una conexión que permita controlar dicha plataforma. Sobre
Arduino se acoplará un módulo 3G que permitirá hacer uso de
funcionalidades propias de los teléfonos móviles.

3.2. Contexto nacional

En septiembre del año 2016, en Bogotá los estudiantes, JOSE


RIGOBERTO, LUIS ESTEBAN DAZA, del programa de ingeniería de
sistemas de la fundación universitaria los libertadores.

Desarrollaron el proyecto “LA GESTION DE CONTROL DOMOTICO


BASADO EN LA PLATAFORMA ARDUINO PARA UNA VIVIENDA” La
aplicación tiene como fin combinar el uso de estos dispositivos
electrónicos con la domótica, creando un prototipo de sistema de
control demótico basado en Android, el cual permitirá controlar, luces,
alarmas, puertas, entre otros.

3.3. Contexto Regional

En córdoba en la universidad del Sinú tres estudiantes realizaron un


proyecto de tesis que consistía en una casa domótica con arduino y
Android, Mediante este proyecto sus creadores han querido conseguir
una casa domótica totalmente eficiente. Para ellos han usado una
placa Arduino Uno junto a un módulo wifi con el que poder controlar a
distancia mediante una aplicación Android en una Tablet o Smartphone
los diferentes dispositivos electrónicos de la casa.

4. Metodología

Para el desarrollo de este proyecto se ha utilizado la metodología de


desarrollo Android, ya que es una metodología que nos permite
desarrollar el proyecto de forma más organizada, asignando tareas
específicas para poder hacer la elaboración del sistema mediante fases
implementando las mejores prácticas de desarrollo de software. Este
método permite estudiar la situación particular a la cual se va a
enfrentar este sistema, aplicando las 4 fases del ciclo de vida de esta
metodología: “Fase de inicio, fase de elaboración, fase de desarrollo y
fase de cierre.” Cada una de estas fases describe el proceso por el cual
se hará la realización del software para el desarrollo del sistema
automático de control de cargas en el colegio, este método nos
permite aplicar los conocimientos adquiridos para implementar este
sistema de forma tal que nos permita el control de los aires
acondicionados oh cualquier otro aparato electrónico desde el
dispositivo móvil vía WIFI.

4.1. Tipo de trabajo

El tipo de trabajo es tecnológico descriptivo, definido para crear un


producto o modificarlo atendiendo a las necesidades de los usuarios y
siempre con el objetivo de mejorar la calidad de vida de los mismos, ya
que su objetivo es referir e interpretar minuciosamente lo observado,
describir el estado, las características, los factores y los procedimientos
del objeto en estudio. Además de ser tecnológico descriptivo es
cuantitativa ya que parte de un problema y unos objetivos bien
definidos por el investigador, utiliza técnicas estadísticas muy
estructuradas para la recolección y el análisis de la información.
4.2. Estrategias de recolección de la información

Para la recolección de información acerca de nuestro proyecto,


utilizamos documentos de internet referentes a la problemática
planteada en nuestro proyecto, también recogimos información con
estudiantes de ingeniería electrónica del Sena para la elaboración del
prototipo, utilizamos fuentes de internet como trabajos relacionados,
blogs etc.

4.3. Proceso de la investigación

4.3.1. Fase I: Estudio, análisis e interpretación del sistema

El equipo y la aplicación para control de encendido de artefactos


electrónicos está orientada a minimizar el gasto de energía eléctrica en
cualquier tipo de empresa. Para este caso la población objetivo
obedece a una institución educativa de la ciudad de montería que tiene
como requerimiento y principales a necesidad ahorrar el consumo de
energía eléctrica en transcurso de sus operaciones diarias.

Es así como desde su solicitud de construyó un sistema abierto


servidor cliente, en el cuál a través una aplicación de dispositivo celular
se logre contralar diferentes módulos que precisamente asignan
tiempos y órdenes de apagado y encendido en favor del control íntegro
del sistema de aires y a su vez buscando la eficiencia y el adecuado
uso de los recursos de la academia militar Gustavo rojas pinillas.

Las herramientas utilizadas para la construcción del dispositivo


automático de cargas fueron las siguientes: Módulo inalámbrico WIFI
ESP8266, Arduino UNO R3 Compatible, Módulo Relé de 1 Canal 5V,
Fuente de alimentación 12v 5a, baquelitas, y plataformas de
programación como Arduino IDE y Android studio.
4.3.2. Fase II: Caracterización del sistema

Sistema integral para control de cargas, encendido y apagado de los


aparatos electrónicos. Se distingue por brindar automatización en este
caso de aires acondicionados a través de módulos independientes que
constan de dispositivos provistos de programación y diseño físico.
Dentro de sus especificaciones encontramos componente placa
arduino, módulo WIFI, relé y contenedor de integración del circuito
electrónico.

La funcionalidad gira entorno al sistema de interacción de servidor y


cliente, los cuales envían y reciben órdenes a través de datos que
consolidan el aseguramiento de entrada de fuente de energía en los
aires acondicionados, con el fin último de regular de manera eficiente
su funcionamiento y consumo energético.

4.3.3. Fase III: Diseño e implementación del sistema

Componentes del hardware:

Módulo relé de 1 canal: El dispositivo controla la corriente para


encender y apagar cualquier dispositivo electrónico que esté conectado
al módulo de control de carga. El módulo relé también permite
conmutar una alta corriente de alto voltaje utilizando como control una
pequeña corriente que es la señal de control que manda el arduino.

Módulo inalámbrico WIFI ESP8266: El dispositivo permitirá la


Conexión con una Tablet Android a través de la señal de wifi, con la
finalidad de enviar la información en tiempo real y esta sea manipulada
por el usuario.
Baquelitas: Estas placas son por lo general de cobre, en esta placa o
tarjeta se montan los componentes del prototipo, para finalmente
colocarlo en un chasis o gabinete.

Resistencias: Las resistencias son los elementos más utilizados en


electrónica y son utilizados en infinidad de proyectos, ya sea para
limitar la corriente, como divisor de voltaje, para disipar potencia
como en el caso de los arreglos de resistencia para motores eléctricos.

Fuente de alimentación 12v 5a: Esta fuente brinda una forma fácil
de alimentar el prototipo. Utiliza una fuente suicheada para producir
eficientemente hasta 5 A en voltaje constante de 12 VDC, incluso
cuando no se aplica carga. Esta fuente de alimentación funciona con
tensiones de entrada de 100 a 240 VCA (50 a 60 Hz), lo que la hace
compatible con todas las tensiones y frecuencias.

Componentes software:

Aplicación móvil: La aplicación se conectará hacia el dispositivo por


medio de wifi para permitir el control de cualquier dispositivo
electrónico que esté conectado al dispositivo.

4.3.4. Fase IV: Descripción de pruebas.

Las pruebas que examinamos para la funcionalidad del sistema


automático de cargas fueron las siguientes

 Prueba de lecturas del dispositivo conectado a la aplicación


móvil, una vez que el dispositivo se conecte a la aplicación, podrá
ser visualizada por el usuario el cual de manera manual podrá
hacer las ordenes de encender y apagar el dispositivo conectado
a la aplicación y prolongarle un tiempo de apagado
 Pruebas de comunicación entre el arduino y la aplicación móvil,
esta conexión se hará vía inalámbrica por medio del módulo
WIFI, al arduino se le asignará la dirección IP del servidor para
establecer los puntos de conexión.
 Pruebas de encendido y apagado de los aires: esta prueba se
llevará a cabo por medio de la aplicación móvil, donde vamos a
observar los aires conectados, y desde la App le enviaremos
órdenes de encendido y apago para poder controlarlos.

5. Diseño Arquitectónico

5.1.1. Dibujo del artefacto o dispositivo

5.1.2. Descripción del dibujo


Fuente Alimentación
12v 5A

Arduino R3 UNO

Relé de 1 canal 5v

Módulo WIFi

Baquelita

Relé de 12vdc 20A

Funcionalidad de los elementos

Relé de un canal 5v: Controlar el encendido y apagado de cualquier


aparato que se conecte a una fuente de alimentación eléctrica externa.

Fuente de alimentación 12v 5Aa: alimentar el sistema arduino y


energizar los relés para poder conmutar los aires.

Módulo WIFI ESP8266: controlar el hardware, Conectividad (envió


de información).

Baquelita: la función de esta placa o tarjeta es dar soporte para


montar los componentes del prototipo

Relé de 12vdc 20A: conmuta la línea eléctrica y energizar los aires.

5.1.3. Diagramas de actividades


5.1.4. Diagrama de secuencia
5.2. Desarrollo

Módulos actuadores: Los información obtenida sirvió como insumo


para el desarrollo de los módulos actuadores que permitieron activar y
desactivar en encendido y apagado de los aires acondicionados; estos
se controlaron por medio de un teléfono inteligente el cual enviada
señales de mando a los shield del módulo wifi ESP8266 lo cuales se
conectaron a una tarjeta Arduino que su vez controlaba la interfaz de
potencia.

Capa Arduino: Permite que viajen los datos mediante objetos de


entidades que representan acciones ejecutadas o requeridas por el
usuario final. Desarrollada por medio de la interfaz Arduino y lenguaje
de programación JAVA, establece el método de configuración (Setup),
configura las entradas y salidas y establece conexión con la red Wi-fi,
almacenando el identificador de la red (SSID) y la contraseña de la
misma. También es el encargado de configurar el servidor y puerto de
escucha.
Las bibliotecas de Arduino, o más bien conocidas como librerías, son
las encargadas de dar más funcionalidad a las aplicaciones que se
creen. Hay librerías que vienen junto con Arduino, pero otras que no,
por lo que se deberán instalar.

Entre las bibliotecas estándar que utilizamos en Arduino, cabe


destacar:

 EEPROM: Esta librería sirve para leer y escribir en la memoria


de forma permanente.

 Ethernet: Permite conectarse a internet por medio del módulo


Ethernet Shield.

 Firmata: Permite comunicarse con otros lenguajes de


programación por medio del uso de un protocolo.

 SoftwareSerial: Permite la comunicación serial de cualquier pin


digital.

 WiFI: para conectarse a internet usando el escudo Arduino WiFi

 Wire: Esta librería permite enviar y recibir datos a través de una


red de dispositivos

Aplicación Móvil: El diseño consta de una solución por medio de 2


proyectos de desarrollo.

Capa de presentación. Desarrollada a través de la interfaz Android


Studio (IDE), en esta se configuran botones de control ON/OFF para el
control de cargas de los aires acondicionados.

Capa Lógica. Analiza los datos enviados al ejecutarse un método y


aplica la lógica requerida, luego envía estos datos ya preparados a la
capa arduino para ser procesados. Desarrollada por medio de la
interfaz Android Studio (IDE) y lenguaje de programación JAVA,
establece el método de conexión por medio de la dirección IP y el
puerto de escucha de la capa Arduino.
5.3. Pruebas del sistema

Ilustración 1

Como podemos ver en la ilustración 1se refleja la interfaz de la


aplicación donde aún no hay dispositivos conectados.

Prueba de lecturas del dispositivo conectado a la aplicación


móvil

Ilustración 2
Como se observa en la ilustración 2 la conexión entre el dispositivo y la
aplicación Android fue exitosa no presento mayores inconvenientes.

Pruebas de encendido y apagado de los aires

Ilustración 3

En esta prueba hicimos el encendido del aire conectado a la aplicación


Android donde el encendido del aire conectado fue exitoso.
Prueba temporizador de apagado del aire conectado

En esta prueba le programamos un tiempo de apagado de 3 minutos al


aire conectado a la aplicación móvil, los resultados obtenidos fueron
positivos.
6. Conclusiones

 El desarrollo del prototipo domótico por medio de la plataforma


arduino para el control de cargas tuvo resultados exitoso, ya que
las pruebas realizadas en el colegio a través del arduino
garantizaron su correcta operación, debido a las pruebas
realizadas a Arduino a través de dispositivos móviles con sistema
operativo Android.

 La recepción de señales enviadas desde el dispositivo al prototipo


mediante el módulo WIFI fue exitoso.

 El desarrollo de la aplicación móvil, se ejecutó de manera exitosa


en un Smartphone.

 El sistema para el control de cargas por medio de la plataforma


arduino desarrollado fue un éxito ya que todas las señales
enviadas desde el dispositivo mediante el módulo WIFI,
respondieron satisfactoriamente

Podemos concluir que con el desarrollo de este proyecto nos permitió


aplicar los conocimientos adquiridos durante el proceso de formación
de nuestra carrera, de otra manera también nos sirvió para enriquecer
nuestros conocimientos tales como el desarrollo en Android,
interactuar con arduino y ampliar conocimientos en cuanto a
programación.
7. Recomendaciones

Se recomienda que se realicen mantenimientos preventivos para evitar


cualquier desorden en las funciones programadas del sistema.

Para unas mejores a futuro y mejor funcionalidad del prototipo se


puede utilizar, El módulo de relé de 4 canales para cargas de mayor
potencia, acerca de arduino lo más directo es comprar las placas
arduino oficiales y no placas falsas. Para una mejor comunicación de
datos se puede utilizar la Versión mejorada ESP-01 ESP8266.

8. Trabajos Futuros

Después de finalizar el desarrollo del sistema automático de control de


cargas se podrán realizar más diseño acerca de su implementación,
utilizando otras tecnologías de hardware de preferencia libre y código
abierto respectivamente. Es decir, en lo que concierne el
funcionamiento del sistema automático de cargas.

Por la parte hardware se puede seguir trabajando en añadir nuevos


elementos de entrada al prototipo, tales como sensores, detectores
magnéticos de puertas, así como de nuevos elementos de salida como
apertura automática de alarmas. También se considera que se puede
seguir ahondando en el diseño de las aplicaciones o Apps para control
remoto para conseguir el control completo del prototipo, es decir,
implementando todas las funciones que se pueden realizar en dicho
prototipo. Se podría desarrollar un mayor número de módulos
integrados con un solo servidor, optimizando recursos y mejorando la
gestión. Además, se puede utilizar hardware de mayor costo para
controlar automatizaciones básicas e independientes utilizando los
controles inalámbricos para realizar aplicaciones con mayor autonomía
y comodidad para el usuario.

Por parte del software se puede llegar a desarrollar una aplicación que
pudiera controlar los aires acondicionados a través de una página web
o utilizando dispositivos como teléfonos inalámbricos y tecnología de
comunicación inalámbrica de larga distancia.
9. Bibliografía

[1] La domótica sigue ganando terreno. (30 de Enero de 2010). EL


Tiempo.

[2] Álvaro Hernán Alarcón López, Geyni Arias Vargas, Carlos Julio
Cadena Sarasty, Viviana Muñoz Álvarez. (2016). “Estudio y diseño de
un sistema domótico utilizando dispositivos móviles para mejorar la
accesibilidad de las personas discapacitadas.” CORHUILA: Corporación
Universitaria del Huila

[3] Valentina Aguirre Muñoz. (2013). “Prototipo de sistema de control


domotico por medio de dispositivo Android, utilizando processiing.”
Manizales

[4] Android studio. Obtenido de Andorid: http://www.android.com/

[5] Arduino. (s.f.). Obtenido de Arduino: http://arduino.cc/

[6] Oscar Sanclemente Carretero. (20 de Julio 2016). “casa domótica


con arduino.” VALENCIA.
10. ANEXOS

A. Manual de usuario

Introducción

La aplicación Móvil fue diseña para ser una herramienta fácil y sencilla
de manipular y con una interfaz amigable para el usuario. Se utilizó el
IDE de Android estudio para su desarrollo, La App solo puede ser
instalada por versiones de Android 7 en adelante.

Consta con un temporizador de apagado y un reconocimiento de ip la


interfaz proporciona funciones de encendido y de apagados estos
pueden ser ya sea individual o por varios dependiendo el número de
dispositivos conectados.

Entrando a la aplicación

Una vez descargada e instalada la aplicación se mostrará el logo de la


institución militar rojas pinillas como se puede observar en la
ilustración 1.

Ilustración 4
Interfaz de la aplicación.
Esta será la interfaz de la aplicación móvil como se puede ver en la
ilustración 5

Reconocimiento de IP

Logo institucional

Botón de Apagado

Temporizador

Botón de encendido

Ilustración 5
Componentes de la aplicación

La Aplicación cuenta con varios componentes los cuales son:

Botón de encendido: Este Botón Sirve para


proceder con la funcionalidad de encendido de
los aparatos eléctricos (Aires acondicionado)

Botón de apagado: Este Botón cumple la


funcionalidad de interrumpir la corriente y
proceder al apagado del aire en sí.

Temporizador: Es el encargado de establecer


un tiempo en Minutos para cortar la energía y
proceder con el apagado del aire.
Funcionalidad.
Una vez conectado una red wifi la aplicación móvil reconocerá todos
los módulos que están conectados a los aires en la pantalla aparecerá
los botones de apagado como se puede apreciar en la ilustración 2.

Al hundir el botón rojo de


apagado pasará a verde y se
encenderá el aire como se
puede ver en la ilustración 3.
Al lado aparecerá el
temporizador por si se quiere
programar un determinado
tiempo para a pagarse.

Ilustración 6

Ilustración 7
También la aplicación puede encender varios aires al mismo tiempo
solo hay que hundir todos los botones que estén en rojo y pasarlos a
verde y viceversa.

Al hundir el temporizador nos


llevara a la configuración del
temporizador véase en la
ilustración 9

Ilustración 8

Los números digitados se


leen como minutos y tiene
que ser números enteros
Ilustración 9 para el tiempo de apagado
y encendido.

En la parte inferior de la aplicación esta la


opción de prender, apagar y la del
Ilustración 10 temporizador si se utiliza estas funciones se
prender todos los aires de forma remota
como también de apagar y así mismo
funciona el temporizador programándose
para todos los aires que tengan el dispositivo
conectado. de esta forma se tiene un control
mayor y reduciendo el trabajo.
B. Manual del sistema.

Introducción
El sistema de automatización y control de energía es implementado
para dar una solución piloto y además facilitar el control de aparatos
eléctricos basándose en pequeños módulos, utilizando la tecnología
que tenemos para proporcionar un bien que es el ahorro de energía
eléctrica ya que hoy en día el ahorro de energía es una de las grandes
necesidades de existen en nuestro medio.

Esta guía contiene todo lo relacionado con todos los componentes más
importantes del sistema de desarrollo.

El sistema consta con de 6 piezas fundamentales por un lado está la


placa de Arduino con un módulo wifi ESP8266 que es la encargada de
controlar la conexión del dispositivo con la aplicación por otra parte un
relé de 12 v que controla la corriente y otro relé de 5 v que controla el
encendido del relé de 12 v, un adaptador de 12 v para alimentar el
Arduino y energizar los relés, y como soporte una baquelita.

Arduino uno: Nos proporciona


un entorno de desarrollo sencillo
al realizar el proyecto ya que se
puede crear elementos
autónomos conectándose a los
dispositivos e interactuando
tanto con el hardware como con
el software
Relé de 12 V: Este relé
maneja la corriente más alta.

Módulo inalámbrico WIFI ESP8266: Es el


encargado de establecer la conexión entre
el dispositivo y la aplicación móvil.

Relé de 5 V: Este relé maneja el encendido del


relé de 12 V ya que la corriente produce una
fuerza electromotriz cuando varia la corriente
que pasa y produce inductancia y molesta tanto
al circuito como el arduino.

Adaptador de 12 V: Usado para la alimentar el


Arduino.
C. Evidencias fotográficas
D. Códigos fuente.

Codigo fuente de la aplicación


E. Codigo Fuente del Modulo 1.
String RED = "510828657477";
String PSW = "638575715268";
String IPServidor = "192.168.1.9";
long timeON = 0;
long timeOFF = 0;
long timeAct = 0;
long timeState = 0;

void setup() {
//Serial42.begin(9600);
Serial.begin(9600);
pinMode(13,OUTPUT);
pinMode(3,OUTPUT);
digitalWrite(3,HIGH);
for(int i=0; i<16; i++){
digitalWrite(13, !digitalRead(13));
delay(300);
//if(readESP().length() > 0){break;};
}
readESP8266();
Serial.println("AT+CWJAP=\"" + RED + "\",\"" + PSW + "\"");
for(int i=0; i<100; i++){
digitalWrite(13, !digitalRead(13));
delay(100);
}
//waitRequest("Linked", "CONNECT");
}

void loop() {
String msg = "";
if(timeState == 0 || timeState+5000 < millis()){
boolean state = false;
while(!state){
Serial.println("AT+CIPSTART=\"TCP\",\"" + IPServidor +
"\",5556");
String str = "";
for(int i=0; i<12; i++){
msg = readESP8266();
if(msg.indexOf("Linked") != -1 || msg.indexOf("CONNECT") != -
1){
//Serial42.println("CONECTADO");
state = true;
digitalWrite(13, LOW);
break;
}
digitalWrite(13, !digitalRead(13));
delay(150);
}
digitalWrite(13, LOW);
delay(1000);
}
timeState = millis();
}

timeAct = millis(); // Tiempo corrido


msg += readESP8266();
//String msg = readESP8266();
if(msg.indexOf("+IPD,")!=-1){
String strRead =
msg.substring(msg.indexOf(":")+1,msg.indexOf("\nOK")-1);
////Serial42.println("valor -" + strRead + "-" +
strRead.length());
if(strRead.length() == 1){
if(strRead == "A"){
if(digitalRead(3) == HIGH){
sendESP8266("A");
}else{
sendESP8266("a");
}
digitalWrite(3, !digitalRead(3));
}else if(strRead == "B"){
sendESP8266("a");
digitalWrite(3, HIGH);
}else if(strRead == "C"){
sendESP8266("A");
digitalWrite(3, LOW);
}
}else{
if(strRead.indexOf("Off") != -1){
//Serial42.println("valor -" +
strRead.substring(strRead.indexOf("Off")+3) + "-");
timeOFF = timeAct +
(strRead.substring(strRead.indexOf("Off")+3).toInt() * 60000);
}else if(strRead.indexOf("On") != -1){
//Serial42.println("valor -" +
strRead.substring(strRead.indexOf("On")+2) + "-");
timeON = timeAct +
(strRead.substring(strRead.indexOf("On")+2).toInt() * 60000);
}
}
}

if(timeOFF != 0 && (timeAct >= timeOFF)){


sendESP8266("a");
digitalWrite(3, HIGH);
timeOFF = 0;
}

if(timeON != 0 && (timeAct >= timeON)){


sendESP8266("A");
digitalWrite(3, LOW);
timeON = 0;
}
}

String waitRequest(String request, String request2){


String str = "";
while(true){
str = readESP8266();
if(str.indexOf(request) != -1 || str.indexOf(request2) != -1){
break;
}
}
return str;
}

void configESP(){
Serial.print("AT");
delay(1000);
readESP8266();
Serial.print("AT+RST");
delay(5000);
readESP8266();
Serial.print("AT+CWMODE=1");
delay(1000);
readESP8266();
Serial.print("AT+CIPMUX=0");
delay(1000);
readESP8266();
}

String readESP8266(){
String data = "";
while(Serial.available()){
char c = Serial.read();
//Serial42.print(c);
data += c;
delay(2);
}
return data;
}

void sendESP8266(String msg){


Serial.println("AT+CIPSEND=1");
waitRequest(">", "");
Serial.println(msg);
waitRequest("OK", "");
}

F. Código fuente del Modulo 2.


String RED = "510828657477";
String PSW = "638575715268";
String IPServidor = "192.168.1.3";

long timeON = 0;
long timeOFF = 0;
long timeAct = 0;
long timeState = 0;

void setup() {
//Serial42.begin(9600);
Serial.begin(9600);
pinMode(13,OUTPUT);
pinMode(3,OUTPUT);
digitalWrite(3,LOW);
for(int i=0; i<16; i++){
digitalWrite(13, !digitalRead(13));
delay(300);
//if(readESP().length() > 0){break;};
}
readESP8266();
Serial.println("AT+CWJAP=\"" + RED + "\",\"" + PSW + "\"");
for(int i=0; i<100; i++){
digitalWrite(13, !digitalRead(13));
delay(100);
}
//waitRequest("Linked", "CONNECT");
}

void loop() {
String msg = "";
if(timeState == 0 || timeState+5000 < millis()){
boolean state = false;
while(!state){
Serial.println("AT+CIPSTART=\"TCP\",\"" + IPServidor +
"\",5556");
String str = "";
for(int i=0; i<12; i++){
msg = readESP8266();
if(msg.indexOf("Linked") != -1 || msg.indexOf("CONNECT") != -
1){
//Serial42.println("CONECTADO");
state = true;
digitalWrite(13, HIGH);
break;
}
digitalWrite(13, !digitalRead(13));
delay(150);
}
digitalWrite(13, LOW);
delay(1000);
}
timeState = millis();
}

timeAct = millis(); // Tiempo corrido


msg += readESP8266();
//String msg = readESP8266();
if(msg.indexOf("+IPD,")!=-1){
String strRead =
msg.substring(msg.indexOf(":")+1,msg.indexOf("\nOK")-1);
////Serial42.println("valor -" + strRead + "-" +
strRead.length());
if(strRead.length() == 1){
if(strRead == "A"){
if(digitalRead(3) == LOW){
sendESP8266("A");
}else{
sendESP8266("a");
}
digitalWrite(3, !digitalRead(3));
}else if(strRead == "B"){
sendESP8266("a");
digitalWrite(3, LOW);
}else if(strRead == "C"){
sendESP8266("A");
digitalWrite(3, HIGH);
}
}else{
if(strRead.indexOf("Off") != -1){
//Serial42.println("valor -" +
strRead.substring(strRead.indexOf("Off")+3) + "-");
timeOFF = timeAct +
(strRead.substring(strRead.indexOf("Off")+3).toInt() * 60000);
}else if(strRead.indexOf("On") != -1){
//Serial42.println("valor -" +
strRead.substring(strRead.indexOf("On")+2) + "-");
timeON = timeAct +
(strRead.substring(strRead.indexOf("On")+2).toInt() * 60000);
}
}
}

if(timeOFF != 0 && (timeAct >= timeOFF)){


sendESP8266("a");
digitalWrite(3, LOW);
timeOFF = 0;
}

if(timeON != 0 && (timeAct >= timeON)){


sendESP8266("A");
digitalWrite(3, HIGH);
timeON = 0;
}
}

String waitRequest(String request, String request2){


String str = "";
while(true){
str = readESP8266();
if(str.indexOf(request) != -1 || str.indexOf(request2) != -1){
break;
}
}
return str;
}

void configESP(){
Serial.print("AT");
delay(1000);
readESP8266();
Serial.print("AT+RST");
delay(5000);
readESP8266();
Serial.print("AT+CWMODE=1");
delay(1000);
readESP8266();
Serial.print("AT+CIPMUX=0");
delay(1000);
readESP8266();
}
String readESP8266(){
String data = "";
while(Serial.available()){
char c = Serial.read();
//Serial42.print(c);
data += c;
delay(2);
}
return data;
}

void sendESP8266(String msg){


Serial.println("AT+CIPSEND=1");
waitRequest(">", "");
Serial.println(msg);
waitRequest("OK", "");
}

También podría gustarte