SlideShare una empresa de Scribd logo
Víctor Enrique Elena Redondo
           12 de marzo de 2013
Contenido

 1. Introducción
 2. Domótica y Modbus
 3. Objetivos
 4. Producto software
 5. Herramientas utilizadas
 6. Aspectos relevantes del desarrollo
 7. Demostración
 8. Conclusiones y líneas futuras
 9. Preguntas
                                         2
1. Introducción

• Aplicación web para control domótico ¿Qué
  es?

• ¿Cómo surge la idea?

• Empresa: freeDôm Ingeniería Domótica y
  Telecomunicaciones, empresa especializada
  en proyectos de automatización y control de
  instalaciones en viviendas y edificios.

                                              3
2. Domótica (I)
• Proviene de la unión de domus: casa (latín) y
  automática: que funciona por sí sola (griego).
• Automatización de la vivienda, mediante
  control centralizado y/o remoto de
  dispositivos.

                             Ahorro energético
                             Incremento de la
                              comodidad
                             Protección patrimonial
                             Comunicaciones

                                                   4
2. Domótica (II)
 Dispositivos
  Controladores      PLC
  Actuadores                (750-849)
  Sensores
 Interconexión entre ellos    BUS DOMÓTICO

 Arquitectura
  Centralizada
  Descentralizada
  Distribuida
                                             5
2. Modbus (I)
• Protocolo de comunicaciones (nivel 7 - Modelo
  OSI) basado en arquitectura maestro/esclavo.
• Características:
  – Estándar de facto en la industria.
  – Es público.
  – Su implementación no presenta grandes
    complicaciones.
  – Maneja bloques de datos sin suponer restricciones.




                                                         6
2. Modbus (III)
Modbus/TCP
• Variante RTU que funciona en Ethernet
• Permite comunicación orientada a conexión
  entre dispositivos compatibles
• Independiente del medio de transmisión de
  datos




                                              7
2. Modbus (IV)
Trama Modbus/TCP




             Cabecera MBAP




                             8
3. Objetivos de software



    Telecontrol y telemetría
    Seguridad
    Automatización de tareas
    Gestión energética
    Futura reutilización y
     evolución del sistema


                                9
3. Objetivos personales

                   • Abordar un proyecto de amplias
                     características.
                   • Unir dos interesantes materias:
                     domótica e informática.
                   • Aprender el protocolo Modbus.


• Mantener contacto con el mundo laboral.
• Estudiar diferentes lenguajes de
  programación, frameworks, técnicas y herramientas.
• Investigar y estudiar nuevos conceptos: Single Page
  Application, Responsive Web Design y AJAX.
                                                        10
4. Producto software (I)




(PFC)




                           11
4. Producto software (II)
              iHôme




                            12
4. Producto software (III)




 Características y funcionalidades de la app

                                               13
4. Producto software (IV)
• Óptima estandarización en la visualización y ejecución
  en el cliente.


                                      Navegadores

     9+


                             Dispositivos (Responsive
                                          Web Design)



                                                           14
4. Producto software (V)
• Control de la iluminación, calefacción, persianas y puerta
  del garaje.
• El contenido de la aplicación se gestiona en el navegador
  de forma dinámica, sin tener que recargar la página (SPA).
• Gráficas a partir de históricos de mediciones de
  temperatura y consumo.
• Sistema de envío de correos.
• Sistema de autenticación de usuarios fiable y seguro.
• Programaciones de control de la automatización.
• Apartado de ayuda.
• Panel de control para integrar una alarma.
                                                         15
4. Producto software (VI)
• Visualización de la maqueta a través de una cámara IP
  instalada en la oficina (VIVOTEK FD7131).


• Pasarela para integrar otros protocolos de forma sencilla.
• Optimización: caché y compresión de archivos js y css.
• Versión demostración.
• Control de peticiones AJAX si el usuario cambia de
  pestaña o ventana de la aplicación.
• Configuración sencilla para adaptar a otras instalaciones.
• Permite comunicarse con varios esclavos (configurando
  un archivo XML).
                                                          16
4. Producto software (VII)
• Orientada a la reutilización y futura evolución.
• Adaptable para cada tipo de usuario. Es sencillo
  construir una versión personalizada para cada supuesto
  cliente o cometido.
• Formulario para enviar un correo electrónico al autor.




                                                       17
5. Herramientas




                  18
6. Desarrollo (I)
Funciones Modbus empleadas para
acceso a datos

 • Leer estado de salidas discretas o coils. (Read Coils)
 • Escribir múltiples salidas discretas o coils. (Write
   Multiple Coils)
 • Leer múltiples registros. (Read Multiple Registers)
 • Escribir múltiples registros. (Write Multiple Registers)


 Coils         1 bit       Registros           16 bits
                                                          19
6. Desarrollo (II)
   Tabla de direcciones Modbus
   utilizadas




                                 20
6. Desarrollo (III)
• Patrones de diseño:
   – Abstract Factory con Factory Method : integrar de manera
     eficiente otros drivers de diferentes protocolos o otros
     mecanismos de comunicación.



   – Modelo-Vista-Controlador: parte de la aplicación que se ejecuta
     en el servidor (PHP).

   – Active Record proporcionado por el framework Codeigniter para
     realizar consultas a la base de datos.



                                                                       21
6. Desarrollo (IV)
• Javascript no provee sistema de hilos ni procesos.
  Simulación de hilos para mantener el control en tiempo
  real mediante AJAX. setInterval()
• Las programaciones se han realizado basadas en
  cronjobs, propios de sistemas Unix.
• Arduo trabajo de diseño web.



• Proceso Unificado
• Hitos


                                                           22
5. Demostración




      http://awcd.freedomingenieria.com/webdom

                                                 23
7. Conclusiones: Resultado
Los objetivos técnicos marcados en el inicio se han
alcanzado:
• Controlar la automatización en tiempo real.
• Posibilidad de realizar programaciones.
• Generar gráficas a partir de mediciones.
• Adaptar un driver que utilice el protocolo Modbus.
• Desarrollar un sistema de autenticación en la app.
• Permitir el envío de emails.
• Construir una interfaz vistosa, moderna y adaptable
Los requisitos han sido suplidos:
• Escalabilidad, modularidad y adaptabilidad
  orientados a la reutilización.
• Rapidez, sencillez y usabilidad de la interfaz.
                                                        24
7. Líneas futuras

                     • Backend con interfaz de
                       usuario para el administrador.
                     • Añadir otros drivers.
                     • Envío de emails al usuario para
                       registrar acciones.


  • Principio de CMS (Content Management System).
    Construir versiones de la app adaptadas a cada tipo
    de instalación domótica.
  • Grabar vídeos de la cámara instalada en la vivienda.

                                                       25
7. Líneas futuras

• Configuración de la apariencia de la interfaz.
• Mecanismo de comunicación distinto a AJAX.
  websockets de HTML5.
• Reutilización del código de Single Page Application para
  futuros proyectos web.
• Adaptación a una app metro de Windows 8




                                                         26
¡MUCHAS GRACIAS!

          Víctor Enrique Elena Redondo
                     12 de marzo de 2013

Más contenido relacionado

Similar a WebDom

Arquitectura web
Arquitectura webArquitectura web
Arquitectura web
MiguelDz Diaz
 
Wed 2.0 y computacion en la nube.
Wed 2.0 y computacion en la nube.Wed 2.0 y computacion en la nube.
Wed 2.0 y computacion en la nube.
jnco11
 
herramientas tecnológicas
herramientas tecnológicasherramientas tecnológicas
herramientas tecnológicas
Gerardo Linares
 
Hybreed. Plataforma de desarrollo de aplicaciones móviles híbridas. Descripci...
Hybreed. Plataforma de desarrollo de aplicaciones móviles híbridas. Descripci...Hybreed. Plataforma de desarrollo de aplicaciones móviles híbridas. Descripci...
Hybreed. Plataforma de desarrollo de aplicaciones móviles híbridas. Descripci...
atSistemas
 
Scada
ScadaScada
Lista de precios 18 dic.
Lista de precios 18 dic.Lista de precios 18 dic.
Lista de precios 18 dic.
DarkrizDeath PB
 
Scada
ScadaScada
Desarrollo de una aplicación Web para organizar Eventos Deportivos
Desarrollo de una aplicación Web para organizar Eventos DeportivosDesarrollo de una aplicación Web para organizar Eventos Deportivos
Desarrollo de una aplicación Web para organizar Eventos Deportivos
Adrian Alonso Vega
 
Desarrollo de aplicaciones AJAX con GWT
Desarrollo de aplicaciones AJAX con GWTDesarrollo de aplicaciones AJAX con GWT
Desarrollo de aplicaciones AJAX con GWT
Ingenieria Informatica Empresarial
 
atSistemas - Presentacion Hybreed
atSistemas - Presentacion HybreedatSistemas - Presentacion Hybreed
atSistemas - Presentacion Hybreed
Juanjo Sánchez
 
cloudcomputing: Cloud Computing: ¿ una opción viable para su negocio?
cloudcomputing: Cloud Computing: ¿ una opción viable para su negocio?cloudcomputing: Cloud Computing: ¿ una opción viable para su negocio?
cloudcomputing: Cloud Computing: ¿ una opción viable para su negocio?
cloudbex
 
18188206 sistema-scada
18188206 sistema-scada18188206 sistema-scada
18188206 sistema-scada
Universidad Telesup
 
Líneas de Investigación 2008
Líneas de Investigación 2008Líneas de Investigación 2008
Líneas de Investigación 2008
Juan Carlos Olivares Rojas
 
Web camp el_poder_de_los_cms_umbraco_13_04_13
Web camp el_poder_de_los_cms_umbraco_13_04_13Web camp el_poder_de_los_cms_umbraco_13_04_13
Web camp el_poder_de_los_cms_umbraco_13_04_13
yolss12
 
7-Unidad 2: Diseños de Vista-2.3 Introducción Web Services-Desarrollo Ejemplos
7-Unidad 2: Diseños de Vista-2.3 Introducción Web Services-Desarrollo Ejemplos 7-Unidad 2: Diseños de Vista-2.3 Introducción Web Services-Desarrollo Ejemplos
7-Unidad 2: Diseños de Vista-2.3 Introducción Web Services-Desarrollo Ejemplos
Luis Fernando Aguas Bucheli
 
Arquitectura de redes
Arquitectura de redesArquitectura de redes
Arquitectura de redes
DUnia Colome
 
Introducción a la Plataforma para Móviles Android
Introducción a la Plataforma  para Móviles AndroidIntroducción a la Plataforma  para Móviles Android
Introducción a la Plataforma para Móviles Android
Eduardo Lazo Cisneros
 
DESARROLLO RAPIDO DE APLICACIONES WEB
DESARROLLO RAPIDO DE APLICACIONES WEBDESARROLLO RAPIDO DE APLICACIONES WEB
DESARROLLO RAPIDO DE APLICACIONES WEB
Javier Condori Flores
 
Olivares
OlivaresOlivares
Plataformas de gestion de red
Plataformas de gestion de redPlataformas de gestion de red
Plataformas de gestion de red
Luis Yallerco
 

Similar a WebDom (20)

Arquitectura web
Arquitectura webArquitectura web
Arquitectura web
 
Wed 2.0 y computacion en la nube.
Wed 2.0 y computacion en la nube.Wed 2.0 y computacion en la nube.
Wed 2.0 y computacion en la nube.
 
herramientas tecnológicas
herramientas tecnológicasherramientas tecnológicas
herramientas tecnológicas
 
Hybreed. Plataforma de desarrollo de aplicaciones móviles híbridas. Descripci...
Hybreed. Plataforma de desarrollo de aplicaciones móviles híbridas. Descripci...Hybreed. Plataforma de desarrollo de aplicaciones móviles híbridas. Descripci...
Hybreed. Plataforma de desarrollo de aplicaciones móviles híbridas. Descripci...
 
Scada
ScadaScada
Scada
 
Lista de precios 18 dic.
Lista de precios 18 dic.Lista de precios 18 dic.
Lista de precios 18 dic.
 
Scada
ScadaScada
Scada
 
Desarrollo de una aplicación Web para organizar Eventos Deportivos
Desarrollo de una aplicación Web para organizar Eventos DeportivosDesarrollo de una aplicación Web para organizar Eventos Deportivos
Desarrollo de una aplicación Web para organizar Eventos Deportivos
 
Desarrollo de aplicaciones AJAX con GWT
Desarrollo de aplicaciones AJAX con GWTDesarrollo de aplicaciones AJAX con GWT
Desarrollo de aplicaciones AJAX con GWT
 
atSistemas - Presentacion Hybreed
atSistemas - Presentacion HybreedatSistemas - Presentacion Hybreed
atSistemas - Presentacion Hybreed
 
cloudcomputing: Cloud Computing: ¿ una opción viable para su negocio?
cloudcomputing: Cloud Computing: ¿ una opción viable para su negocio?cloudcomputing: Cloud Computing: ¿ una opción viable para su negocio?
cloudcomputing: Cloud Computing: ¿ una opción viable para su negocio?
 
18188206 sistema-scada
18188206 sistema-scada18188206 sistema-scada
18188206 sistema-scada
 
Líneas de Investigación 2008
Líneas de Investigación 2008Líneas de Investigación 2008
Líneas de Investigación 2008
 
Web camp el_poder_de_los_cms_umbraco_13_04_13
Web camp el_poder_de_los_cms_umbraco_13_04_13Web camp el_poder_de_los_cms_umbraco_13_04_13
Web camp el_poder_de_los_cms_umbraco_13_04_13
 
7-Unidad 2: Diseños de Vista-2.3 Introducción Web Services-Desarrollo Ejemplos
7-Unidad 2: Diseños de Vista-2.3 Introducción Web Services-Desarrollo Ejemplos 7-Unidad 2: Diseños de Vista-2.3 Introducción Web Services-Desarrollo Ejemplos
7-Unidad 2: Diseños de Vista-2.3 Introducción Web Services-Desarrollo Ejemplos
 
Arquitectura de redes
Arquitectura de redesArquitectura de redes
Arquitectura de redes
 
Introducción a la Plataforma para Móviles Android
Introducción a la Plataforma  para Móviles AndroidIntroducción a la Plataforma  para Móviles Android
Introducción a la Plataforma para Móviles Android
 
DESARROLLO RAPIDO DE APLICACIONES WEB
DESARROLLO RAPIDO DE APLICACIONES WEBDESARROLLO RAPIDO DE APLICACIONES WEB
DESARROLLO RAPIDO DE APLICACIONES WEB
 
Olivares
OlivaresOlivares
Olivares
 
Plataformas de gestion de red
Plataformas de gestion de redPlataformas de gestion de red
Plataformas de gestion de red
 

Último

Manual de Soporte y mantenimiento de equipo de cómputos
Manual de Soporte y mantenimiento de equipo de cómputosManual de Soporte y mantenimiento de equipo de cómputos
Manual de Soporte y mantenimiento de equipo de cómputos
cbtechchihuahua
 
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial ValenciaCatalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
AMADO SALVADOR
 
TIC en educacion.rtf.docxlolololololololo
TIC en educacion.rtf.docxlolololololololoTIC en educacion.rtf.docxlolololololololo
TIC en educacion.rtf.docxlolololololololo
KukiiSanchez
 
Informació Projecte Iniciativa TIC SOPRA STERIA.pdf
Informació Projecte Iniciativa TIC SOPRA STERIA.pdfInformació Projecte Iniciativa TIC SOPRA STERIA.pdf
Informació Projecte Iniciativa TIC SOPRA STERIA.pdf
Festibity
 
IA en entornos rurales aplicada a la viticultura
IA en entornos rurales aplicada a la viticulturaIA en entornos rurales aplicada a la viticultura
IA en entornos rurales aplicada a la viticultura
Miguel Rebollo
 
TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
bendezuperezjimena
 
mantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptxmantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptx
MiguelAtencio10
 
Gabinete, puertos y dispositivos que se conectan al case
Gabinete,  puertos y  dispositivos que se conectan al caseGabinete,  puertos y  dispositivos que se conectan al case
Gabinete, puertos y dispositivos que se conectan al case
JuanaNT7
 
Computacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajasComputacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajas
sofiahuarancabellido
 
SISTESIS RETO4 Grupo4 co-creadores .ppsx
SISTESIS RETO4 Grupo4 co-creadores .ppsxSISTESIS RETO4 Grupo4 co-creadores .ppsx
SISTESIS RETO4 Grupo4 co-creadores .ppsx
tamarita881
 
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdfProjecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Festibity
 
Inteligencia Artificial
Inteligencia ArtificialInteligencia Artificial
Inteligencia Artificial
YashiraPaye
 
Catalogo General Electrodomesticos Teka Distribuidor Oficial Amado Salvador V...
Catalogo General Electrodomesticos Teka Distribuidor Oficial Amado Salvador V...Catalogo General Electrodomesticos Teka Distribuidor Oficial Amado Salvador V...
Catalogo General Electrodomesticos Teka Distribuidor Oficial Amado Salvador V...
AMADO SALVADOR
 
Refrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y ForzadoRefrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y Forzado
NicandroMartinez2
 
Sitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajasSitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajas
paulroyal74
 
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANOREVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
gisellearanguren1
 
Nuevos tiempos, nuevos espacios.docxdsdsad
Nuevos tiempos, nuevos espacios.docxdsdsadNuevos tiempos, nuevos espacios.docxdsdsad
Nuevos tiempos, nuevos espacios.docxdsdsad
larapalaciosmonzon28
 
Informació Projecte Iniciativa TIC HPE.pdf
Informació Projecte Iniciativa TIC HPE.pdfInformació Projecte Iniciativa TIC HPE.pdf
Informació Projecte Iniciativa TIC HPE.pdf
Festibity
 
Actividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdfActividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdf
NajwaNimri1
 
computacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADOcomputacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADO
YaniEscobar2
 

Último (20)

Manual de Soporte y mantenimiento de equipo de cómputos
Manual de Soporte y mantenimiento de equipo de cómputosManual de Soporte y mantenimiento de equipo de cómputos
Manual de Soporte y mantenimiento de equipo de cómputos
 
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial ValenciaCatalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
 
TIC en educacion.rtf.docxlolololololololo
TIC en educacion.rtf.docxlolololololololoTIC en educacion.rtf.docxlolololololololo
TIC en educacion.rtf.docxlolololololololo
 
Informació Projecte Iniciativa TIC SOPRA STERIA.pdf
Informació Projecte Iniciativa TIC SOPRA STERIA.pdfInformació Projecte Iniciativa TIC SOPRA STERIA.pdf
Informació Projecte Iniciativa TIC SOPRA STERIA.pdf
 
IA en entornos rurales aplicada a la viticultura
IA en entornos rurales aplicada a la viticulturaIA en entornos rurales aplicada a la viticultura
IA en entornos rurales aplicada a la viticultura
 
TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
 
mantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptxmantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptx
 
Gabinete, puertos y dispositivos que se conectan al case
Gabinete,  puertos y  dispositivos que se conectan al caseGabinete,  puertos y  dispositivos que se conectan al case
Gabinete, puertos y dispositivos que se conectan al case
 
Computacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajasComputacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajas
 
SISTESIS RETO4 Grupo4 co-creadores .ppsx
SISTESIS RETO4 Grupo4 co-creadores .ppsxSISTESIS RETO4 Grupo4 co-creadores .ppsx
SISTESIS RETO4 Grupo4 co-creadores .ppsx
 
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdfProjecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
 
Inteligencia Artificial
Inteligencia ArtificialInteligencia Artificial
Inteligencia Artificial
 
Catalogo General Electrodomesticos Teka Distribuidor Oficial Amado Salvador V...
Catalogo General Electrodomesticos Teka Distribuidor Oficial Amado Salvador V...Catalogo General Electrodomesticos Teka Distribuidor Oficial Amado Salvador V...
Catalogo General Electrodomesticos Teka Distribuidor Oficial Amado Salvador V...
 
Refrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y ForzadoRefrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y Forzado
 
Sitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajasSitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajas
 
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANOREVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
 
Nuevos tiempos, nuevos espacios.docxdsdsad
Nuevos tiempos, nuevos espacios.docxdsdsadNuevos tiempos, nuevos espacios.docxdsdsad
Nuevos tiempos, nuevos espacios.docxdsdsad
 
Informació Projecte Iniciativa TIC HPE.pdf
Informació Projecte Iniciativa TIC HPE.pdfInformació Projecte Iniciativa TIC HPE.pdf
Informació Projecte Iniciativa TIC HPE.pdf
 
Actividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdfActividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdf
 
computacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADOcomputacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADO
 

WebDom

  • 1. Víctor Enrique Elena Redondo 12 de marzo de 2013
  • 2. Contenido 1. Introducción 2. Domótica y Modbus 3. Objetivos 4. Producto software 5. Herramientas utilizadas 6. Aspectos relevantes del desarrollo 7. Demostración 8. Conclusiones y líneas futuras 9. Preguntas 2
  • 3. 1. Introducción • Aplicación web para control domótico ¿Qué es? • ¿Cómo surge la idea? • Empresa: freeDôm Ingeniería Domótica y Telecomunicaciones, empresa especializada en proyectos de automatización y control de instalaciones en viviendas y edificios. 3
  • 4. 2. Domótica (I) • Proviene de la unión de domus: casa (latín) y automática: que funciona por sí sola (griego). • Automatización de la vivienda, mediante control centralizado y/o remoto de dispositivos.  Ahorro energético  Incremento de la comodidad  Protección patrimonial  Comunicaciones 4
  • 5. 2. Domótica (II) Dispositivos  Controladores PLC  Actuadores (750-849)  Sensores Interconexión entre ellos BUS DOMÓTICO Arquitectura  Centralizada  Descentralizada  Distribuida 5
  • 6. 2. Modbus (I) • Protocolo de comunicaciones (nivel 7 - Modelo OSI) basado en arquitectura maestro/esclavo. • Características: – Estándar de facto en la industria. – Es público. – Su implementación no presenta grandes complicaciones. – Maneja bloques de datos sin suponer restricciones. 6
  • 7. 2. Modbus (III) Modbus/TCP • Variante RTU que funciona en Ethernet • Permite comunicación orientada a conexión entre dispositivos compatibles • Independiente del medio de transmisión de datos 7
  • 8. 2. Modbus (IV) Trama Modbus/TCP Cabecera MBAP 8
  • 9. 3. Objetivos de software  Telecontrol y telemetría  Seguridad  Automatización de tareas  Gestión energética  Futura reutilización y evolución del sistema 9
  • 10. 3. Objetivos personales • Abordar un proyecto de amplias características. • Unir dos interesantes materias: domótica e informática. • Aprender el protocolo Modbus. • Mantener contacto con el mundo laboral. • Estudiar diferentes lenguajes de programación, frameworks, técnicas y herramientas. • Investigar y estudiar nuevos conceptos: Single Page Application, Responsive Web Design y AJAX. 10
  • 11. 4. Producto software (I) (PFC) 11
  • 12. 4. Producto software (II) iHôme 12
  • 13. 4. Producto software (III) Características y funcionalidades de la app 13
  • 14. 4. Producto software (IV) • Óptima estandarización en la visualización y ejecución en el cliente. Navegadores 9+ Dispositivos (Responsive Web Design) 14
  • 15. 4. Producto software (V) • Control de la iluminación, calefacción, persianas y puerta del garaje. • El contenido de la aplicación se gestiona en el navegador de forma dinámica, sin tener que recargar la página (SPA). • Gráficas a partir de históricos de mediciones de temperatura y consumo. • Sistema de envío de correos. • Sistema de autenticación de usuarios fiable y seguro. • Programaciones de control de la automatización. • Apartado de ayuda. • Panel de control para integrar una alarma. 15
  • 16. 4. Producto software (VI) • Visualización de la maqueta a través de una cámara IP instalada en la oficina (VIVOTEK FD7131). • Pasarela para integrar otros protocolos de forma sencilla. • Optimización: caché y compresión de archivos js y css. • Versión demostración. • Control de peticiones AJAX si el usuario cambia de pestaña o ventana de la aplicación. • Configuración sencilla para adaptar a otras instalaciones. • Permite comunicarse con varios esclavos (configurando un archivo XML). 16
  • 17. 4. Producto software (VII) • Orientada a la reutilización y futura evolución. • Adaptable para cada tipo de usuario. Es sencillo construir una versión personalizada para cada supuesto cliente o cometido. • Formulario para enviar un correo electrónico al autor. 17
  • 19. 6. Desarrollo (I) Funciones Modbus empleadas para acceso a datos • Leer estado de salidas discretas o coils. (Read Coils) • Escribir múltiples salidas discretas o coils. (Write Multiple Coils) • Leer múltiples registros. (Read Multiple Registers) • Escribir múltiples registros. (Write Multiple Registers) Coils 1 bit Registros 16 bits 19
  • 20. 6. Desarrollo (II) Tabla de direcciones Modbus utilizadas 20
  • 21. 6. Desarrollo (III) • Patrones de diseño: – Abstract Factory con Factory Method : integrar de manera eficiente otros drivers de diferentes protocolos o otros mecanismos de comunicación. – Modelo-Vista-Controlador: parte de la aplicación que se ejecuta en el servidor (PHP). – Active Record proporcionado por el framework Codeigniter para realizar consultas a la base de datos. 21
  • 22. 6. Desarrollo (IV) • Javascript no provee sistema de hilos ni procesos. Simulación de hilos para mantener el control en tiempo real mediante AJAX. setInterval() • Las programaciones se han realizado basadas en cronjobs, propios de sistemas Unix. • Arduo trabajo de diseño web. • Proceso Unificado • Hitos 22
  • 23. 5. Demostración http://awcd.freedomingenieria.com/webdom 23
  • 24. 7. Conclusiones: Resultado Los objetivos técnicos marcados en el inicio se han alcanzado: • Controlar la automatización en tiempo real. • Posibilidad de realizar programaciones. • Generar gráficas a partir de mediciones. • Adaptar un driver que utilice el protocolo Modbus. • Desarrollar un sistema de autenticación en la app. • Permitir el envío de emails. • Construir una interfaz vistosa, moderna y adaptable Los requisitos han sido suplidos: • Escalabilidad, modularidad y adaptabilidad orientados a la reutilización. • Rapidez, sencillez y usabilidad de la interfaz. 24
  • 25. 7. Líneas futuras • Backend con interfaz de usuario para el administrador. • Añadir otros drivers. • Envío de emails al usuario para registrar acciones. • Principio de CMS (Content Management System). Construir versiones de la app adaptadas a cada tipo de instalación domótica. • Grabar vídeos de la cámara instalada en la vivienda. 25
  • 26. 7. Líneas futuras • Configuración de la apariencia de la interfaz. • Mecanismo de comunicación distinto a AJAX. websockets de HTML5. • Reutilización del código de Single Page Application para futuros proyectos web. • Adaptación a una app metro de Windows 8 26
  • 27. ¡MUCHAS GRACIAS! Víctor Enrique Elena Redondo 12 de marzo de 2013