SATA - SISTEMA DE ALARME VIA TWITTER COM ARDUINO Gabriel Senna de Oliveira; Matheus Henrique Ramos Lemos; André Luís Del Mestre Martins 1. Aluno do 2º ano, Curso Técnico Integrado de Informática, Instituto Federal Sul-rio-grandense (IFSul) - campus Charqueadas 2. Aluno do 2º ano, Curso Técnico Integrado de Mecatrônica 3. Orientador, Instituto Federal Sul-rio-grandense (IFSul) - campus Charqueadas 1 Introdução Quando alarme é disparado, a maioria dos alarmes emite um sinal sonoro extremamente alto para chamar a atenção que naquele local algo incomum pode estar acontecendo. Existem algumas limitações para os alarmes que apenas emitem sinais sonoros: • o alcance do alarme limita-se à vizinhança do local em que está instalado, isso se houver vizinhança; • as pessoas que estão no raio de alcance do alarme podem não escutá-lo por estarem em um ambiente isolado acusticamente. Alguém com um fone de ouvido com som alto ou dormindo em um quarto, por exemplo; • o dono do imóvel onde está localizado o alarme geralmente não está próximo para tomar as devidas providências. Esperar que alguém ao redor tome alguma atitude ao ouvir o alarme pode demorar muito tempo; • no caso de furtos, o criminoso também saberá que o alarme foi disparado e irá acelerar sua ação. Com a popularização das redes sociais e da internet, uma nova possibilidade para alertar as pessoas sobre o que está acontecendo em qualquer lugar está em evidência. Ao integrar um alarme com redes sociais, as limitações de um sistema sonoro seriam eliminadas ou minimizadas. Algumas redes sociais, como o Twitter, permitem enviar e receber atualizações pessoais de um usuário em tempo real e enviá-las a outros usuários que tenham optado por recebê-las. Ou seja, ao enviar uma mensagem com o Twitter, todos os seguidores receberão a mensagem no momento em que ela foi enviada, sem a necessidade de acessar o perfil ou página da pessoa que enviou a mensagem. No Twitter ainda há a possibilidade de chamar a atenção de um usuário específico, aumentando as chances da mensagem ser visualizada. Além disso, o Twitter pode ser integrado a emails, blogs, celulares, sem a necessidade de estar logado no site para receber alguma mensagem. Nesse contexto, o raio de alcance de um alarme integrado a uma rede social, como o Twitter, é o proprietário do alarme e seus seguidores. A quantidade de pessoas nesse universo pode ser menor que a vizinhança na qual está localizado o alarme, mas com certeza serão pessoas que se interessam mais por esta informação do que sua vizinhança, pois ao menos quem está na rede social do dono do alarme, além de conhecê-lo, provavelmente tem o contato dele. Um alarme integrado em uma rede social que utiliza o envio de mensagens em rede possibilita que as pessoas que estão recebendo a mensagem saibam exatamente do que se trata imediatamente. Um alarme sonoro pode ser confundido com sirenes ou simplesmente as pessoas podem demorar a perceber o propósito do alerta. O dono do local com o alarme e seus seguidores estarão cientes de que seu alarme foi disparado imediamente, desde que ele estejam na internet ou portando um celular. Isso possibilita que as devidas providências possam ser tomadas muito mais rápidas e com maior eficácia. Finalmente, um alarme integrado com rede social não precisa de um sinal sonoro, pois este sinal alerta também o criminoso em caso de furto, acelerando sua ação. Assim, este modelo de alarme é mais discreto e, consequentemente, mais eficiente. 2 Objetivo O objetivo desse trabalho é desenvolver um alarme residencial integrado a uma das redes sociais mais usadas no mundo, o Twitter, utilizando a plataforma de prototipagem eletrônica Arduino. O Twitter foi escolhido porque as pessoas podem receber automaticamente mensagens em seu celular ou email sem precisar acessar ou procurar, aumentando as chances da pessoa saber o que está acontecendo na sua casa. 3 Metodologia Antes de desenvolver o projeto, há um aprendizado bem grande a ser absorvido, pois o principal objeto de pesquisa, o Arduino, não é abordado em qualquer disciplina dentro da escola. Portanto, dividiu-se o projeto em duas grandes etapas, sendo uma para o aprendizado das ferramentas que serão utilizadas e outra etapa para o desenvolvimento do projeto em si. Portanto, para desenvolver o projeto decidiu-se utilizar a seguinte metodologia: Estudo e familiarização da IDE do Arduino: nessa primeira etapa, fizemos o download do programa e nos familiarizamos com o funcionamento dele. O software é um Ambiente de Desenvolvimento Integrado (IDE - Integrated Development Environment) que contém basicamente um editor de textos e um compilador. No editor de textos o desenvolvedor deve escrever código usando a linguagem de programação Arduino, que é muito similar ao C. Em seguida, o usuário compila o código. Caso o compilador não encontre problemas no código, o usuário carrega o código fonte para o Arduino que está conectado ao computador através de uma porta USB, escolhendo o modelo de Arduino adequado. Ligar um LED com Arduino: para se familiarizar com a IDE do Arduino, é necessário que se desenvolva um projeto simples para testes. Não há nada mais simples em eletrônica que ligar um led. Portanto, nesta parte do projeto, é necessário aprender como ligar um led, não somente pela parte de programação, como também pela parte eletrônica, que envolve a ligação dos fios que farão esse led funcionar. Enviar um sinal do arduino para o computador através de uma rede com protocolo IP: após dominar o software do Arduino e conseguir ligar um LED com ele, adiciona-se o Ethernet Shield. O Ethernet Shield é uma placa extensora do Arduino que serve para conectar o arduino na internet (BUENO, 2012). Nesta etapa o desafio é aprender a enviar um sinal qualquer do computador por um protocolo IP via internet do Arduino para um servidor. Enviar uma mensagem no Twitter com um sinal enviado pelo Arduino: após aprender a usar o Ethernet Shield, é necessário aprender a enviar uma mensagem no Twitter através do Arduino. Há uma biblioteca que permite que o Arduino envie mensagens no Twitter de maneira indireta. É feito um cadastro de login e senha em um site que irá realizar o disparo da mensagem no Twitter. Programar SATA: após a finalização da etapa de estudos, será desenvolvido o código que implementa o alarme. Caso o alarme seja disparado, ele envia alguma mensagem no Twitter. Em seguida, o Arduino será colocado na internet através de um servidor de internet. Projetar circuito eletrônico do SATA: nessa parte, haverá a implantação do hardware no local desejado. Primeiramente será instalado um sensor em uma janela e outro em uma porta. Em seguida, o alarme será ativado. Os sensores serão monitorados pelo Arduino e quando um dos sensores for ativado, o alarme deve ser disparado. Desenvolvimento O desenvolvimento do protótipo de alarme foi divido em duas partes: (1) Projeto da maquete e circuito eletrônico: a maquete possui sensores instalados na porta e janela, sendo fundamental para a realização de simulações. O circuito eletrônico, implementado em placa padrão, tem como principais componentes o retificador controlado de silício (SCR), os sensores reed switches e a sirene. (2) Tweetando do Arduino: para conectar o Arduino na internet, é necessário conectar uma placa de extensão chamada Ethernet Shield. Em seguida, o Shield é colocado na rede. Posteriormente, foi escrito o código para que o Arduino realize um post e controle o alarme. Configurados o IP e a máscara de sub-rede, o programa foi compilado e o tweet foi postado na internet. Maquete: A maquete foi projetada com material de MDF, placa de fibra de média densidade, material oriundo da madeira, fabricado com resinas sintéticas. Um material mais resistente foi utilizado para ser a base da maquete. A parte frontal, onde estão localizadas a porta e a janela, e uma das abas do telhado são móveis. Desta forma, a fixação dos sensores e a implementação do circuito SATA será facilitada. Circuito eletrônico: O circuito eletrônico foi montado em placa padrão, sendo necessários os seguintes componentes: 2 interruptores magnéticos Reed Switches; 1 resistor de 15 K Ω 1/8 Watts; 1 capacitor eletrolítico de 1 micro Farad e 22 Volts; 1 sirene para alarme 12 Volts; 2 metros de fio paralelo para circuito de alarme; 1 retificador controlado de silício (SCR); 1 diodo 1N4007; 1 fusível de 5 A; 1 interruptor de pressão; Fios para ligações; Placa padrão. O circuito poderá ser alimentado por fontes de 5 a 12 Volts. Porém, com menos de 12 Volts, o som de disparo da sirene diminuirá. Figura 2 – Esquemático do Circuito Os materiais eletrônicos foram colocados na placa padrão, conforme o esquemático. Após isso, fizemos a marcação da trilha com caneta hidrocor. Depois, os componentes foram soldados na placa. Por fim, a soldagem da trilha foi realizada. Foram deixadas duas “esperas” para o Arduino: um fio que sai do positivo da sirene e um fio que sai dos sensores. Com o circuito SATA pronto, testes e medições com circuito aberto e fechado foram realizados. Circuito aberto: verificou-se que a tensão sobre a sirene é igual a da fonte, 12 Volts. Desta forma, a sirene é acionada. Circuito fechado: a tensão sobre a sirene é igual a 0 Volts, ou seja, a tensão da fonte não entra na malha onde está localizada a sirene. Tweetando do Arduino: O Ambiente de Desenvolvimento Integrado (IDE) do Arduino é um software que serve para criar os códigos que virão a ser compilados para o Arduino. Porém, para isso acontecer é necessário que o Arduino esteja conectado ao computador, todavia mesmo sem o Arduino é possível faz testes virtuais através de um monitor de série que vem no software. Os programas escritos com a IDE do Arduino são compilados e transferidos para a placa de prototipagem, que então virá a realizar a tarefa que o código determinar. A IDE do Arduino e os drivers para a utilização da placa podem ser baixados gratuitamente do site oficial. Este aplicativo funciona de forma simples. O Arduino se conecta a um site que efetua a conexão com o Twitter e faz o disparo. Ou seja, a conexão não é direta. Porém, para que não seja necessário passar login e senha pelo programa, é preciso um Token (chave codificada) que vai fazer a substituição. Esse Token, que é feito num site com autorização do Twitter, cria um código que representará a conta desejada. O Token serve para que o usuário não precise ficar com a sua conta logada o tempo todo. Depois é só fazer o download das bibliotecas que serão usadas, na pasta library, e rodar o programa que ficará carregado junto com os exemplos. O IP deve ser configurado conforme a sua rede e o Token inserido no código. Figura 3 – Tweet proveniente do SATA 4 Resultados e discussão Será realizado um teste do SATA com uma conta de usuário verdadeira no Twitter. Será solicitado para alguns voluntários da escola que tenham conta no Twitter e que eles sigam o usuário do alarme SATA. Entretanto não será especificado o porquê dessa solicitação. A intenção com esse teste é observar: • qual a porcentagem de seguidores do usuário SATA observaram que o alarme disparou; • em relação às pessoas que perceberam o alarme, quanto tempo demoraram para perceber que o alarme foi disparado e • qual foi providência que o seguidor do usuário SATA teve ao ler a mensagem do alarme e quanto tempo demorou para realizá-la. Após a extração dos dados supracitados, a realização da comparação de um alarme convencional e do SATA será realizada e uma análise dos dados buscarão identificar se realmente as vantagens do alarme utilizando redes sociais em relação a rapidez, precisão, alcance e discrição da informação são atingidas. 5 Conclusão Este trabalho apresenta um alarme residencial que utiliza redes sociais chamado SATA. O protótipo do SATA foi desenvolvido na plataforma de prototipagem eletrônica Arduino com uma placa de expansão para conexão com a internet. Toda a programação da protótipo foi desenvolvida na IDE fornecida pela fabricante do Arduino. Um circuito eletrônico para o alarme foi desenvolvido e ligado ao Arduino já programado. O software desenvolvido roda na placa Arduino tem a função de monitorar o disparo do alarme que, ao disparo do SATA, se conecta à internet e à rede social Twiter. O login no Twitter é feito de maneira indireta e utiliza uma biblioteca de funções fornecida pela fabricante do Arduino. O presente trabalho foi executado com sucesso. A extração e análise dos resultados ainda não foram realizadas. Espera-se finalizar esta etapa antes do evento e comprovar as vantagens do SATA em relação aos alarmes residenciais convencionais. 6 Bibliografia ARDUINO. Arduino CC. Disponível em: <http://www.arduino.cc/>. Acesso em: Julho de 2012. BUENO, C. Arduino Ethernet Shield – Servidor Web (Problemas e Soluções). Disponível em: <http://cleitonbueno.wordpress.com/2012/03/04/arduino-ethernet-shield-servidro-webproblemas-e-solucoes/>. Acesso em: Julho de 2012. ENGENHEIRANDO, Automação Residencial – Controlando sua Casa pela Internet. Disponível em: <http://engenheirando.com/projetos/automacao/>. Acesso em: Julho de 2012. FERPINHEIRO. Compartilhar é preciso – Arduino em rede usando sockets. Disponível em: <http://ferpinheiro.wordpress.com/2012/05/12/arduino-em-rede-usando-sockets/>. Acesso em: Julho de 2012. GARAGEM, L. Cafeteira que Twitta. Disponível em: <http://www.labdegaragem.com.br/wiki/index.php?title=Cafeteira_que_Twitta>. Acesso em: Julho de 2012. GIZMODO. Um adolescente chileno tuíta sobre terremotos com muito mais velocidade do que todo o governo. Disponível em: <http://www.gizmodo.com.br/um-adolescentechileno-tuita-sobre-terremotos-com-muito-mais-velocidade-do-que-todo-o-governo/>. Acesso em Julho de 2012. MMACIEL. [Tutorial] Usando a Biblioteca Twitter Library for Arduino com OAuth. Disponível em: <http://www.mmaciel.com.br/2012/06/10/tutorial-usando-twitter-libraryarduino-oauth/>. Acesso em: Julho de 2012. NUNES, L. Fritzing: a sua ferramenta definitiva para seus projetos com Arduino. Disponível em: <http://leandronunes.org/2011/11/29/fritzing-a-ferramenta-definitiva-paraseus-projetos-com-arduino/>. Acesso em: Julho de 2012. PROJECTS, A. Controlling Arduino via USB using PHP. Disponível <http://www.arduinoprojects.com/?q=node/10>. Acesso em: Julho de 2012. em: SOARES, B. Controlando a Arduino com PHP via porta serial. Disponível em: <http://blog.bsoares.com.br/php/controlling-arduino-with-php>. Acesso em: Julho de 2012. TOXINA V. Tuitando do Arduino. Disponível em: <http://toxinavirtual.blogspot.com.br/2011/11/tuitando-do-arduino.html>. Acesso em: Julho de 2012. TWITTER INC. Twitter. Disponível em: <http://twitter.com>. Acesso em: Julho de 2012.