2. Agenda
• Enquadramento
• Sintaxe de descrição de sistemas
domóticos
• Arquitectura WebDomus
• Módulos que constituem a arquitectura
2
3. Enquadramento
• Conceito de sistema domótico
– Aumentar o conforto do utilizador
– Gestão de recursos energéticos
– Automatização de edifícios
• Análise de mercado
– Suporte para um grupo restrito de protocolos
– Interfaces cliente
• Motivação e objectivos do WebDomus
3
4. Sintaxe de descrição
• Necessidade da definição da sintaxe
– Independência do protocolo domótico
– Independência das características do sistema
• Definição da sintaxe de metadados para
descrever:
– Protocolos domóticos
– Tipos de dispositivos
– Sistemas domóticos
4
6. Arquitectura
Web Browser Cliente
Repositório Habitações/Edifícios WebDomus
Dados Módulo Comunicação
Módulo
Módulo Apresentação
Aplicacional
Injector X
Módulo Comunicação Módulo
Comunicação
Comunicação Sistema Módulo WebDomus
Aplicacional
Sistema Domótico
Comunicação
Domótico Acesso a Dados
Injector X
Módulo
Apresentação Repositório de
Dados
6
7. Módulo Aplicacional
• Tecnologia .NET 3.5
• Camada de acesso a dados
– LINQ to SQL
–Definição de objectos de negócio
• Lógica Aplicacional
– Serviços de autenticação e controlo de acessos
– Serviços de execução de comandos
– Serviços de administração do sistema
– Histórico de operações (Audit)
7
8. Módulo Comunicação
• Dividido em duas componentes distintas
– Componente WebDomus (.NET 3.5)
– Componente sistema domótico (.NET Micro 2.5)
• Estabelecimento de um canal de
comunicação seguro entre as
componentes
• Uma única ligação por cada sistema
domótico
• Componente do sistema domótico
constrói a pseudo-trama a entregar ao
8
9. Módulo Comunicação
Fluxo de comunicações do sistema
Sistema Domótico X
Comunicação
WebDomus
Módulo de Apresentação
Módulo
Comunicação Aplicacional
Sistema Domótico
Sistema Domótico Y Acesso a Dados
Browser Browser
Cliente UA Cliente UB
Comunicação
Sistema Domótico UA – Utilizador A
Gestor Wrappers UB – Utilizador B
Repositório de
Pn – Pedido de ordem n
Dados
Rn – Resposta de ordem n
9
10. Módulo Comunicação
Fluxo de comunicações do sistema
Sistema Domótico X
Comunicação
WebDomus
Módulo de Apresentação
Módulo
Comunicação Aplicacional
Sistema Domótico
Sistema Domótico Y Acesso a Dados
Browser Browser
Cliente UA Cliente UB
Comunicação
Sistema Domótico UA – Utilizador A
Gestor Wrappers UB – Utilizador B
Repositório de
Pn – Pedido de ordem n
Dados
Rn – Resposta de ordem n
9
11. Módulo Comunicação
Fluxo de comunicações do sistema
Sistema Domótico X UAP1
Comunicação
WebDomus
Módulo de Apresentação
Módulo
Comunicação Aplicacional
Sistema Domótico
Sistema Domótico Y Acesso a Dados
Browser Browser
Cliente UA Cliente UB
Comunicação
Sistema Domótico UA – Utilizador A
Gestor Wrappers UB – Utilizador B
Repositório de
Pn – Pedido de ordem n
Dados
Rn – Resposta de ordem n
9
12. Módulo Comunicação
Fluxo de comunicações do sistema
Sistema Domótico X UAP1
Comunicação
WebDomus
Módulo de Apresentação
Módulo
Comunicação Aplicacional
Sistema Domótico
<Pedido>
<Endereco>
<Ilha>1</Ilha>
Sistema Domótico Y Acesso a Dados
Browser Browser
<No>3</No> Cliente UA Cliente UB
<App>1</App>
<IdDisp>4</IdDisp>
Comunicação
Sistema Domótico
</Endereco> UA – Utilizador A
Gestor Wrappers UB – Utilizador B
<Comando tipo="ESTADO_ACTUAL“ Repositório de
Pn – Pedido de ordem n
Dados
designacao="POWER"> Rn – Resposta de ordem n
<Codigo>3</Codigo>
<Valor>1</Valor>
</Comando>
</Pedido>
9
13. Módulo Comunicação
Fluxo de comunicações do sistema
Sistema Domótico X P1 UAP1
Comunicação
WebDomus
Módulo de Apresentação
Módulo
Comunicação Aplicacional
Sistema Domótico
Wrapper X
Sistema Domótico Y Acesso a Dados
Browser Browser
Cliente UA Cliente UB
Comunicação
Sistema Domótico UA – Utilizador A
Gestor Wrappers UB – Utilizador B
Repositório de
Pn – Pedido de ordem n
Dados
Rn – Resposta de ordem n
9
14. Módulo Comunicação
Fluxo de comunicações do sistema
Sistema Domótico X P1 UAP1
Comunicação
WebDomus
Módulo de Apresentação
P1 Módulo
Comunicação Aplicacional
Sistema Domótico
Wrapper X
Sistema Domótico Y Acesso a Dados
Browser Browser
Cliente UA Cliente UB
Comunicação
Sistema Domótico UA – Utilizador A
Gestor Wrappers UB – Utilizador B
Repositório de
Pn – Pedido de ordem n
Dados
Rn – Resposta de ordem n
9
15. Módulo Comunicação
Fluxo de comunicações do sistema
Sistema Domótico X P1 UAP1
Comunicação
WebDomus
Módulo de Apresentação
P1 Módulo UAR1
Comunicação Aplicacional
Sistema Domótico R1 R1
Wrapper X
Sistema Domótico Y Acesso a Dados
Browser Browser
Cliente UA Cliente UB
Comunicação
Sistema Domótico UA – Utilizador A
Gestor Wrappers UB – Utilizador B
Repositório de
Pn – Pedido de ordem n
Dados
Rn – Resposta de ordem n
9
16. Módulo Comunicação
Fluxo de comunicações do sistema
Sistema Domótico X P1 UAP1
Comunicação
WebDomus UBP1
P2 Módulo de Apresentação
P1/P Módulo UAR1
2
Comunicação Aplicacional
Sistema Domótico R1/R UBR1
2 R1
Wrapper X
R2
Sistema Domótico Y Acesso a Dados
Browser Browser
Cliente UA Cliente UB
Comunicação
Sistema Domótico UA – Utilizador A
Gestor Wrappers UB – Utilizador B
Repositório de
Pn – Pedido de ordem n
Dados
Rn – Resposta de ordem n
9
17. Módulo Apresentação
• Tecnologia ASP .NET 2.0
• Componente Web Desktop
– Framework ASP .NET AJAX
– Interface de navegação e interacção com sistemas
domóticos
– Interface de administração do sistema WebDomus
10
18. Módulo Apresentação
• Componente Web Mobile
– Mobilizar vs Minimizar
– Utilização de standards para dispositivos móveis
* XHTML Basic 1.1
* CSS Mobile Profile 2.0
11
21. Sumário
• Sintaxe de descrição de sistemas
inteligentes independente do sistema
WebDomus
• Expansibilidade do sistema consequente
da sua modularização
• Desenvolvimentos futuros
– Implementação de injectores
– Segurança do sistema
– Interface gráfica de geração dos metadados
14
22. 22 WebDomus
Interface Web para Sistemas
Domóticos
</end>
Editor's Notes
Conceito: - A domótica tem como principal objectivo a automatização de edifícios (tanto a nível habitacional como no sector terciário). No sector habitacional premeia-se o conforto do utilizador, e no sector terciário premeia-se a gestão de recursos energéticos.Análise de mercado: Numa análise do mercado das aplicações de controlo de sistemas domóticos forma encontradas duas grandes lacunas: soluções proprietárias que têm como alvo protocolos especifico, ou um grupo restrito (pouco abrangentes);As interfaces cliente baseiam-se em aplicações standalone que requerem uma instalação prévia (menor disponibilidade), e aquelas que se baseiam em soluções web requerem um servidor web agregado ao sistema domótico;Motivação e objectivos:Interesse pela área da domótica; Objectivo do projecto foi realizar uma aplicação web que permita o controlo de sistemas domóticos independentemente do protocolo que utilize. Colmatar as lacunas identificadas (web -> maior disponibilidade; independente do protocolo (maior abrangência)).
Necessidade: Cada protocolo tem a sua forma de funcionamento; Cada sistema domótico tem características diferentes: localização de dispositivos e estrutura física. Assim forma definidas sintaxes para descrever protocolos, tipos de dispositivos e sistemas domóticos.Definição da sintaxe:A sintaxe foi definida com recurso a schemaXML, que contém um conjunto de regras que permite validar as descrições em XML.
Necessidade: Cada protocolo tem a sua forma de funcionamento; Cada sistema domótico tem características diferentes: localização de dispositivos e estrutura física. Assim forma definidas sintaxes para descrever protocolos, tipos de dispositivos e sistemas domóticos.Definição da sintaxe:A sintaxe foi definida com recurso a schemaXML, que contém um conjunto de regras que permite validar as descrições em XML.
Modularidade: Resultado da decomposição do sistema em módulos coesos e desacoplados;Definição de interfaces contratuais para separar as características de cada módulo e elevar o seu nível de abstracção;Confinando funcionalidades concretas a cada módulo;Facilitando a integração entre os diferentes módulos; RepositórioArmazena os metadados dos múltiplos SD configurados no sistema;Módulo AplicacionalEfectua a integração entre os módulos do sistema e implementa serviços de acesso a dados, controlo de acessos e interacção com os sistemas domóticos; Módulo ComunicaçãoComposto por duas componentes distintas que se encontra separadas fisicamente, ComWD e ComSD;Estabelecimento de um canal de comunicação seguro para comunicação entre ambas;Conceito de InjectorComponente responsável por introduzir a informação na rede domótica;Único componente do sistema que encontra dependente do protocolo do sistema domótico; Módulo ApresentaçãoInterface com utilizador tem como alvo dispositivos moveis e computadores pessoais e permitirá a interacção com SD;Tecnologias Web
Elo de integração entre os diferentes módulos;Contém a lógica aplicacional do sistema;
Módulo de apresentação é composto por uma componente para computadores pessoais (desktop/laptop);Ambas foram desenvolvidas com recurso à tecnologia ASP.NETA decisão de fazer duas implementações distintas prende-se com serem paradigmas diferentes, tanto a nível de tecnologias como a nível de características físicas.Componente Web Desktop:Foi também desenvolvida com recurso à tecnologia ASP.NET AJAX que é uma framework que permite desenvolver aplicações web com recurso à utilização de AJAX.Contém área de navegação em sistemas domóticos em que o utilizador pode navegar e interagir com dispositivos;Contém áreas de administração do sistema webdomus (carregamento de novos sistemas domóticos, protocolos, tipos de dispositivos e consulta de logs).
Mobilizar vs MinimizarFragmentação do mercado de dispositivosMundo “Web Mobile” e procura de standards (W3C)
-Foi definida uma sintaxe que poderá ser utilizada não só no contexto deste projecto como também noutros;A modularização do sistema permite que este seja expansível com maior facilidade;Devido às limitações, até à data, da tecnologia .NET micro não foi possível o estabelecimento de um canal seguro entre o sistema central do webdomus e a componente que sem encontra nos sistemas domóticos;Desenvolvimentos futuros:Actualização da componente de comunicação e reforçar as componentes de segurança na componente web.
Mobilizar vs MinimizarFragmentação do mercado de dispositivosMundo “Web Mobile” e procura de standards (W3C)
Modularidade: Resultado da decomposição do sistema em módulos coesos e desacoplados;Definição de interfaces contratuais para separar as características de cada módulo e elevar o seu nível de abstracção;Confinando funcionalidades concretas a cada módulo;Facilitando a integração entre os diferentes módulos; RepositórioArmazena os metadados dos múltiplos SD configurados no sistema;Módulo AplicacionalEfectua a integração entre os módulos do sistema e implementa serviços de acesso a dados, controlo de acessos e interacção com os sistemas domóticos; Módulo ComunicaçãoComposto por duas componentes distintas que se encontra separadas fisicamente, ComWD e ComSD;Estabelecimento de um canal de comunicação seguro para comunicação entre ambas;Conceito de InjectorComponente responsável por introduzir a informação na rede domótica;Único componente do sistema que encontra dependente do protocolo do sistema domótico; Módulo ApresentaçãoInterface com utilizador tem como alvo dispositivos moveis e computadores pessoais e permitirá a interacção com SD;Tecnologias Web