Automated Residence Management System (ARMS)
Édipo Alexandre Pereira Carneiro¹, Thiago Pereira Marques¹, Lucas RafaelCastanhetti¹, Willian Frakilin Chagas¹, Giani Carla Ito¹ 1Curso de Sistemas de Informação - UNIPAR - Universidade Paranaense
Rua Rui Barbosa, 611, Jardim Cristal CEP 85810-240 Cascavel, PR [email protected] [email protected]
[email protected] [email protected]
Resumo. Este artigo tem por objetivo apresentar a arquitetura ARMS, desenvolvida para o controle e automatização das rotinas de uma residência. A arquitetura realiza o monitoramento e acionamento de dispositivos, tais como, câmeras, equipamentos eletrônicos, lâmpadas, cercas elétricas, dentre outros. O acionamento pode ser realizado diretamente pelo usuário, de forma automática por meio de agendamentos, ou remotamente via Web. Um estudo de caso será apresentado para demonstrar e validar as funcionalidades realizadas pela arquitetura ARMS.
1. Introdução
A palavra domótica, é a junção da palavra latina Domus (casa) e do termo Robótica [1]. Sua definição mais atual trata-se da utilização simultânea da eletricidade, da eletrônica e das tecnologias da informação no cotidiano das residências, permitindo realizar a sua gestão, local ou remotamente, oferecendo uma vasta gama de aplicações nas áreas da acessibilidade, segurança, comunicações, gestão de energia e uso racional dos recursos para seus habitantes. A domótica é uma aplicação específica da automação industrial. Automação se refere a um sistema ou método pelo qual eventos podem ser executados e controlados sem intervenção de um pensamento consciente [1]. As tecnologias existentes para esta área viabilizam o desenvolvimento de softwares projetados unicamente para o controle de residências. Esses softwares têm como principal ênfase, o gerenciamento de recursos, segurança, conforto e, atualmente, entretenimento [2].
A automação residencial é um mecanismo que integra conceitos aplicados à habitação particular e coletiva. Nesse contexto, a domótica apresenta inúmeras aplicações, dentre elas o monitoramento de residências para pessoas que viajam constantemente e o auxílio a pessoas com necessidades especiais, idosas, com problemas de mobilidade ou deficiências físicas.
Este trabalho apresenta uma arquitetura para o gerenciamento de uma residência automatizada. Tem como objetivo controlar o acionamento e desligamento de dispositivos eletrônicos além da execução de diversas atividades sem a necessidade de presença física. A seção 2 apresenta alguns trabalhos relacionados à automação
residencial. A seção 3 descreve a arquitetura ARMS e o seu funcionamento. Na seção 4 é apresentado um estudo de caso utilizando a arquitetura ARMS e na seção 5 é feita uma conclusão sobre o trabalho realizado.
2. Trabalhos Relacionados
O uso de sistemas para automação residencial ainda se mantém baixo devido aos altos custos para implantação, manutenção e a complexa interface dos já existentes. A utilização desses sistemas em um primeiro momento é percebida pelo cliente como um símbolo de status e modernidade [3]. No momento seguinte, o conforto e a conveniência por ela proporcionados passam a ser decisivos.Seguindo essa ideologia, a arquitetura ARMS foi projetada para realizar o controle das rotinas de uma residência, local ou remotamente, possibilitando monitoramento, acionamento, desligamento e interação com os dispositivos eletrônicos contidos na residência.
Com o intuito de levantar as diversas informações em relação à residência automatizada foram estudados alguns projetos, que tiveram relevância na criação do sistema, tais como: “Software de Controle para Aparelhos Domésticos” descrito por [4], “Protótipo de um sistema para controle e monitoração residencial através de dispositivos móveis utilizando a plataforma .Net” desenvolvido por [5], “Appliance Interface Apparatus and Automated Residence Management System” apresentado por [6], “Domótica: Do Controle ao Desenvolvimento Prático do Projeto” proposto por [7], “Aprendendo Regras por Observação em uma Casa Inteligente” analizado por [8] e “Implementando uma solução de automação residencial com custo reduzido baseada em open source” sugerido por [9], são detalhados na seqüência.
No projeto [4] é apresentado um sistema de controle de equipamentos domésticos por meio da porta paralela do computador. O sistema é acessado a distância apenas por acesso remoto, não existindo uma interface Web na qual seja possível interação com a residência. O desenvolvimento foi feito utilizando a ferramenta Borland Delphi 6.
No protótipo apresentado por [5], foi utilizada a plataforma .NET. O autor desenvolveu um aplicativo que efetua as configurações do ambiente residencial, criou um serviço Windows para monitoramento dos objetos da residência e abriu um canal de comunicação por web service entre o servidor e os dispositivo da casa, viabilizando assim o acesso via dispositivos móveis.
O trabalho desenvolvido por [6], demonstra um método que possibilita comunicação entre dois aparelhos ou circuitos elétricos existentes em uma residência, de forma a estabelecer um sistema de automação doméstico, ou ampliar um software automatizado existente. Foi desenvolvido um aparelho para controle, que facilita a comunicação entre todos os dispositivos, mediante comandos específicos do aparelho.
O projeto elaborado por [7] faz uma análise sobre as funções da domótica e demonstra as funcionalidades do software desenvolvido pelo autor para controle de
porta paralela. Para demonstração, foi construída a maquete de uma residência, e confeccionada uma placa de circuito eletrônico.
A pesquisa realizada em [8] analisa a automação residencial baseada no comportamento dos habitantes e descreve um sistema cujo objetivo é aprender regras em uma casa. O sistema utiliza o conceito de aprendizado com regras de indução.
No artigo [9] é simulado uma solução para automação residencial de pequeno porte. O gerenciamento da casa pode ser feito por interfaces móveis ou fixas, que estabelecem uma comunicação com um servidor central presente na residência e ligado a diversos periféricos de controle. A linguagem utilizada para desenvolvimento do projeto foi PHP e como meio de comunicação a porta serial.
A arquitetura ARMS tem como diferencial o foco voltado ao usuário, uma vez que a linguagem Java, utilizada para sua concepção, possibilita a criação de interfaces intuitivas mantendo um bom desempenho.O projeto oferece ainda, acesso via Web e dispositivos móveis de forma fácil e rápida, evitando que o usuário do sistema necessite um alto conhecimento em informática.
Outra questão analisada durante o desenvolvimento do projeto foram seus custos. Devido utilização de um circuito próprio e do sistema não exigir alto processamento, os custos para implantação do projeto ficaram abaixo da média dos existentes no mercado e que possuem propostas semelhantes. Outro ponto positivo é a facilidade para manutenção, uma vez que os componentes utilizados para confecção do circuito não tem alto custo e são encontrados sem dificuldade em lojas de eletrônica.
3. Arquitetura Automated Residence Management System (ARMS)
A arquitetura Automated Residence Management System (ARMS) é composta por seis módulos: clientes Web, clientes residenciais, servidor Web, CC/PP, servidor de aplicação e circuito, como ilustra a figura 1.
Figura 1. Arquitetura ARMS.
Os itens seguintes detalham os módulos citados na figura 1. 3.1 Clientes Web
Os clientes Web realizam o acesso externo ao software, que pode ter duas origens: Dispositivos móveis: podem ser PDA’s ou smartphones. O acesso ao sistema por
meio desses é reconhecido por um servidor Web, que realiza a autenticação do usuário no sistema, identifica as características do dispositivo por meio do CC/PP e a partir destas adapta o acesso ao sistema;
Computadores pessoais: podem ser desktops ou notebooks. O acesso ao sistema por meio desses é reconhecido pelo servidor Web, que realiza a autenticação do usuário no sistema, identifica as características do browser utilizado por meio do CC/PP e a partir destas adapta o acesso ao sistema.
3.2 Clientes Residenciais
São os clientes que efetuam acesso por meio da rede interna onde o sistema está implantado. Uma vez reconhecido o cliente é realizada a sua autenticação e são liberados os acesso às funcionalidades da aplicação.
3.3 Servidor Web
O servidor Web é responsável por prover acesso externo ao sistema por meio da Internet. Utiliza o repositório de perfis CC/PP para identificar a origem do cliente Web, adaptar a visualização de acordo com o dispositivo (dispositivos móveis/computadores
3.4 Composite Capabilities/Preferences Profile (CC/PP)
Para o reconhecimento dos dispositivos móveis a arquitetura ARMS utilizará uma especificação proposta pela World Wide Web Consortium (W3C), denominada Composite Capability Preference Profile (CC/PP), que tem a finalidade de proporcionar um mecanismo estruturado e universal para descrever e transmitir informações sobre as características de um dispositivo móvel para um servidor.O CC/PP é uma descrição das potencialidades do dispositivo e as preferências do usuário [10].
3.5 Servidor de aplicação
O servidor de aplicação é composto por três módulos, quais são: Smart House, decodificador e porta paralela.
3.5.1 Smart House
O Smart House é software que controla a arquitetura ARMS. Foi desenvolvido utilizando a linguagem de programação Java e banco de dados PostgreSQL 8.3.
É composto por controle de usuário, controle financeiro, controle de agendamentos e gerenciador do circuito, descritos a seguir:
Controle de usuário: esse módulo é responsável por manter os usuários cadastrados no sistema, as permissões de acesso e o controle das licenças de uso;
Controle financeiro: contém o controle financeiro dos usuários do sistema. Este módulo engloba controle de contas a pagar, contas a receber e movimentações bancárias;
Controle de agendamento: contém os registros de agendamentos pessoais (compromissos, eventos, lembretes) e o controle das atividades automatizadas, que são a realização de uma ação (acionamento ou desligamento) à um determinado dispositivo elétrico conectado ao circuito. Estas atividades são divididas em três grupos:
a) agendamentos simples: são eventos a serem realizados na residência diariamente, seguindo uma determinada rotina de acordo com os dias da semana;
b) agendamentos dependentes: são ações a serem realizadas somente se um dispositivo pré determinado que se encontra na residência tiver seu estado (ligado/desligado) alterado;
c) agendamentos eventuais: são ações a serem realizadas uma única vez, não seguindo um padrão ou rotina nas atividades da residência.
Gerenciador do circuito: realiza o gerenciamento do circuito que está ligado aos dispositivos da residência. Esse consiste em interpretar as chamadas recebidas do sistema e repassar os comandos corretamente ao circuito. Também é responsável por enviar ao sistema informações referentes a mudança de estado (ligado/desligado) dos dispositivos conectados ao circuito.
O decodificador realiza a interação entre o software e a porta paralela, sua função é realizada por uma Dynamic Link Library (DLL). Essa possui duas principais finalidades: envio e recebimento de bits, descritas a seguir:
Envio de bits: realiza a decodificação das informações geradas pela aplicação Java e as repassa à porta paralela em forma de bits. A porta paralela repassa esses bits ao circuito em forma de pulsos elétricos;
Recebimento de bits: realiza a codificação das informações geradas pela porta paralela em forma de bits e as repassa ao gerenciador do circuito. Esses bits são gerados pela porta paralela a partir da identificação dos pulsos elétricos recebidos do circuito.
3.5.3 Porta Paralela
A porta paralela é uma interface de comunicação entre computadores e periféricos. Ela possibilita conectar qualquer tipo de dispositivo, tanto para controle e transmissão como para aquisição e recepção de dados [11]. O conector utilizado pela porta paralela é o DB-25, como o nome sugere, possui 25 pinos, dos quais, segundo [12], quatro fazem o controle interno de operações, cincos são destinados a informações de estados de funcionamento, oito deles servem para o envio dos dados da informação e o restante dos pinos é para aterramento.
Na arquitetura ARMS, esta interface é responsável tanto por interpretar os bits recebidos da aplicação e gerar pulsos elétricos, quanto por receber pulsos elétricos do circuito, identificá-los e gerar bits à aplicação. A figura 2 ilustra a descrição dos pinos do conector, bem como a direção e o sentido em que a informação percorre:
Figura 2. Descrição dos pinos do conector da porta paralela. Fonte: MESSIAS (2007).
O circuito foi desenvolvido para possibilitar a automação dos dispositivos elétricos existentes na residência. A figura 3 ilustra o estado atual do circuito, faltando apenas à soldagem dos componentes para que fique completo.
Figura 3. Foto do circuito impresso.
O circuito foi concebido para exercer duas funcionalidades: envio e recebimento de pulsos elétricos.
Recebimento de pulsos elétricos: realiza os comandos de acionamento ou desligamento dos dispositivos elétricos existentes na residência automatizada e conectados ao circuito. Esses comandos são realizados a partir da interpretação dos pulsos elétricos recebidos através da porta paralela.
Envio de pulsos elétricos: identifica se os dispositivos estão ligados ou desligados e repassa essa informação ao sistema. Este repasse é feito através da geração de pulsos elétricos pelo circuito e envio dos mesmos à porta paralela, que os interpreta e envia em forma de bits ao sistema.
4. Estudo de caso
Para a validação da arquitetura ARMS, foram realizados testes utilizando o software Smart House, descrito no módulo 2.5.1. A fim de exemplificar a utilização de suas funcionalidades foram elaborados dois cenários que realizam o acionamento de uma lâmpada em uma residência, utilizando funcionalidades diferentes: monitoramento e acionamento direto e controle por meio de agendamentos.
4.1 Monitoramento e acionamento manual
Esse cenário representa uma situação na qual o usuário do sistema deseja realizar o acionamento da lâmpada que esta cadastrada no cômodo “Sala”. Na janela de monitoramento do sistema é exibida a planta baixa de uma residência e seus respectivos
Portas de saída para os dispositivos. Porta de entrada dos bits.
Leds que representam cada um das portas lógicas de saída.
dispositivos, caracterizados por ícones. Na figura 4 são representadas numericamente as funcionalidades da tela de monitoramento, descritas a seguir:
Figura 4. Tela de monitoramento da residência.
O item 1 representa a lâmpada cadastrada para o cômodo sala. O seu status ligado/desligado na planta da residência é destacado por meio da coloração de seu contorno (verde para ligado, vermelho para desligado);
O item 2 representa a janela exibida ao posicionar o mouse sobre a imagem de qualquer dispositivo, nesse caso, a lâmpada. Possui informações sobre o dispositivo, tais como: nome do cômodo que ele se encontra, sua descrição, seu tipo e seu status (ligado/desligado);
Ao clicar no ícone do dispositivo, são habilitadas as ações disponíveis para o mesmo, como por exemplo: ligar, desligar e suas opções específicas, como exibido no item 3. Para validação desse cenário, foi utilizada a função ligar;
Ao pressionar o botão ligar, é gerada pela aplicação uma requisição ao gerenciador do circuito, que realiza o acionamento da lâmpada. Ao ligá-la, a aplicação exibe uma mensagem informando sobre o sucesso da operação, como representado no item 4. 4.2 Controle de um Dispositivo por Agendamento
Esse cenário representa uma situação na qual o acionamento da lâmpada que esta cadastrada no cômodo “Sala” será realizado automaticamente por meio de um
Na figura 5 são representadas numericamente as funcionalidades da aplicação utilizadas para realização desse cenário, descritas a seguir:
O item 1 representa o dispositivo selecionado, a lâmpada do cômodo “Sala”;
O item 2 exibe o botão que possibilita a visualização de todos os agendamentos que possuem vínculo com o dispositivo selecionado. Essa função foi utilizada no cenário para confirmar a existência de um agendamento para o dispositivo lâmpada do cômodo “Sala”;
Figura 5. Agendamento para acionamento de uma lâmpada.
O item 3 exibe a janela onde os agendamentos existentes para o dispositivo são listados. Essa também disponibiliza por meio do botão modificar a funcionalidade de um dos agendamentos existentes caso necessária;
O item 4 apresenta a mensagem exibida ao ser realizado um acionamento ou desligamento por agendamento. A cada execução são fornecidas informações pertinentes ao usuário, tais como, número do agendamento, nome, qual dispositivo sofreu a ação, a que cômodo este item pertence e qual foi a ação recebida por ele. Em caso de erro a mesma tela será exibida, porém com imagem de erro e sua respectiva descrição. Dentro do cenário realizado esse item apresenta a mensagem confirmando que a lâmpada do cômodo “Sala” foi ligada corretamente, de acordo com o agendamento de código 1, que havia sido previamente cadastrado.
5. Conclusão
Espera-se que, com a utilização do software ARMS, seja possível realizar a visualização e controle do estado ligado/desligado de qualquer dispositivo elétrico contido na residência automatizada, a execução automática de rotinas previamente cadastradas, o controle financeiro e o controle dos usuários e permissões de acesso.
em fase de desenvolvimento, e se faz necessária a montagem da placa com todos os seus componentes, conforme desenho do circuito, para término do projeto. Como projeto futuro, pretende-se realizar a reavaliação dos processos de comunicação com circuito, podendo ser via Universal Serial Buss (USB) ou sem fio.
6. Referências Bibliográficas
[1] Angel, P. M.; Introducción a la domótica. Embalse – ARG, Domótica: controle e automação. Escuela Brasileño-Argentina de Informática. EBAI, 1993.
[2] Muratori, J. R., “Gerenciando o Futuro: As Tendências do Mercado de Automação Residencial” http://www.aureside.org.br/eventos/default.asp?file=/eventos/conteudoh 2005.asp&menu=eventos, maio 2009, 20.
[3] Aureside, “Automação Residencial: Realidade Hoje,” http://www.aureside.org.br/ temastec/default.asp?file=concbasicos.asp&menu=temas, maio 2009, 22.
[4] Brugnera, M. R., “Software de Controle para Aparelhos Domésticos,” “tcc”, Centro Universitário Feevale Instituto de Ciências Exatas e Tecnológicas, Novo Hamburgo – RS, junho 2007.
[5] Venturi, E., “Protótipo de um sistema para controle e monitoração residencial através de dispositivos móveis utilizando a plataforma .Net,” “tcc”, Universidade Regional de Blumenau Centro de Ciências Exatas e Naturais, Blumenau – SC, junho 2005.
[6] Basset, W. W., Russ, R. M., Glorioso, C. A., “Appliance Interface Apparatus and Automated Residence Management System,” http://www.freepatentsonline.com/ 5706191.html, maio 2009, 30.
[7] Molina, A. V., Junior, D. L. P., Silva, P. H., “Domótica : Do Controle ao Desenvolvimento Prático do Projeto,” “monografia”, Centro Universitário do Sul de Minas – UNIS, Varginha – MG, 2006.
[8] Sgarbi, J. A., Tonidandel, F., “Aprendendo Regras por Observação em uma Casa Inteligente,” Anais do XVI Congresso Brasileiro de Automática, Congresso Brasileiro de Automática, Salvador – BA, outubro 2006.
[9] Dohms, R. M., “Implementando uma solução de automação residencial com custo reduzido baseada em open source,” “monografia”, Centro Universitário de Brasília – UniCEUB Faculdade de Exatas e Tecnologia – FAET, Brasília – DF, 2005.
[10] Klyne, G., Reynolds, F., Woodrow, C., Ohto, H., Hjelm, J., Butler, M., Tran, L., “Composite capability/preference profiles (cc/pp): structure and vocabularies 1.0,” http://www.w3.org/TR/2004/REC-CCPP-struct-vocab-20040115/, junho 2009, 05.
[11] Messias, A. R., “Rogercom,” http://www.rogercom.com, maio 2009, 05.