SlideShare a Scribd company logo
1 of 27
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

More Related Content

Similar to WebDom

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ógicasGerardo 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
 
Lista de precios 18 dic.
Lista de precios 18 dic.Lista de precios 18 dic.
Lista de precios 18 dic.DarkrizDeath PB
 
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 DeportivosAdrian Alonso Vega
 
atSistemas - Presentacion Hybreed
atSistemas - Presentacion HybreedatSistemas - Presentacion Hybreed
atSistemas - Presentacion HybreedJuanjo 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
 
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_13yolss12
 
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 redesDUnia 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 AndroidEduardo Lazo Cisneros
 
DESARROLLO RAPIDO DE APLICACIONES WEB
DESARROLLO RAPIDO DE APLICACIONES WEBDESARROLLO RAPIDO DE APLICACIONES WEB
DESARROLLO RAPIDO DE APLICACIONES WEBJavier Condori Flores
 
Plataformas de gestion de red
Plataformas de gestion de redPlataformas de gestion de red
Plataformas de gestion de redLuis Yallerco
 

Similar to 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
 

Recently uploaded

trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
Herramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptxHerramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptxRogerPrieto3
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 

Recently uploaded (15)

trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
Herramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptxHerramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptx
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 

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