WebDomus
Interface Web para Sistemas
Domóticos




              29148 – Rodolfo Cardoso
              29439 – Pedro Januário
Agenda

 • Enquadramento

 • Sintaxe de descrição de sistemas
 domóticos

 • Arquitectura WebDomus

 • Módulos que constituem a arquitectura

                                           2
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
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
Sintaxe de descrição
Dispositivo DomoBUS                              Protocolo DomoBUS
<Dispositivo nome=“Luz“         fabricante=“X“   <Protocolo nome="DomoBUS" versao="1.0">
            referencia="Lampada_DomoBUS">           <Pedido>
     <Endereco>                                        <Endereco>
            <Ilha>0</Ilha>                                  <Campo nome="Ilha" nBits="4"/>
            <No>0</No>                                      <Campo nome="No" nBits=“5"/>
            <App>2</App>                                    <Campo nome="App" nBits="3/>
            <IdDisp>1</IdDisp>                              <Campo nome="IdDisp" nBits=“8"/>
     </Endereco>                                       </Endereco>
     ...                                                ...
</Dispositivo>                                   </Protocolo>
     Dispositivo CEBus                               Protocolo CEBus
     <Dispositivo nome=“Luz“                         <Protocolo nome=“CEBus" versao="1.0">
                 fabricante=“X“                          <Pedido>
                 referencia="Lampada_CEBus">               <Endereco>
          <Endereco>                                            <Campo nome=“Addr"
                 <Addr>12378</Addr>                  nBits=“16"/>
          </Endereco>                                      </Endereco>
          ...                                              ...
     </Dispositivo>                                  </Protocolo>



                                                                                               5
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
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
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
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
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
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
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
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
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
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
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
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
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
Módulo Apresentação
   Mobilização da interface WebDomus




                                       12
Demonstração
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   WebDomus
     Interface Web para Sistemas
     Domóticos




                                   </end>

WebDomus

  • 1.
    WebDomus Interface Web paraSistemas Domóticos 29148 – Rodolfo Cardoso 29439 – Pedro Januário
  • 2.
    Agenda • Enquadramento • Sintaxe de descrição de sistemas domóticos • Arquitectura WebDomus • Módulos que constituem a arquitectura 2
  • 3.
    Enquadramento • Conceito desistema 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
  • 5.
    Sintaxe de descrição DispositivoDomoBUS Protocolo DomoBUS <Dispositivo nome=“Luz“ fabricante=“X“ <Protocolo nome="DomoBUS" versao="1.0"> referencia="Lampada_DomoBUS"> <Pedido> <Endereco> <Endereco> <Ilha>0</Ilha> <Campo nome="Ilha" nBits="4"/> <No>0</No> <Campo nome="No" nBits=“5"/> <App>2</App> <Campo nome="App" nBits="3/> <IdDisp>1</IdDisp> <Campo nome="IdDisp" nBits=“8"/> </Endereco> </Endereco> ... ... </Dispositivo> </Protocolo> Dispositivo CEBus Protocolo CEBus <Dispositivo nome=“Luz“ <Protocolo nome=“CEBus" versao="1.0"> fabricante=“X“ <Pedido> referencia="Lampada_CEBus"> <Endereco> <Endereco> <Campo nome=“Addr" <Addr>12378</Addr> nBits=“16"/> </Endereco> </Endereco> ... ... </Dispositivo> </Protocolo> 5
  • 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 • Divididoem 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
  • 19.
    Módulo Apresentação Mobilização da interface WebDomus 12
  • 20.
  • 21.
    Sumário • Sintaxede 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>

Notas do Editor

  • #4 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 -&gt; maior disponibilidade; independente do protocolo (maior abrangência)).
  • #5 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.
  • #6 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.
  • #7  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
  • #8 Elo de integração entre os diferentes módulos;Contém a lógica aplicacional do sistema;
  • #18 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).
  • #19 Mobilizar vs MinimizarFragmentação do mercado de dispositivosMundo “Web Mobile” e procura de standards (W3C)
  • #22 -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.
  • #24 Mobilizar vs MinimizarFragmentação do mercado de dispositivosMundo “Web Mobile” e procura de standards (W3C)
  • #25  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