MONIQUE MADEIRA PEREIRA - PDF
Download "MONIQUE MADEIRA PEREIRA"
Armando Lemos Avelar
1 i MONIQUE MADEIRA PEREIRA ESTUDO E DESENVOLVIMENTO DE UMA APLICAÇÃO PARA O MONITORAMENTO REMOTO DE SISTEMAS DE SEGURANÇA DOMÉSTICA, UTILIZANDO DISPOSITIVOS MÓVEIS JOINVILLE, SC 2009
2 ii UNIVERSIDADE DO ESTADO DE SANTA CATARINA UDESC CENTRO DE CIÊNCIAS TECNOLÓGICAS CCT DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO MONIQUE MADEIRA PEREIRA ESTUDO E DESENVOLVIMENTO DE UMA APLICAÇÃO PARA O MONITORAMENTO REMOTO DE SISTEMAS DE SEGURANÇA DOMÉSTICA, UTILIZANDO DISPOSITIVOS MÓVEIS Trabalho de conclusão de curso apresentado à Universidade do Estado de Santa Catarina, como requisito para obtenção do título de Bacharel em Ciência da Computação. Orientador: Ricardo Ferreira Martins JOINVILLE, SC 2009
3 iii MONIQUE MADEIRA PEREIRA ESTUDO E DESENVOLVIMENTO DE UMA APLICAÇÃO PARA O MONITORAMENTO REMOTO DE SISTEMAS DE SEGURANÇA DOMÉSTICA, UTILIZANDO DISPOSITIVOS MÓVEIS. Trabalho de conclusão de curso aprovado como requisito parcial para obtenção do título de Bacharel, no curso de graduação em Ciência da Computação da Universidade do Estado de Santa Catarina. Banca Examinadora: Orientador: M.Eng., Ricardo Ferreira Martins Universidade do Estado de Santa Catarina Membro Dr. Ciência da Computação, Mauricio Aronne Pillon Universidade do Estado de Santa Catarina Membro Dr. Eng., Rafael Obelheiro Universidade do Estado de Santa Catarina JOINVILLE, 10/06/2009
4 iv RESUMO A utilização de sistemas de segurança em ambientes residenciais é cada vez mais comum devido aos sérios problemas quanto à violência e à busca do ser humano em proporcionar segurança pessoal e patrimonial. Para este trabalho, propõe-se desenvolver uma aplicação objetivando fornecer uma forma de comunicação entre um sistema de segurança, instalado em uma residência, e dispositivos móveis, a fim de possibilitar algumas funções de monitoramento remoto e auxílio à tomada de decisão. Palavras-chave: Domótica, monitoração remota, computação ubíqua, dispositivos móveis, protocolos de redes de computadores, métodos para auxílio à tomada de decisão.
5 v ABSTRACT The need for safer residences has caused the use of home security system to become wide spread in environments where violence incidence is usual. For this paper, the development of an application is proposed in order to communicate a security home system to mobile devices and thus offer some remote monitoring and decision-making support. Keywords: Domotics, remote monitoring, ubiquitous computing, mobile devices, network protocols, decision-making methods.
6 vi LISTA DE FIGURAS Figura Arquitetura do sistema proposto Figura Automação Residencial: integração de sistemas (AURESIDE, 2008) Figura Circuito aberto. Quando um evento ocorre o circuito se fecha possibilitando a passagem de corrente Figura Circuito fechado. Quando um evento ocorre o circuito se abre, impossibilitando a passagem de corrente Figura Funções de um sistema de segurança (TRAISTER, 2002) Figura Equipamentos de um sistema de segurança residencial, localizados na própria residência. Adaptado de TRAISTER (2002) Figura Arquitetura de um sistema de segurança comum (NELSON, 2006) Figura Processo de envio de alocação de linha telefônica. Adaptado de ADEMCO (1999) Figura Monitoração remota com linha de backup (NELSON, 2006) Figura 3.1 Categorias das redes sem fio. Adaptado de Mobilezone (2008) Figura Picorrede com somente um escravo (a), picorrede com múltiplos escravos (b) e várias picorredes interligadas (c). Adaptado de Bluetooth (2007)
7 vii Figura Topologias empregadas com a tecnologia Zigbee Figura Arquitetura ad-hoc (LABIOD, 2007) Figura Infra-estrutura de rede IEEE (LABIOD, 2007) Figura Arquitetura da telefonia celular. Adaptado de Bates (2007) Figura Evolução das tecnologias para telefonia (HALONEN, 2003) Figura Evolução de 2G para 3G (HALONEN, 2003) Figura Processo de sistemas para apoio à tomada de decisão (SHIM et al, 2002) Figura Exemplo de árvore de decisão Figura Autômato para uma central de 3 zonas de proteção Figura Exemplo de um projeto de sistema de segurança Figura Arquitetura do sistema Figura Diagrama de Casos de Uso Figura Diagrama de sequência - Gerenciar Usuários Figura Diagrama de sequência - Configurar regras Figura Diagrama de sequência - Gerenciar sistema de segurança Figura Diagrama de atividades - Monitoração em tempo real Figura Diagrama de atividades - Histórico de monitoração
8 viii Figura Diagrama Entidade-Relacionamento do Banco de Dados Figura Arquitetura e equipamentos necessários para a aplicação Figura Tela de entrada no sistema (a); tela de opções de tarefas(b) Figura Tela de gerenciamento de projetos de residências Figura Gerenciamento de usuários do sistema de segurança residencial Figura Gerenciamento de regras e classes Figura Servidor de eventos (a); Central virtual implementada para testes (b); Central virtual disponibilizada pela Viaweb (c) Figura Comunicação cliente (celular) x servidor Figura Entrada no sistema de monitoração (a); Menu principal da aplicação (b); Erro na entrada de um usuário (c) Figura Lista de eventos decorrentes da monitoração (a); Detalhes de um evento selecionado (b) Figura Tela de histórico de monitoração (a); calendário para escolha de datas (b) Figura Projeto de residência utilizado para testes
9 ix LISTA DE TABELAS Tabela Tipos de zonas. Adaptado de NELSON (2006) Tabela Principais sensores e suas zonas correspondentes Tabela Características das classes do Bluetooth Tabela Informações sobre classes do Zigbee. Adaptado de Labiod (2007) Tabela Informações gerais sobre as principais vertentes do protocolo IEEE Tabela Comparativo entre as tecnologias de comunicação Tabela Tarifas das principais operadoras de telefonia celular Tabela Matriz de correlação Tabela Relação de estados possíveis de um sistema de segurança eletrônica Tabela Tabela tipos de área Tabela Relação áreas vs. zonas Tabela Entidades consideradas e suas respectivas descrições Tabela Equipamentos disponíveis para testes
10 x Tabela Características do sistema de segurança baseados no projeto da Figura Tabela Eventos gerados e telas de resultados gerados pela aplicação
11 xi SUMÁRIO 1 INTRODUÇÃO OBJETIVOS Objetivos Específicos METODOLOGIA ORGANIZAÇÃO DO DOCUMENTO AUTOMAÇÃO RESIDENCIAL HISTÓRICO DA AUTOMAÇÃO RESIDENCIAL NO BRASIL ÁREAS DE APLICAÇÃO DA AUTOMAÇÃO RESIDENCIAL SISTEMAS DE SEGURANÇA Composição de um Sistema de Segurança Eletrônico Tipos de Zonas Tipos de Sensores COMPUTAÇÃO UBÍQUA Princípios da Computação Ubíqua MONITORAÇÃO REMOTA CONSIDERAÇÕES PARCIAIS TECNOLOGIAS E PADRÕES DE COMUNICAÇÃO CONCEITOS BÁSICOS BLUETOOTH ZIGBEE IEEE (WI-FI) TECNOLOGIAS OFERECIDAS PELA TELEFONIA Segunda Geração (2G) Transição da Segunda para a Terceira Geração (2,5G) Terceira Geração (3G)... 29
12 xii 3.6 PADRÕES DE TRANSMISSÃO DE DADOS RedCARE SIA Contact ID Protocol CONSIDERAÇÕES PARCIAIS MÉTODOS DE APOIO À TOMADA DE DECISÃO CORRELAÇÃO DE EVENTOS MÉTODOS PARA CORRELAÇÃO DE EVENTOS Correlação baseada em regras Correlação baseada em casos Filtragem Correlação por codificação Lógica Fuzzy Árvore de decisão CONSIDERAÇÕES PARCIAIS MODELAGEM DO PROBLEMA MODELAGEM GENÉRICA Autômato Finito Determinístico MODELAGEM ESPECÍFICA Tipos de Área Relação Áreas vs. Zonas Áreas contíguas Tipos de zonas Funcionalidade dos sensores CONSIDERAÇÕES PARCIAIS MODELAGEM DA APLICAÇÃO CASOS DE USO Gerenciar usuários Configurar Regras e Notificações Gerenciar residência Monitorar em tempo real Consultar histórico de monitoração BANCO DE DADOS REGRAS DE ASSOCIAÇÃO E CLASSIFICAÇÃO CONSIDERAÇÕES PARCIAIS VALIDAÇÃO E TESTES INTERFACE SERVIDOR Gerenciamento de residência e de usuários Configurar regras e notificações... 65
13 xiii 7.2 TRANSFERÊNCIA DE DADOS Comunicação Central-Servidor Comunicação Servidor-Celular INTERFACE CLIENTE Monitoração em tempo real e histórico de monitoração ESTUDO DE CASO CONSIDERAÇÕES PARCIAIS CONSIDERAÇÕES FINAIS REFERÊNCIAS BIBLIOGRÁFICAS... 79
14 1 1 INTRODUÇÃO O termo Domótica, da fusão das palavras latinas domus casa e da palavra robótica, é utilizado para designar toda residência que disponibiliza serviços automatizados relacionados à gerência de seus vários setores. Uma rede domótica seria representada por um conjunto de serviços de uma residência assistidos por um sistema que interliga várias funções de gerenciamento: monitoração, atuação e controle, podendo estar conectadas entre si por meio de uma rede interna ou externa (BOLZANI, 2004), a fim de oferecer um conjunto de aplicações tais como: Segurança - monitoração e controle remotos das funções disponibilizadas pela central, como: ativar/desativar a central de alarme, travar portas, abrir/fechar janelas; Gestão de energia acionar iluminação personalizada verificando o ambiente externo ou a preferência do usuário residencial, verificar presença de pessoas nos ambientes onde as luzes se encontram acesas e apagá-las; Automação das tarefas domésticas ligar/desligar aparelhos domésticos como: máquinas de lavar, micro-ondas, etc; permitir funções de agendamento de tarefas; Operação e supervisão de instalações monitoração de cômodos, através de sensores e câmeras. O foco deste trabalho se dará em um segmento de aplicações dentro da automação residencial: a segurança. A aplicação básica de sistemas de segurança, em quaisquer áreas, exerce funções de proteção humana e patrimonial. Tendo em vista o aumento significativo da criminalidade e delinquência nos últimos anos, as implementações de sistemas de segurança são cada vez mais comuns em ambientes residenciais. Além disso, a convergência das tecnologias residenciais está levando ao conceito de ubiquidade, no qual dispositivos coordenam-se entre si para prover aos usuários acesso imediato aos serviços disponibilizados, de forma transparente (ARAUJO, 2003), visando aumentar a interação entre homem e sistemas automatizados. Essa união de conceitos da automação residencial com a computação ubíqua possibilitou o surgimento da ideia de interligar a rede interna de uma casa com a rede externa a Internet através de dispositivos móveis, de forma que os moradores possam gerenciar seu lar à distância. Isso, aliado ao crescente número de pessoas que dispõe de dispositivos que ofereçam mobilidade, dá suporte ao trabalho que está sendo proposto. O caso mais notado do grande consumo de dispositivos móveis é, sem dúvida, o dos celulares. Além de ser incomum uma
15 2 pessoa não possuir um celular, este tipo de dispositivo vem agregando cada vez mais funções, além do provimento de comunicação através da conversação oral, para o qual foi inicialmente desenvolvido. A proposta deste trabalho é desenvolver uma aplicação que proporcione a interação de um dispositivo móvel, ligado através de um protocolo de comunicação sem fio, com um computador servidor ou um sistema embarcado que se comunique diretamente com a central de alarme de uma residência (Figura 1.1), disponibilizando, remotamente, algumas funções de monitoramento do sistema de segurança da casa baseadas em um método para auxílio à tomada de decisão. Figura Arquitetura do sistema proposto. O método para auxílio à tomada de decisão será inserido no contexto de extrair informações a partir dos dados gerados pelos sensores espalhados pela residência. Por exemplo, no caso de uma suposta invasão, considerando a quebra do vidro de uma das janelas da residência monitorada. Este método seria utilizado para verificar se, após a quebra do vidro, o invasor entrou mesmo na residência. Isto seria possível com a obtenção dos dados de dois sensores básicos: um de ruptura (localizado na janela quebrada) e um de presença (localizado no cômodo invadido). Se, logo após o sensor de ruptura detectar a quebra da janela, o sensor de presença do cômodo detectar movimento, a possibilidade de ter havido realmente uma invasão através da janela quebrada é muito grande. Os sistemas de segurança mais comumente utilizados em residências não fazem este tipo de análise. Se houvesse a detecção pelo sensor de ruptura e a central de alarme estivesse ativada, o alarme dispararia e avisaria à empresa de segurança responsável sobre uma ocorrência de alarme, que verificaria o problema muitas vezes através de visita à residência para confirmação. Se não houvesse real tentativa de invasão e fosse, por exemplo, somente uma pedra jogada por alguém, seria um custo desnecessário para a empresa responsável e uma
16 3 preocupação desnecessária ao dono da casa que recebeu o aviso de alarme. 1.1 OBJETIVOS Como objetivo deste trabalho, busca-se estudar e desenvolver uma aplicação com o intuito de fornecer uma forma de comunicação entre sistemas de segurança doméstica e celulares, a fim de trazer benefícios e comodidade ao usuário, possibilitando algumas funções de monitoramento e auxílio à tomada de decisão. Sendo assim, o objetivo principal da aplicação é comportar um sistema que identifique, de forma simples e automática, alguns eventos que poderão ocorrer em uma casa que comporta um sistema de segurança, através de alguma heurística para auxílio à tomada de decisão. O propósito é garantir que o usuário, dono da residência, tenha acesso às informações obtidas através do monitoramento a grandes distâncias, utilizando a Internet como meio de transferência de dados, o que não ocorre na maioria dos sistemas de segurança disponibilizados para o público em geral, se limitando ao monitoramento por parte da empresa contratada para prover o serviço. Para que isto seja possível, a aplicação que será desenvolvida deverá conter informações sobre a residência que está sendo monitorada, diante das possíveis ocorrências de alarme Objetivos Específicos Para atingir o objetivo proposto, serão necessárias o cumprimento das seguintes etapas: Realizar um estudo bibliográfico dos conceitos aplicados à área de automação residencial e monitoração remota de sistemas; Estudar os padrões de comunicação utilizados pela central de alarme; Analisar os protocolos de comunicação sem fio existentes para interação de dispositivos móveis e dispositivos da casa inteligente; Estudar métodos heurísticos para auxílio à tomada de decisão; Definir as características necessárias para a prototipação do sistema a ser desenvolvido, tais como: plataforma (hardware e sistema operacional), linguagem de programação; Definir os requisitos da aplicação e modelar a aplicação proposta; Desenvolver o protótipo do sistema de comunicação entre o dispositivo móvel e o sistema de segurança residencial.
17 4 1.2 METODOLOGIA Para desenvolver o sistema proposto, várias etapas devem ser cumpridas. Primeiramente, faz-se necessário um estudo bibliográfico das tecnologias existentes no campo de automação residencial, levando em consideração a possibilidade de monitoração remota, e não local, através de dispositivos ligados a uma rede sem fio. Após esse estudo inicial, é necessário obter informações sobre os protocolos que são utilizados para a comunicação de um computador (sistema embarcado) com a central de alarme. A partir destas informações será possível definir o hardware necessário para o protótipo. Com relação à comunicação sem fio da rede interna com o meio externo à casa, faz-se necessário o estudo de padrões de comunicação sem fio, que possibilitarão a troca de mensagens entre o celular e o sistema de segurança domiciliar. Após a definição dos padrões que serão utilizados para efetuar a comunicação do sistema, serão estudados os métodos heurísticos para auxílio à tomada de decisão. Os prérequisitos utilizados para a escolha do método serão sua simplicidade e o baixo processamento, devido às limitações impostas pelo celular. Definida a arquitetura de rede necessária à aplicação, será determinada a plataforma em que esta será desenvolvida. Para a escolha será levada em consideração principalmente a disponibilidade de recursos (hardware e sistema operacional), a posição do mercado com relação à plataforma (quantidade de usuários) e a facilidade em disponibilizar recursos e documentação a desenvolvedores. Tendo a plataforma definida, serão levantados os requisitos da aplicação que será desenvolvida levando em conta as restrições ocasionalmente obtidas pelos padrões escolhidos. Para o projeto do software será utilizado o procedimento da engenharia de software proposto por Pressman (2002) em conjunto com diagramas UML para facilitar o entendimento, que possibilitará o planejamento e a estruturação da aplicação. Após a etapa do projeto, o software será desenvolvido e testado. 1.3 ORGANIZAÇÃO DO DOCUMENTO Este documento está dividido em oito capítulos. O primeiro capítulo, já visto, contém a introdução ao trabalho proposto, contextualizando o mesmo em termos de benefícios e objetivos a serem alcançados. O capítulo 2 inicia a série de conceitos agregados ao trabalho, identificando definições sobre Automação Residencial e aplicabilidades destes sistemas em residências. Como o foco é
18 5 dado aos sistemas de segurança eletrônicos, este capítulo define a base de conceitos utilizada durante todo o processo de desenvolvimento do trabalho, especificando componentes e explicando o funcionamento destes sistemas. O capítulo 3 envolve os estudos feitos dos protocolos e tecnologias de transmissão de dados que podem ser utilizados para a comunicação remota entre celulares e sistema de segurança. Nele estarão evidenciadas as necessidades da aplicação, sendo estes padrões comparados para que a escolha dos mesmos seja feita. Após a definição dos padrões de comunicação utilizados, o capítulo 4 é iniciado. Este se baseia em métodos de apoio à tomada de decisão existentes para correlação de eventos de qualquer espécie. A tomada de decisão será a principal tarefa da aplicação, e a escolha do método apropriado é essencial. Alguns métodos serão explicados durante o capítulo para que, posteriormente seja identificado o mais apropriado à aplicação, ou os mais convenientes para uma possível junção de métodos que resultem em melhores resultados para o sistema. O capítulo 5 trata dos objetos e atributos relacionados à modelagem do problema a ser resolvido. Todas as questões relativas ao funcionamento do sistema de segurança, e configurações e relações que são consideradas importantes para utilização pelo método para apoio à tomada de decisão, serão tratados nesta seção. Esta parte do trabalho foi feita considerando um estudo feito pelo trabalho de mestrado de SOUSA (2009). O capítulo 6 já inicia a modelagem da aplicação, contendo a descrição das funcionalidades do sistema e uma visão de como elas serão implementadas na aplicação final. Além disto, evidencia o funcionamento de cada caso de uso disponibilizado através de diagramas, informando também sobre as questões do armazenamento de informações (banco de dados) e agrega informações para o método de apoio à tomada de decisão. O capítulo 7 trata da validação e testes da aplicação já implementada. Para isto foi considerado um caso para estudo, e através dele é possível o entendimento das funcionalidades da aplicação e do seu funcionamento como um todo. Enfim, o capítulo 8, sendo este as Considerações Finais, contém as principais considerações obtidas ao longo do trabalho, além das dificuldades enfrentadas, problemáticas não tratadas e sugestões para trabalhos futuros.
19 6 2 AUTOMAÇÃO RESIDENCIAL Os hábitos da população humana estão em constante transformação. Observam-se mudanças no estilo de vida e, consequentemente, na concepção da arquitetura e serviços disponíveis na residência ideal. Com o desenvolvimento e a gama de eletrônicos disponíveis, a casa atual vem incorporando novas tecnologias, tendo como objetivo aumentar o conforto e a segurança, economizar energia e facilitar a manutenção, a fim de trazer o maior número de benefícios possíveis ao usuário (GOMES, 2007). Neste contexto, surgiu o conceito de Automação Residencial, ou Domótica, originado na França a partir de trabalhos acadêmicos e pesquisas nas áreas de automação e comunicação de dados. O termo 'Domótica' é utilizado para designar toda residência que emprega algum serviço automatizado relacionado à transmissão de dados, segurança, gerenciamento de energia e conforto pessoal (GOMES, 2007), utilizando um sistema de transmissão de dados comum entre os dispositivos que proporcionam o serviço. Logo, o conceito de Automação Residencial é a integração de diferentes serviços disponíveis na casa utilizando um sistema de comunicação comum. Uma residência automatizada disponibiliza operações mais econômicas, seguras e confortáveis incluindo um grau de funcionalidade e flexibilidade inteligente (LUTOLF, 2004). Em diferentes partes do mundo, o mesmo conceito está atrelado a diferentes expressões. No Japão, geralmente se fala em 'Home Automation' (Automação residencial), nos EUA e Europa 'Smart Home' ou 'Smart House' (Residência Inteligente) e na França a nova palavra 'Domotique' (Domótica) foi criada. Residências automatizadas têm sido consideradas um dos maiores feitos, levando em conta a utilização de tecnologias para comunicação e automação. Uma residência automatizada é um espaço para se viver, que combina diferentes tecnologias com o objetivo de prover serviços para uma variedade de dispositivos que consistem numa rede doméstica. Estes dispositivos conhecem os serviços ou informações disponíveis que são relacionados ao papel que os próprios têm de desempenhar, tendo o poder computacional para executar funções pré-definidas e a habilidade para compartilhar estas informações com outros dispositivos da rede que as necessitem (JAVED; BASHIR, 2000). A Figura 2.1 demonstra esta interação entre todas as áreas da residência. Através de uma infra-estrutura física e lógica, todos os serviços estão interligados para garantir o perfeito funcionamento de todas as funções e tarefas disponíveis para os usuários residenciais, transmitindo quaisquer tipos de informações que qualquer parte interna ou externa à
20 7 residência, se possível, queira requisitar. Figura Automação Residencial: integração de sistemas (AURESIDE, 2008). 2.1 HISTÓRICO DA AUTOMAÇÃO RESIDENCIAL NO BRASIL A automação residencial surgiu baseando-se no grande desenvolvimento das tecnologias empregadas na automação industrial, conhecida e difundida há muito mais tempo. Contudo, diferentemente da realidade de grandes ambientes que dispõem de espaço para grandes centrais controladoras e extensos sistemas de cabeamento como as indústrias, as tecnologias aplicadas em arquiteturas residenciais são mais específicas. Numa residência não são necessários lógicas e dispositivos complexos controlando tarefas pesadas de produção, porém, podem-se encontrar equipamentos com grande precisão e velocidade, como equipamentos multimídia, sendo utilizados por pessoas que nem sempre possuem qualquer conhecimento técnico (BOLZANI, 2004). Por motivos óbvios (econômicos e de escala de produção), os fabricantes e prestadores de serviço, num primeiro momento, se dedicaram àqueles segmentos que lhes trouxeram maior rapidez no retorno de seus investimentos. Os primeiros sistemas automatizados de controle no Brasil foram concebidos para aplicações estritamente industriais, na década de Consolidados os sistemas de automação industrial, o comércio foi em seguida agregado destes novos sistemas que evoluem até hoje, principalmente pelo rápido avanço da informática e da sofisticação de softwares de supervisão e gerenciamento de produtos
21 8 disponíveis (GOMES, 2007). O desejo de automação em projetos de pequeno e médio porte com características comerciais ou residenciais começou a surgir na década de 80 quando companhias começaram a desenvolver sistemas de automação predial alcançando 4 milhões de edifícios e casas já na década de Nesta mesma época, com o surgimento do telefone celular, a disseminação do uso de computadores pessoais e o rápido avanço da Internet, abriu-se caminho para a utilização de tecnologias para uso doméstico em grande escala (MATTAR, 2007; REQUENA, 2002). O mercado de automação residencial ganha mais espaço a cada ano e vem se tornando uma abrangente área de atuação, considerando a evolução tecnológica. Com o grande número de aplicações e oportunidades geradas pelo computador pessoal, pelo surgimento da Internet e pela redução dos custos do hardware, criou-se uma nova cultura de acesso à informação digitalizada. Esses fatores permitiram elevar o projeto de residências de seu nível convencional para um superior, onde todas as funcionalidades desenvolvidas estejam integradas e trabalhando em conjunto (BOLZANI, 2004). O crescimento desta esfera de aplicações foi tão intenso que, em fevereiro de 2000, foi fundada a AURESIDE (Associação Brasileira de Automação Residencial), com o objetivo de incentivar a adoção de tecnologias de automação residencial no país e prover informações e conhecimentos qualificados, através de eventos e documentos, de maneira que atinja a população e os interessados na área. 2.2 ÁREAS DE APLICAÇÃO DA AUTOMAÇÃO RESIDENCIAL Como já visto, o conceito de Automação Residencial inclui qualquer serviço automatizado disponibilizado pela casa. As principais áreas de aplicação encontradas em residências são as seguintes: Segurança: aplicações relacionadas a sistemas de alarme, equipamentos técnicos para operações de salvamento ou assistência médica em caso de emergências; Gerenciamento de energia: aplicações que incluem controle para uso eficiente da energia em questões relacionadas a: ventilação, ar condicionado, aquecimento e iluminação residencial; Conforto: aplicações como iluminação programável de acordo com o gosto dos moradores, incluindo controle sobre lâmpadas, persianas, janelas, ou qualquer outro tipo de aplicação que possa ser executada remotamente;
22 9 Serviços de comunicação: aplicações para manter informados os usuários dos acontecimentos na residência, disponibilidade de equipamentos para a utilização da Internet como meio de transmissão de dados; Entretenimento: aplicações relacionadas a som, vídeo e imagem. Existem muitos outros exemplos de funcionalidades que podem ser incluídas em residências e, no futuro, novas funções e serviços podem ser integrados (JAVED; BASHIR, 2000). As maiores vantagens de se implementar um sistema de automação residencial são, basicamente: Incrementar o conforto e a segurança pessoal; Reduzir custos, principalmente o de energia; Flexibilidade para agregar novas funções. Evidentemente, estas vantagens neste tipo de sistema são obtidas quando diferentes funções são integradas em um único sistema e são utilizadas em diferentes situações. Por exemplo, um sensor de presença ligado ao sistema de segurança da residência para detectar intrusos, pode servir como um identificador de presença num cômodo para iluminar o mesmo quando o sistema de segurança está desligado. Neste trabalho, o foco será o monitoramento de sistemas de segurança eletrônicos, os quais serão tratados na próxima seção. 2.3 SISTEMAS DE SEGURANÇA Segurança sempre foi considerada essencial para seres humanos. Os sistemas de segurança eletrônicos surgiram para garantir que pessoas e seus patrimônios pudessem ter um grau maior de segurança e uma maior confiança em busca de sua integridade física e patrimonial. O principal propósito de um sistema de segurança é, então, proteger qualquer tipo de bem, seja ele pessoas, patrimônios ou informações (JAVED; BASHIR, 2000). Diante de sistemas de segurança residenciais, segundo Bolzani (2004), existem algumas características básicas que um sistema de segurança deve apresentar: Prevenção ou dissuasão: criar barreiras físicas ou virtuais com o objetivo de dificultar ou impedir uma intrusão; Detecção e alarmes: ter a capacidade de se comunicar com sensores e verificar seu estado, acionando atuadores se necessário; Reconhecimento e identificação: disponibilizar mecanismos que diferenciem o usuário do não usuário e acionar os mecanismos de acordo com esta identificação;
23 10 Retardo: garantir um tempo de resposta pequeno no caso da acusação de algo no sistema e no processamento das informações geradas pelos sensores; Reação: efetivo disparo das atividades programadas a fim de retardar ou impedir o processo de intrusão e emitir avisos Composição de um Sistema de Segurança Eletrônico Um sistema de segurança eletrônica é basicamente um circuito eletrônico que se baseia em informações recuperadas do ambiente para realizar alguma ação pré-programada. Estes sistemas podem ser classificados em dois tipos: de circuito aberto e de circuito fechado (TRAISTER, 2002). Sistemas de circuito aberto são os que a corrente flui somente quando um sinal é enviado pelos sensores. Por exemplo, no caso de acender uma lâmpada. O circuito eletrônico ligado à lâmpada é aberto, até que o interruptor seja acionado e o circuito se feche, possibilitando a passagem de corrente (Figura 2.2). Figura Circuito aberto. Quando um evento ocorre o circuito se fecha possibilitando a passagem de corrente. Sistemas de circuito fechado são aqueles em que a corrente flui continuamente, e só é interrompida, abrindo o circuito, se um sinal é enviado por um dos sensores (Figura 2.3). Estes são os tipos de sistemas utilizados em centrais de alarme. Quando um evento ocorre no ambiente, o circuito inicialmente fechado se abre, e a central percebe que alguma mudança aconteceu no ambiente. Figura Circuito fechado. Quando um evento ocorre o circuito se abre, impossibilitando a passagem de corrente.
24 11 Todo sistema de segurança possui três funções em comum: Detecção, Controle e Sinalização (Figura 2.4). A detecção, ou entrada do sistema, é feita pelos equipamentos responsáveis pela monitoração e envio de qualquer alteração do ambiente à central de alarme. A central é a responsável por manter o controle considerando o que foi detectado, garantindo que haja algum tipo de sinalização externa diante do que aconteceu no ambiente. A sinalização é a saída do sistema, determinando que ocorreu alguma modificação no ambiente (TRAISTER, 2002). Figura Funções de um sistema de segurança (TRAISTER, 2002). Então, a partir do envio da informação correspondente a algum sensor de que houve alguma alteração no ambiente, o circuito se abre e a central processa esta informação, sinalizando de modo adequado ao que foi percebido. O equipamento implantado na residência do cliente, conhecido como painel de alarmes ou central de alarmes, pode ser descrito fisicamente como uma placa de circuito impresso, composta por componentes eletrônicos, conectores para ligação de dispositivos externos, fonte de alimentação, microprocessador, buffer 1 para armazenamento dos eventos e um software embarcado que controla o sistema (TRAISTER, 2002). À central, são conectados os sensores e atuadores, que perceberão o ambiente e executarão alguma função préestabelecida, respectivamente. A Figura 2.5 demonstra alguns dos componentes utilizados em sistemas de segurança eletrônica residencial que são localizados na própria residência, os quais serão explicados nas próximas seções. 1 A capacidade de armazenamento do buffer depende da especificação de cada central.
25 12 Figura Equipamentos de um sistema de segurança residencial, localizados na própria residência. Adaptado de TRAISTER (2002). Como já mencionado, dentre a composição de uma central de alarme estão alguns conectores independentes que associam dispositivos, como sensores e atuadores, por exemplo, a uma determinada zona de proteção. Uma zona de proteção consiste de uma entrada dedicada, fisicamente representada por um conector no painel de alarmes, onde os sensores são conectados (NELSON, 2006). Cada zona tem suas próprias características, determinadas pelo instalador. Na próxima seção serão evidenciados os tipos de zonas que serão consideradas para este trabalho, de acordo com suas principais características Tipos de Zonas Dispositivos de proteção podem ser agrupados em tipos de zonas para determinar por características que tipo de eventos está ocorrendo em uma residência monitorada. De acordo com isto, a Tabela 2.1 ilustra os principais tipos de zonas que são empregados de forma geral aos sistemas de segurança básicos e suas descrições.
26 13 Tabela Tipos de zonas. Adaptado de NELSON (2006). Tipo de Zona Entrada/Saída Interna Perímetro 24-Horas Fogo Pânico Descrição Zonas programáveis com o preceito de que servirão de entrada ou saída da residência, ou seja, onde se encontram portas e janelas que darão acesso direto ao exterior da casa. Zonas que não possuem acesso diretamente ao meio externo, ou seja, necessitam da passagem por uma zona do tipo Entrada/Saída para conseguir sair da residência. Zonas externas à residência, como jardins, por exemplo. Zonas que são supervisionadas 24 horas por dia, tendo a central de alarmes ativada ou não. Tipo de zona 24-horas para detecção de fogo ou fumaça. Tipo de zona 24-horas ativada geralmente por um botão quando o usuário requisitar imediato atendimento por uma situação extrema. Para que esta divisão em zonas seja possível, é necessário que algumas medidas sejam tomadas pela empresa ou pessoa que instalar o sistema de segurança na residência. Como já dito, as zonas são uma representação lógica de um conector físico presente na central de alarme. A este conector físico, podem ser ligados diversos sensores, que podem não pertencer ao mesmo tipo de zona se o devido cuidado não for tomado. Por exemplo, não há sentido algum em conectar um sensor de movimento em um conector junto a um detector de fumaça, estabelecendo que esta zona seja do tipo Fogo. Se o sensor de movimento perceber alguma modificação em seu raio de ação, a central perceberá e, pela classificação da zona, avisará que possivelmente existe um início de incêndio na residência, o que não é constatado devido ao mau projeto do sistema de segurança. Existem diversas normas para a instalação de sistemas de segurança, geralmente indicadas em manuais de centrais de alarme. A ABNT (Associação Brasileira de Normas Técnicas) disponibiliza normas quanto a instalação de sistemas de segurança que utilizem alarmes contra incêndio: NBRISO7240-1, NBRISO7240-5, NBR13848, NBR9441. Para que problemas como estes de configuração e instalação de sistemas de segurança não aconteçam, é necessário conhecer cada sensor utilizado e em qual tipo de zona ele pode ser incluído, a fim de evitar o mau projeto e melhor classificar as zonas, que serão utilizadas para desenvolver a aplicação proposta.
27 Tipos de Sensores Cada aplicação residencial tem suas próprias necessidades. Sistemas de segurança eletrônicos trabalham geralmente com sensores que têm dois estados básicos: detectando ou não detectando, sendo os eventos disponibilizados por eles discretos, podendo ser representados por 0 (não detectando) e 1 (detectando). Diante disto, os principais tipos de sensores encontrados que atendem esta especificação estão evidenciados na Tabela 2.2 (PRESS, 2005). Tabela Principais sensores e suas zonas correspondentes. Sensor Descrição Tipo de Zona Sensor de movimento (SMO) Sensor magnético (SMA) Sensor de ruptura de vidro (SRV) Sensor de gás (SGA) Sensor de chamas (SCH) Sensor de fumaça (SFU) Botão do pânico Detectam qualquer tipo de movimento nas áreas de cobertura. O tipo mais comum de sensor de movimento é o por infravermelho. Este utiliza o espectro de um raio infravermelho, que emana uma luz invisível de qualquer fonte de calor. O sensor mede a quantidade de calor de qualquer objeto que esteja presente em seu raio de monitoração e compara com uma quantidade de calor pré-programada, tal como uma parede, por exemplo. Detectam a abertura de portas e janelas nos locais protegidos. São compostos de uma parte com fios e outra parte com um imã, posicionadas uma em frente à outra. Quando afastadas, o circuito se abre emitindo um evento. Detectam a quebra de vidros dentro de uma determinada área de cobertura. São constituídos de um microfone onidirecional ou por um detector de vibrações em determinada frequência, que caracterizem a quebra de vidros na residência; Respondem a gases como propano, monóxido de carbono, butano e vapores de gasolina, além de outros gases que não são percebidos por detectores de fumaça ou detectores de fogo. Percebem a ocorrência de chamas sentindo as emissões ultravioletas. Os raios são detectados como um trem de pulsos, criando uma corrente, que é traduzida em um evento; Atuam quando ocorre a presença de partículas e/ou gases, visíveis ou não, e de produtos de combustão na área protegida. Botão ativado pelo usuário em situações de emergência e/ou extremo risco. Entrada/Saída, Interna, Perímetro, 24-Horas Entrada/Saída, Interna, 24-Horas Entrada/Saída, 24- Horas 24-Horas, Fogo 24-Horas, Fogo 24-Horas, Fogo Pânico Para a proposta descrita, todos estes tipos de sensores serão considerados, sempre relacionados às suas zonas correspondentes. Por isso é importante seguir às recomendações de
28 15 mantê-los agrupados, quando não houver alternativa, em conectores correspondentes a tipos de zonas semelhantes. Ainda assim, o ideal seria que todo sensor fosse ligado a um conector diferente, para que o evento ocorrido seja identificado claramente. 2.4 COMPUTAÇÃO UBÍQUA A convergência das tecnologias residenciais leva ao conceito de ubiquidade, no qual dispositivos coordenam-se entre si para prover aos usuários acesso imediato aos serviços disponibilizados, de forma transparente (ARAUJO, 2003), visando aumentar a interação entre homem e sistemas automatizados. O conceito de computação ubíqua está estritamente relacionado aos conceitos de computação móvel e computação pervasiva. A computação móvel baseia-se no aumento da capacidade de mover fisicamente serviços computacionais à medida que o usuário se locomova. Isso implica que o computador torne-se um dispositivo sempre presente, expandindo a capacidade de um usuário utilizar os serviços que o mesmo oferece, independentemente de sua localização (LYYTINEN; YOO, 2002). O conceito de computação pervasiva implica que o computador está embarcado no ambiente de forma invisível para o usuário. Nesta concepção, o computador tem a capacidade de obter informação do ambiente no qual ele está embarcado e utilizá-la para dinamicamente construir modelos computacionais, controlando, configurando e ajustando a aplicação para melhor atender as necessidades do dispositivo ou usuário (LYYTINEN; YOO, 2002). A computação ubíqua surgiu da necessidade de se integrar mobilidade com a funcionalidade da computação pervasiva, ou seja, qualquer dispositivo computacional, enquanto em movimento com o usuário, pode construir, dinamicamente, modelos computacionais dos ambientes para os quais estão sendo movidos e configurar seus serviços dependendo da necessidade (WEISER, 1993) Princípios da Computação Ubíqua Diante das necessidades que a computação ubíqua se candidata a solucionar, pode-se evidenciar três princípios abrangidos por ela (ARAUJO, 2003): Diversidade: Dispositivos ubíquos implicam em uma nova visão da funcionalidade do computador, que é a de atender às necessidades específicas de cada usuário. Apesar destes dispositivos oferecerem, possivelmente, funcionalidades que se sobrepõem, um pode ser mais apropriado para uma função do que outro. Um outro aspecto da diversidade é o de como gerenciar as diferentes capacidades de diferentes dispositivos,
29 16 uma vez que cada dispositivo tem características e limitações próprias tornando difícil oferecer aplicações comuns; Descentralização: Na computação ubíqua as responsabilidades são distribuídas entre vários dispositivos pequenos que assumem e executam certas tarefas e funções. Estes dispositivos cooperam entre si para a construção de inteligência no ambiente, que é refletida nas aplicações. Conectividade: Na computação ubíqua, tem-se a visão da conectividade sem fronteiras, em que dispositivos e as aplicações que executam neles movem-se juntamente com o usuário, de forma transparente, entre diversas redes heterogêneas, tais como as redes sem fio de longa distância e redes de média e curta distância. Como a aplicação proposta será feita para dispositivos móveis, estas características serão consideradas durante todo o processo de desenvolvimento da aplicação, garantindo que estes princípios sejam seguidos, se possível, na execução do sistema. 2.5 MONITORAÇÃO REMOTA Até o momento levou-se em consideração somente a arquitetura disponível na residência ao qual o sistema de segurança pertence. Os dispositivos relacionados às funções de detecção e a própria central estão localizados na própria residência. Porém, podem existir entidades externas que, de alguma forma, façam parte do sistema e podem interagir com ele. É o caso, por exemplo, de uma estação de monitoramento. Os sistemas monitorados remotamente mais comuns em residências funcionam, basicamente, através de sinais enviados por linha telefônica a uma central de monitoramento que os processa e registra. Os sinais podem ser enviados à central pelo acionamento manual de um controle remoto ou por sensores instalados em pontos vulneráveis ou de maior risco captando informações sobre o ambiente de acordo com suas especificações.
30 17 Figura Arquitetura de um sistema de segurança comum (NELSON, 2006). O monitoramento consiste em fazer um serviço de rastreamento através dos sensores instalados no sistema de segurança que se comunique de alguma forma com a central de alarme. Toda vez que uma área é violada, o sensor envia imediatamente uma mensagem à central que, através da linha telefônica, envia para a estação de monitoramento, através de um receptor digital. Então, o sistema de segurança não está diretamente conectado à estação de monitoramento. Para se comunicar com o receptor digital, ele utiliza a linha telefônica do usuário, fornecida por uma empresa de telefonia. Quando há um evento no sistema ou quando um sinal de supervisão necessita ser enviado à estação de monitoramento, a central aloca a linha telefônica do usuário e aguarda determinado tempo pelo tom de discagem 2 (NELSON, 2006). Se o tom de discagem não for detectado neste período, a central irá desconectar e tentar novamente. Esta sequência é repetida o número de vezes determinada pelas características do painel de alarmes. Quando o receptor digital detecta uma das linhas chamando, ele a atende e aceita a conexão (Figura 2.7). Em seguida, é possível à central de alarme enviar os eventos que estão armazenados em seu buffer até que este fique vazio. Após o envio dos eventos, a central finaliza a conexão. Para o envio de novos eventos, todo o processo deve ser refeito. 2 O tempo de espera pelo tom de discagem é determinado pelo hardware utilizado.
31 18 Figura Processo de envio de alocação de linha telefônica. Adaptado de ADEMCO (1999). Com o crescimento da utilização de sistemas de segurança para a proteção de patrimônios, eles vêm sendo aprimorados para que, cada vez mais, disponibilizem ao usuário maior confiabilidade no serviço utilizado. Uma das soluções para ampliar a capacidade dos sistemas quanto a problemas de queda do serviço são as chamadas linhas de backup. Estas são canais extras de comunicação que transmitem os eventos à estação de monitoramento, caso uma linha falhe (PRESS, 2005). Por exemplo, a utilização da Internet como linha de backup está cada vez mais popularizada (Figura 2.8), principalmente devido às vantagens agregadas a utilização da mesma: baixo custo, alta velocidade de transmissão e gerenciamento fim-a-fim da conexão estabelecida (NELSON, 2006). A mesma Internet que é utilizada para a navegação na WEB possibilitará a monitoração remota do sistema de segurança residencial. Enquanto através da transmissão via linha telefônica o envio de eventos pode demorar minutos até à estação de monitoramento, pela Internet este tempo cai para segundos. Figura Monitoração remota com linha de backup (NELSON, 2006).
32 19 Considerando todos os tipos de monitoramento, existem duas formas básicas de fazê-lo remotamente: receber notificações quando algo necessita atenção ou pode-se checar o estado do sistema periodicamente (PRESS, 2005). Notificação: é a forma mais comum de monitoração remota encontrada. Exige pouco processamento dos equipamentos envolvidos e só transmite dados quando necessário. Sondagem: utilizado geralmente quando é necessário um fluxo corrente de informação, como monitoração em tempo real através de áudio e vídeo. Sistemas de segurança monitorados requerem informações confiáveis e operadores altamente qualificados para interação com o mesmo. Para maximizar a habilidade do operador a reagir aos eventos, sistemas automatizados são empregados e implementam rotinas para controle dos eventos que ocorrem no patrimônio monitorado. 2.6 CONSIDERAÇÕES PARCIAIS A automatização dos serviços e a agregação de funcionalidades que despertem o interesse do usuário é o que alavancou o crescimento das tecnologias da Automação Residencial. Dentre as aplicações mais procuradas estão as da área de segurança residencial. A contratação de serviços para garantir a segurança de residências é cada vez mais comum. Para disponibilizar este tipo de sistema, é necessária a contratação de uma empresa que ofereça o serviço de monitoração. Neste caso, o usuário só recebe notificações em situações extremas ou quando a empresa contratada entra em contato para verificar qualquer questão sobre o sistema de segurança. Diante disto, a proposta deste trabalho é, considerando o interesse dos usuários em conhecer os eventos decorrentes deste sistema de segurança, possibilitar que eles tenham acesso a estas informações a partir de uma aplicação que disponibilize o serviço de monitoração remota. Os conceitos de computação ubíqua serão aplicados durante o processo de projeto e desenvolvimento da aplicação, garantindo que a mesma atenda às necessidades estabelecidas por seus princípios básicos. Para que se obtenha o resultado desejado, é necessário que se faça um estudo dos padrões que possam ser utilizados para efetuar a comunicação entre dispositivos internos e externos à residência, realizando a transferência de dados.
33 20 3 TECNOLOGIAS E PADRÕES DE COMUNICAÇÃO Com o advento da computação ubíqua e a proliferação dos dispositivos portáteis tem-se dado grande importância à mobilidade e às redes sem fio. Recentemente, há um grande interesse em disponibilizar o acesso sem fio em qualquer lugar. Aumentando o interesse em pesquisa e atividades para padronização ao redor do mundo (LABIOD, 2007). Em se tratando de meios de comunicação, pode-se dizer que os últimos 15 anos foram os anos da telefonia celular. O número de assinantes de telefones móveis no mundo inteiro aumentou de 34 milhões em 1993 para mais de 3 bilhões em 2007, e, agora, o número de assinantes da telefonia celular é muito superior ao número de linhas de telefone convencionais disponíveis (ITU Statistics, 2007). As diversas vantagens dos telefones celulares são evidentes: em qualquer lugar, a qualquer hora, acesso sem restrições à rede de telefonia por meio de um dispositivo leve e portátil. Independentemente do crescimento de equipamentos sem fio para a Internet, é certo que as redes sem fio e os serviços móveis disponibilizados por elas são o caminho das redes de comunicação (KUROSE, 2006). Ao se analisar o cenário proposto para este trabalho, com a utilização de dispositivos portáteis que possibilitem a mobilidade dos usuários, vê-se aqui a necessidade de se empregar tecnologias de transmissão de dados que não utilizem cabos. Para isso, são necessárias escolhas de tecnologias adequadas para cada situação, levando em consideração: o alcance da rede, a taxa de transferência, a relação custo/benefício, entre outros fatores que influenciam na escolha das tecnologias a serem empregadas. Por isso, este capítulo terá como objetivo apresentar as principais tecnologias e padrões de comunicação sem fio para que, ao final, sejam definidos as tecnologias que serão empregadas no sistema proposto. 3.1 CONCEITOS BÁSICOS As redes sem fio são frequentemente categorizadas em quatro grupos baseados em sua escala de cobertura (Figura 3.1): as WMAN (Wireless Metropolitan Area Network), as WWAN (Wireless Wide Area Network), WLAN (Wireless Local Area Network) e WPAN (Wireless Personal Area Network). As WMAN são as redes dedicadas para o uso corporativo à longas distâncias, apresentando características semelhantes às redes locais, porém a uma velocidade de transmissão muito superior. As WWAN incluem tecnologias para prover grandes áreas de cobertura, como por exemplo, as redes celulares de segunda e terceira geração. As WLAN
34 21 representam as redes locais sem fio existentes, incluindo os padrões , HyperLan, entre outros. E o quarto grupo são as WPAN, que representam tecnologias de transmissão de dados para redes pessoais, que utilizam tecnologias como bluetooth, zigbee, entre outras. As taxas de transferência e o alcance de cada modelo apresentado variam de acordo com a tecnologia empregada, e pode variar de vários quilômetros nos padrões WMAN até alguns centímetros nas tecnologias WPAN, por exemplo (KARYGIANNIS, 2002). Figura 3.1 Categorias das redes sem fio. Adaptado de Mobilezone (2008). Todas estas tecnologias recebem e transmitem as informações utilizando ondas eletromagnéticas. Estas ondas têm a sua frequência variável, ou seja, para cada novo padrão a ser desenvolvido deve ser escolhida a frequência a ser utilizada, dentro das normas definidas pelos órgãos responsáveis. Estas variações ocorrem desde a mais baixa no padrão WPAN 9 khz até as WWAN que utilizam milhares de gigahertz (GHz). Diante disto, serão descritos a seguir, alguns dos padrões e tecnologias que podem ser empregados no trabalho proposto, e logo a seguir as considerações gerais sobre o que foi estudado e qual será utilizado. 3.2 BLUETOOTH Bluetooth é uma tecnologia sem fio de comunicação a curta distância desenvolvida para substituir a conexão de dispositivos portáteis e/ou fixos utilizando cabos. As principais vantagens da tecnologia são: a sua simplicidade, economia de energia e baixo custo (BLUETOOTH, 2007).
35 22 A tecnologia é baseada em um modelo de rádio frequência, encaixando-se no conceito de WPAN, já que foi projetada para disponibilizar comunicação a curta distância. O Bluetooth é facilmente encontrado em dispositivos portáteis como palmtops, celulares, pagers, impressoras, entre outros. Qualquer conexão Bluetooth é formada utilizando o conceito de picorrede (piconet). Uma picorrede consiste de que dois ou mais dispositivos estão ocupando um mesmo canal físico, o que significa que eles serão sincronizados de acordo com um clock comum. O clock para sincronização é determinado por um dos dispositivos da picorrede, o mestre, e todos os outros dispositivos, os escravos, se adaptarão ao clock estabelecido por ele para efetuar a comunicação. De acordo com as especificações do padrão, um dispositivo Bluetooth pode participar de duas ou mais picorredes ao mesmo tempo, sendo que não pode ser mestre em mais de uma rede. Na Figura 3.2, podem-se notar diferentes topologias utilizadas para habilitar a comunicação entre dispositivos através desta tecnologia. O sentido da comunicação é bidirecional, portanto, todos os dispositivos podem enviar ou receber informações. Figura Picorrede com somente um escravo (a), picorrede com múltiplos escravos (b) e várias picorredes interligadas (c). Adaptado de Bluetooth (2007). Como o propósito do padrão é disponibilizar a comunicação entre dispositivos que estejam relativamente próximos, o seu alcance e velocidade não chegam a ser comparados com o padrão , que foi projetado para WLANs. Justamente por ser projetado para atender dispositivos móveis, o seu alcance varia de 1 metro na Classe 3 até 100 metros na Classe 1, como pode ser visto na Tabela 3.1. O alcance e potência do Bluetooth utilizado interferem diretamente no consumo de energia do equipamento, sendo que quanto maior a potência utilizada maior o consumo de energia do equipamento. Ao se utilizar dispositivos
36 23 móveis, este fator é importante, pois afeta diretamente na autonomia do equipamento (LABIOD, 2007). Tabela Características das classes do Bluetooth. Alcance Consumo de energia Classe m 10 mw Classe 2 10 m 2.5 mw Classe 1 1 m 1 mw As redes Bluetooth operam em faixa de rádio não licenciada de 2,4GHz em modo TDM, com intervalos de tempo de 625 microssegundos. Durante cada intervalo de tempo, o emissor transmite dados por um dentre até 79 canais, espalhando as transmissões sobre o espaço de frequência disponível. Esta tecnologia pode transmitir dados a até 721 Kpbs de forma assíncrona (unidirecional) ou de até 64 Kbps de forma síncrona bidirecional, suportando tráfego de voz entre os dois dispositivos (KUROSE, 2006). 3.3 ZIGBEE O Zigbee é um padrão de comunicação sem fio baseado na norma IEEE que objetiva atender aplicações de controle e sensoriamento. A tecnologia visa atender às necessidades de baixo custo e baixo consumo de energia (Zigbee Alliance). Nesta tecnologia existem três tipos de dispositivos: o coordenador da rede, os dispositivos completos e os dispositivos limitados (LABIOD, 2007). Coordenador (Network Coordinator): possui conhecimento completo da rede. É o dispositivo mais sofisticado da rede e por isso utiliza mais memória e processamento. Tem as funções de gerenciar a rede, escolher a forma de acesso ao meio e permitir a entrada de novos nós na rede. Dispositivo completo (Full Function Device): possui uma memória adicional, e seu processamento computacional o torna ideal para realizar funções de roteamento da rede. Dispositivo limitado (Reduced Function Device): possui funções limitadas para controlar custos e complexidades do tráfego da rede. Não fazem roteamento e por isso são usados nas margens das redes. A topologia de rede utilizada pelo protocolo é variada, podendo ser estrela, malha ou
37 24 árvore. Na Figura 3.3 ficam evidentes quais podem ser empregadas, tendo em vista que cada rede possui somente um coordenador e os dispositivos limitados estejam sempre nas pontas da rede. Figura Topologias empregadas com a tecnologia Zigbee. Uma rede Zigbee pode possuir até 64 K nós, sendo que um destes nós deve ser o coordenador. Se um novo nó quiser participar da rede, seu tempo de ativação é de 30 ms. Para um nó dormindo se tornar ativo, seu tempo de ativação é de 15 ms. A entrada destes nós na rede é gerenciada pelo coordenador da rede que entra em modo de enumeração ou aprendizagem, permitindo que novos nós entrem na rede por um determinado período de tempo que é, tipicamente, de poucos segundos. Os dispositivos Zigbee operam nas faixas de frequência de 868 MHz a 2.4 GHz, com taxas de transferência de dados de 20 kbps a até 250 kbps (Tabela 3.2). O alcance deste tipo de dispositivo pode chegar a até 100 m. Tabela Informações sobre classes do Zigbee. Adaptado de Labiod (2007). Frequência Largura de Banda Canais 2.4GHz 250 kbps MHz 40 kbps MHz 20 kbps 1 A principal vantagem da tecnologia Zigbee é o seu baixo gasto de energia dos dispositivos. Equipamentos que utilizam este padrão costumam utilizar baterias e necessitam que elas tenham grande duração. Por este motivo, o Zigbee é muito utilizado em aplicações
38 25 residenciais e industriais, principalmente no caso em que o carregamento ou a troca das baterias de dispositivos sejam dificultados ou evitados. 3.4 IEEE (WI-FI) Embora muitas tecnologias e padrões para WLAN tenham sido desenvolvidos na década de 1990, uma classe particular de padrões surgiu claramente como a principal: o IEEE , também conhecido como Wi-Fi. Existem diversos padrões para WLAN, porém os mais difundidos são o a, b e g. A WLAN b tem uma taxa de transmissão de até 11Mbps, considerada mais do que suficiente para a maioria das redes residenciais com acesso à Internet por cabo de banda larga ou por DSL. O padrão b opera na faixa de frequência não licenciada de 2.4 a GHz, competindo por espectro de frequência com telefones e fornos microondas de 2.4 GHz. WLANs a podem funcionar a taxas de bits significativamente mais altas, porém em frequências mais altas. Entretanto, porque operam a uma frequência mais alta, a distância de transmissão dessas redes é mais curta para um dado nível de potência e elas sofrem mais com a propagação multivias. O padrão g opera na mesma faixa de frequência mais baixa das WLANs b, porém com as taxas de transmissão mais altas da a (Tabela 3.3), permitindo que os usuários tenham os benefícios dos dois padrões (KUROSE, 2006). Tabela Informações gerais sobre as principais vertentes do protocolo IEEE Padrão Faixa de Frequência Taxa de dados b GHz 11 Mbps a GHz 54 Mbps g GHz 54 Mbps A infra-estrutura deste tipo de rede sem fio consiste de um ponto de acesso conectado a infra-estrutura de rede principal, que possibilite o acesso de estações clientes sem fio. Esta configuração é baseada na arquitetura da telefonia celular onde os sistemas são subdivididos em células (LABIOD, 2007). Cada célula, nomeadas como Conjunto de Serviços Básicos (Basic Service Set [BSS]), no padrão IEEE é controlada por uma estação base, também chamada de ponto de acesso (Access Point [AP]). Nas células estão localizadas as estações clientes, que desejam utilizar um serviço a partir desta rede. A comunicação em uma rede sem fio que utiliza o padrão IEEE pode ser feita de
39 26 duas formas. A primeira é pela comunicação direta entre os dispositivos (Figura 3.4), sem a utilização de um ponto de acesso ou de uma rede fixa (ad-hoc). Cada estação cliente estabelece a conexão com outra estação da mesma célula que é chamada de Conjunto de Serviços Básicos Independente (Independet Basic Service Set [IBSS]). Figura Arquitetura ad-hoc (LABIOD, 2007). A segunda é composta por dois equipamentos básicos: o ponto de acesso e o adaptador de rede da estação cliente. O ponto de acesso funciona como transmissor de rádio e ponte, transferindo dados dos clientes sem fio para a rede com fio convencional. O segundo equipamento necessário é o adaptador de rede do cliente, ou seja, o usuário final daquela rede sem fio. Cada equipamento final, como por exemplo: laptops, palmtops, ou desktops, deve ter uma interface de rádio que permita estabelecer a comunicação com o ponto de acesso (LABIOD, 2007). A Figura 3.5 ilustra a infra-estrutura das redes Figura Infra-estrutura de rede IEEE (LABIOD, 2007).
40 TECNOLOGIAS OFERECIDAS PELA TELEFONIA O sistema tradicional de telefonia foi desenvolvido para satisfazer o desejo dos usuários de poder utilizar os serviços disponíveis em lugares fixos. Com a mudança de comportamento e a necessidade de mobilidade dos serviços independente da localização do usuário, foi criado o sistema de telefonia celular (TANENBAUM, 2003). O termo celular refere-se ao fato de que uma área geográfica qualquer é dividida em várias áreas de cobertura, denominadas células. Cada célula contém uma estação-base que transmite e recebe sinais de estações móveis dentro da sua célula. Cada estação-base está conectada a uma rede de longa distância, tal como uma rede telefônica pública comutada (PSTN), por meio de uma infra-estrutura cabeada. Além disso, as estações-base estão conectadas a uma central de comutação de unidade móvel (mobile switching center MSC), que gerencia o estabelecimento e o término das chamadas de e para usuários móveis (Figura 3.6). Um MSC contém muitas das funcionalidades encontradas em uma central de comutação telefônica normal ampliada com a função requerida para gerenciar a mobilidade de seu usuário. Figura Arquitetura da telefonia celular. Adaptado de Bates (2007). A telefonia celular é dividida em três gerações (Figura 3.7), que utilizam tecnologias distintas: analógica (1G), digital (2G) e multimídia (3G). De acordo com Kurose (2006), sistemas 1G somente permitem transmissão de voz, e por isso, não serão considerados sendo que não se adaptam às especificações do problema a ser resolvido por este necessitar transmissão de dados.
41 28 Figura Evolução das tecnologias para telefonia (HALONEN, 2003) Segunda Geração (2G) Sistemas de segunda geração, embora digitais, foram inicialmente projetados para transmitir voz. Um telefone celular 2G converte um sinal analógico (voz) para um sinal digital antes de modular para transmitir através do meio (ar). A tecnologia 2G trouxe diversas vantagens antes não habilitadas: maior capacidade de serviço dentro de uma célula, melhor segurança para redução de fraudes e serviços mais avançados, como identificador de chamadas e serviços de mensagens. Dentre os principais padrões e tecnologias 2G estão: Time Division Multiple Access (TDMA): Sistema de celular digital que divide um canal de frequência em até seis canais de tempo. Cada usuário utiliza um espaço de tempo específico, impedindo problemas com interferência. Porém, em se tratando de transferência de dados, a velocidade é baixa, não passando de 9.6 Kbps. Global System for Mobile telephony (GSM): é uma tecnologia digital para telefonia celular usada para transmitir voz e dados (GSM WORLD, 2008). Suporta transferência de dados com velocidade de até 9.6 kbps, permitindo transmissão de serviços básicos de dados como o SMS (Short Message Service). Code Division Multiple Access IS-95 (CDMA IS-95): Também chamado cdmaone, é um sistema que codifica uma ou mais fontes de dados em um única banda de frequência, com um código especial associado a cada canal de comunicação, impedindo que a transferência de voz e dados seja confundida entre os usuários do canal e possibilitando que todo o usuário utilize toda a banda disponível para transmissão de informação. O CDMA apresenta uma taxa de transferência de dados um pouco superior, que é de 14.4 Kbps.
42 Transição da Segunda para a Terceira Geração (2,5G) Visto que os sistemas 2G foram desenvolvidos para a transmissão de voz e não se adaptam bem à transmissão de dados, na década de 1990, instituições padronizadoras evidenciaram a necessidade de criar sistemas capazes de transmitir voz e dados eficientemente, incluindo o acesso a Internet através do celular. Para suprir as necessidades imediatamente, foram desenvolvidos protocolos e padrões provisórios, que permitissem a transmissão de dados através da infra-estrutura 2G existente. Estes padrões foram apelidados de 2,5G e são os seguintes (KUROSE, 2006): General Packet Radio Service (GPRS): O GPRS é uma evolução da tecnologia GSM que provê o serviço de dados mais eficiente, a taxas de transmissão entre 40 e 60 kbps (em teoria kbps). Enhanced Data rates for Global Evolution (EDGE): Também conhecido como EGPRS, é uma evolução da tecnologia GPRS, com maior taxa de transmissão. Em teoria o protocolo pode prover um serviço de transmissão de dados de até 384 kbps. CDMA x: Esta tecnologia evoluiu do CDMA IS-95 e pode prover serviços de pacote de dados a até kbps, preparando-se para o lançamento do protocolo 3G CDMA xEV-DO Terceira Geração (3G) Sistemas celulares 3G devem prover serviço de telefonia bem como de comunicação de dados a velocidades significativamente maiores que as obtidas através dos padrões 2G, para que seja possível se utilizar serviços móveis multimídias. Visando esta questão, o ITU (International Communication Union) elaborou normas para que os próximos padrões seguissem, chamas de IMT , definindo uma série de requerimentos, como os seguintes (HALONEN, 2003): Prover alta velocidade de transmissão: 2 Mbps em baixa mobilidade e pequenas distâncias e 144 kbps em qualquer outro caso. Permitir utilização de serviços simultâneos para usuários de serviços multimídias. Fácil incorporação à rede de telefonia 2G. Alcance global. Possuir arquitetura aberta e de fácil adaptação para novos serviços e tecnologias. 3 IMT-2000, onde IMT significa International Mobile Communications e 2000 significa duas coisas: (a) frequência em que supostamente as redes devem operar em MHz e (b) a largura de banda disponível para o serviço em Kbps (TANEMBAUM, 2003).
43 30 Para suprir estas necessidades, os padrões, já estabelecidos até então, evoluíram para tecnologias que podiam satisfazer estes requerimentos. A evolução da segunda geração para a terceira é evidenciada na Figura 3.8. Figura Evolução de 2G para 3G (HALONEN, 2003). Wideband Code Division Multiple Access (W-CDMA): Tecnologia que evoluiu do CDMA IS-95 que pode prover serviços de transmissão de dados em média a 384 Kbps, chegando a até 2 Mbps em áreas locais (BATES, 2002). Universal Mobile Telecommunications Service (UMTS): Padrão criado para utilização universal de serviços multimídia. Utiliza a tecnologia W-CDMA como base, podendo também transmitir dados a até 2 Mbps. CDMA xEV-DO: Evolução do CDMA x que possibilita a transmissão de dados a até 2.4 Mbps. 3.6 PADRÕES DE TRANSMISSÃO DE DADOS Para realizar a transmissão de dados da central de alarme à outros dispositivos como, por exemplo, um banco de dados em um servidor, é necessário entender os padrões disponíveis para a formatação destas mensagens. Existem diversos padrões que formalizam a reportagem de eventos em centrais de alarme, e nesta seção serão evidenciados alguns deles.
44 RedCARE SIA O padrão RedCARE SIA foi desenvolvido pela BSIA para a formalização da transmissão de eventos de alarme via redes ISDN. O formato das mensagens é padronizado da seguinte forma: [Account Block Event Block ASCII Block] Onde, Account Block: identifica o usuário com o caracter # seguido de seis dígitos. Event Block: identifica o evento ocorrente no ambiente monitorado. Cada evento possui o seu próprio código de evento (2 dígitos) e a zona associada (4 dígitos). ASCII Block: informação adicional sobre o Event Block. Pode ser utilizado para algum comentário sobre evento, zona ou usuário (no máximo 63 bytes) Contact ID Protocol O protocolo Contact ID foi desenvolvido pela Ademco Group almejando a formalização das mensagens trocadas por qualquer equipamento manufaturado para fornecer comunicação digital entre emissores e receptores via Internet. Os principais objetivos do projeto são: Prover informações sobre os eventos que ocorrem dentre as premissas do desenvolvedor. Estas informações devem ser facilmente entendidas e interpretadas pela estação central de operações. Gastar o mínimo possível de tempo para cada transmissão, minimizando principalmente o tráfego de mensagens através de pacotes menores de dados; Minimizar erros de transmissão; Minimizar o custo de hardware associado com a transmissão da informação. Este protocolo consegue cumprir seus objetivos principalmente devido à simplicidade de seu formato de mensagem. O padrão para transmissão de dados é o seguinte: ACCT MT Q XYZ GG CCC S Onde, ACCT: número identificador do cliente com quatro dígitos. MT: tipo da mensagem. Sequência de dois dígitos usada para identificar o protocolo utilizado na mensagem (98 para Contact ID).
45 32 Q: qualificação do evento, que fornece informações sobre o evento ocorrido (1: novo evento; 3: restauração; 6: reportagem). XYZ: código do evento (dentre uma lista de 631 eventos). GG: identificador da zona ou partição monitorada onde ocorreu o evento. CCC: identificador da senha (usuário) que gerou o evento. S: dígito de verificação calculado através da mensagem, para controle de erro. 3.7 CONSIDERAÇÕES PARCIAIS Diante das tecnologias apresentadas neste capítulo, é possível identificar o padrão que será utilizado para desenvolvimento da aplicação proposta. Os requerimentos para a escolha do padrão de comunicação para satisfazer a transmissão de dados do sistema são os seguintes: 1. Longa distância, ou seja, deve ser possível que o usuário esteja a qualquer tempo e lugar com a possibilidade de estar conectado na aplicação; 2. Custo mínimo quanto à transmissão de dados; 3. A velocidade de transmissão deve ser de no mínimo 0.28 Kbps 4. Diante dos requisitos mínimos estabelecidos, os principais dados referentes a cada tecnologia estão descritos na Tabela 3.4. Tabela Comparativo entre as tecnologias de comunicação. Tecnologia Velocidade máx. Alcance/Rede Classificação Bluetooth ( ) 721 Kbps 100 m WPAN GPRS Kbps GSM WWAN 2.5G EDGE 384 Kbps GSM WWAN 2.5G CDMA x 144 Kbps CDMA 2000 WWAN 2.5G UMTS 2 Mbps W-CDMA WWAN 3G CDMA 1xEV-DO 2.4 Mbps CDMA 2000 WWAN 3G a 54 Mbps 100 m WLAN b 11 Mbps 300 m WLAN g 54 Mbps 300 m WLAN Zigbee ( ) 250 Kbps 100 m WPAN Considerando os dados recuperados, pode-se perceber que as maiores distâncias são obtidas pelas tecnologias WWAN de telefonia. Para satisfazer a primeira exigência do sistema, de prover o serviço a qualquer tempo e lugar, consideraremos todas as tecnologias da tabela. As tecnologias Bluetooth e Zigbee, ambas desenvolvidas para redes WPAN, podem ser 4 Considerando que os dados enviados pela central sejam de no máximo 70 bytes (considerando dados sobre o evento e as informações agregadas do protocolo utilizado para a transmissão) e que a central envia informações a cada 0.25 segundos (cada central possui seu próprio tempo de transferência de dados).
46 33 descartadas, pois não há meio que as faça estabelecer uma conexão a mais de 100 m de distância entre dois equipamentos. Os padrões possuem uma distância maior, porém contando somente com uma rede local não é possível monitorar a grandes distâncias. Ainda assim, existe a possibilidade de que redes estejam conectadas a outras redes que permitam acesso à Internet, possibilitando o acesso ao serviço a qualquer lugar, desde que exista uma rede deste padrão disponível para conexão do usuário. As tecnologias WWAN são as que garantem as maiores distâncias, porém, assim como o padrão , é necessário que o celular esteja dentro da área de cobertura da rede, o que possibilitará o acesso ao serviço disponibilizado na residência. Considerando custos, as tecnologias Bluetooth e Zigbee são liberadas gratuitamente para uso, desde que se obtenham os equipamentos necessários para tal. Com relação ao Wi-fi, o serviço é contratado, porém no caso de estabelecimentos ou lugares que já disponibilizem o serviço ADSL para conexão à Internet, este seria compartilhado, não sendo necessária a adoção de um especificamente para a utilização da aplicação proposta. As tecnologias de telefonia dependem da operadora contratada para disponibilizar o serviço de transmissão de dados, geralmente cobrado por fluxo de transmissão, o que torna a utilização deste tipo de serviços ainda cara (Tabela 3.5). Tabela Tarifas das principais operadoras de telefonia celular. TIM VIVO CLARO R$5,99 / MB R$ 5,00 / MB R$ 0,99 / MB (no mínimo 40 MB) Por esta questão, levando em consideração os dois primeiros requisitos da escolha da tecnologia, pois todas as tecnologias possuem taxa de transferência maior do que a estabelecida (terceiro requisito), para este trabalho, utilizar-se-á do Wi-fi, que possibilita o compartilhamento de um serviço já disponível em locais públicos ou privados para acesso à Internet (a banda larga) e, com este acesso, a transmissão de dados seria ilimitada e poderia atingir a qualquer dispositivo também conectado à Internet. Devido a grande utilização do Contact ID em centrais de alarmes e, principalmente, por já constar no material necessário para realização do projeto uma central de alarme que utilize o padrão, o Contact ID será utilizado para interpretar as mensagens de ocorrências de eventos gerados pelos sensores na residência e gerar informações para o usuário do que pode ter acontecido em sua casa. Maiores informações sobre os códigos aceitos para cada partição
47 34 da mensagem estão presentes no Anexo A. Definidos os protocolos de transmissão de mensagens, é possível pensar na visualização dos eventos. Considerando o formato das mensagens do Contact ID, pode-se perceber que poucas informações sobre o ocorrido na residência são informadas por ele. Basicamente trata-se de abertura ou restauração de uma zona do painel de alarmes. Para que fique evidente ao usuário o que está acontecendo, de uma forma que seja possível entender a informação, um método para apoio à tomada de decisão, que tratará estas ocorrências, será utilizado. No próximo capítulo, serão evidenciados estes métodos na busca da correlação dos dados obtidos através dos eventos no sistema de segurança e da geração das respostas de acordo com o ocorrido na residência.
48 35 4 MÉTODOS DE APOIO À TOMADA DE DECISÃO Desde a década de 1970, métodos para apoio à tomada de decisão têm sido utilizados frequentemente. Estes são soluções computacionais que podem ser utilizadas para resolver problemas considerados complexos. Sistemas clássicos que utilizam estes métodos para resolver problemas são, geralmente, compostos por: (a) gerenciamento sofisticado de banco de dados, capazes de acessar dados internos e externos, transformando-os em informação e conhecimento, (b) funções poderosas modeladas para o problema específico e (c) simples interface de interação com o usuário demonstrando os resultados obtidos através das funções do método (SHIM et al, 2002). A Figura 4.1 descreve o processo de um sistema de tomada de decisão. A partir do momento em que o problema foi reconhecido, as variáveis do sistema são definidas e o método para apoio à tomada de decisão é efetuado. A partir disto, soluções alternativas para aquele cenário específico são criadas e analisadas até sucumbirem em uma escolha. Esta escolha é implementada e o ciclo retorna ao seu estado inicial de reconhecimento de problema (SHIM et al, 2002). Figura Processo de sistemas para apoio à tomada de decisão (SHIM et al, 2002). 4.1 CORRELAÇÃO DE EVENTOS Existem diversas formas de se relacionar eventos para se tomar uma decisão quanto ao agrupamento dos mesmos. Segundo Meira (1997), as principais são:
49 36 Compressão: consiste em detectar, observando eventos ocorridos em um determinado período de tempo, múltiplas ocorrências de um determinado evento, substituindo por um único evento e indicando quantas vezes este mesmo evento ocorreu no período determinado de tempo. Supressão seletiva: inibição de eventos, em um determinado período de tempo, de acordo com um critério relacionado com o contexto dinâmico do sistema gerenciado. Filtragem: tipo de supressão que relaciona eventos de acordo com um parâmetro préindicado. Contagem: consiste em gerar uma saída cada vez que um número pré-estabelecido de tal evento ocorrer em um determinado período de tempo. Relação temporal: operação a qual o critério de correlação entre os eventos depende da ordem em que estes ocorreram. Considerando o método de apoio à tomada de decisão para a correlação de eventos de um sistema de segurança eletrônico, algumas destas relações podem ser aplicadas, como, por exemplo, a relação temporal, pois é essencial saber a ordem dos eventos para que uma decisão seja tomada. A filtragem também é um tipo interessante de correlação de eventos, pois auxilia na obtenção de eventos que são determinados por critérios definidos de acordo com a escolha do usuário. Segundo Silva (2006), métodos que utilizam correlação do tipo relação temporal podem ser estruturados de diferentes formas, como, por exemplo, através uma árvore de decisão ou um autômato. Neste caso, os eventos ocorrentes são interligados cronologicamente em função das ações controladas pelo método decisório, no caso das árvores, e pelos estados e transições, no caso do autômato. Este tipo de modelagem permite estabelecer a probabilidade de ocorrência de diferentes cenários. A partir do modelo, pode-se estimar a consequência dos eventos e implementar uma solução. Existem diversos métodos que podem ser aplicados na correlação de eventos que utilizam uma ou mais formas de correlação de eventos. Alguns destes métodos serão descritos na próxima seção, a fim de proporcionar a escolha do mais apropriado que será empregado na solução proposta. 4.2 MÉTODOS PARA CORRELAÇÃO DE EVENTOS Hoje, o número de métodos disponíveis para correlação de eventos é muito grande. Alguns destes métodos são probabilísticos, outros utilizam paradigmas de inteligência artificial e outras definem lógicas não convencionais. Nesta seção serão discutidos alguns
50 37 métodos disponíveis a fim de, posteriormente, escolher aplicação de algum deles Correlação baseada em regras Grande parcela dos sistemas de auxílio à tomada de decisão constitui-se de variações baseadas na correlação baseada em regras. Neste método, o conhecimento está representado por um conjunto de regras, sendo estas os fatos que podem acontecer no ambiente (NOGUEROL, 2002). Uma regra, ou inferência, é uma conclusão baseada em fatos ou premissas. Em grau de implementação, uma inferência é um programa que determina quando aplicar o conhecimento armazenado baseando-se na ocorrência de fatos ou premissas que descrevem o comportamento de um sistema. Estas regras podem ser expressas da seguinte forma: SE <condições> ENTÃO <ação> Os sistemas baseado em regras seguem o seguinte conceito: antes de ser executada a ação, são consideradas todas as possibilidades de escolha, para que seja tomada a melhor decisão. O mecanismo de controle das inferências segue um ciclo de execução (CRONK, 1988): Congruência: encontra todas as regras que são satisfeitas pelos eventos ocorridos. Estas regras são agrupadas em um conjunto chamado conjunto de conflitos. Seleção, ou resolução dos conflitos: determina uma das ocorrências do conjunto de conflitos, considerando esta a melhor para ser aplicada neste caso. Evocação da regra, ou execução: executa o processo especificado pela regra escolhida. Pela simplicidade do método, ele possui algumas limitações quanto à aquisição do conhecimento necessário, baseando-se em regras pré-estabelecidas por humanos, que tende a ser um procedimento demorado e sujeito a erros. Outra limitação deste método é o não aproveitamento das experiências passadas do processo dedutivo, possuindo seu conhecimento limitado à base de dados Correlação baseada em casos Esta técnica surgiu como uma alternativa à correlação baseada em regras. Neste método a unidade básica de conhecimento é um caso, e não uma regra. Os casos são constituídos de relações de eventos passados que são armazenados, recuperados, adaptados e utilizados para a
51 38 solução de novos problemas. As experiências adquiridas na solução de cada novo caso são adicionadas à base de dados para uso futuro. Deste modo, o método consegue absorver conhecimento próprio, sem a necessidade de uma pessoa para fazê-lo (MEIRA, 1997). Um caso é uma representação de um problema da vida real. Dependendo do sistema, os casos modelados podem ter diferentes características, mas, em geral, todos possuem um ou vários sintomas e uma solução sugerida. Os sintomas são as diferentes características de um caso, cada um possui um ou mais atributos. Atributos são as propriedades que um sintoma possui (LOHMANN, 2005). Mesmo que de forma inconsciente, muitas pessoas utilizam este método de correlação para resolver seus problemas. Em julgamentos, por exemplo, advogados utilizam casos precedentes para construir e justificar seus argumentos. Médicos fazem o mesmo ao diagnosticar um paciente e receitar um tratamento Filtragem É possível que notificações de eventos sejam mostradas, a critério do usuário, através de filtros que evidenciarão características existentes nos eventos ocorridos. Neste caso o critério de filtros não depende do contexto, sendo baseados exclusivamente em características prédefinidas dos eventos. Porém, existem problemas quanto a redundância de informações geradas quando os filtros são aplicados (MEIRA, 1997). Para que este problema fosse resolvido, surgiu uma nova modalidade de filtragem, chamada Filtragem Inteligente (Intelligent Filtering), no qual as regras para filtragem de informações são melhor elaboradas, sendo dinamicamente geradas de acordo com informações externas aos dados filtrados. Esta técnica é apropriada para trabalhar com sistemas que geram milhares de eventos do mesmo tipo, em intervalos curtos de tempo Correlação por codificação Na correlação por codificação, a maioria do processamento necessário para a correlação de eventos é previamente realizada, resultando em uma base de dados chamada codebook (livro de código). O livro de código é equivalente a uma matriz onde cada linha corresponde a um evento e cada coluna corresponde a uma ação ou problema. Se n eventos distintos são representados no livro de código, cada elemento do vetor p = e, e,..., e ) contém a relação i ( 1 2 n de eventos que causam o problema p. Assim, se no vetor p i, e 1 = 0, então e 1 nunca deve ocorrer para causar p i ; por outro lado, se e 1 = 1, o evento e 1 sempre deverá ocorrer para que
52 39 o problema p i aconteça (NOGUEROL, 2002). Considerando-se um pequeno domínio de interesse no qual existam três tipos de eventos e, e, ) e dois tipos de problemas p, ). Supondo-se que são conhecidos os conjuntos ( 1 2 e3 ( 1 p2 de eventos que causam cada problema, essas informações podem gerar uma matriz de correlação, evidenciada na Tabela 4.1. Tabela Matriz de correlação. Eventos p 1 p 2 e e e Esta matriz indica que uma ocorrência do evento e 1 caracteriza o problema p 1, enquanto a ocorrência conjuntas dos eventos e 1 e e 3 caracterizam o problema p 2. Os pontos fortes desta abordagem são: performance, robustez, processamento automático das regras de correlação e versatilidade na adaptação do sistema a mudanças ocorridas no ambiente. Apesar destas vantagens, a correlação por codificação demanda um grande esforço de modelagem, pois é importante conhecer cada possibilidade de evento para identificar todos os dados que compõem o livro de código Lógica Fuzzy Ao contrário da lógica booleana 5, a lógica fuzzy trata dos conjuntos que não são nem verdadeiros, nem falsos. Sendo assim, este método deve ser considerado uma teoria matemática formal para a representação de incertezas. Diversas vezes, devido à complexidade dos sistemas gerenciados, é impossível construir modelos de supervisão tão precisos que enquadrem todas as possibilidades de eventos que possam decorrer do sistema. A dificuldade encontrada nos sistemas, é que muitas vezes, as informações de eventos fornecidas são imprecisas e não podem ser diretamente incorporadas à base de dados de regras (MEIRA, 1997). A lógica fuzzy é utilizada em aplicações onde o conhecimento envolve conceitos subjetivos. Deste modo, esta técnica pode ser uma alternativa para lidar com a incerteza e a imprecisão que caracterizam algumas aplicações de gerenciamento de sistemas. Algumas 5 Lógica booleana: princípio formulado por Aristóteles, onde existe sempre ou um verdadeiro ou um falso e nada entre estes dois extremos (NOGUEROL, 2002).
53 40 características da lógica fuzzy são (NOGUEROL, 2002): Baseada em palavras e não em números, ou seja, os valores verdades são dados através de expressões linguísticas. Exemplo: muito frio, morno, perto, longe, etc. Possui vários modificadores de características. Exemplo: pouco, muito, mais ou menos, etc. Faz uso das probabilidades linguísticas (por exemplo: provável e improvável), que são interpretados como números fuzzy e interpretados pelo método. Manuseia todos os valores entre 0 e 1, tomando estes somente como um limite. As vantagens de se utilizar este tipo de método de decisão são: a necessidade de poucas regras para a tomada de decisões, o uso das expressões que tornam o método mais próximo ao pensamento humano, a simplificação dos problemas, a rápida implementação de protótipos do sistema e a facilidade de lidar com dados imprecisos. Porém, para que as regras sejam estabelecidas, é necessário um especialista ou dados históricos para a montagem da base de correlação, sendo que as funções de pertinência devem ser definidas desta maneira Árvore de decisão Árvores de decisão são metodologias de mineração de dados aplicadas como um poderoso solucionador de problemas de classificação. Em geral, classificação é um processo de mapeamento dos dados de um caso em uma classe dentro de um conjunto de classes prédefinidas (KANTARDZIC, 2003). Um típico sistema de aprendizado baseado em árvore de decisão adota uma estratégia top-down que procura a solução dentro de um espaço de busca conhecido. A árvore de decisão consiste de nós que possuem atributos a serem testados e de arestas que correspondem todas as saídas possíveis do nó após o teste. Uma simples árvore de decisão considerando dois atributos de entrada ( x e y ) pode ser vista na Figura 4.3.
54 41 Figura Exemplo de árvore de decisão. Uma árvore de decisão tem a função de particionar recursivamente um conjunto de treinamento conhecido, até que cada subconjunto obtido deste agrupamento contenha casos de uma única classe (ALVES,2005). Para atingir esta meta, a técnica de árvores de decisão examina e compara a distribuição de classes durante a construção da árvore. Muitos são os algoritmos de classificação que elaboram árvores de decisão. Não há uma forma de determinar qual é o melhor algoritmo, um pode ter melhor desempenho em determinada situação e outro algoritmo pode ser mais eficiente em outros tipos de situações. Alguns destes algoritmos de indução utilizando árvores de decisão estão disponíveis no ambiente Weka (WEKA, 2009). Este ambiente reúne uma coleção de algoritmos de aprendizado de máquina para resolução de problemas de mineração de dados. Para sistemas que necessitem do apoio à tomada de decisão por algum método de indução, o Weka provê muitos recursos para testes, possibilitando estes antes da implementação da aplicação. Dentre eles está o algoritmo C no Weka implementado com o nome de J48. Este algoritmo se destaca como o mais utilizado método para indução através de árvores de decisão. Este é um método estatístico que obtém o classificador através da manipulação de regras de associação (WANG; FU, 2005). Este algoritmo combina duas estratégias: a estratégia de divisão e conquista para aprendizado de árvores de decisão com a estratégia de cobertura sequencial para o aprendizado de regras. A aproximação de divisão e conquista seleciona um atributo para ser o nó raiz da árvore de decisão e divide a árvore pelos nós obtidos para cada valor possível do atributo escolhido. O processo continua recursivamente para cada novo nó, utilizando somente as instâncias que atingem este certo nó (ALVES, 2005). Já a estratégia de cobertura sequencial consiste na construção de regras, sendo que cada regra é derivada a partir do ramo da árvore de decisão abrangendo a maioria dos casos da
55 42 base de dados, não necessariamente considerando todos os casos descritos na base (ALVES, 2005). Para isto utiliza métodos estatísticos, que analisam cada atributo e a importância do mesmo para a classificação dos objetos. 4.3 CONSIDERAÇÕES PARCIAIS A utilização de métodos de apoio à tomada de decisão será essencial para satisfazer a necessidade do sistema de efetuar correlação de eventos decorrentes do sistema de segurança residencial. Este, que será a essência da aplicação, verificará os eventos relatados pelo monitoramento da residência e tirará conclusões sobre eles para destinar estas informações ao usuário. A natureza da aplicação para a qual a correlação é destinada determina que tipo de correlação pode ser utilizada. No caso dos eventos resultantes do monitoramento de sistema de alarme as correlações do tipo: filtragem, contagem e relação temporal podem ser altamente implementáveis. A filtragem pode ser utilizada quando o usuário requisitar eventos de acordo com critérios estabelecidos por ele. A contagem tem grande efeito na parte estatística do sistema, como, por exemplo, suprir a necessidade do conhecimento de quantos eventos de determinado tipo ocorreram em um determinado período de tempo. Quanto à relação temporal, esta será de extrema importância para a aplicação, já que, para a eficácia do método escolhido, é necessário conhecer a que tempo certo evento ocorreu. O sistema que está sendo sugerido por este trabalho, é classificado como um sistema especialista. Todos os atributos considerados que serão tratados pela aplicação foram obtidos através de um perito em sistemas de segurança eletrônica, e a aplicação proposta terá como objetivo simular as tomadas de decisão de um especialista, através de regras préestabelecidas. Todas estas variáveis consideradas para o método de apoio à tomada de decisão serão relatadas no capítulo 5. A metodologia utilizada na implementação será a árvore de decisão. Esta foi escolhida por se tratar de uma metodologia simples e robusta para classificação dos eventos, além de ser de fácil entendimento e visualização. Considerando esta escolha, o algoritmo responsável pela obtenção do classificador a partir das regras que serão criadas será o C 4.5. Além de ser o mais utilizado, consta implementado no ambiente Weka. Este ambiente pode ser incorporado a aplicações Java facilmente, e, considerando que esta será a linguagem utilizada para o desenvolvimento da aplicação, facilitará na questão de tempo de implementação.
56 43 5 MODELAGEM DO PROBLEMA 6 Tendo destacado o objetivo da aplicação de realizar o monitoramento de um sistema de segurança residencial, aplicando a este um método para apoio à tomada de decisão para melhor compreensão dos eventos resultantes desta tarefa, deve-se entender como será feito o tratamento de todas as variáveis encontradas no sistema para que a solução se torne apropriada. Em se tratando de sistemas de segurança, classificados como sistemas especialistas 7, foi necessário um estudo de quais informações poderiam ser retiradas do sistema que seriam essenciais para a aplicação de um método para apoio à tomada de decisão. Ao final deste estudo, resultou-se em duas formas de obtenção de conhecimento que seriam importantes para agregar informações ao método: A modelagem genérica, que trata das informações globais e aplicáveis a qualquer residência, sem exceção; As informações específicas, tratando da configuração e projeto de cada residência em especial como: zonas associadas às áreas, tipos de zonas, tipos de áreas, etc. (As informações específicas serão detalhadas na seção 5.2). 5.1 MODELAGEM GENÉRICA Com a problemática definida e visto que uma central de alarmes pode ser revelada como um conjunto de zonas de proteção, centrais de diferentes fabricantes podem ser representadas de uma mesma forma desde que o número de zonas de proteção desta seja idêntico. Sendo assim, é possível para cada central definir uma planta genérica que formalize o comportamento global do sistema, independentemente de questões de projeto (tipos de zonas, sensores, etc). Como já definido, pode-se atribuir para cada zona de proteção, durante o funcionamento do sistema, os valores 0 (fechado) e 1 (aberto) a fim de representar seu estado atual. Sendo assim, de acordo com o funcionamento do sistema, cada estado pode ser demonstrado por uma cadeia binária de n caracteres (sendo n o número de zonas de proteção da central) e cada dígito desta cadeia, lidos da esquerda para a direita, representa a situação de uma zona (aberta ou fechada). Logo, toda a cadeia representa o estado atual do sistema em um dado momento de execução. 6 A modelagem do problema foi desenvolvida no trabalho de Mestrado de Sousa (2009). 7 Sistemas baseados no conhecimento, especialmente projetados para emular a perícia humana de algum domínio de conhecimento (CUNHA, 1995).
57 44 A Tabela 5.1 representa todos os estados possíveis de um sistema de segurança eletrônico. De acordo com o descrito acima, cada evento e é formado pela cadeia binária, onde cada bit corresponde ao estado atual de uma zona de proteção z. O conjunto de estados do sistema é formado por todas as combinações possíveis de cadeias binárias. Por exemplo, para uma central de 2 zonas, os estados possíveis seriam: 00,01,10, 11. Tabela Relação de estados possíveis de um sistema de segurança eletrônica. z 1 z 2 z... 3 z n 1 z n e e e e e n Considerando que somente um evento por vez é percebido pela central de alarme, e que estes eventos resultantes da monitoração do sistema podem ser considerados transições de um estado anterior a um estado posterior, é possível formalizar o sistema através de um autômato finito determinístico (SOUSA, 2009) Autômato Finito Determinístico Um autômato pode ser visto como um modelo matemático ou máquina abstrata reconhecedora de uma determinada linguagem (conjunto de símbolos) que pode representar o comportamento de diversos sistemas de estados finitos. Seu funcionamento é dado em torno da através de percepção de ocorrências, chamadas eventos (MENEZES, 2000). Onde: Um autômato finito determinístico é formalmente discriminado como uma 5-tupla: é o alfabeto de símbolos de entrada; ( Q, δ, q F ) AFD =, Q é o conjunto de estados possíveis do autômato;, 0 δ é a função programa ou função de transição na qual δ : Q Q q 0 é o estado inicial tal que q 0 Q F é o conjunto de estados finais tal que F Q Considerando um autômato finito para a modelagem genérica de um sistema de segurança residencial, a 5-tupla estará relacionada da seguinte forma:
58 45 : conterá a indicação da mudança de estado da zona i correspondente em aberto ( a ) e fechado ( f ). { a, } =, tal que 1 j n, sendo n o número de zonas. i f i Q : indicará todos os estados possíveis do sistema em determinado momento, sendo informações de zonas abertas e fechadas (o número de estados possíveis é dado pela relação num estados 2 n _ =, onde n é o número de zonas disponíveis na central). Q = { 0..00,0..01,0..10,0..11,...,1..11 } δ : tratará de todas as transições possíveis do sistema, desde que não infrinja nenhuma regra estabelecida a seguir. q 0 : o estado inicial ideal do sistema é visto quando todas as zonas de proteção encontram-se fechadas. q = F : todos os estados do modelo podem ser considerados finais, já que isto só ficará evidente à medida que os eventos ocorrerem. Para a criação do modelo, duas questões básicas serão ditas como regras para eventos que podem ser aceitos pelo mesmo: De cada estado é possível a abertura de todas as outras zonas, desde que esta já não esteja aberta. De cada estado é possível fechar todas as zonas já abertas. O autômato da Figura 5.1 é a representação do modelo para uma central com 3 zonas. Nota-se que todas as regras descritas são atendidas e que nele são tratados todos os eventos válidos de um sistema de segurança com este número de zonas de proteção. Figura Autômato para uma central de 3 zonas de proteção.
59 46 Visualizando o modelo e as regras gerais definidas, é possível estabelecer algumas relações e regras específicas para a criação do modelo, de forma a atender qualquer tipo de central de alarme. Algumas já foram definidas anteriormente, como a formação dos estados, os eventos que podem disparar uma mudança de estado, o estado inicial e o final. Faltando somente definir como são estabelecidas as transições, fica estabelecida a seguinte relação: Para cada estado q Q : num _ transições _ abertas = n x Se num _ zonas _ abertas = x, sendo que 0 x n, então num _ transições _ fechadas = x Exemplificando: num _ transições _ abertas = n Se num _ zonas _ abertas = 0, então num _ transições _ fechadas = 0 num _ transições _ abertas = 0 Se num _ zonas _ abertas = n, então num _ transições _ fechadas = n Então, o número de transições para cada estado, somando eventos dos tipos a e f é igual ao número de zonas da central, logo: num _ total _ transições = 2 n n A aplicação do autômato terá como objetivo principal a aceitação de eventos que realmente podem ocorrer durante a monitoração do sistema, evitando erros na aplicação do método para apoio à tomada de decisão. Esta tarefa ficará mais clara no próximo capítulo, quando será evidenciada a aplicação e suas funções. 5.2 MODELAGEM ESPECÍFICA A modelagem específica leva em consideração as informações resultantes do projeto do sistema de segurança para cada residência separadamente. Ao contrário do que se demonstrou na modelagem genérica, cada sistema será constituído de atributos bem específicos que podem ser considerados no método para apoio à tomada de decisão para obtenção do conhecimento requerido. Para que se possa conhecer os dados de projeto que serão consultadas pelo método para gerar informações plausíveis sobre o que está acontecendo na residência, é preciso entender que existem diferentes formas de se tomar uma decisão diante do monitoramento dos eventos da central. Dependendo do tipo de mensagem (evento) decorrente do monitoramento
60 47 de um sistema de segurança, o retorno dado sobre uma ocorrência pode ser classificado segundo três tipos de ação: imediata (I) para ocorrências que exigem ação instantânea, como, por exemplo, assistência médica ou incêndio; combinada (C) para ocorrências cuja tomada de decisão é deduzida através da sequência de eventos ou combinação de informações; e reportagem (R) quando não são passíveis ao método de tomada de decisão, sendo eventos para informação de controle e relatórios. A parte mais crítica da aplicação, como se pode perceber será o tratamento dos eventos combinados através das regras de associação. Diante do estudo sobre o sistema e dos dados que são considerados importantes para a melhor compreensão dos eventos, ficaram evidenciadas relações e classificações de componentes do sistema (SOUSA, 2009), tais como: Tipos de áreas; Relação áreas vs. zonas; Áreas contíguas; Tipos de zonas; Funcionalidade dos sensores. As seções seguintes tratarão de cada uma destas informações que agregará na tomada de decisão do sistema. Para caso de exemplos, a Figura 5.2 será tomada como um projeto de sistema de segurança a ser monitorado por uma central de alarmes. Figura Exemplo de um projeto de sistema de segurança.
61 Tipos de Área Todas as áreas do sistema podem ser identificadas segundo três tipos de classificação 8 : áreas de perímetro (P), áreas externas (E) e áreas internas (I). As áreas de perímetro são as que têm seus limites protegidos, porém são externos à residência em si (ex.: pátio, jardim). As áreas externas são as que permitem acesso direto à residência, geralmente através de portas e janelas. As áreas internas são as que não podem ser acessadas diretamente do meio externo, necessitando que se passe primeiramente por uma ou mais áreas externas para obter o acesso. A Tabela 5.2 evidencia a relação das áreas e seus tipos, conforme projeto de residência da Figura 5.2. Tabela Tabela tipos de área. P E I A A A A A A Esta informação será de suma importância para o método de apoio à tomada de decisão, sendo considerada principalmente nos casos de eventos combinados. Isto ficará mais evidente quando as regras de associação de eventos forem evidenciadas na seção Relação Áreas vs. Zonas Uma residência monitorada pode possuir um conjunto de áreas distintas, que geralmente encontram-se separadas por paredes ou divisórias, denominadas cômodos. Todas as zonas configuradas na central estarão relacionadas a uma área, sendo que cada área sempre será composta por uma ou mais zonas. Considerando a planta da Figura 5.2, a relação entre áreas e zonas seria dada pela Tabela Esta classificação não está relacionada aos tipos de zonas configurados na central de alarme, que possibilita, por exemplo, as zonas 24 horas.
62 49 Tabela Relação áreas vs. zonas. z 1 z 2 z 3 z 4 z 5 z 6 z 7 z 8 z 9 z 10 A A A A A A Áreas contíguas Relação entre áreas que demonstra se determinada área possibilita passagem para outra e vice-versa. A relação de contiguidade no sistema representa a proximidade (vizinhança) entre as áreas da residência. Esta relação é importante, pois, dependendo da sequência de evento e da relação de proximidade entre as áreas, ocorrências distintas podem ser definidas. A Tabela 5.4 representa a relação de contiguidade entre as áreas do exemplo. Tabela 5.4 Relação de contiguidade entre áreas. A 1 A 2 A 3 A 4 A 5 A 6 A A A A A A Tipos de zonas O tipo de zona é deduzido tomando como base o código de evento destacado no protocolo Contact ID, já que o mesmo é configurado na própria central. Sendo assim, não é necessário armazenar os tipos de zona para realizar a tomada de decisão, visto que a tabela disponibilizada pelo protocolo Contact ID será utilizada Funcionalidade dos sensores Cada sensor possui especificações que possibilitam determinada percepção em meio ao sistema de segurança. Para utilização no método aplicado para apoio à tomada de decisão,
63 50 ficou definido que cada sensor poderia ser classificado dentre duas classes distintas levando em consideração sua funcionalidade: os que detectam presença (DP) e os que não detectam presença (NDP). A Tabela 5.5 demonstra esta relação considerando o projeto exemplo. Tabela Funcionamento de sensores (por zona). z 1 z z 2 3 z z 4 5 z 6 z 7 z 8 z 9 z 10 DP NDP Sensores que detectam presença são aqueles que indicam que algum movimento aconteceu em seu determinado raio de percepção, possibilitando a localização do causador do evento (Ex: sensores de presença). Sensores que não detectam movimento percebem alteração no ambiente de acordo com sua função, mas não são capazes de garantir a localização do responsável pelo evento (Ex: sensores magnéticos, sensores de ruptura de vidro). 5.3 CONSIDERAÇÕES PARCIAIS O entendimento dos objetos envolvidos em um sistema de segurança eletrônico é essencial para que seja possível o desenvolvimento de uma aplicação que se baseia nestes objetos. Este capítulo tratou de todas as variáveis que serão consideradas na tomada de decisão, evidenciando o funcionamento de um sistema de segurança e os atributos necessários à comparação e distinção dos eventos. A modelagem dos atributos relacionados à problemática que se está tentando resolver foi desenvolvida pelo trabalho de mestrado de SOUSA (2009). Esse trabalho propõe a utilização desta modelagem na aplicação do método de apoio à tomada de decisão de um sistema que será utilizado pelas empresas contratadas para a vigilância patrimonial, o que o diferencia essencialmente da aplicação proposta pelo projeto descrito até então. A etapa de modelagem do problema é importante para o entendimento básico da aplicação que será desenvolvida. Com base nesta, é possível compreender o funcionamento das relações que serão feitas e tratadas ao longo da execução da aplicação. Dados os principais atributos evidenciados no coração da aplicação (o método para apoio à tomada de decisão) é possível partir para a modelagem da aplicação, evidenciando todos os objetos envolvidos e tarefas disponibilizadas pelo sistema proposto.
64 51 6 MODELAGEM DA APLICAÇÃO Diante dos conceitos apresentados, é possível, neste momento, identificar as funcionalidades da aplicação proposta. O objetivo deste trabalho é desenvolver um sistema que auxilie o entendimento do usuário, dono da residência, quando se trata de eventos decorrentes de seu sistema de segurança residencial. De acordo com a arquitetura do sistema proposto (Figura 6.1), a aplicação será dividida para favorecer a descentralização de processamento da aplicação por parte do celular, utilizando um servidor que guardará o banco de dados de eventos referentes à monitoração do sistema de segurança. Figura Arquitetura do sistema. Cada evento identificado pela central de alarme será armazenado em um servidor interno à residência, que guardará estas informações para posterior pesquisa dos usuários que farão o monitoramento remoto através do celular. O celular manterá comunicação somente com o servidor, baixando as informações geradas por ele sobre os eventos e executando o método de apoio à tomada de decisão para a visualização do usuário. Diante disto, a aplicação proposta deverá permitir as seguintes funções: F1. O usuário poderá monitorar o sistema de segurança da residência em tempo real. F2. O usuário poderá buscar históricos do monitoramento da residência utilizando filtros de data.
65 52 F3. O usuário poderá configurar o tipo de notificação para cada tipo de evento que ocorra durante a monitoração do sistema de segurança e inserir regras específicas à sua residência no sistema. F4. O usuário poderá gerenciar a configuração da aplicação, modificando as regiões da residência associadas às zonas referentes configuradas na central de alarme. F5. O sistema deve permitir o gerenciamento de usuários que podem ter acesso ao serviço de monitoramento da residência. 6.1 CASOS DE USO A partir das necessidades identificadas, as funções que o sistema disponibilizará para o usuário estão dispostas no diagrama de casos de uso da Figura 6.2. Figura Diagrama de Casos de Uso. Nas próximas seções, o funcionamento de cada caso de uso será detalhado e poderá ser visualizado através de diagramas UML. Os diagramas que melhor identificam o
66 53 funcionamento e os objetos envolvidos no caso são os de seqüência, porém nos casos de uso Monitorar em tempo real e Consultar Histórico de Monitoração, o funcionamento será demonstrado através de diagramas de atividades para melhorar o entendimento, abstraindo os objetos que farão parte do caso e considerando as partes da aplicação (Remota, Local e Banco de Dados) Gerenciar usuários Todas as funções disponíveis no sistema necessitarão da aceitação de uma conexão do usuário com o sistema através de um login. Por isso, é necessário que haja algum meio de inclusão, alteração ou remoção de cadastro de usuários. A critério de segurança, a função de gerenciamento de usuários (Figura 6.3) não poderá ser acessada pela parte móvel da aplicação, sendo feita somente localmente, no servidor de informações. Quando o usuário requisitar a entrada no sistema, o servidor que autenticará e possibilitará a execução de tarefas do sistema no dispositivo móvel. Figura Diagrama de sequência - Gerenciar Usuários Configurar Regras e Notificações A função de configurar regras e notificações permitirá o gerenciamento das regras e
67 54 notificações utilizadas na tomada de decisão, além de garantir que novas regras possam ser adicionadas para incrementar a árvore de decisão caso necessário. Esta função só estará disponível na aplicação servidora. As notificações seriam as saídas dadas pelo sistema caso tal evento ou sequência de eventos ocorra no ambiente monitorado. Ao usuário será dada a capacidade de modificar estas notificações a seu próprio critério. Estas configurações serão agregadas ao próprio cadastro da residência, evidenciando que todo usuário que monitore tal residência compartilhará as mesmas informações. A qualquer tempo, se o usuário requisitar, será possível retornar as notificações para sua configuração inicial, sendo que estas estarão guardadas no banco de dados para eventual uso por parte dos usuários. O funcionamento deste caso de uso está sendo evidenciado pela Figura 6.4. Figura Diagrama de sequência - Configurar regras Gerenciar residência O gerenciamento de residência terá como função modificar/atualizar algumas das características do sistema de segurança, como, por exemplo, a associação de zonas com cômodos da residência. Esta funcionalidade será permitida, assim como o gerenciamento de usuários e a configuração de regras e notificações, somente em acesso local, sendo que, qualquer mudança nesta configuração afetará todos os usuários da aplicação. O funcionamento deste caso de uso está explicitado na Figura 6.5.
68 55 Figura Diagrama de sequência - Gerenciar sistema de segurança Monitorar em tempo real A monitoração em tempo real consistirá no recebimento dos eventos decorrentes da monitoração do sistema de segurança, por parte do usuário, no momento em que estes eventos ocorrem. Para habilitar esta função, o usuário deve escolher a opção de monitoramento em tempo real disponível na tela principal da aplicação. A partir deste momento, a parte móvel da aplicação buscará os eventos liberados pela central de alarme no servidor, com horário superior ao registrado como o horário de escolha do usuário pela opção de monitoramento em tempo real. A aplicação irá reconhecer estes eventos e o método de apoio à tomada de decisão será executado, no celular, de acordo com o recebimento das notificações através da comunicação estabelecida entre celular e servidor. A opção de monitoramento em tempo real só será finalizada quando o usuário escolher a opção Parar monitoramento, disponível durante todo o processo de monitoração ou se algum problema quanto à conexão entre os equipamentos acontecer. A Figura 6.6 demonstra o diagrama das atividades que compõem a monitoração em tempo real. O usuário, inicialmente conectado ao servidor, requisitará a tarefa e aguardará o envio das informações de eventos pelo servidor. O servidor, por sua vez, será o responsável
69 56 por buscar os eventos que estiverem ocorrendo na residência, transformá-los em um formato utilizado para a tomada de decisão (formato explicado na seção 6.3) e enviá-los ao celular, voltando a aguardar novas requisições por parte da aplicação móvel. Além disto, depende do servidor utilizar a modelagem feita do sistema através do autômato para verificar se é possível a ocorrência do determinado evento naquele momento ou se houve algum erro no processo de transmissão dos dados. Se não existir transição no autômato para o evento encontrado, o sistema acusa um erro e a aplicação da árvore de decisão não é possível, já que não há como saber ao certo qual é a situação do sistema (o estado atual, considerando os elementos do autômato) naquele instante. Figura Diagrama de atividades - Monitoração em tempo real. Então, o celular recupera os dados enviados pelo servidor e aplica a árvore de decisão
70 57 em busca de encontrar o identificador da classe adequada àquele evento. Obtendo a classe, o celular requisita ao servidor os dados relativos a ela para que só após isto os dados estejam prontos para a visualização do usuário. A aplicação então volta ao passo de requisição de eventos pelo celular, executando os procedimentos novamente, até que o usuário queira interromper a aplicação Consultar histórico de monitoração A consulta do histórico de eventos percebidos na residência identificará eventos já ocorridos no sistema de segurança utilizando critérios de períodos de tempo (intervalos de datas). A monitoração com filtros, se escolhida pelo usuário, pedirá a entrada de dados para que os critérios de filtragem possam ser estabelecidos, buscando somente os eventos que os respeitem. O funcionamento deste caso de uso se dará do modo descrito na Figura 6.7. Figura Diagrama de atividades - Histórico de monitoração.
71 58 O usuário, anteriormente conectado à aplicação, requisitará a opção de histórico de monitoração através do celular, enviando ao servidor a tarefa escolhida e os critérios a serem utilizados como filtro para obtenção dos eventos. O servidor então consultará o banco de dados na busca destas ocorrências e transformará os eventos no formato utilizado para a tomada de decisão (este formato será explicado na seção 6.3) de forma a facilitar a aplicação da árvore de decisão por parte do celular. Transformados os eventos, o celular os recebe e aplica o método de decisão, obtendo o identificador da classe a qual o evento foi classificado. Então, a aplicação móvel requisita as informações referentes a esta classe específica ao servidor, que consulta no banco de dados e retorna os dados requeridos ao celular. Este interpreta os dados e mostra ao usuário, finalizando o caso de uso. 6.2 BANCO DE DADOS Diante dos dados necessários descritos ao longo deste trabalho é possível estabelecer as entidades que compõem o banco de dados. A Tabela 6.1 representa as entidades que serão utilizadas na aplicação. Tabela Entidades consideradas e suas respectivas descrições. Entidade Usuário Residência Contact ID Log Regra Classe Descrição Dados cadastrais do usuário em questão que mantém o relacionamento com uma residência. Informações sobre a residência monitorada como: número de zonas, número de cômodos e as relações necessárias para a tomada de decisão. Dados dos eventos possíveis em uma residência monitorada (de acordo com o manual do Contact ID). Relação de todos os eventos decorrentes no tempo em uma residência. Regras de associação para a tomada de decisão. Cada regra de associação estará relacionada a uma classe. Classificação das regras (esta entidade guardará as soluções ou avisos que o sistema mostrará quando determinada regra acontecer). Cada entidade será tratada de forma apropriada e quando necessário pela aplicação através de uma tabela no banco de dados. Os relacionamentos impostos e cada campo pertencente a esta tabela estão evidenciados no Diagrama de Entidade-Relacionamento da Figura 6.8.
72 59 Figura Diagrama Entidade-Relacionamento do Banco de Dados. 6.3 REGRAS DE ASSOCIAÇÃO E CLASSIFICAÇÃO Como já explicado anteriormente, regras de associação descrevem padrões de relacionamentos entre premissas, originando uma classificação (conclusão). No caso do sistema proposto, tendo muitas variáveis envolvidas, necessita-se explicar como estas regras serão formadas e como serão tratadas durante a execução da aplicação. Cada regra será formada por um conjunto de atributos e uma classificação. No decorrer da execução da aplicação, tal como na própria regra, será perceptível que esta classificação pode ser de dois tipos: final e parcial. A decisão final é tomada em casos de urgência ou quando o tempo limite para tomada de decisão estiver esgotado. A decisão parcial é dada quando uma regra poderá fazer parte de uma combinação de regras, tornando as informações dadas parcialmente, mais robustas à medida que outros eventos ocorram. Considerando todos os atributos e relações do sistema que seriam úteis para melhor classificação dos eventos e, consequentemente, obter a melhor decisão a partir do ocorrido, ficaram evidentes 10 (dez) que serão utilizados:
73 60 a 1: conterá a informação disponibilizada pelo protocolo Contact ID indicando o evento ocorrido (campo XYZ); a 2 : conterá a informação disponibilizada pelo protocolo Contact ID qualificando o evento ocorrido em abertura (A), fechamento (F) ou reportagem (R); a 3 : demonstrará qual o tipo de ação sobre esta regra determinada, classificando em: imediata (I), combinada (C) ou reportagem (R). Esta informação será obtida através do código XYZ, cuja informação necessária estará contida na tabela evento; a : identificará o tipo de área que originou o evento: perímetro (P), externa (E) e interna(i). 4 a 5 : em caso de ações combinadas (que dependem de outros eventos para a classificação) esta área conterá o código da regra que deve acontecer anteriormente a esta para que a classificação seja correta. Em caso de ações imediatas ou reportagem, este código será igual a 0 (não sendo associado à nenhuma regra da tabela). a 6 : em caso de ações combinadas este atributo indicará a relação de contiguidade entre as áreas. a 7 : este atributo indicará a funcionalidade do sensor que detectou o evento, classificada em: detecta presença (S) e não detecta presença (N). 8 a : indicará se determinada ação está dentro do limite de tempo de tomada de decisão prédefinido para cada residência (indicando que a decisão pode não ser final) ou se está fora deste limite (indicando que a decisão deve ser final e imediata). a : demonstrará se a zona onde o evento ocorreu é a mesma zona do evento anterior. 9 a : indicará o tipo de decisão tomada a partir desta regra: final (F) ou parcial (P). 10 Logo, toda regra pode ser formalizada pela seguinte expressão: R = a 1 a2 a3 a4 a5 a6 a7 a8 a9 a10 Todo evento da central de alarme então será descrito desta maneira, transformando os dados obtidos no formato Contact ID e transformando no formato das premissas de uma regra. Esses atributos serão analisados na árvore de decisão, que utiliza as regras existentes no banco de dados, a fim de se obter a classificação. Como tratado anteriormente, toda regra será classificada de alguma maneira, mesmo que a decisão tomada não seja considerada final. Logo, cada regra terá uma classe associada, e, em casos de ações combinadas, essa regra será utilizada como parâmetro para o próximo evento que ocorrer.
74 CONSIDERAÇÕES PARCIAIS Os casos de uso identificados neste capítulo são as funcionalidades disponíveis na aplicação que permitem a interação do usuário com o sistema de segurança residencial. A partir do estabelecimento das necessidades e funcionalidades do sistema e da sua modelagem, é possível desenvolvê-lo de acordo com estas especificações. Diante disto, é possível perceber que o sistema proposto é composto por duas aplicações interligadas: a parte móvel disponível no celular, que possibilitará a interação remota do usuário com o sistema de segurança; e a parte fixa disponível no servidor, que conterá todas as informações sobre o sistema armazenadas em banco de dados, além de permitir funções de gerenciamento do mesmo. A aplicação móvel proporcionará as principais funções permitidas pelo sistema: as tarefas de monitoração. São estas que permitirão o conhecimento do usuário sobre as ocorrências do sistema de segurança, garantindo o entendimento dos eventos em uma linguagem mais simples e visual. A aplicação servidora terá o objetivo de transmitir mensagens à aplicação móvel, além de permitir algumas funções de gerenciamento, destinada a usuários com maior entendimento do sistema de segurança e de suas opções de configuração. Estas duas aplicações estarão em intensa comunicação, trocando informações a fim de possibilitar as tarefas propostas. Além disso, ainda haverá a comunicação entre painel de alarme e servidor, que tratará do recebimento de ocorrências da residência e inserção destas no banco de dados. No próximo capítulo, toda a modelagem proposta nos capítulos 5 e 6 será evidenciada através da implementação das tarefas. Estas se utilizarão um ambiente de estudo composto pela central de alarme, pelo servidor e pelo celular disponíveis, a fim de permitir melhor entendimento quanto a todos os objetos de estudo descritos ao longo deste trabalho.
75 62 7 VALIDAÇÃO E TESTES Após a definição de todos os componentes envolvidos no sistema, o desenvolvimento da aplicação é possível. Cada elemento tratado durante o trabalho será utilizado nesta etapa de implementação. Ao longo deste capítulo, todos os testes para verificação do funcionamento do sistema serão discutidos, além das dificuldades encontradas nesta fase quanto a questões não consideradas nas etapas de modelagem. Para dar início a este capítulo, se faz necessária a descrição dos equipamentos utilizados para o provimento do serviço proposto. A Figura 7.1 demonstra todos estes equipamentos envolvidos para a monitoração remota do sistema de segurança. Na residência estarão alocados a central, um módulo de comunicação e o servidor. A central é ligada ao módulo de comunicação, que provê conectividade em redes TCP/IP para transmissão das mensagens. Estas mensagens de eventos percebidos pela central são transmitidas ao servidor utilizando a rede local no formato do Contact ID. Ao receber estas informações, o servidor faz rotinas de tratamento e armazena o resultado destas rotinas no banco de dados, a fim de consultas futuras pelas funções de monitoração. Figura Arquitetura e equipamentos necessários para a aplicação. Na outra ponta do sistema estará o usuário com o seu dispositivo móvel. A conectividade entre o sistema residencial e o celular é dada através da conexão do celular em alguma rede IEEE que permita o acesso à Internet. A definição dos equipamentos disponíveis que sejam compatíveis e que tornem possíveis as tarefas sugeridas na modelagem estão descritos na Tabela 7.1.
76 63 Tabela Equipamentos disponíveis para testes. Equipamento Centrais de alarme Módulo de comunicação Servidor Celulares Descrição Paradox Esprit 728 series (PARADOX, 2004), com a possibilidade de configuração de até 10 zonas de proteção; Innovanet 558 (INNOVANET, 2009), com a possibilidade de configuração de até 4 zonas de proteção. Ambas as centrais utilizam o protocolo Contact ID como formato de transmissão de mensagens. Viaweb Ethernet (VIAWEB, 2009). Computador Intel Celeron 2,13MHz, 1GB de memória RAM, com a instalação do gerenciador de banco de dados Mysql e da máquina virtual Java. Nokia E65, com processador ARM9 220Mhz e 64MB de memória RAM; Nokia N81, com processador ARM11 369Mhz, 128MB de memória RAM. Ambos os celulares possuem conectividade através do protocolo IEEE g e permitem aplicativos em J2ME. Tendo os equipamentos disponíveis, foi possível então iniciar a implementação. As próximas seções tratarão das partes principais da aplicação e de algumas funções específicas desenvolvidas para os testes necessários à validação do trabalho. 7.1 INTERFACE SERVIDOR O objetivo da construção de uma interface para a aplicação servidora é, além de garantir a troca de informações entre celular e central de alarme, possibilitar o gerenciamento das principais entidades manipuladas pelo sistema: usuários, residência, regras e classes (notificações). Tendo isto em vista, a parte da aplicação disponibilizada no servidor foi desenvolvida, em sua maioria, utilizando a plataforma de desenvolvimento J2SE (SUN, 2009), a fim de disponibilizar essas funções e algumas outras implementadas para agregar no ambiente de testes utilizado. Visando a segurança da aplicação, o acesso à aplicação é dado através de uma tela de entrada, que requisita usuário e senha (Figura 7.2.a). A partir da entrada dos dados corretos, o acesso é permitido e o usuário poderá interagir com a aplicação, através das funções disponibilizadas no menu principal da mesma (Figura 7.2.b). (a) (b) Figura Tela de entrada no sistema (a); tela de opções de tarefas(b).
77 64 A partir daí o usuário poderá acessar quaisquer funções disponíveis, de acordo com o projeto da aplicação descrito no capítulo 6: gerenciar o projeto da residência monitorada, configurar regras e notificações para o apoio à tomada de decisão e gerenciar os usuários que poderão fazer o acesso à aplicação. Cada uma destas tarefas é explicada com detalhes nas próximas seções Gerenciamento de residência e de usuários A gerência da residência permite a representação do sistema, em relação aos atributos envolvidos com a configuração geral e de projeto da residência. Questões como número de zonas, relações necessárias à tomada de decisão diretamente ligadas à residência (tipos de áreas, função de sensores, áreas contíguas, lista de cômodos,...) podem ser modificadas pelo usuário, desde que este tenha conhecimento destas configurações e do sistema de segurança eletrônico em geral. A Figura 7.3 evidencia a tela de gerenciamento da residência e pode-se verificar cada um destes atributos no cadastro de uma residência. Figura Tela de gerenciamento de projetos de residências. Considerando esta aplicação para utilização em residências, um único cadastro se faz necessário: o do patrimônio a ser monitorado. Na parte inferior da tela é possível perceber vários cadastros de residências. Isto foi feito para possibilitar testes com vários tipos de
78 65 residências, facilitando na entrada dos dados de projeto de cada uma delas. Para definir qual a residência a ser monitorada, uma marcação é feita através do atributo residência padrão. A gerência de usuários tem como objetivo garantir o acesso à aplicação através de cadastros de usuário. Cada usuário terá seu próprio cadastro e através de um nome de usuário e senha, poderá acessar, tanto informações gerenciais, no servidor, quanto informações de monitoração, através do dispositivo móvel. A Figura 7.4 demonstra a tela de gerenciamento de usuários. Através dela é possível: cadastrar novos usuários, visualizar e editar dados de cadastros já feitos e excluir cadastros já não necessários. Figura Gerenciamento de usuários do sistema de segurança residencial Configurar regras e notificações A configuração de regras e notificações tem como objetivo proporcionar um ambiente onde as regras gerais e classificações destas regras sejam inseridas de modo simples. Estas inserções devem ser feitas junto com a configuração do sistema de segurança, visto que são elas que tratarão os eventos da central e darão informações aos usuários. Na Figura 7.5 é possível a visualização da tela principal de cadastros de regras e notificações.
79 66 Figura Gerenciamento de regras e classes. Assim como o gerenciamento do projeto da residência e dos usuários, esta tarefa também permite a inserção de novas regras e/ou classes (notificações) e a modificação de parâmetros das mesmas se necessário, além da exclusão de registros. Esta ferramenta foi implementada de um modo bem simples tratando de todos os atributos necessários aos objetos envolvidos no sistema, porém, para o usuário leigo sobre o sistema de segurança residencial, a utilização da mesma fica complicada especialmente porque a mudança de uma só regra pode afetar o funcionamento de todo o sistema. Esta função seria mais interessante para o instalador do sistema de segurança, por exemplo, que possui maiores conhecimentos sobre as ocorrências possíveis e sobre como as regras podem tratá-las de modo apropriado. De qualquer maneira, por padrão, toda residência inicia com uma série de regras pré-cadastradas, que atenda de modo generalizado às exigências da aplicação. 7.2 TRANSFERÊNCIA DE DADOS Como já exposto anteriormente, para a implementação da aplicação serão necessárias duas formas diferenciadas de troca de mensagens: entre central e servidor, através do módulo de comunicação; e entre servidor e celular.
80 Comunicação Central-Servidor A comunicação entre central e servidor é provida pelo intermédio do módulo de comunicação, que resgata os dados obtidos pela central de alarme e transmite ao servidor de eventos. Na Figura 7.6 estão sendo mostrados os aplicativos desenvolvidos para este fim. O servidor de eventos (a) estará o tempo todo aguardando o recebimento de eventos do painel de alarme e, a partir deste recebimento insere os dados recebidos no banco de dados para uso posterior. (b) (a) (c) Figura Servidor de eventos (a); Central virtual implementada para testes (b); Central virtual disponibilizada pela Viaweb (c). Para testes sem a utilização de uma central real, foi criada uma central virtual (b), que passa os dados referentes ao evento (protocolo Contact ID) ao servidor através de uma interface cliente-servidor utilizando o protocolo TCP/IP. A empresa fabricante do módulo de comunicação Viaweb Ethernet também disponibiliza uma central virtual para testes (c), porém com recursos limitados - é possível fazer a comunicação com o servidor, porém são poucos os eventos transmitidos (ex.: arma / desarma painel de alarmes, abertura / restabelecimento de uma [somente uma] zona de proteção). Além de receber os eventos resultantes da monitoração, o servidor de eventos também
81 68 é encarregado de tratar estes eventos através da modelagem comportamental (autômato). A cada evento ocorrido, o servidor identifica uma transição de estados e armazena o estado atual, juntamente com as informações do evento. O último estado percebido identifica o estado atual da central de alarme, e é usado para a próxima transição a fim de identificar possíveis perdas de informação ou erros do sistema. A comunicação entre central e servidor foi a única parte da aplicação desenvolvida utilizando outra linguagem: o Delphi (BORLAND, 2009). Foi assim desenvolvida pela facilidade do Delphi em se trabalhar com DLL s, já que o módulo Viaweb só permite comunicação através de uma DLL (Viawebdll.dll). Portanto, se o módulo de comunicação não for o mesmo, será esta parte da aplicação a ser modificada, possibilitando uma maior aplicabilidade do sistema proposto Comunicação Servidor-Celular A comunicação entre servidor e celular será a responsável por todo o envio de eventos para a aplicação da parte móvel. Esta comunicação foi implementada utilizando uma arquitetura cliente-servidor, onde o cliente requisitador do serviço é o celular e o provedor do serviço é o servidor. O funcionamento desta comunicação está explicitada na Figura 7.7. Figura Comunicação cliente (celular) x servidor. O servidor, ao ser iniciado, aguarda a conexão de algum cliente que requisitará o serviço (abertura do aplicação no celular). A partir do momento que existe um cliente conectado, todos os objetos que possibilitarão a comunicação (entrada e saída de dados) são instanciados, em ambos os lados da aplicação. O cliente conhece todas as tarefas disponíveis no servidor através de um identificador
82 69 (inteiro). Com base nisto, a cada requisição por uma tarefa do servidor, o cliente envia o inteiro que identifica a tarefa requisitada e aguarda o envio das informações referentes a este pedido. O servidor, por sua vez, identifica a tarefa e executa funções que retornarão a informação exigida pela cliente. Este processo do envio do identificador para o recebimento das informações do servidor é repetido pelo cliente quantas vezes forem necessárias, até o término da aplicação. A desconexão acontece através da finalização da aplicação cliente ou a perda de conexão. Em ambos os casos o servidor perceberá que não existe cliente conectado e finalizará a sessão anterior, instanciando novos objetos para possibilitar uma nova sessão com um novo cliente. É importante destacar que somente um usuário poderá se conectar ao servidor por vez, visto que o servidor só consegue controlar os pedidos de um único cliente. Então, somente um usuário poderá fazer a monitoração e, durante o período em que este usuário estiver conectado, nenhum outro cliente conseguirá requisitar o serviço disponibilizado pelo servidor. Esta será uma restrição da aplicação, porém não afetará o objetivo principal de monitoração do sistema de segurança e poderá ser implementada futuramente. 7.3 INTERFACE CLIENTE A interface cliente será a disponibilizada através do celular. Esta parte da implementação foi desenvolvida utilizando a tecnologia J2ME (SUN, 2009), com o auxílio da biblioteca LWUIT (LWUIT, 2009), que facilita o desenvolvimento da interface gráfica de aplicações para celulares utilizando a tecnologia J2ME. O acesso à aplicação é dado sempre através da tela de entrada (Figura 7.8.a). Neste momento, a conexão ao servidor é instanciada de forma a permitir a transmissão de dados. O usuário então preenche os campos requeridos (usuário e senha) e tenta a entrada no sistema. A aplicação móvel requisita então ao servidor a confirmação de que os dados passados pelo usuário existem no banco de dados e se os mesmos estão corretos. Se existirem, o acesso é confirmado e o menu de tarefas disponíveis é aberto (Figura 7.8.b). Se não, o erro é informado ao usuário que pode tentar o acesso novamente (Figura 7.8.c).
83 70 Figura Entrada no sistema de monitoração (a); Menu principal da aplicação (b); Erro na entrada de um usuário (c). Garantindo a entrada no sistema, o usuário poderá escolher as tarefas que desejará desempenhar. Neste momento, em que essa escolha é possível, o cliente requisita a árvore de decisão que será utilizada na classificação dos eventos da aplicação, garantindo que em nenhum outro momento, desde a entrada no sistema até a finalização da aplicação, estes dados sejam requisitados ao servidor novamente. A árvore é armazenada para utilização posterior quando necessária Monitoração em tempo real e histórico de monitoração A escolha da monitoração em tempo real possibilita ao usuário acompanhar os eventos decorrentes na residência a partir do momento em que esta opção é selecionada. A cada intervalo de tempo, definido por padrão como 20 segundos (e podendo ser modificado pelo usuário), o celular faz uma requisição ao servidor de informações, que verifica se, a partir da última checagem, houve algum evento na residência. Se houver, o servidor verifica se este evento está dentro dos padrões de modelagem controlados através do autômato finito pelas transições possíveis de cada estado do sistema de segurança, e, se sim, encaminha as informações relativas a este evento para que o celular aplique a árvore de decisão e o usuário visualize o resultado. Se não houverem transições para o evento determinado, o celular identifica o erro ocorrido e o serviço de monitoração pára, já que não é possível saber ao certo o estado do sistema naquele momento após a detecção do erro. A tela inicial de monitoração em tempo real é uma simples lista dos eventos ocorridos, ordenados pela data em que estes aconteceram. Cada elemento da lista demonstra o cômodo relacionado ao evento e uma imagem que identifica o tipo de ocorrência e até sua prioridade
84 71 (Figura 7.9.a). Selecionando um evento, é possível verificar com mais detalhes o ocorrido, através da notificação cadastrada para cada tipo de classificação (Figura 7.9.b). No modo de detalhes também é possível a navegação, podendo voltar ao modo de lista quando requerido pelo usuário. Figura Lista de eventos decorrentes da monitoração (a); Detalhes de um evento selecionado (b). O histórico de monitoração utiliza as mesmas interfaces disponíveis para a monitoração em tempo real, com a diferença de que todos os eventos são determinados em uma única consulta ao servidor, através da filtragem no intervalo de datas passado pelo usuário (Figura 7.10). Figura Tela de histórico de monitoração (a); calendário para escolha de datas (b). Com o recebimento de todos os eventos pelo celular, o mesmo aplica o método