DROID Francisco de Assis de Freitas Gomes Alex Torquato Carneiro Universidade Ibirapuera Av. Interlagos, 1329 So Paulo SP chicoassis2000@ig.com.br Resumo Este artigo descreve a arquitetura de um sistema de Automao o que tem como foco principal o acionamento de cargas eltricas e o monitoramento de sensores de temperatura e infravermelho, usando um Tablet como Interface de Usurio. O ambiente de desenvolvimento usa tecnologias como Programao o com a Pla- taforma Android, Linguagens de Programao JAVA e C e um micro controlador da famlia PIC, que far parte do hardware perifrico, o qual controlado via Bluetooth. Palavras-chave: Android, Sensores, Automao, Microcontrolador, Programao, IDE. Abstract This paper aims to describe the architecture of an automation system mainly designed to drive electric charges and monitor temperature and infrared sensors, using a Tablet as user interface. The development environment uses technologies like programming for the Android platform, JAVA and C Program- ming Language besides a PIC microcontroller, which is part of the peripheral hardware, controlled via Bluetooth. Keywords: Android, sensors, automation, Programming. Revista da Universidade Ibirapuera - So Paulo, v. 5, p. 1-12, jan/jun. 2013 Revista da Universidade Ibirapuera - - Universidade Ibirapuera So Paulo, v. 5, p. 1-12, jan/jun. 2013 3 Revista da Universidade Ibirapuera - So Paulo, v. 5, p. 2-12, jan/jun. 2013 1. Introduo A Automao est presente no cotidiano do ser hu- mano e traz grandes benefcios aos lares, indstrias, comr- cio e meio ambiente e representa um conjunto de tecnologias aplicadas a um determinado contexto, visando aumentar a produtividade, a qualidade e o conforto nos processos que envolvem situaes que englobem determinadas reas, tais como Automao Industrial, Residencial ou Comercial. Al- guns exemplos que podem ser citados so: abertura e fecha- mento automtico de porto, monitoramento de temperatura em ambientes controlados, preenchimento automtico de cheques e monitoramento de gases poluentes. Esses so al- guns exemplos que fazem parte do diaadia do ser humano e que trazem segurana, comodidade, conforto e qualidade de vida. Diante de todo o cenrio descrito, o presente artigo aborda e demonstra conceitos tecnolgicos empregados na materializao de um projeto que tem a interatividade como ponto fundamental em sua estrutura. Tratase de um sistema que tem como fnalidade fazer o acionamento de cargas el- tricas, representadas por lmpadas incandescentes e fazer a monitorao da atuao de um sensor de temperatura e de um sensor infravermelho. A interatividade realizada atravs de comunicao wireless, via Bluetooth, onde um Tablet que utiliza a plataforma Android comunicase com um hardware perifrico, o qual ter como componente principal um micro- controlador da famlia PIC (PIC18F45K22). A este hardware esto conectados os sensores e as cargas descritas anteriormente, os quais so acionados e monitorados. Uma parte do sistema desenvolvida no am- biente Android, onde a base a linguagem de programao JAVA em conjunto com a linguagem de formatao XML (eX- tensible Markup Language), que a responsvel pela gera- o das telas que so apresentadas no Tablet e a partir destas telas o usurio tem controle de todo o sistema, acionando as lmpadas incandescentes e lendo os alarmes gerados pelos sensores, tudo atravs da tela touchscreen do Tablet. Um pai- nel eltrico montado com as lmpadas e os sensores exibe o resultado da interao existente entre o usurio e o hardware perifrico. Esperase que este resultado esteja em conformi- dade com todos os requisitos apresentados pelo sistema. Este artigo est dividido na seguinte ordem: Seco 2 Mostra conceitos tericos das tecnologias envolvidas no projeto, Seo 3 Apresenta as especifcao es tcnicas das tecnologias (software) e componentes (har- dware) usados no projeto, Seo 4 Mostra a arquitetura e funcionamento geral do projeto, Seo 5 Mostra atravs de um painel eltrico, os resultados obtidos e Seo 6 A conclu- so do projeto mostrada. 2. Materiais e Conceitos tericos Este artigo agrega tecnologias ligadas a rea de pro- gramao, comunicao wireless e a componentes eletrni- cos, todos interagindo para gerar como resultado um sistema de automao, o qual tem um Tablet como transmissor e re- ceptor de comandos para um hardware perifrico onde este aciona cargas eltricas e envia respostas lidas de sensores, de volta para o Tablet. Nesta seo, o conceito terico de to- das as partes que comp em o projeto descrito. 2.1. Sistema Operacional para Dispositivos Mveis Dispositivos Mveis so produtos eletrnicos que integram diversas funcionalidades, tais como acesso a Inter- net, Multimdia (udio, vdeo, imagem), armazenamento de arquivos, GPS, Redes Sociais, acesso a ambientes em Nu- vem, Bluetooth, mensagens de texto, funes de telefonia, etc. Tudo isto integrado em apenas um dispositivo. Para que todas essas funcionalidades sejam geren- ciadas existem Sistemas Ope- racionais Mveis respons- veis pela funcionalidade do dispositivo. Assim como os PCs usam sistemas operacionais para gerenciar funes e recur- sos disponveis, os dispositivos mveis tambm usam siste- mas operacionais desenvolvidos especifcamente para seu gerenciamento [Lee 2011]. 2.2. Linguagens de Programao Em um computador so executados diversos tipos de processamentos, tais como clculos matemticos, consul- tas e atualizaes em entidades de Banco de Dados, geren- ciamento de sistemas de cadastro, entre tantos outros tipos de processamento. Dentro deste contexto, existem as Lin- 4 Revista da Universidade Ibirapuera - So Paulo, v. 5, p. 3-12, jan/jun. 2013 guagens de Programao, que representam regras sintticas e semnticas dispostas em um texto contendo instrues que sero processadas pelo com- putador. O referido texto cha- mado de cdigo fonte e ele o responsvel pela execuo de todos os processamentos citados anteriormente. Existem vrios tipos de Linguagens de Programao, cada uma delas voltada para um determinado tipo de ambiente (WEB, Desk- top, Plataformas Mveis, etc). As linguagens de Programac- o podem ser classifcadas em duas formas: Alto Nvel, onde o cdigo fonte desenvolvido para o entendimento humano e passa por uma etapa de compilao, para que seja proces- sada pelo computador e Baixo Nvel, onde o cdigo fonte compilado, gerando um resultado que processado em nvel de mquina [Schildt 2010]. 2.3. Ambientes de Desenvolvimento Integrado (IDE) Quando se desenvolve um sistema usando uma Lin- guagem de Programao, por uma questo de produtividade necessrio que se trabalhe em um ambiente que agrupe todos os recursos necessrios para que se produza o projeto de forma rpida e efcaz. As IDEs, Integrated Development Environment, ou Ambiente Integrado de Desenvolvimento, so ferramentas que proporcionam para o desenvolvedor vrios tipos de recursos, que esto integrados de tal forma a facilitar todo o processo de programao. Recursos como Editor de Cdigo, Compilador, Bibliotecas, Plugins, Suporte a vrias Linguagens de Programao, Modelagem de Dados, Depurao, entre tantos outros, fazem parte da IDE e so ne- cessrios para que se aplique uma tcnica chamada RAD, Rapid Application Development ou Desenvolvimento Rpido de Aplicativos, que tem como foco principal dar maior produti- vidade ao desenvolvedor [Alves 2006]. 2.4.Microcontrolador O Microcontrolador um circuito integrado eletrnico programvel, que possui internamente hardware necess- rio para processamento de dados de entrada e de sada, os quais so responsveis por acionamento de circuitos eltri- cos e eletr nicos externos, bem como o monitoramento de informa es de entrada, como as provenientes de sensores de temperatura, de proximidade, de humidade, etc. O pro- cesso de aumento na capacidade de integrao de compo- nentes possibilitou aos fabricantes de Microcontroladores in- serirem uma quantidade imensa de diferentes hardwares no mesmo, possibilitando to- dos os recursos necessrios ao seu funcionamento, tais como memrias fash, interface de co- municao serial (RS232), conversores analgicos digitais, temporizadores, dispo- sitivos de entrada/sada, contadores, geradores de PWM e registradores de uso geral. O campo de aplicao dos microcontroladores bastante extenso, indo desde simples acionamentos de circuitos eletrnicos, como o LED (Diodo Emissor de Luz), por exemplo, at sistemas de controle residencial, controle comercial e controle industrial [Nicolosi 2005] [MICROCHIP 2012]. 2.5. Sensor um dispositivo de natureza eltrica ou eletr nica que ao receber um sinal externo responde com um sinal que ele prprio gera e que serve, ao ser captado pelo circuito de controle, para monitoramento de uma determinada situao. Os sensores so classifcados de acordo com o tipo de sinal que recebem. Como exemplos, podem-se citar sensores de temperatura, que ao captar um aumento ou uma diminuio nesta grandeza, gera sinais de tenso eltrica de acordo com o valor da temperatura e, sensores infravermelhos, que ao detectar a presena de algum corpo que interrompa a ra- diao gera um nvel de tenso que aciona um determinado hardware, como por exemplo, contagem de objetos em uma esteira industrial. Ou seja, um sensor faz a medio de um determinado sinal (grandeza fsica) e gera nveis de tenso eltrica analgica, no caso do sensor de temperatura e nveis de tenso eltrica digital (alta ou baixa, que podem ser repre- sentadas por 5VDC ou 0VDC, respectivamente). Os senso- res possuem diversas caractersticas, as quais defnem seu comportamento. So elas: Sensibilidade, Linearidade, Res- posta em Frequncia, etc. Um sensor analgico conectado aos pinos Conversores A/D do microcontrolador, ao passo que um sensor digital conectado aos pinos de I/O, digitais, do microcontrolador [Boylestad 1999]. 5 Revista da Universidade Ibirapuera - So Paulo, v. 5, p. 4-12, jan/jun. 2013 2.6. Atuador Representa um dispositivo eletrnico que, quando energizado, produz interna- mente um movimento mecnico atravs de seus contatos. Desta forma um atuador converte energia eltrica em energia mecnica. So vrias as aplica- es dos atuadores na indstria. Uma delas quando existe a necessidade da comutao de um ponto ao outro. Isto acontece assim que ocorre a energizao eltri- ca do atuador. O acionamento de uma mquina um exem- plo bem claro, ocorrendo a energizao da mesma assim que o atuador for, tambm, energizado. Ou seja, um atuador em determinadas condi -es dentro de um projeto eltrico con- siderado uma chave comutadora eletromecnica [Capuano 1988] [Markus 2004]. 2.7. Antena de RF Rdio Frequncia A RF, ou Rdio Frequncia, signifca uma determi- nada faixa de frequncia que engloba os valores entre 3KHz a 300GHz, defnindo ento os valores compreendidos para a frequncia das ondas de rdio. Um grande diferencial em relao as correntes contnua e alternada, que operam em baixas frequncias, que as ondas de rdio ionizam o ar, for- mando um meio fsico no guiado, responsvel pelo transpor- te das informaes. As ondas de RF possuem caractersticas de frequncia e comprimento de onda associados a ela. As ondas de RF precisam de um tipo dispositivo capaz de irradi- las de um deter- minado ponto a outro. Neste outro ponto este mesmo tipo dispositivo capaz de fazer a recepo das ondas de RF. Tal dispositivo chamado Antena de RF e est conectada a um dispositivo transmissor, responsvel pelo en- vio das informaes e um dispositivo receptor, que capta as informaes vindas do transmissor [Luiz 2009]. 2.8. Dispositivos Mveis No momento em que houve realmente a populariza- o da Internet, grandes avanos tecnolgicos comearam a ser desenvolvidos e, com isto, grandes mudanas compor- tamentais do ser humano tambm aconteceram por conta deste desenvolvimento tec- nolgico. Estas mudanas esto associadas a forma de agir, de pensar, de se comunicar, de re- alizar trabalhos que antes eram feitos de uma maneira no to efcaz e tambm esto as- sociadas a tantos outros fatores que mudaram consideravelmente atitudes e comportamen- tos, de uma forma geral. A partir deste nvel de evoluo, sur- ge uma nova tecnologia de comunicao sem fo, chamada Wireless, que garante vrios tipos de comunicao onde a ausncia de cabeao o foco principal. Com isto, foram desenvolvidos vrios tipos de dis- positivos mo veis para interagir com esta nova tecnologia. Tais dispositivos como smartphones, tablets, entre outros, integram funcionalidades de telefonia, multimdia e localiza- o (GPS) que permitem o seu uso dentro de um contexto de mobilidade. 3. Especifcaes Tcnicas Nesta seo so descritas as caractesticas eltricas dos componentes eletrnicos, bem como as verses e lti- mas atualizaes das linguagens de programao JAVA e C e de suas respectivas IDEs utilizadas no desenvolvimento do sistema. As especifcaes tcnicas so fundamentais para o estabelecimento de critrios aplicveis ao funcionamento do projeto, pois elas mostram as caractersticas dos componen- tes, tanto de hard- ware quanto de software, necessrias para a construo do projeto. 3.1. Plataforma Android O Android um software de codigo aberto (open- source) criado pela Google, para ser utilizado em dispositivos mveis, como smartphones e tablets, por exemplo. um Sistema Operacional baseado no kernel Linux e foi criado, originalmente, pela Android Inc. at ser adquirido pela Google, em 2005. Totalmente focado para dispositivos m veis, o Android recebeu a adeso da OHA (Open Handset Alliance), que um consrcio de empresas que se dedicam ao desenvolvimento de cdigos abertos para dispositivos mveis e, alm disso, oferecem o suporte necessrio para manter o sucesso desta plataforma. Este Sistema Operacio- nal teve incio com a verso 1.5 (Cupcake), passando pelas verses 2.0, 2.2, 3.0, 4.0 e 4.1, esta ltima a verso mais atual. Cada uma destas verses faz referncia a sobremesas (Ice Cream Sandwich, Froio, Ginger Bread, Jelybeans). 6 Revista da Universidade Ibirapuera - So Paulo, v. 5, p. 5-12, jan/jun. 2013 Ao se criar uma aplicao para o Android, usando-se a linguagem de programao JAVA, criada uma estrutura de pastas especfcas para cada ao a ser desenvolvida. O layout do aplicativo, em XML (eXtended Marked Language), fca alocado na pasta Layout, todas as mensa- gens utilizadas fcam alocadas na pasta String, os desenhos utilizados fcam alocados na pasta Drawable e assim por dian- te. Esta estrutura se estende com a criao de varias outras pastas, dedicadas ao armazenamento dos arquivos de pro- grama e de referncia, necessrios para o desenvolvimento do aplicativo [Lee 2011]. 3.2. Linguagem de Programao JAVA Esta linguagem estruturada com base no paradig- ma de Programao Orientada a Objetos (POO) e foi desen- volvida pela empresa Sun Microsystems, na dcada de 90. Em contraposto a algumas linguagens de progra- mao, JAVA compilada e gera Bytecodes, executados por uma mquina virtual chamada JVM (JAVA Virtual Machine), que representa um sistema que carrega e executa aplicativos em JAVA , onde realiza a converso desses Bytecodes e es- tes podem ser executados em qualquer ambiente de software (WINDOWS, LINUX, MAC OS) que tenham esta mquina vir- tual instalada. Para que aplicaes desenvolvidas em JAVA sejam executadas necessrio confgurar um ambiente em que os mesmos possam ser executados. Para isto, existe a neces- sidade do JRE (JAVA Runtime Environment), que nada mais que uma confgurao formada pela mquina virtual e por blibliotecas e APIs necessrias a execuo do aplicativo. Esta confgurao imprescindvel no computador para que aplicativos como jogos online, pginas da internet, visualizadores de imagens, entre outros, funcionem de forma adequada [Mattos 2007]. 3.3. IDE Netbeans O Netbeans a IDE utilizada para desenvolvimento do projeto mostrado neste artigo. um sistema de cdigo aberto e serve para ajudar os desenvolvedores na criao 5 de projetos que usem diferen- tes tipos de tecnologias. Neste projeto a tecnologia utilizada para desenvolvi- mento do lado do Servidor (Tablet) ser JAVA. Com o Netbe- ans pode-se criar modelos de sistemas baseados em criao de design e posicionamento de componentes, para a monta- gem no s do layout principal, mas tambm dos demais layouts que fazem parte do sistema. um ambiente de desenvolvimento integrado que utilizado em qualquer Sistema Operacional (LINUX, WIN- DOWS, MAC, SOLARIS) e possui desenvolvedores de todas as partes do mundo colaborando e documentando todas as modifcaes necessarias para que as melhorias nesta IDE estejam sempre ao alcance de outros desenvolvedores. Esta IDE proporciona suporte para a criao de sistemas que utili- zam interfaces grfcas e tambm para criao de aplicaes voltadas ao ambiente WEB e ao ambiente de Tablets e Smar- tphones. Os dados referentes a verso utilizada para o pro- jeto mostrado neste artigo so mostrados a seguir . Verso do Produto:NetBeans IDE7.0(Build201107282000); Verso do Produto: Netbeans IDE 7.0 (Build 201107282000); JAVA 1.7.0.05 ; Java HotSpot 64 Bit Server VM 23.1 b03; Sistema Windows 7 verso 6.1 exe- cutando em amd64 Cp1252. 3.4. Linguagem de Programao C Esta linguagem foi desenvolvida entre os anos de 1969 e 1973, nos laboratrios da ATeT Bell. Foi criada, origi- nalmente, para o implementar o desenvolvimento do sistema operacional UNIX. Este sistema foi o primeiro a ser imple- mentado em uma linguagem de programao que no fosse o Assembly. Em 1978, os criadores da Linguagem C, Den- nis Ritchie e Brian Kerninghan publicaram o livro The C Pro- gramming Language, que durante algum tempo, serviu como especifcao, no formal, para esta linguagem. Durante a dcada de 70, o C substituiu o Basic, que era a linguagem mais utilizada para programao de computadores. Ao longo do tempo, as implementaes realizadas nesta linguagem fo- ram aproximando-a um pouco mais dos recursos de hardwa- re do computador, pois fornecia acesso a memria, atravs de estruturas de Ponteiros e acesso de baixo nvel atravs da incluso de c- digo Assembly dentro de programas escritos em C [Schildt 2010]. Este artigo mostra um projeto de automao, onde existe a comunicao entre um Tablet e um hardware exter- 7 Revista da Universidade Ibirapuera - So Paulo, v. 5, p. 6-12, jan/jun. 2013 no, e este tem como seu principal componente o Micro-con- trolador PIC18F45K22, programado em Linguagem C. Este programa carregado no microcontrolador responsvel por toda a troca de informaes com o Tablet e realizar todos os processos de acionamento de cargas eletricas, quanto aqui- sio de dados dos sensores de temperatura e infravermelho. 3.5. IDE Mikro C Compiler O Compilador MikroC for PIC responsvel por todo o desenvolvimento e gravao do programa Cliente no micro- controlador usado neste projeto: PIC18F45K22. Possui uma IDE bastante intuitiva, rpida em seus processamentos para geraco do cdigo a ser gravado no microcontrolador e bas- tante rica em recursos oferecidos aos desenvolvedores de programas em Linguagem C, para este tipo de componente eletrnico. Micro-controladores com barramentos de 8 e 16 bits podem ser programados atravs desta IDE e a mesma possui uma srie de bibliotecas disponveis para uso no de- senvolvimento de 6 projetos das mais diversas areas, como programao wireless (wi-f e bluetooth) e USB, por exemplo. Este compilador disponibilizado pela empresa Mi- kroelektronika, responsvel pela distribuio deste software em suas vers es para 8 e 16 bits, dependendo do micro- controlador da famlia PIC a ser utilizado. O site ofcial da empresa http://www.mikroe.com/. Prov diversos benefcios ao desenvolvedor, princi- palmente no tocante a facilidade de elaborao do programa e no desempenho do cdigo gerado, pois consegue gerar o cdigo compilado com tamanho reduzido. Devido a existn- cia de diversas bibliotecas integradas, facilita a rapidez de desenvolvimento. Tais bibliotecas agregam funes matem- ticas, funes para manipulao de displays grfcos, funes de comunicao serial, etc. A verso 4.6 deste compilador foi usada no desenvolvimento do programa gravado no PIC- 18F45K22 [MIKROELEKTRONIKA 2012]. 3.6. Microcontrolador PIC18F45K22 um componente eletrnico com caractersticas bem de- fnidas quando se trata de projetos que envolvam automaoo in- dustrial ou comercial. Possui reas de memria que armazenam os programas desenvolvidos, aps o processo de compilao e grava- o. Existem vrios hardwares integrados a este componente, para que o mesmo execute funes de acordo com a sua programao, que pode ser feita em Assembly ou uma linguagem de alto nvel, como a Linguagem C. Alguns destes hardwares esto descritos abaixo: Timers, Conversores A/D (Analgico/Digital), Watch Dog, Portas de I/O, Memria de Programa, Comunicao Serial, PWM, entre outros. Um fato interessante neste componente a sua arqui- tetura RISC (Reduced Instruction Set Computer), a qual, como diz o pr- prio nome, utiliza um conjunto de instrues reduzido e trabalha com dois barramentos independentes para o tratamento de dados e programa, diferentemente da arquitetura usada na Mquina de Von Newman, que processava todas as informaes (escrita e leitura) em apenas um barramento. Percebe-se que a arquitetura RISC mais rpida. Algumas de suas especifcaes tcnicas importantes so mostradas adiante. importante ressaltar que todas as caractersticas deste componente devem ser rigorosamente obedecidas, durante a fase de desenvolvimento do hardware, pois o correto funcionamento deste componente depende disto. Os dados a seguir foram ex- trados do datasheet do PIC18F45K22, o qual pode ser acessado atravs do site do fabri- cante deste componente, para as devidas orientaes para desenvolvimento do hardware (ww1.microchip. com/downloads/em/DeviceDoc/41412F.pdf). Vide a seguir: - Re- soluo do Conversor A/D de 10 bits, Circuito Oscilador Interno de 16MHz, tenso de operao entre 2.3V a 5.5V, suporte a comunica- o RS232, memria Flash de 32KB, at 35 pinos de I/O, encapsu- lamento 40-Pin PDIP, 14 canais A/D (AN0...AN13), tres Controlado- res de Interrupo externa (IE0, IE1, IE2), etc [MICROCHIP 2012]. 3.7. Sensor de Temperatura LM35 Fabricado pela National Semiconductor, uma das gran- des caractersticas deste sensor de temperatura a sua preciso em fornecer valores de temperatura, em graus Celsius, atravs de seu pino de sada. Faz parte do hardware perifrico des- te projeto, onde atua na captao de temperaturas e as exibe no Tablet. Este componente no necessita de qualquer tipo de calibrao para gerar valores de 7 temperatura de forma bastante precisa. Em sua forma mais utilizada em pro jetos encontra se no encapsulamento plstico do tipo TO92, conforme mos- 8 Revista da Universidade Ibirapuera - So Paulo, v. 5, p. 7-12, jan/jun. 2013 trado nas fgura 1b (http://singularidadegenerica.blogspot.com. br/2011/05/sistema avancado decontrole.html (U ltimo aces- so: 17/11/2012) e na fgura 1a, o desenho de sua pinagem (http://arduinoce.blogspot.com.br/2011 01 01 archive.html, ltimo acesso: 17/11/2012). O site do fabricante do Sensor LM35 (www. national.com) mostra o da- tasheet deste componente. Algumas especifcaes tcnicas foram extradas deste datasheet e so mostradas abaixo: Faixa de operao: entre 55 graus Celsius e 150 graus Celsius, corrente eltrica de dreno menor que 60uA, fornece 10mV/ grau Celsius em sua sada (Vout), tenso de operao entre 4V e 30V (neste projeto Ohm, etc. 3.8. Sensor Infravermelho Estes sensores fazem parte do hardware pe- rifrico e tm como finalidade sinalizar, at r avs do Tablet, caso alguma interrupo no feixe in- fra- vermelho ocorra. O circuito eltrico mostrado na fgura 2a, ex- trada do link http://www.eletronica.com/sensordepro- ximidadebemsimples/ (ltimo acesso:17/11/2012), tem o sensor TIL32 (LED) transmitindo luz ininterruptamente, enquanto o TIL78 (Q1) representa o receptor, captando a luz que est sendo emitida. Cada sensor tem suas caractersticas pr- prias. A fgura 2b foi extradas do link a seguir:http:// newportcom.com.br/catalogsearch/result/index/?dir=asc& mode=list&order=relevance&q=diodo (ltimo acesso: 17/11/2012).
A seguir, algumas especifcaes tcnicas para os sensores TIL32 e TIL78. O ponto Output da fgura acima dever ser conectado a um dos pinos confgurados como sada digital, do microcontrolador. Especifcas:- TIL32: Fabricante: Texas Instruments (www.ti.com/), potncia de sada = 0.5mW, cor- rente eletrica de operao = 20mA, encapsulamento TO-18. - TIL78: Fabricante: Texas Instruments (www.ti.com/), ten- so de operao = 5V, corrente eletrica quando iluminado = 1mA, corrente eltrica sem iluminao = 25nA, encapsu- lamento TO-18. Vale ressaltar que o circuito do sensor Infraverme- lho representado pelo Diodo emissor de luz Infraverme- lha (TIL32) e pelo fototransistor (TIL78), responsvel pela captao das irradiaes transmitidas pelo Diodo. 3.9. Rel Metaltex ML2R C-5V Este projeto apresenta uma etapa de acionamento de car- gas eltricas, representa- das por lmpadas incandescen- tes, onde o acionamento das mesmas realizado atravs de contatos de rels eletromecnicos. O papel principal deste componente servir como atuador, pois vai acionar cargas que consomem um valor um pouco mais alto de corrente eltrica, valor este que no pode ser suprido pelo microcontrolador. O rel usado no projeto fabricado pela empresa Metaltex (site: http://www.metaltex.com.br/index. asp) e possui caractersticas mecnicas e eltricas ideais para sua utilizao. A fgura 3 (http://www.metaltex.com.br/downloads/ ML.pdf) mostra o formato fsico deste componente. Algu- mas de suas principais especifcaes tcnicas, extradas do catlogo geral da Metaltex, sao mostradas a seguir: (a) (b) Figura 1. Sensor de Temperatura LM35 (a) Figura 2. Sensor Infravermelho (b) Figura 2. Sensor Infravermelho 9 - Tenso Nominal de operao = 5VCC, corrente eletrica de comutao (mxima) = 2A, mxima tenso contnua = 10VCC, tenso eltrica de operao (bobina) = 3.75VCC, tenso eltrica de desoperao (bobina) = 0.5VCC, consu- mo nominal (bobina) = 200mW, resitncia da bobina = 125 Ohms. Figura 3. Rel MLR2 C-5V 3.10. Mdulo EasyBluetooth Este mdulo consiste de um hardware composto por alguns componentes eletrnicos (resistores, capaci- tores e transistores) e tem como componente principal uma antena transmissora/receptora. Este mdulo foi desenvolvido pela empresa Mi- kroelektronika (Site: www.mikroe.com/) e a mesma dispo- nibiliza o manual com as especifcaes tcnicas deste mdulo atravs do link http://www.mikroe.com/addon boards/communication/ (ltimo acesso: 18/11/2012). A fgura 4, extrada do link anterior, mostra a estru- tura fsica do mdulo EasyBluetooth. Este mdulo est preparado para ser conectado as linhas de comunicao serial RS232 do microcontrolador, encaminhando os dados que capta, via bluetooth para es- tas linhas seriais (tx/rx). conectado ao Port C do microcontrolador PIC- 18F45K22 e a tenso de alimentao para funcionamento do mdulo pode ser confgurada em 3.3V ou 5V, atravs de straps. um mdulo Bluetooth Classe 2 (alcance de 10m, potncia mxima permitida 2.5 mW, 4 dBm). Confguraes adicionais devem ser feitas no Mdulo EasyBluetooth, para que o mesmo funcione ade- quadamente. Uma chave principal composta por vrias micro-chaves deve estar confgurada conforme o manual deste mdulo [MIKROELEKTRONIKA 2012]. Figura 4. Mdulo EasyBluetooth 3.11. API de Comunicao Bluetooth A transmisso de dados a curta distncia uma das caractersticas do Bluetooth. Esta tecnologia uma altena- tiva quando se pretende transmitir e receber dados a distn- cias que esto no intervalo de at 10m (Classe 2), normal- mente. O estabelecimento de uma comunicao Bluetooth envolve uma srie de confguraes necessrias para que isto ocorra e a API Bluetooth a responsvel por tudo isto. Ela encontra-se no pacote android.bluetooth e tem neste pacote suas principais classes, que so: BluetoothA- dapter, BluetoothDevice e BluetoothSocket. A classe BluetoothAdapter responsvel por todo o processo de conexo e localizao de aparelhos que es- tejam no raio de alcance. A classe BluetoothDevice repre- senta o dispositivo Bluetooth e atravs dela que obtemos o tipo do dispositivo (Smartphone ou Tablet ou Fone de Ouvido), o nome amigvel do aparelho, o MAC Address, etc. E, por fm, a classe BluetoothSocket, que aguarda que uma conexo seja estabelecida e a partir deste momento uma instncia desta classe criada, retornando os objetos InputStream e OutputStream, responsveis pela leitura e escrita de informaes, respectivamente, pelo canal for- mado durante o estabelecimento desta conexo. Dentro de uma aplicao, existem permisses que so defnidas para que as mesmas possam utilizar os re- cursos de Bluetooth. Estas permisses so declaradas em um arquivo chamado AndroidManifest.xml e possuem o se- guinte formato: android.permission. BLUETOOTH e android.permission.BLUETOOTH ADMIN. Para que a aplicao seja conectada ao hardware externo se faz necessrio que tanto o lado Cliente quanto o lado Servidor estejam devidamente confgurados, pois cada lado ter um comportamento diferente para o estabe- lecimento da conexo. O Cliente e o Servidor (hardware externo) tm um canal de comunicao estabelecido quan- Revista da Universidade Ibirapuera - So Paulo, v. 5, p. 8-12, jan/jun. 2013 10 Revista da Universidade Ibirapuera - So Paulo, v. 5, p. 9-12, jan/jun. 2013 do esto parelhados, previamente. A partir deste momento, a troca de informaes entre os dispositivos Cliente e Ser- vidor est pronta para ser executada [SIG 2012]. 4. Arquitetura proposta e funcionamento do projeto Esta seo descreve o diagrama em blocos do pro- jeto, bem como o detalhamento de cada parte que compe este diagrama. As vrias etapas so descritas e, alm dos softwares envolvidos, o circuito eltrico (hardware) neces- srio ao funcionamento geral de toda a arquitetura. Tendo em vista que este projeto trata-se de um misto de desenvolvi- mento de hardware e software, as consideraes iniciais feitas, principalmente na Seo 3 (Especifcaes Tcnicas), foram fundamentais para o en- tendimento de toda a estrutura. 4.1. Arquitetura do projeto A base deste projeto o Sistema Operacional para Dispositivos Mveis, o Android, atuando em conjunto com a tecnologia Bluetooth para acionamento de um Hardware Perifrico composto por cargas eltricas, representadas por lmpadas incandescentes e tambm o monitoramen- to de temperatura e de invaso de permetro, representa- dos pelos sensores de temperatura LM35 e infravermelho TIL32/TIL78, respectivamente. O usurio tem em mos um Tablet que comanda todo o acionamento das cargas externas e tambm recebe informaces provenientes dos referidos sensores. A fgura 5 exemplifca o que est descrito. Figura 5. Diagrama em Blocos O Hardware Perifrico tem como seu principal componente o microcontrolador PIC18F45K22, o qual programado em Linguagem C e atravs desta progra- mao torna- se parte fundamental em todo processo de acionamento e monitoramento, pois possui in- ternamente recursos de hardware, j descritos anteriormente, que o permite utilizar seus recursos de hardware internos, neces- srios ao funcionamento do projeto. Os protocolos responsveis por esta interatividade esto defnidos dentro do microcontrolador, devida- mente desenvolvido em linguagem C e dentro do aplicativo de- senvolvido em JAVA, que est instalado no Tablet. O projeto eletrnico completo do Hardware Peri- frico mostrado na fgura 6, a seguir. Como pode-se perceber, os dois sensores (Temperatura e Infravermelho) esto conectados aos pinos referentes ao Conversor A/D (AN0 e AN1) do microcontrolador PIC18F45K22. As Car- gas eltricas, representadas por L1, L2 e L3, tm seus res- pectivos circuitos conectados as sadas do Port B (RB5, RB6 e RB7). O res- ponsvel pela troca de informaes entre o Tablet e o Hardware Perifrico o Mdulo Bluetooth, co- nectado ao canal de comunicao Serial (RS232, pinos TX e RX). Este mdulo captura tudo que enviado pelo Tablet e envia para o canal serial, onde este interpreta os dados e faz os devidos acionamentos ou monitoramentos [Miyadai- ra 2009]. 4.2. Aplicativo do projeto Toda estrutura de hardware mostrada anterior- mente tem como suporte para seu correto funcionamento, linguagens de programao que tornam possvel toda a troca de informao para que os acionamentos e monitora- mentos sejam executados de forma correta. O aplicativo desenvolvido para rodar no Tablet, o DroidControle, foi elaborado na plataforma Android, usan- do linguagem JAVA no ambiente de desenvolvimento Ne- tbeans. Um aplicativo Android, ao ser criado, gera uma estrutura de pastas onde so armazenados determinados arquivos responsveis pelo funcionamento deste aplicati- vo. Como exemplos, a pasta Drawable, que armazena todas as fguras usadas dentro da aplicao e a pasta re- source, que armazena os arquivos XML (Extended Marked Language, ou seja, 11 Revista da Universidade Ibirapuera - So Paulo, v. 5, p. 10-12, jan/jun. 2013 Figura 6. Hardware Perifrico
Linguagem de Marcao Extendida), responsveis pela elaborao das telas (layouts) usadas no aplicativo. O Hardware Perifrico tem como seu componente principal o micro-controlador PIC18F45K22, o qual programado em linguagem C, usando para isto o ambiente de programao do Compilador MikroC Pro for PIC, que o compilador res- ponsvel por toda a elaborao e gravao do programa no microcontrolador. O programa desenvolvido em C o responsvel por receber as solicitaes de acionamento, vindas do aplicativo DroidControle e enviar ao Tablet as lei- turas captadas pelos sensores de temperatura e infraver- melho. 5. Resultados Nesta etapa mostrado o resultado obtido a partir de toda a estrutura criada na seo anterior. Um cenrio contendo todas as telas principais do software de controle e monitoramento e como realizado todo o processo de interao Tablet e hardware perifrico. A fgura 7 mostra a tela inicial do aplicativo Droid Contro- le, onde so exibidos 3 (trs) botes, com funcionalidades distintas (Automao, Relatrio e Sobre). As telas a seguir fazem parte do aplicativo principal (DroidControle), instala- do no Tablet. Pressionando o boto Automao, a tela corres- pondente a este boto aberta e exibe uma srie de bo- tes, responsveis pelo acionamento das cargas eltricas (L1, L2 e L3) e pelo monitoramento dos sensores (Tempe- ratura e Infravermelho), conforme mostra a fgura 8a. Um painel eletrnico exibe a montagem de um hardware formado por 3 (trs) lmpadas incandescentes, 2 sensores (Temperatura e Infravermelho), um mdulo de controle (PIC18F45K22) e um mdulo Bluetooth. Todos estes componentes do sustentao ao ce- nrio apresentado at o momento, pois os resultados deste projeto so apresentados atravs da atuao dos mesmos. Pressionando o boto Relatrio, exibida uma tela con- tendo uma listagem com informaes (listview) de data e hora das ocorrncias de cada evento referente ao monito- ramento dos sensores de Temperatura e infravermelho, Figura 7. Tela Principal do DROIDCONTROLE conforme mostra a fgura 8b. O armazenamento e conse- quente exibio dos eventos gerados pelos sensores s possvel devido ao fato da utilizao do Banco de Dados nativo do Android, o SQLite. Por ltimo, ao pressionar o boto Sobre, uma tela com informaes gerais sobre o aplicativo exibida, conforme mostra a fgura 8c. 12 Revista da Universidade Ibirapuera - So Paulo, v. 5, p. 11-12, jan/jun. 2013 (b) Figura 8. Telas Secundrias do DROIDCONTROLE 6. Concluso O uso da tecnologia Bluetooth vem ganhando es- pao a cada dia, pois responsvel por trazer ao ser hu- mano benefcios que vo desde sistemas residenciais e in- dustriais automatizados, at o monitoramento e aquisio de dados proveniente de sensores. A unio das tecnologias Android e Bluetooth permite que tudo isto seja possvel. A capacitao e a sensibilidade dos desenvolvedores devem estar sempre a postos para permitir que os usurios em ge- ral usufruam de todos os benefcios que um projeto deste tipo possa trazer. Este artigo demonstra a possibilidade de automao e aquisio de dados em diversos processos, sejam residenciais ou industriais. A expectativa para este projeto , futuramente, implementar um sistema de aquisio onde todos os dados e eventos de acionamento de cargas e as informaes captadas pelos sensores se- jam armazenados em um banco de dados nativo da prpria plataforma Android, o SQLite. Estas informaes armaze- nadas iro produzir relato rios para anlise e tomada de deciso. Portanto, o desenvolvimento de projetos de auto- mao e aquisio de dados atravs de sistemas wireless via Bluetooth, permite que seja possvel a interatividade de (c) Figura 8. Telas Secundrias do DROIDCONTROLE (a) Figura 8. Telas Secundrias do DROIDCONTROLE 13 Revista da Universidade Ibirapuera - So Paulo, v. 5, p. 12-12, jan/jun. 2013 diversos dispositivos como Tablets, Smartphones com har- dwares perifricos, o que representa uma forte tendncia no desenvolvimento de projetos com este tipo de tecno- logia sem fo. Este projeto agrega grande contribuio na rea de automao, pois mostra que possvel o desen- volvimento deste tipo de arquitetura, onde diversas tecno- logias esto envolvidas. 7. Referncias Bibliogrfcas Alves, W. P. (2006). JAVA 2 Programao Multiplataforma, volume 1. Editora RICA, 1st edition. Boylestad, R. L. (1999). Dispositivos Eletrnicos e Teoria de Circuitos, volume 1. Editora LTC Livros Tcnicos e Cientfcos, 6th edition. Capuano, F. G. (1988). Laboratrio de Eletricidade e Ele- trnica, volume 1. Editora RICA, 1st edition. Lee, W.-M. (2011). Introdu o ao Desenvolvimento de Aplicativos para o ANDROID, volume 1. Editora Cincia Moderna, 1st edition. Luiz, A. M. (2009). Eletromagnetismo, Teoria e Proble- mas Resolvidos, volume 3. Editora Livraria da Fsica, 1st edition. Markus, O. (2004). Circuitos Eltricos em Corrente Con- tnua e Corrente Alternada, volume 1. Editora RICA, 4th edition. Mattos, E. C. T. (2007). Programao de Softwares em Java, volume 1. Digerati Books, 1st edition. MICROCHIP (Acessado em 2012). Site ofcial microchip. http://www.microchip.com/. MIKROELEKTRONIKA, I. (Acessado em 2012). Site ofcial mikroelektronika. www.mikroe.com/. Miyadaira, A. N. (2009). Microcontroladores PIC18, Aprenda e Programe em Linguagem C, volume 1. Editora RICA, 1st edition. Nicolosi, D. E. C. (2005). Microcontrolador 8051 com Lin- guagem C Prtico e Didtico. Editora RICA, 1st edition. Schildt, H. (2010). C Completo e Total, volume 1. Person Education, 3td edition. SIG, B. (Acessado em 2012). Site ofcial do bluetooth. www.bluetooth.org/.