• Nenhum resultado encontrado

Sistema inteligente de controle e monitoramento de ambiente de laboratórios de análises químicas

N/A
N/A
Protected

Academic year: 2021

Share "Sistema inteligente de controle e monitoramento de ambiente de laboratórios de análises químicas"

Copied!
72
0
0

Texto

(1)ARTEJOSE REVOREDO DA SILVA. Sistema Inteligente de Controle e Monitoramento de Ambiente de Laborat´ orios de An´ alises Qu´ımicas. Natal 2016.

(2) ARTEJOSE REVOREDO DA SILVA. Sistema Inteligente de Controle e Monitoramento de Ambiente de Laborat´ orios de An´ alises Qu´ımicas. Vers˜ao original. Disserta¸c˜ao apresentada ao Instituto Metr´opole Digital da Universidade Federal do Rio Grande do Norte - UFRN para obten¸ca˜o do t´ıtulo de Mestre em Engenharia de Software pelo Programa de P´os-Gradua¸ca˜o em Eng. de Software. ´ Area de concentra¸c˜ao: Sistemas WEB. Engenharia de. Vers˜ao corrigida contendo as altera¸c˜oes solicitadas pela comiss˜ao julgadora em 19 de Agosto de 2016. A vers˜ao original encontra-se em acervo reservado na Biblioteca Central Zila Mamede-UFRN.. Orientador: Prof. Dr. Jo˜ao Carlos Xavier J´ unior Coorientador: Prof. Dr. Ivanovitch Medeiros Dantas da Silva. Natal 2016.

(3) Catalogação da Publicação na Fonte Universidade Federal do Rio Grande do Norte - Sistema de Bibliotecas Biblioteca Central Zila Mamede / Setor de Informação e Referência Silva, ArtejoseRevoredoda. Sistema inteligente de controle e monitoramento de ambiente de laboratórios de análises químicas / ArtejoseRevoredo da Silva. 2016. 72f.: il. Dissertação (mestrado) - Universidade Federal do Rio Grande do Norte. Instituto Metrópole Digital.Natal, RN. Orientador: Prof. Dr. João Carlos Xavier Junior. Coorientador: Prof. Dr. Ivanovitch Medeiros Dantas da Silva 1. Rede de sensores Dissertação. 2. MicrocontroladorArduino- Dissertação. 3. Controle inteligente de ambientes- Dissertação. 4. Técnicas de aprendizado de máquinaDissertação. 5. Medidas para validação de agrupamentosDissertação. I. Xavier Junior, João Carlos. II. Silva,Ivanovitch Medeiros Dantas da. III. Título. RN/UF/BCZM CDU 004.73.

(4)

(5) Gostaria de agradecer primeiramente a Deus por n˜ao ter permitido que eu fraquejasse durante toda esta jornada. Ao meu professor orientador, Jo˜ ao Carlos Xavier J´ unior, que sempre esteve presente me apoiando e dando dicas. A minha esposa, Lilian Souza da Silva Revoredo, por todo apoio e compreens˜ao dispensados durante todo o per´ıodo do curso, sem os quais jamais teria chegado at´e aqui. Ao meu filho Nicolas, pelos sorrisos e abra¸cos que alegravam intermin´aveis e cansativos dias de estudo. Aos meus pais, por me terem dado educa¸ca˜o, valores e por me terem ensinado a andar, e que muitas vezes, renunciaram aos seus sonhos para que eu pudesse realizar o meu, partilho a alegria deste momento..

(6) Agradecimentos Aos professores, funcion´arios e colegas do Curso de Programa de P´os-Gradua¸c˜ao em Engenharia de Software do Instituto Metr´opole Digital da Universidade Federal do Rio Grande do Norte, pela solicitude e solidariedade perante minhas dificuldades. Aos alunos da turma do Mestrado, principalmente aos da 1a Turma, pela paciˆencia e companheirismo. ´ Ao Coordenador e Diretor do N´ ucleo de Processamento Prim´ario e Reuso de Agua Produzida e Res´ıduos, Prof. Dr. Djalma Ribeiro, aonde me deu liberdade de fazer os experimentos no laborat´orios dos anexos. Ao pessoal do Laborat´orio de Refino e Tecnologias Ambientais - LABTAM pelo apoio em tudo que precisei. Em especial a Rodrigo Melo, Rodolfo Luiz e Angelo pelo apoio, amizade, companheirismo e pelo aux´ılio nas ideias, an´alises e experimentos. Ao pessoal da Empresa incubada NatalMakers no IMD pelo apoio em tudo que precisei. Em especial a Bruno e a Jonathan Wanderley pelo apoio, amizade, companheirismo e pelo aux´ılio nas ideias e experimentos e a todos aqueles que de alguma maneira contribu´ıram para a realiza¸c˜ao deste trabalho..

(7) “Quem conduz e arrasta o mundo n˜ao s˜ao as m´aquinas, mas as ideias.” (Victor Hugo).

(8) Resumo Os laborat´orios de an´alises qu´ımicas, por se constitu´ırem em um conjunto de testes e procedimentos, usando produtos e equipamentos espec´ıficos para tratar dos resultados nas amostras que s˜ao testadas, est˜ao sempre sujeitos aos fatores inerentes ao ambiente. Devido a esse fato, controlar fatores como a temperatura e a umidade relativa do ar ´e tarefa primordial, para que os processos desenvolvidos dentro de tais ambientes (laborat´orios de an´alises qu´ımicas) possam ser repetidos de acordo com os parˆametros exigidos. Buscando propor mecanismos de controle para ambientes, mais especificamente para laborat´orios de an´alises qu´ımicas, neste trabalho, apresentamos um sistema baseado em rede de sensores e reconhecimento de padr˜oes para controle inteligente de ambientes. Nosso prot´otipo utiliza os pr´oprios dados gerados pelos sensores distribu´ıdos pelo ambiente, para identificar um padr˜ao de comportamento. Atrav´es da utiliza¸c˜ao de algoritmos de aprendizado de m´aquina, identificam-se as classes contidas nos dados (agrupamento), treina-se e testa-se o sistema (algoritmos de classifica¸c˜ao), para que o mesmo consiga generalizar o que foi aprendido. Por u ´ ltimo, criam-se regras de controle associadas as classes previamente identificadas, para controlar os aparelhos de ar condicionado, tanto o principal quanto o reserva, e mais o desumidificador. Dessa forma, o prot´otipo mant´em temperatura e umidade est´aveis de forma inteligente. Palavras-chaves: Rede de sensores. Microcontrolador Arduino. Controle Inteligente de ambientes. T´ecnicas de aprendizado de m´aquina. Medidas para Valida¸ca˜o de agrupamentos..

(9) Abstract In general, laboratories or labs are workplaces that provide controlled conditions for experiments and measurements to be performed. For this reason, controlling temperature and humidity is an important requirement that needs to be achieved in order to guarantee the reproducibility of processes carried out in labs. Aiming to propose efficient environmental controlling mechanisms, specifically for chemical analysis laboratories, we present in this work an intelligent environmental control system based on sensors network and pattern recognition. Our prototype uses its own data generated by sensors distributed in the environment to identify a pattern of behavior. Through the use of machine learning algorithms, the system identifies the classes within the data (clustering), does the training and testing procedures (classification), so that it can generalize what was learned. Finally, the rules are created in association with previously identified classes in order to control air conditioners, both the main and the spare ones, plus the dehumidifier. In this sense, the prototype keeps temperature and humidity stable and in an effective way. Keywords: Sensor Network. Arduino Microcontroller. Intelligent environmental control. Machine learning techniques. Measures for cluster validation..

(10) Lista de figuras Figura 1 – Dessecador padr˜ao utilizado em laborat´orio. . . . . . . . . . . . . . . . 16 Figura 2 – Amostras aglomeradas causadas pela umidade.. . . . . . . . . . . . . . 16. Figura 3 – Plataforma Arduino. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 Figura 4 – Shield W5100. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 Figura 5 – ESP8266-E-12 e ESP-01. . . . . . . . . . . . . . . . . . . . . . . . . . . 22 Figura 6 – Ilustra¸ca˜o das formas de energia em um sensor. . . . . . . . . . . . . . 23 Figura 7 – Sensores mais utilizados para obten¸ca˜o de dados. . . . . . . . . . . . . 24 Figura 8 – Exemplo pr´atico de Utiliza¸ca˜o do LM35. . . . . . . . . . . . . . . . . . 25 Figura 9 – Compara¸ca˜o de Sensibilidade LM35 x DHT-11 . . . . . . . . . . . . . . 25 Figura 10 – Arquitetura do Sistema. . . . . . . . . . . . . . . . . . . . . . . . . . . 39 Figura 11 – Pinagem do display LCD 16 x 2. . . . . . . . . . . . . . . . . . . . . . 40 Figura 12 – Liga¸c˜ao do PCF8574 ao display e ao arduino. . . . . . . . . . . . . . .. 41. Figura 13 – Pinagem e encapsulamento do PCF8574. . . . . . . . . . . . . . . . . .. 41. Figura 14 – Diagrama de blocos e inv´olucro do CD4050. . . . . . . . . . . . . . . . 42 Figura 15 – Fluxograma do transmissor. . . . . . . . . . . . . . . . . . . . . . . . . 43 Figura 16 – Arquitetura do Transmissor. . . . . . . . . . . . . . . . . . . . . . . . . 44 Figura 17 – Circuito de liga¸ca˜o ao LCD utilizando o PCF8574. . . . . . . . . . . . 45 Figura 18 – Prot´otipo do transmissor j´a montado e funcionando. . . . . . . . . . . 45 Figura 19 – Fluxograma do Receptor 1. . . . . . . . . . . . . . . . . . . . . . . . . 46 Figura 20 – Prot´otipo do receptor principal j´a montado e funcionando. . . . . . . . 48 Figura 21 – Prot´otipo do receptor respons´avel pelo controle do desumidificador . . 50 Figura 22 – Distribui¸c˜ao dos m´odulos pelo laborat´orio monitorado. . . . . . . . . . 50 Figura 23 – Tela mostrando a temperatura e umidade pela M´edia Ponderada. . . .. 51. Figura 24 – Tela mostrando a temperatura e umidade pelo Kalman. . . . . . . . . . 52 Figura 25 – Comportamento de todos os sensores. . . . . . . . . . . . . . . . . . . . 52 Figura 26 – Tela do App desenvolvido para android. . . . . . . . . . . . . . . . . . 53 Figura 27 – Configura¸c˜ao de espa¸co f´ısico dos laborat´orios. . . . . . . . . . . . . . . 55 Figura 28 – Mapa de temperatura. . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 Figura 29 – Varia¸ca˜o da Temperatura. . . . . . . . . . . . . . . . . . . . . . . . . . 57 Figura 30 – Varia¸ca˜o de Umidade em determinados hor´arios. . . . . . . . . . . . . . 57 Figura 31 – Distribui¸c˜ao dos sensores no Laborat´orio. . . . . . . . . . . . . . . . . . 58.

(11) Figura 32 – Gr´afico mostrando a temperatura controlada no ambiente controlado. . 67 Figura 33 – Gr´afico mostrando a umidade controlada no ambiente controlado. . . . 67.

(12) Lista de tabelas Tabela 1 – Alguns dados comparativos de v´arios tipos de Arduinos. . . . . . . . .. 21. Tabela 2 – Comparativo dos sensores DHT11 e LM35. . . . . . . . . . . . . . . . . 24 Tabela 3 – Resultados experimentais obtidos para o ´ındice Silhueta. . . . . . . . . 63 Tabela 4 – Resultados experimentais obtidos para o ´ındice DB. . . . . . . . . . . . 63 Tabela 5 – Resultados experimentais obtidos para os seis classificadores. . . . . . . 64 Tabela 6 – Valores da classe e varia¸co˜es de Temperatura e Umidade por classe. . . 65 Tabela 7 – A¸co˜es tomadas de acordo com a Classe. . . . . . . . . . . . . . . . . . 65.

(13) Lista de abreviaturas e siglas AD. ´ Arvore de decis˜ao. AM. Aprendizado de M´aquina. AVR. Microcontrolador RISC de chip u ´nico. C.I. Circuito Integrados. CSBC. Congresso da Sociedade Brasileira de Computa¸c˜ao. CLP. Controlador L´ogico Program´avel. DB. ´Indice Davies-Bouldin. DHT11. Sensor de Umidade e Temperatura. IOT. Internet das coisas. LCD. Liquid Crystal Display. LM35. Sensor de precis˜ao de Temperatura. MIT. Instituto de Tecnologia de Massachusetts. MLE. Maximum Likelihood Estimation. MP. M´edia Ponderada. NTC. Negative Temperature Coeficient. PSO. Particle Swarm Optimization. PTC. Positive Temperature Coeficient. Shields. Placas de expans˜ao de hardware que encaixam na placa Ardu´ıno. SHT-15. Sensor relativo de Temperatura e Umidade. SMS. Short Message Service. SPI. Serial Peripheral Interface. SVM. M´aquina de vetor de suporte.

(14) Sum´ ario. 1. Introdu¸ c˜ ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 1.1. Motiva¸c˜ ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15. 1.2. Justificativa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17. 1.3. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18. 1.4. Principais Contribui¸ co ˜es de Trabalho . . . . . . . . . . . . 18. 1.5. Estrutura do Trabalho . . . . . . . . . . . . . . . . . . . . . . . 19. 2. Fundamenta¸ c˜ ao Te´ orica . . . . . . . . . . . . . . . . . . .. 2.1. Ardu´ıno . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20. 2.1.1. Shield W5100 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21. 2.1.2. ESP 8266 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22. 2.2. Sensores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23. 2.3. Fus˜ ao de Sensores . . . . . . . . . . . . . . . . . . . . . . . . . . . 25. 2.3.1. Filtro de Kalman . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27. 2.4. Aprendizado de M´ aquina . . . . . . . . . . . . . . . . . . . . . 28. 2.4.1. Algoritmos de Agrupamento . . . . . . . . . . . . . . . . . . . . 29. 2.4.2. Medidas para Valida¸ c˜ ao . . . . . . . . . . . . . . . . . . . . . . . 30. 2.4.3. Algoritmos de Classifica¸ c˜ ao . . . . . . . . . . . . . . . . . . . . . 31. 3. Trabalhos Relacionados . . . . . . . . . . . . . . . . . . . .. 3.1. Sistemas de Controle Simples . . . . . . . . . . . . . . . . . . 34. 3.1.1. Aplica¸c˜ oes Residenciais . . . . . . . . . . . . . . . . . . . . . . . . 34. 3.1.2. Aplica¸c˜ oes n˜ ao Residenciais . . . . . . . . . . . . . . . . . . . . . 35. 3.2. Sistemas de Controle Inteligente . . . . . . . . . . . . . . . . 37. 3.3. Discuss˜ ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38. 4. Desenvolvimento do Prot´ otipo. . . . . . . . . . . . . . .. 4.1. Contribui¸co ˜es para o desenvolvimento do prot´ otipo . . 40. 4.1.1. Expansor de portas entradas/sa´ıdas . . . . . . . . . . . . . . . 40. 4.1.2. Buffer n˜ ao-inversor CD4050 . . . . . . . . . . . . . . . . . . . . 42. 4.2. Transmissor de dados . . . . . . . . . . . . . . . . . . . . . . . . 42. 15. 20. 34. 39.

(15) 4.3. Receptor prim´ ario de controle . . . . . . . . . . . . . . . . . . 46. 4.4. Receptor de controle para o Ar-condicionado reserva . 49. 4.5. Receptor de controle do desumidificador . . . . . . . . . . 49. 4.6. Monitoramento Remoto . . . . . . . . . . . . . . . . . . . . . . 51. 5. Metodologia de Experimentos . . . . . . . . . . . . . . .. 5.1. Introdu¸c˜ ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54. 5.2. Distribui¸c˜ ao dos sensores . . . . . . . . . . . . . . . . . . . . . 55. 5.2.1. Testes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58. 5.3. Fase de Agrupamento dos Dados . . . . . . . . . . . . . . . . 59. 5.4. Fase de Classifica¸ c˜ ao dos Dados . . . . . . . . . . . . . . . . 60. 5.5. Monitoramento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60. 5.6. An´ alise dos Resultados . . . . . . . . . . . . . . . . . . . . . . . 62. 6. Conclus˜ ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 6.1. Principais Contribui¸ co ˜es . . . . . . . . . . . . . . . . . . . . . . 66. 6.2. Benef´ıcios no ambiente controlado . . . . . . . . . . . . . . . 67. 6.3. Trabalhos Futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . 68. Referˆ encias1 . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 1. De acordo com a Associa¸c˜ ao Brasileira de Normas T´ecnicas. NBR 6023.. 54. 66. 69.

(16) 15. 1 Introdu¸ c˜ ao ´ comum encontrarmos grandes laborat´orios de an´alises espalhados pelos v´arios E segmentos de nossa sociedade. Instalados em universidades ou mesmo em empresas p´ ublicas ou privadas, tais laborat´orios processam diariamente os mais variados tipos de amostras, visando sempre identificar a presen¸ca de compostos qu´ımicos nos meios analisados. Al´em de trabalhoso e demorado, o processo de an´alise qu´ımica requer equipamentos potentes, pessoal qualificado, salas climatizadas, e acima de tudo, cuidados na prepara¸c˜ao das amostras que ser˜ao analisadas. Aproveitando a evolu¸ca˜o das tecnologias, os laborat´orios tˆem se modernizado, seja atrav´es da aquisi¸ca˜o de equipamentos espec´ıficos para o processamento das amostras ou de equipamentos que possam garantir um ambiente climatizado de acordo com padr˜oes exigidos de temperatura e umidade. Dentre eles, podemos citar: os aparelhos de ar-condicionado, os desumidificadores de ar, entre outros. Al´em de equipamentos, os ambientes climatizados necessitam de dispositivos capazes de aferir continuadamente os n´ıveis de polui¸c˜ao, a temperatura e a umidade do ambiente, o n´ıvel de metais pesados presentes na a´gua, entre outros. A utiliza¸c˜ao mais abrangente de tais dispositivos (sensores) tem favorecido a consolida¸c˜ao de v´arias ´areas, entre elas podemos destacar a Internet das Coisas. Em um futuro muito breve a maioria dos dispositivos que nos cercam estar˜ao conectados na Internet atrav´es de uma grande rede de sensores. Esse cen´ario ir´a provocar o surgimento de uma grande quantidade de dados. Esses por sua vez, precisar˜ao ser processados para gerar informa¸c˜ao u ´ til. Nesse contexto, surge uma nova e promissora ´area de pesquisa, a Ciˆencia dos Dados. Essa nova frente de pesquisa ir´a impactar diretamente a industria e especificamente, a automa¸c˜ao.. 1.1. Motiva¸c˜ ao Os laborat´orios de an´alises qu´ımicas, por se constitu´ırem em um conjunto de. testes e procedimentos, usando produtos e equipamentos espec´ıficos para tratar dos resultados nas amostras que s˜ao testadas, est˜ao sempre sujeitos aos fatores inerentes ao ambiente. Umidade e temperatura s˜ao exemplos de fatores inerentes ao ambiente que podem influenciar diretamente na qualidade das amostras. Em caso de amostras que s˜ao.

(17) 16. testadas atrav´es de equipamentos com propriedades higrosc´opicas1 , estas precisam ser guardadas em dessecadores, para evitar que as mesmas absorvam a umidade do pr´oprio ambiente. Como pode ser visto na Figura 1, um dessecador ´e um recipiente de vidro utilizado para o conte´ udo interno o mais isolado poss´ıvel do ambiente. Figura 1 – Dessecador padr˜ao utilizado em laborat´orio.. Fonte: do pr´oprio autor.. A altera¸c˜ao da composi¸c˜ao qu´ımica das amostras pode ser causada diretamente por fatores relacionados a` temperatura e umidade elevadas. Dependendo de seu estado de oxida¸ca˜o, as amostras podem perder totalmente a forma original de suas estruturas. Como exemplo, podemos citar os f´armacos2 , que possuem na sua f´ormula alguns tipos de o´xidos. A altera¸c˜ao dos mesmos pode resultar no aumento ou diminui¸c˜ao do efeito produzido pela inala¸c˜ao deste f´armaco, ou at´e mesmo na perda da sua efic´acia no que diz respeito ao seu objetivo principal, que ´e de curar. Al´em da altera¸c˜ao na estrutura das amostras, temperatura e umidade elevadas podem causar tamb´em a aglomera¸ca˜o das mesmas, como pode ser visto na Figura 2, dificultando assim o estudo atrav´es do microsc´opio. Figura 2 – Amostras aglomeradas causadas pela umidade.. Fonte: do pr´oprio autor. 1 2. Relativo a higroscopia, propriedade que determinados materiais possuem de absorver ´agua. Deriva do termo grego ph´ arn, tanto pode significar veneno como rem´edio..

(18) 17. 1.2. Justificativa Dentre os muitos laborat´orios que se tem conhecimento, seja atrav´es de visitas. t´ecnicas ou da pesquisa realizada atrav´es de sites, observou-se que a grande maioria deles tem dificuldade para garantir o bom funcionamento dos equipamentos utilizados nas an´alises qu´ımicas. Por se tratar de equipamentos muito precisos, custosos e delicados, estes, na maioria das vezes, exigem condi¸co˜es apropriadas para funcionarem. Temperatura e umidade s˜ao alguns fatores que precisam ser monitorados e controlados a todo tempo, pois podem variar no decorrer do processo de an´alise. Qualquer varia¸ca˜o de tais fatores pode comprometer o resultado final da an´alise, como tamb´em pode acarretar o mau funcionamento dos equipamentos. Em casos extremos, tal varia¸ca˜o pode at´e ocasionar a paralisa¸c˜ao dos mesmos. A paralisa¸c˜ao dos equipamentos sempre acarreta atraso na programa¸c˜ao do laborat´orio, visto que o mesmo recebe demanda de v´arios setores e departamentos, como ´e o caso dos laborat´orios da UFRN. Nesse caso, as an´alises precisam ser reagendadas, o que pode influenciar at´e mesmo nas pesquisas desenvolvidas no aˆmbito da institui¸ca˜o. Al´em da interrup¸ca˜o nos processos de an´alise qu´ımica, a perda das amostras (compostos qu´ımicos) e a quebra de equipamentos s˜ao problemas s´erios que demandam recursos financeiros a serem empregados na recupera¸ca˜o dos equipamentos ou na aquisi¸ca˜o de novos compostos qu´ımicos. Visando oferecer uma ferramenta apropriada para o monitoramento e controle de ambientes, este trabalho se destina a desenvolver um sistema inteligente de controle e monitoramento. Para tal, foi escolhido um dos laborat´orios de an´alises qu´ımicas localizado no N´ ucleo de Processamento Prim´ario e Reuso de ´agua Produzida e Res´ıduos (Nupprar) da UFRN. Esta ferramenta oferece mecanismo de aquisi¸c˜ao de dados de temperatura e umidade atrav´es da utiliza¸c˜ao de microprocessadores (Arduino) e sensores. Al´em disso, utiliza um processo de tomada de decis˜ao baseado em aprendizado de m´aquina para executar a¸co˜es de controle voltadas aos aparelhos de ar-condicionado e desumidificadores. Dessa forma, a ferramenta garante que os fatores inerentes ao ambiente, neste caso a temperatura e a umidade, estejam sempre sobre controle..

(19) 18. 1.3. Objetivos O Objetivo principal deste trabalho consiste no desenvolvimento de um sistema. de controle inteligente de ambientes baseado em rede de sensores. Para tal, escolheu-se um dos laborat´orios de an´alises qu´ımicas da UFRN para ser o caso de uso. O sistema foi idealizado para capturar os dados de temperatura e umidade provenientes de v´arios sensores espalhados pelo ambiente a ser controlado, e tomar decis˜oes de controle a partir de padr˜oes previamente aprendidos. Para o desenvolvimento do sistema em quest˜ao, foram especificados alguns objetivos espec´ıficos a serem atingidos, tais como: • Fazer um levantamento dos mais variados tipos de sensores para aferi¸ca˜o de temperatura e umidade; • Implementar mecanismos de aferi¸c˜ao baseados em microprocessadores (Arduino) e sensores; • Estudar os algoritmos de agrupamentos mais conhecidos da literatura; • Avaliar o desempenho dos algoritmos de agrupamentos; • Estudar os algoritmos de classifica¸ca˜o mais conhecidos da literatura; • Avaliar o desempenho dos algoritmos de classifica¸c˜ao; • Desenvolver as a¸co˜es de controle baseadas no aprendizado feito sobre os dados; • Testar e avaliar o desempenho do prot´otipo em situa¸co˜es experimentais; • Comparar o desempenho do prot´otipo com outros sistemas, principalmente os sistemas de controle cl´assicos.. 1.4. Principais Contribui¸ co ˜es de Trabalho Este trabalho, por meio do desenvolvimento do sistema intitulado Rede de Sensores. para Controle Inteligente de Ambientes (RSCIA), apresenta contribui¸c˜oes nas ´areas de Redes de Sensores e Aprendizado de M´aquina. Como resultado da contribui¸c˜ao em ambas as a´reas, tivemos um artigo aceito para publica¸ca˜o no VIII Simp´osio Brasileiro de Computa¸ca˜o Ub´ıqua e Pervasiva, evento promovido pelo Congresso da Sociedade Brasileira de Computa¸ca˜o (CSBC)..

(20) 19. 1.5. Estrutura do Trabalho O presente trabalho esta divido em 5 Cap´ıtulos, ficando o restante do documento. estruturado da seguinte forma: • O Cap´ıtulo 2 apresenta uma fundamenta¸ca˜o te´orica, procurando esclarecer no¸co˜es e conceitos necess´arios ao entendimento do restante do trabalho. • O Cap´ıtulo 3 apresenta um estudo sobre os trabalhos relacionados, separando-os em dois grupos: trabalhos que usam automa¸c˜ao residencial e trabalhos que usam automa¸ca˜o Industrial. • O Cap´ıtulo 4 apresenta o desenvolvimento do prot´otipo. • O Cap´ıtulo 5 apresenta a Metodologia de Experimentos. • O Cap´ıtulo 6 apresenta as considera¸c˜oes finais e projetos futuros..

(21) 20. 2 Fundamenta¸ c˜ ao Te´ orica Este cap´ıtulo aborda todos os conceitos que ser˜ao tratados no decorrer deste trabalho, detalhando especialmente alguns itens relacionados a microprocessadores e sensores, assim como os conceitos relacionados `a Aprendizado de M´aquina. Dentre eles, abordaremos principalmente os algoritmos de agrupamento e de classifica¸c˜ao utilizados em nosso estudo.. 2.1. Ardu´ıno ´ um ambiente de prototipagem eletrˆonica de hardware livre (open source) e de E. placa u ´ nica, projetada com um microcontrolador Atmel AVR com suporte de entrada e sa´ıda embutido com uma linguagem de programa¸c˜ao padr˜ao. O projeto Arduino, iniciado na It´alia, em 2005, era voltado para intera¸c˜ao de projetos escolares de forma a ter um or¸camento menor que outros sistemas de prototipagem dispon´ıveis naquela ´epoca. Atualmente, seu hardware ´e feito atrav´es de um microcontrolador Atmel AVR. Este hardware, como pode ser visto na Figura 3, pode ser comercializado completo com o microcontrolador ou por pe¸cas, onde precisamos somente gravar o microcontrolador e colocar na placa espec´ıfica de desenvolvimento. Figura 3 – Plataforma Arduino.. Fonte: google.com.br.. A plataforma Arduino permite que pessoas que n˜ao est˜ao familiarizadas com as linguagens de programa¸c˜ao, possam mesmo assim, desenvolver seus prot´otipos. Ela possui um editor de c´odigos que pode carregar programas, anexando j´a as bibliotecas.

(22) 21. de determinados componentes ou criar programas do zero, podendo tamb´em executar programas por linha de comando, facilitando a visualiza¸ca˜o do que est´a acontecendo. Na Tabela 1 podemos observar a compara¸ca˜o de alguns arduinos que s˜ao vendidos no mercado atualmente. Tabela 1 – Alguns dados comparativos de v´arios tipos de Arduinos. Compara¸c˜ ao de Alguns Arduinos no Mercado Arduinos UNO MEGA LEONARDO Pro Mini Microcontrolador ATmega328 ATmega2560 ATmega32U4 ATMega328p Tens˜ao 5V 5V 5V 5V Pinos Digitais 14 54 20 14 Pinos Anal´ogicos 6 16 12 8 Mem´oria Flash 32 Kb 8 Kb 32 Kb 32 Kb EEPROM 1 Kb 4 Kb 1 Kb 1 Kb Clock 16Mhz 16 MHz 16 Mhz 16 Mhz Fonte: google.com.. O ambiente pode ser totalmente estendido com a utiliza¸c˜ao de bibliotecas, que podem ser fornecidas para uso do pr´oprio dispositivo, como tamb´em para a utiliza¸c˜ao de componentes externos, como sensores ou outros. No caso de um sensor, geralmente, o fabricante fornece uma biblioteca para ser utilizado com o dispositivo. Contudo, nada impede do pr´oprio usu´ario criar sua pr´opria biblioteca.. 2.1.1. Shield W5100 Outra vantagem do Arduino, ´e a existˆencia de v´arios shields. Os shields s˜ao placas. de circuito que podem ser conectadas ao Arduino, encaixando-se perfeitamente por cima dele, e expandindo suas capacidades. A capacidade de expans˜ao possibilita uma infinidade de aplica¸co˜es de maneira simples e r´apida. O Ethernet Shield da Arduino, mais conhecido como Arduino Ethernet Shield W5100, permite que uma placa Arduino conecte-se a internet, como pode ser visto na Figura 4. A Conex˜ao do Ethernet Shield W5100 se d´a por meio da utiliza¸ca˜o do barramento SPI, atrav´es dos pinos 10, 11, 12 e 13 do Arduino Uno e tamb´em do pino 10, que faz a sele¸ca˜o para ativar o cart˜ao de mem´oria ou utilizar o Shield para a Internet..

(23) 22. Figura 4 – Shield W5100.. Fonte: google.com.br.. 2.1.2. ESP 8266 O ESP8266 ´e um m´odulo utilizado (ou n˜ao com o arduino) para a utiliza¸c˜ao de. redes Wi-Fi, com o grande crescimento da IOT, vemos mais ainda a necessidade de se ter mais objetos e m´odulos conectados com a internet, e com o tempo surgindo m´odulos cada vez menores e mais pr´aticos para usos cada vez mais diversificados, um destes m´odulos ´e o ESP8266, aonde podemos destacar dois modelos, O ESP8266-E-12 com 9 Portas e o ESP-01 com duas portas, fabricado pela empresa Espressif1 , Figura 5. Figura 5 – ESP8266-E-12 e ESP-01.. Fonte: google.com.br.. Um dos cuidados importantes a se tomar quanto ao funcionamento dos ESPs de forma independente (sem estar conectado a alimenta¸c˜ao do Arduino), ´e sua tens˜ao de trabalho, cuja tens˜ao de funcionamento ´e de 3,3 Volts, tornando estes m´odulos incompat´ıveis para funcionar diretamente com o Arduino, h´a n˜ao ser que o arduino utilizado trabalhe com 3,3 volts, para estes casos ser´a necess´ario realizar uma pequena adapta¸ca˜o das tens˜oes 1. https://espressif.com.

(24) 23. utilizando conversores ou Buffer n˜ao-inversores para adequar a tens˜ao trabalhada e n˜ao correr o risco de queimar os mesmos. Uma das vantagens de se usar o ESP, est´a na sua flexibilidade e seu tamanho reduzido.. 2.2. Sensores De acordo com Daniel Thomazini e Pedro Urbano Braga (THOMAZINI; ALBU-. QUERQUE, 2009), os sensores podem ser definidos como componentes eletrˆonicos que sofrem varia¸c˜ao de grandeza el´etrica (como por exemplo, resistˆencia, corrente e tens˜ao el´etrica) a partir de uma outra grandeza f´ısica (temperatura, umidade, luz, movimento, etc) contando que haja uma liga¸ca˜o conhecida entre a varia¸ca˜o el´etrica e a grandeza f´ısica, como pode ser visto na Figura 6. Figura 6 – Ilustra¸ca˜o das formas de energia em um sensor.. Fonte: Sensores Industriais, Thomazini, 2007.. De acordo com Jefro (JEROENDOGGEN; BERRAZI, 2014), existe uma gama muito grande de sensores de temperatura que podem ser utilizados para se trabalhar com microcontroladores. As empresas tentam estender este leque de op¸c˜oes, e ainda disponibilizam bibliotecas necess´arias para a utiliza¸c˜ao desses sensores juntamente com microcontrolador do dispositivo Arduino, como pode ser visto na Figura 7. A larga utiliza¸ca˜o de sensores em a´reas, tais como, rob´otica e mecatrˆonica, tem contribu´ıdo consideravelmente para a sua populariza¸c˜ao. Al´em disso, a facilidade de uso tamb´em ´e fator preponderante para que sua utiliza¸ca˜o cres¸ca, principalmente na a´rea industrial (BANZI, 2008). Os sensores mais comuns s˜ao os sensores de temperatura (KURNIAWAN, 2015), entre eles podemos citar os termistores PTC e o NTC aonde o PTC trabalha com a.

(25) 24. Figura 7 – Sensores mais utilizados para obten¸ca˜o de dados.. Fonte: do pr´oprio autor.. vari¸ca˜o de resistˆencia de forma diretamente proporcional, ou seja, sua resistˆencia el´etrica aumenta com o aumento da temperatura e o NTC ´e inversamente proporcional, aonde sua resistˆencia el´etrica diminui com o aumento da temperatura, temos tamb´em o LM35, onde o seu funcionamento consiste em uma tens˜ao de entrada de 4 a 20 Volts e sua sa´ıda de sinal tem 10mV por grau Celsius e o DHT11. O DHT11 por sua vez, possui a vantagem de oferecer dois sensores dentro do mesmo inv´olucro. Um sensor de temperatura termistor do tipo NTC e outro de umidade HR202. Contudo, em se tratando de precis˜ao anal´ogica, o que apresentou resultados mais satisfat´orios foi o LM35. O DHT11, produzido pela empresa japonesa AOSONG2 , apresentou um erro de precis˜ao superior ao LM35. A justificativa ´e devido a utiliza¸ca˜o de um termistor no DHT11 o qual provoca atrasos na resposta de leitura. Outras informa¸c˜oes sobre a precis˜ao dos sensores LM35 e DHT11 s˜ao descritas na Tabela 2. Em nosso trabalho, usaremos o sensor DHT11 apenas como sensor de umidade. Tabela 2 – Comparativo dos sensores DHT11 e LM35. Vcc Faixa de Medi¸ca˜o Temperatura Precis˜ao da Temperatura Faixa de Medi¸ca˜o Umidade Precis˜ao da Umidade Intervalo entre medi¸c˜oes. DHT11 3 a 5,5 Vdc 0 a 50 +-2 20 a 80 % HR 5 % HR 1s. LM35 4 a 30 Vdc -55 a 150 0,5 1s. Fonte: Getting Started with Arduino and Go, 2015 2. http://www.aosong.com/en/home/index.asp.

(26) 25. Como j´a foi informado acima, o sensor de temperatura a ser utilizado em nosso trabalho ser´a o LM35. Tal sensor ´e produzido pela Texas Instruments3 .O LM35 possui 3 pinos, na Figura 8, podemos ver um exemplo pr´atico de utiliza¸c˜ao deste sensor. Figura 8 – Exemplo pr´atico de Utiliza¸ca˜o do LM35.. Fonte: google.com.. Estes sensores foram escolhidos tamb´em para atender os requisitos do problema, onde o meio analisado est´a na seguinte condi¸ca˜o: 0 < t < 50C. Na figura 9 temos a compara¸ca˜o de sensibilidade encontrada no LM35 e no DHT11 onde foi feito um teste de aumento de temperatura e resfriamento dos mesmos, podemos observar uma resposta r´apida do LM35 e rela¸c˜ao ao DHT11. Figura 9 – Compara¸ca˜o de Sensibilidade LM35 x DHT-11. Fonte: do pr´oprio autor.. 2.3. Fus˜ ao de Sensores A fus˜ao de dados provenientes de m´ ultiplas origens tem sido largamente estudada,. e aplicada em diferentes a´reas, tais como: medicina, seguran¸ca p´ ublica e ind´ ustria (sistema 3. http://www.ti.com.

(27) 26. de monitoramento e controle) (LUO; KAY, 1995). Os sensores tˆem sido utilizados como fonte de dados para a grande maioria das aplica¸c˜oes citadas. Al´em disso, eles podem apresentar caracter´ısticas semelhantes ou diferentes. Por essa raz˜ao, ´e importante fundir tais dados oriundos de v´arios sensores. A fus˜ao de dados oriundos de v´arios sensores envolve a combina¸c˜ao dos mesmos, buscando sempre obter informa¸c˜oes u ´teis que n˜ao s˜ao obtidas pelos sensores individuais, principalmente em termos de confiabilidade e exatid˜ao. Dessa forma, a fus˜ao de sensores permite, que o sistema no qual os sensores s˜ao utilizados, se torne mais tolerante a falhas, e que provenha novas informa¸co˜es, diferentemente daquelas obtidas pelos sensores de forma individual [FACELI, 2004]. Algoritmos de fus˜ao de dados podem ser classificados em algoritmos de fus˜ao de dados redundantes ou de dados complementares. No primeiro tipo, a fus˜ao reduz a incerteza e acrescenta robustez ao sistema. No segundo tipo, os sensores possuem caracter´ısticas distintas, o que permite a discrimina¸c˜ao de situa¸c˜oes amb´ıguas. Em nosso trabalho, utilizamos apenas os m´etodos para fus˜ao de dados redundantes. Dentre os m´etodos de fus˜ao de dados redundantes, podemos citar os seguintes: 1. M´edia Ponderada (MP) (JOSHI; SANDERSON, 1999b): ´e o m´etodo mais simples e intuitivo de fundir dados redundantes. Consiste no c´alculo da m´edia ponderada dos dados redundantes oriundos de um conjunto de sensores. Nesse m´etodo, ´e atribu´ıdo pesos distintos de acordo com a localiza¸ca˜o de cada sensor, e a informa¸ca˜o resultante ´e a combina¸ca˜o dos dados atrav´es da MP. 2. Filtro de Kalman (Kalman filter) (JOSHI; SANDERSON, 1999a): ´e um m´etodo que utiliza medi¸c˜oes de grandezas realizadas ao longo do tempo para gerar resultados mais pr´oximos dos valores reais das grandezas medidas. Ele tende a suavizar a influˆencia de ru´ıdos e outras incertezas nas medi¸co˜es realizadas. 3. Inferˆencia Bayesiana (KLEIN; MOESCHBERGER, 2003): ´e uma t´ecnica estat´ıstica que se baseia na regra de Bayes. Ele utiliza conhecimento pr´evio sobre o ambiente para fazer inferˆencias sobre o que est´a sendo observado. 4. M´axima verossimilhan¸ca (maximum-likelihood estimation- MLE): ´e um m´etodo para estimar os parˆametros de um modelo estat´ıstico. Assim, a partir de um conjunto de dados e dado um modelo estat´ıstico, a estimativa por m´axima verossimilhan¸ca estima valores para os diferentes parˆametros do modelo..

(28) 27. Em nosso trabalho, utilizamos dois m´etodos de fus˜ao para os dados provenientes dos sensores de temperatura e umidade. O primeiro deles foi a M´edia Ponderada. Os pesos utilizados na MP estavam diretamente ligados a proximidade dos sensores em rela¸ca˜o aos equipamentos de an´alises. Quanto menor a proximidade dos sensores, maior os pesos. O segundo foi o filtro de Kalman, utilizado para eliminar ru´ıdos de leitura.. 2.3.1. Filtro de Kalman O filtro de Kalman ´e um conjunto de equa¸c˜oes matem´aticas que constitui um. processo recursivo eficiente de estima¸c˜ao, uma vez que o erro quadr´atico ´e minimizado. Atrav´es da observa¸c˜ao da vari´avel denominada “vari´avel de observa¸c˜ao” outra vari´avel, n˜ao observ´avel, denominada “vari´avel de estado” pode ser estimada eficientemente. Podem ser estimados os estados passados, o estado presente e mesmo previstos os estados futuros (FACELI et al., 2011). O modelo do Filtro de Kalman ´e descrito de acordo com as equa¸co˜es abaixo:  S = A s + B u + γ t t t−1 t t t Z = C s + δ t. t t. (1). t. onde s  <n ´e o vetor de estados; µ  <l ´e o vetor das entradas de controle; z  <n ´e o vetor de medi¸c˜oes; a matriz n x n, A, ´e a matriz de transi¸c˜oes de estados; B, n x l, ´e a matriz de coeficientes de entrada; a matriz C, m x n, ´e a matriz de observa¸c˜ao; γ  <n representa o vetor de ru´ıdos do processo e δ  <n o vetor de erros de medi¸ca˜o. Os ´ındices t e t − 1 representam os instantes de tempo atual e anterior respectivamente. O funcionamento do filtro realiza a predi¸c˜ao e atualiza¸c˜ao de acordo com as propriedades estat´ısticas do ru´ıdo. As equa¸co˜es abaixo descrevem as fases de predi¸ca˜o (2) e atualiza¸ca˜o (3) para o filtro.   µ =A µ +B u t t t−1 t t−1 P = A P A T + R t t t t−1 t  P P   Kt = t CtT (Ct t CtT )−1   µt = µt + Kt (zt − Ct µt )   P P   = (I − K C ) t. t. t. t. (2). (3).

(29) 28. onde st ´e o vetor de estados no tempo t por sua m´edia µt e covariˆancia Σt . As matrizes R, n x n, e Q, l x l, s˜ao as matrizes de coveriancia dos ru´ıdos de processo (γ) e medi¸c˜ao (δ) respectivamente, e a matriz K, n x m significa o ganho do sistema.. 2.4. Aprendizado de M´ aquina AM ´e o nome dado ao processo de indu¸ca˜o de uma hip´otese ou aproxima¸ca˜o de uma. fun¸ca˜o a partir da experiˆencia passada. Um exemplo simples disto, pode ser verificado na descoberta de uma hip´otese na forma de uma regra ou um conjunto de regras para definir quais clientes de um supermercado devem receber propaganda sobre um novo produto, baseado t˜ao somente nas compras passadas destes clientes (FACELI et al., 2011). Em AM, computadores s˜ao programados para aprender com a experiˆencia passada. Para tal, empregam um princ´ıpio de inferˆencia denominado de indu¸ca˜o, no qual se obtˆem conclus˜oes gen´ericas a partir de um conjunto particular de exemplos. Assim, algoritmos de AM aprendem a induzir uma fun¸c˜ao ou hip´otese capaz de resolver um problema a partir de dados que representam instˆancias do problema a ser resolvido. Esses dados formam um conjunto, simplesmente denominado de conjunto de dados. Algoritmos de AM tˆem sido largamente utilizados em diversas tarefas, que podem ser organizadas de acordo com diferentes crit´erios. Um deles diz respeito ao paradigma de aprendizado a ser adotado com a tarefa. De acordo com esse crit´erio, as tarefas de aprendizado podem ser divididas em: preditivas, descritivas e por refor¸co. Em tarefas de previs˜ao, o objetivo ´e encontrar uma fun¸ca˜o (hip´otese) que a partir dos dados de treinamento possa ser utilizada para prever um r´otulo ou valor que caracterize um novo modelo. Para isso, cada objeto deve possuir atributos de entrada e sa´ıda (chamado de r´otulo). Os algoritmos ou m´etodos de AM utilizados nessa tarefa seguem o paradigma de aprendizado supervisionado. O termo supervisionado vem da simula¸c˜ao da presen¸ca de um supervisor, que conhece a sa´ıda (r´otulo) desejada para cada exemplo. As tarefas supervisionadas se distinguem pelo tipo dos r´otulos dos dados: discreto, no caso da classifica¸ca˜o; e cont´ınuo, no caso da regress˜ao. Em tarefas de descri¸c˜ao, a meta ´e explorar ou descrever um conjunto de dados. Os algoritmos de AM utilizados nessas tarefas n˜ao fazem uso do atributo de sa´ıda. Por isso, seguem ao paradigma de aprendizado n˜ao supervisionado (sem a presen¸ca de um supervisor). Uma tarefa descritiva de agrupamento de dados, por exemplo, tem por objetivo.

(30) 29. encontrar grupos de objetos semelhantes no conjunto de dados. As tarefas descritivas s˜ao divididas em: agrupamento, em que os dados s˜ao agrupados de acordo com a sua similaridade; sumariza¸c˜ao, cujo objetivo ´e encontrar uma descri¸c˜ao simples e compacta para o conjunto de dados; e associa¸c˜ao, que consiste em encontrar padr˜oes frequentes de associa¸ca˜o entre os atributos de um conjunto de dados. Em nosso trabalho utilizamos algoritmos de agrupamento e de classifica¸c˜ao para extrair conhecimento dos dados oriundos dos sensores de temperatura e umidade.. 2.4.1. Algoritmos de Agrupamento Existe uma grande diversidade de algoritmos de agrupamento que podem ser en-. contrados na literatura (XU; WUNSCH II, 2005). Cada um desses algoritmos possuem caracter´ısticas e finalidades diferentes. Nesta subse¸c˜ao ser˜ao apresentados todos os algoritmos utilizados na fase de agrupamento (ver se¸c˜ao 4.3) deste trabalho. Nesta fase (agrupamento) ser˜ao geradas parti¸co˜es oriundas de cada algoritmos, depois ser˜ao validadas de acordo com alguns ´ındices de valida¸c˜ao, e por u ´ ltimo, as melhores parti¸c˜oes ser˜ao utilizadas na fase de classifica¸ca˜o. • k-M´edias: o algoritmo k-M´edias ´e comummente utilizado em tarefas de agrupamento, principalmente por de f´acil implementa¸ca˜o. Ele se baseia na ideia de centroides, onde o centroide representa a instˆancia m´edia de um grupo, ou seja, a instˆancia que ´e a m´edia de todas as outras dentro de um mesmo grupo. Normalmente, a escolha inicial dos centroides ´e feita aleatoriamente. Os elementos s˜ao agrupados em k grupos com base em alguma medida de similaridade. Geralmente, ´e utilizado a distˆancia Euclidiana. Al´em disso, ´e necess´ario definir o valor de k, ou seja, o n´ umero de grupos. • Expectˆancia M´axima: o algoritmo Expectˆancia M´axima, do inglˆes ExpectationMaximization - EM, ´e uma t´ecnica usada para estimar fun¸co˜es de m´axima verossimilhan¸ca a partir de dados incompletos, de modo que se os dados est˜ao incompletos, pode-se utilizar os casos em que foram observadas as vari´aveis para aprender a predizer seus valores quando n˜ao observados(FACELI et al., 2011). O procedimento usando pelo EM para estimar os parˆametros (m´edias e desvios padr˜ao) do modelo ´e semelhante ao de escolha dos centroides do algoritmo k-M´edias (FACELI et al., 2011)..

(31) 30. • Hier´arquico Aglomerativo: os algoritmos de agrupamento hier´arquicos geram uma sequˆencia de parti¸c˜oes aninhadas, semelhante a uma estrutura hierarquia do tipo a´rvore (FACELI et al., 2011). H´a dois tipos de algoritmos: os divisivos e os aglomerativos. Na primeira, os objetos s˜ao alocados em um u ´ nico grupo, sendo divididos sucessivamente at´e o n´ umero de grupos escolhido previamente. J´a no outro tipo, inicialmente, cada objeto representa um grupo, sendo aglomerados at´e o n´ umero de grupos desejado.. 2.4.2. Medidas para Valida¸ c˜ ao Como forma de validar as parti¸co˜es criadas a partir da utiliza¸ca˜o dos algoritmos de. agrupamentos citados na subse¸c˜ao anterior, utilizou-se os ´ındices Davies-Bouldin (DB) e Silhueta (HALKIDI; BATISTAKIS; VAZIRGIANNIS, 2002). • ´Indice Davies-Bouldin (DB):: esta medida calcula a compacticidade dos grupos formados, atrav´es da dispers˜ao intra-grupos e entre os grupos; • Silhueta: esta medida mede a qualidade dos clusters com base na proximidade entre as instˆancias de um cluster e na distˆancia das instˆancias de um cluster com rela¸ca˜o aos outros clusters. As silhuetas mostram quais instˆancias est˜ao bem situados dentro dos seus clusters e quais n˜ao est˜ao. Podem ser calculadas para agrupamentos gerados por meio do uso de medidas de similaridade ou de medidas de dissimilaridade (distˆancias). DB: dado uma parti¸c˜ao C = {C1 , C2 , ..., Ck }, o ´ındice DB pode ser definido da seguinte forma: k. 1X DB(C) = max k i=1 j=1,...,k|j6=i. . ∆(Ci ) + ∆(Cj ) δ(Ci , Cj ).  (4). em que k ´e o n´ umero de clusters; ∆(Ci ) ´e a distˆancia intra-cluster para o cluster i e δ(Ci , Cj ) ´e a distˆancia entre os centroides dos clusters Ci e Cj .. ∆(Ci ) =. 1 X (x − zi )2 |Ci | x∈C i. em que x ´e uma instˆancia de i e zi ´e o centroide do grupo i.. (5).

(32) 31. Silhueta: a medida de silhueta ´e calculada para cada instˆancia que faz parte de um agrupamento. As silhuetas medem a qualidade dos clusters com base na proximidade entre as instˆancias de um cluster e na distˆancia das instˆancias de um cluster com rela¸ca˜o aos outros clusters. As silhuetas mostram quais instˆancias est˜ao bem situados dentro dos seus clusters e quais n˜ao est˜ao. Podem ser calculadas para agrupamentos gerados por meio do uso de medidas de similaridade ou de medidas de dissimilaridade (distˆancias). Seja a(xi ), a distˆancia m´edia da instˆancia xi em rela¸ca˜o a todas as outras instˆancias do cluster Ci ; d(xi , Cj ), a distˆancia m´edia da instˆancia xi em rela¸c˜ao as instˆancias do cluster Cj ; e b(xi ), a menor distˆancia m´edia de xi em rela¸ca˜o a todos os demais clusters, pode ser defina como sendo:. b(xi ) = lim d(xi , Cj ) Ci 6=Cj. (6). Desse modo, a silhueta de uma instˆancia, s(xi ), pode ser definida como sendo:. s(xi ) =. 2.4.3.    1−  . a(xi ) , b(xi ). a(xi ) < b(xi ). 0, a(xi ) = b(xi )     b(xi ) − 1, a(x ) > b(x ) i i a(xi ). (7). Algoritmos de Classifica¸ c˜ ao Os algoritmos de classifica¸c˜ao, tamb´em chamados de algoritmos preditivos, s˜ao. aplicados em problemas onde as instˆancias de uma base de dados, representados por um conjunto de atributos, precisam ser enquadrados em um conjunto pr´e-definidos de poss´ıveis r´otulos (classes). H´a um bom n´ umero de algoritmos de classifica¸c˜ao propostos na literatura. Os algoritmos utilizados neste trabalho s˜ao descritos a seguir. Cada um deles possuem caracter´ısticas e finalidades diferentes. Nesta subse¸c˜ao ser˜ao apresentados todos os algoritmos de aprendizado de m´aquina supervisionado utilizados na fase de ´ classifica¸ca˜o (ver se¸co˜es 4.4 e 4.6), que s˜ao: k-Nearest-Neighbor, Arvore de decis˜ao, Rede Neural, M´aquinas de vetores de suporte e Naive Bayes. • k-Nearest-Neighbor (k -NN): o algoritmo k -NN, tamb´em conhecido como k vizinho mais pr´oximo, ´e um m´etodo baseado em instˆancia que classifica uma instˆancia.

(33) 32. de teste baseada na classe referente as instˆancias mais pr´oximas pertencentes ao conjunto de treinamento. Este m´etodo utiliza uma medida de distˆancia, geralmente a Distˆancia Euclidiana, para calcular a distˆancia entre uma nova instˆancia do conjunto de teste, em rela¸ca˜o a todas as instˆancias pertencentes ao conjunto de treinamento. A nova instˆancia receber´a a classe referente as instˆancias mais pr´oximas pertencentes ao conjunto de treinamento (MITCHELL, 1997).. dE (A, B) =. p (a1 − b1 )2 + a2 − b2 )2 + · · · + (an − bn )2. (8). ´ • Arvore de decis˜ao (AD): esse algoritmo utiliza a t´ecnica de dividir para conquistar na solu¸c˜ao de problemas de classifica¸c˜ao. Seu funcionamento consiste em, dado um conjunto de treinamento, gerar uma ´arvore de decis˜ao como sa´ıda. Essa ´arvore ser´a utilizada para classificar as instˆancias de teste. Em cada etapa do algoritmo, enquanto o crit´erio de parada n˜ao for atingido, um dos atributos ´e selecionado para que uma regra seja criada, retornando um novo n´o para a´rvore, resolvendo parte do problema e abrangendo um subespa¸co das instˆancias em quest˜ao (BERRY; LINOFF, 2004). • Rede Neural Artificial: o funcionamento das redes neurais artificiais ´e baseado no sistema nervoso. O objetivo das RNAs ´e simular a capacidade de aprendizado do c´erebro humano na aquisi¸c˜ao de conhecimento (HAYKIN, 2001). Uma RNA ´e composta por neurˆonios artificiais que est˜ao conectados em camadas. Os neurˆonios podem estar organizados em trˆes camadas: de entrada, escondida e de sa´ıda. O Multilayer Perceptron (MLP) ´e um dos tipos de RNAs mais conhecidos na literatura (BERRY; LINOFF, 2004). • M´aquina de vetor de suporte (SVM): o algoritmo SVM ´e embasado na teoria de aprendizado estat´ıstico, que permite a obten¸ca˜o de classificadores com boa capacidade de generaliza¸c˜ao. Ele utiliza como entrada os dados dispon´ıveis para treinamento e a partir desses dados utiliza-se o princ´ıpio da indu¸c˜ao para inferir uma fun¸c˜ao que minimize o erro sobre os dados de treinamento, visando gerar um menor erro sobre novos dados (LORENA; CARVALHO, 2007)..

(34) 33. • Naive bayes (NB): ´e um algoritmo probabil´ıstico que ´e baseado no teorema de Bayes, originado na Estat´ıstica. Para que esse m´etodo funcione corretamente ´e necess´ario garantir que os dados sejam independentes entre si. Ele funciona baseado na ideia de calcular a probabilidade de um evento A acontecer dada a ocorrˆencia de um outro evento B (MITCHELL, 1997)..

(35) 34. 3 Trabalhos Relacionados Antes de analisarmos os trabalhos diretamente relacionados `a a nossa proposta, ´e importante ressaltar a importˆancia dos sistemas de controle e monitoramento, tamb´em chamados de sistemas de supervis˜ao e aquisi¸c˜ao de dados. Tais sistemas utilizam um software desenvolvido para monitorar e supervisionar os dispositivos de controle conectados atrav´es de controladores (drivers) espec´ıficos. Al´em desse grupo de sistemas, h´a tamb´em o grupo de sistemas que utilizam algum processo inteligente na tomada de decis˜ao. Nesse contexto, tais sistemas realizam o monitoramento de ambientes atrav´es de dispositivos diversos, que por sua vez, servem de entrada para o processo inteligente de controle ou de tomada de decis˜ao. Note que h´a uma diferen¸ca substancial entre ambos os sistemas citados, principalmente no que se refere a controle inteligente. No primeiro grupo, os sistemas fazem a aquisi¸c˜ao e a supervis˜ao de dados, e podem se basear em regras simples para realizar o controle das a¸c˜oes. J´a o segundo grupo, realiza o controle das a¸c˜oes atrav´es de modelos aplicados sobre os dados adquiridos. Ou seja, no segundo caso, busca-se sempre uma forma de generalizar o conhecimento adquirido para qualquer nova instˆancia.. 3.1. Sistemas de Controle Simples Nessa se¸c˜ao ser˜ao descritos alguns trabalhos que se enquadram fortemente no. primeiro grupo supracitado. Em sua grande maioria, os trabalhos fazem uso de Arduino para efetuar os controles sobre qualquer atuador (dispositivo).. 3.1.1. Aplica¸c˜ oes Residenciais A automa¸c˜ao residencial tem se tornado um dos grandes objetivos por de traz do. uso de Arduino, como forma de controlar certos dispositivos. No trabalho de (CAMPOS, 2014), por exemplo, os autores fazem uso de um celular para enviar comandos para abrir e fechar um port˜ao el´etrico, ou para ligar ou desligar as luzes de uma residˆencia. Em um outro trabalho, (MESQUITA JOSE C. G. NETO, 2014), o controle de dispositivos localizados em uma residˆencia eram executados atrav´es de um m´odulo web..

(36) 35. A mesma ideia foi seguida em (SILVA, 2013). Por´em, sensores de movimento e cˆameras foram introduzidos como forma de incrementar o monitoramento da residˆencia. Na mesma linha do trabalho anterior, no trabalho de (AZEVEDO, 2012), o autor prop˜oem uma solu¸ca˜o para a automa¸ca˜o residencial com Arduino e Ethernet Shield (transmiss˜ao de dados), fazendo o controle do mesmo via IPAD ou Iphone. Em um outro trabalho (GUIMAR˜aES, 2015), os autores apresentam um sistema de automa¸ca˜o residencial baseado em Arduino com o objetivo de monitorar a temperatura do referido ambiente. O monitoramento ´e feito atrav´es de um m´odulo web, que executa os controle de ligar e desligar os equipamentos conectados ao Arduino. Em (YUSSOFF, 2010), os autores monitoram a temperatura do ambiente atrav´es v´arios sensores distribu´ıdos pelos v´arios cˆomodos do mesmo. O m´odulo de monitoramento permite monitorar os cˆomodos, assim como ligar ou desligar aparelhos de ar-condicionados. Mesmo em residencias ´e poss´ıvel aplicar as caracter´ısticas de uma rede de sensores. Em (SEEWALD, 2014), foram utilizados v´arios sensores (de temperatura, de presen¸ca, de g´as e de luminosidade) para abastecer com dados um sistema de monitoramento via web e via aplicativo Android (dispositivo m´ovel). Finalmente, em (FERREIRA, 2014), os autores apresentaram um prot´otipo capaz de remotamente controlar e monitorar o estado de diferentes dispositivos espalhados por um determinado ambiente. Nesse trabalho, eles utilizaram os conceitos de Internet das Coisas (IoT, do inglˆes Internet of Things), e para tal foi desenvolvido um middleware capaz tratar as requisi¸co˜es dos diversos dispositivos. ´ importante salientar, que todos os trabalhos apresentados nessa subse¸ca˜o, s˜ao na E verdade sistemas de monitoramento residencial. Eles fazem uso de um ou mais sensores (de mesmo tipo ou n˜ao) para a partir dos dados adquiridos, executar as a¸co˜es de controle de forma manual, ligando ou desligando aparelhos.. 3.1.2. Aplica¸c˜ oes n˜ ao Residenciais No trabalho de (CAVALCANTI, 2012), os autores utilizam um Arduino acoplado. a um modem GSM/GPRS, com o intuito de receber comandos via SMS. Dessa forma, pode-se controlar um determinado disjuntor, ligando ou desligando. Al´em de receber comandos, o Arduino manda informa¸ca˜o sobre o estado atual do referido dispositivo, al´em.

(37) 36. da tens˜ao que passa pelo mesmo. Ou seja, o m´odulo de controle recebe informa¸co˜es sobre a tens˜ao e sobre o estado do dispositivo, podendo deslig´a-lo ou lig´a-lo. Uma rede de sensores pode fornecer dados relevantes sobre um determinado dom´ınio. Em (BERGMANN N. W.; WALLACE, 2010) por exemplo, o autor desenvolveu uma rede de sensores sem fio de baixo custo, que foi aplicada a um ambiente marinho. A ideia era manter a temperatura dos tanques controlada atrav´es dos dados coletados pelos sensores distribu´ıdos nos tanques. Al´em dos Arduinos como microcontroladores, tamb´em foi utilizado um m´odulo XBee para transmiss˜ao via r´adio frequˆencia. Em outros casos, n˜ao apenas a temperatura precisa ser monitorada, mas outros fatores. No trabalho de (BELEM, 2011) por exemplo, foi desenvolvido um prot´otipo composto de sensores de umidade e temperatura com o objetivo de obter dados suficientes para realiza¸ca˜o de um controle mais r´ıgido da condi¸co˜es t´ermicas dentro de um avi´ario. O sensor utilizado no trabalho foi o SHT15 (sensor de umidade e temperatura), que coletava os dados dentro de um per´ıodo especificado. Dessa forma, baseado no monitoramento, o granjeiro seria sempre alertado sobre as mudan¸cas de t´ermicas, e poderia a partir da´ı, tomas as a¸co˜es cab´ıveis para manter o ambiente dentro dos padr˜oes normais e necess´arios para o crescimento das aves. Em (CRUZ, 2013), o autor utilizou sensores sem fio para capturar dados de temperatura e movimento, que alimentavam o m´odulo controlador. Este por sua vez, controlava os aparelhos de ar-condicionado via infra-vermelho diminuindo ou aumentando a temperatura do ambiente. Dessa forma, o sistema de controle e monitoramento permitia um melhor uso da energia el´etrica, visto que podia ligar ou desligar aparelhos, ou mesmo aumentar ou diminuir a temperatura dos mesmo. Com esse mesmo intuito, o trabalho de (CUNHA, 2013) tamb´em busca o uso eficiente de aparelhos de ar-condicionado espalhados por ambientes dos mais variados. A diferen¸ca entre ambos os trabalhos est´a na quantidade de aparelhos que se deseja controlar. Em (BARROCA et al., 2013), ´e descrito um sistema de monitoramento e controle baseado em rede de sensores sem fio para uso na constru¸ca˜o civil. O objetivo ´e fornecer uma ferramenta capaz de controlar a temperatura e umidade no interior de uma estrutura de concreto. Para tal, foram utilizados sensores SHT15 (temperatura e umidade), juntamente com Arduino. J´a um outro trabalho (ABRAHAM; LI, 2014), que tamb´em utiliza uma rede sem fio de sensores focou somente no controle da qualidade do ar em ambientes fechados. O objetivo principal deste trabalho era apresentar um sistema de baixo custo.

(38) 37. que supervisionasse a qualidade do ar interior atrav´es do uso de Arduino, m´odulos XBee e uma rede de micros sensores de g´as. Os trabalhos apresentados nessa subse¸ca˜o foram aplicados aos mais variados tipos de ambientes. Contudo, o controle implementado estava sempre associado a interven¸c˜ao humana atrav´es de um aplicativo (web ou m´ovel) ou a regras b´asicas implementadas no pr´oprio aplicativo. Em nenhum dos trabalhos houve controle inteligente atrav´es de t´ecnicas ou modelos que pudessem generalizar o que foi aprendido sobre os dados coletados.. 3.2. Sistemas de Controle Inteligente Nessa se¸c˜ao, discutimos trabalhos que fazem uso de rede de sensores com ou. sem fio, e que utilizam algum mecanismo capaz de prover inteligˆencia. Dentre esses trabalhos, podemos citar os seguintes: (VERA-REPULLO et al., 2015), (SANTOS, 2013) e (YUWONO et al., 2015). O primeiro trabalho (VERA-REPULLO et al., 2015), utiliza sensores para capturar dados de temperatura, umidade e solo. A partir de tais dados, aplica algumas regras pr´e-definidas para controlar a quantidade e dura¸c˜ao da irriga¸c˜ao de vegetais. O segundo segue a mesma linha de implementa¸c˜ao de controle contido no primeiro (utiliza¸c˜ao de regras). Nele (SANTOS, 2013), o autor prop˜oem a utiliza¸ca˜o de uma rede de sensores para controle de temperatura e umidade em uma estufa. De acordo com a medi¸co˜es, regras s˜ao aplicadas para determinar o tempo de utiliza¸ca˜o de uma bomba d’´agua. No trabalho de (KAYSSI, 2013), o mesmo faz uso de um microcontrolador Arduino que se comunica com uma aplica¸c˜ao Android, o mesmo faz uso de uma rede de Zigbee sem fio e tecnologias X10 com fio, tornando-se assim um sistema h´ıbrido de custo-eficiente. Fazendo controle de eventos por meio de tempos programados para serem acionados sob condi¸c˜oes espec´ıficas, e isto pode ter um grande papel na redu¸c˜ao da energia total consumida por alguns aparelhos. J´a no trabalho de (G.PRATHYUSHA, 2015), utilizaram l´ogica fuzzy junto com o microcontrolador arduino para controlar a temperatura e verificar a mudan¸ca da mesma at´e atingir a temperatura desejada atrav´es de um sistema com implementa¸ca˜o de software distorcido e com o controlador PID, de modo a obter o melhor processo de resposta dos sensores..

(39) 38. Por u ´ ltimo, no trabalho de (YUWONO et al., 2015), os autores utilizam sele¸c˜ao n˜ao supervisionada de atributos e um algoritmo de agrupamento inspirado no Enxame de Part´ıculas, do inglˆes Particle Swarm Optimization (PSO), para detec¸c˜ao autom´atica de falhas e diagn´ostico em sistemas de ventila¸ca˜o e de ar condicionado.. 3.3. Discuss˜ ao Nesta se¸c˜ao enfatizamos alguns pontos importantes mostrados ao longo deste. cap´ıtulo. Primeiramente, vale ressaltar que a grande maioria dos sistemas de monitoramento e controle mostrados aqui, n˜ao possuem mecanismos inteligentes de controlar as a¸c˜oes dentro de um determinado ambiente. Segundo, dentre os trabalhos relatados, apenas um faz uso de t´ecnicas de aprendizado de m´aquina combinado com t´ecnicas de otimiza¸ca˜o para detec¸ca˜o inteligente de falhas em sistemas de ventila¸ca˜o. Diante do exposto, este trabalho visa fornecer uma ferramenta capaz de controlar de forma inteligente os aparelhos de ar-condicionado e desumidificador dentro de um ambiente. Para tal, o mesmo faz uso de t´ecnicas de aprendizado de m´aquina supervisionado e n˜ao supervisionado..

(40) 39. 4 Desenvolvimento do Prot´ otipo. Visando um melhor desenvolvimento do prot´otipo, dividimos este cap´ıtulo em 6 etapas. Na primeira etapa, se encontra as contribui¸co˜es do autor, onde o mesmo descreve alguns circuitos que ajudar˜ao no desenvolvimento do prot´otipo, como o aumento de portas do arduino e a estabiliza¸ca˜o da voltagem do ESP8266 (que vai trabalhar de forma independente, sem receber a voltagem do microntrolador). J´a segunda etapa realizou-se o desenho e a constru¸c˜ao do transmissor de dados. Na terceira etapa foi desenvolvido o receptor prim´ario de controle. Na quarta etapa, foi constru´ıdo o segundo receptor de controle para o Ar-condicionado reserva, na etapa seguinte foi planejado a constru¸ca˜o do terceiro receptor, respons´avel pelo controle do desumidificador e na sexta etapa ´e descrito o sistema de monitoramento remoto. Com isso, conseguimos chegar na seguinte arquitetura do sistema, conforme pode ser visto na Figura 10. Figura 10 – Arquitetura do Sistema.. Fonte: do pr´oprio autor..

(41) 40. 4.1. Contribui¸co ˜es para o desenvolvimento do prot´ otipo Uma das grandes contribui¸c˜oes realizadas no desenvolvimento do prot´otipo foi o. desenvolvimento de uma placa para conex˜ao via I2C utilizando o C.I PCF8574, j´a existem um m´odulo pronto para conex˜ao I2C para display, mas esta contribui¸ca˜o se d´a na forma de se criar m´odulos para a cria¸ca˜o de uma placa u´nica se depender de m´odulos independentes. Assim como o desenvolvimento tamb´em de um circuito para a alimenta¸c˜ao e troca de dados do ESP, com estes circuitos podemos trabalhar de forma independente sem precisar de uma placa de prototipagem para arduino.. 4.1.1. Expansor de portas entradas/sa´ıdas Com a grande evolu¸ca˜o de microprocessadores voltados a kits de aprendizagem e de. aplica¸co˜es de sistemas automatizados, surgiu a necessidade de evoluir microprocessadores com mais portas de entrada e sa´ıda, assim como aumentar a mem´oria dos mesmos e a cria¸c˜ao de expansores de portas de entrada e sa´ıda para aumentar a capacidade de dos microprocessadores que possuem limita¸ca˜o de n´ umero de portas IO. No com´ercio existem v´arios C.I que efetuam esta fun¸c˜ao, dentre eles, destacamos o 74HC595 (registrador de deslocamento de 8 bits) e o PCF8574 (expansor de portas entradas/sa´ıdas de 8bits), neste projeto estaremos utilizando o PCF8574 para controlar um LCD 16x2, conforme visto na figura 11. Figura 11 – Pinagem do display LCD 16 x 2.. Fonte: google.com..

(42) 41. A vantagem de se utilizar o PCF8574, est´a na utiliza¸ca˜o de duas portas do arduino (serial clock(SCL) e serial data(SDA)) e utiliza a interface de I2C1 . Com isso, ´e poss´ıvel expandir as portas de um microcontrolador utilizando apenas essas duas portas para 8 portas. Por u´ltimo, deve-se configurar o endere¸camento do dispositivo que vai se comunicar com o arduino. Utilizando o Fritzing2 como ambiente gr´afico que mostra em modo virtual como seria uma montagem f´ısica em protoboard, temos na Figura 12,a liga¸ca˜o do PCF8574 ao display e ao arduino e na Figura 13 sua pinagem e seu encapsulamento. Figura 12 – Liga¸ca˜o do PCF8574 ao display e ao arduino.. Fonte: do pr´oprio autor.. Figura 13 – Pinagem e encapsulamento do PCF8574.. Fonte: do pr´oprio autor. 1 2. Protocolo de comunica¸c˜ ao utilizado em sistemas embarcados fritzing.org.

(43) 42. 4.1.2. Buffer n˜ ao-inversor CD4050 O circuito integrado CD4050 ´e um integrado com 6 buffers n˜ao-inversores, fazendo. a convers˜ao para o n´ıvel l´ogico de alta para baixa e fazendo como referˆencia a alimenta¸ca˜o do mesmo. A grande vantagem de se usar este circuito integrado est´a na liga¸ca˜o do arduino com outros perif´ericos que exijam outros tipos de alimenta¸c˜ao, como por exemplo 3,3v, utilizando ele como um conversor de n´ıvel l´ogico entre Arduino e o ESP8266, como exemplo. Os pinos tem correspondˆencia; entra alta e sai baixa. Na Figura 14 vemos o diagrama de blocos com a rela¸c˜ao dos pinos e seu inv´olucro. Figura 14 – Diagrama de blocos e inv´olucro do CD4050.. Fonte: do pr´oprio autor.. O CD4050 ser´a utilizado para alimentar o ESP8266, cuja tens˜ao de trabalho e voltagem das portas digitais ´e de 3,3V. Lembrando que o pr´oprio Ardu´ıno tem uma sa´ıda de alimenta¸ca˜o de 3,3V, este recurso ´e apresentado como um m´etodo vi´avel de alimenta¸ca˜o independente, aonde n˜ao precisamos de uma liga¸ca˜o direta com o Ardu´ıno.. 4.2. Transmissor de dados O transmissor de dados, parte superior da Figura 10, ´e composto por um Ardu´ıno. UNO e um Shield W5100, que coletam dados provenientes dos cinco sensores LM35 (Temperatura) e dos cinco sensores DHT11 (Umidade) espalhados pelo laborat´orio. Ainda dentro do pr´oprio microcontrolador, implementamos dois m´etodos de fus˜ao de dados redundantes, que s˜ao os seguintes: Kalman e M´edia Ponderada. Este m´odulo tamb´em ´e respons´avel por enviar os dados dos dez (10) sensores para um banco de dados MYSQL, assim como os dados de temperatura e umidade processados atrav´es da utiliza¸c˜ao dos m´etodos supracitados. Por u ´ ltimo, podemos notar a interface.

(44) 43. para visualiza¸c˜ao das informa¸c˜oes, que auxilia no monitoramento do pr´oprio ambiente (laborat´orio). As funcionalidades implementadas s˜ao as seguintes: • Display para a visualiza¸ca˜o das informa¸co˜es referentes a temperatura e umidade no laborat´orio (poss´ıvel escolher entre Kalman e M´edia Ponderada); • Led Indicador de envio de dados (pisca conforme envia os dados para o servidor); • Led indicador de falta de Internet (acende acusando a falta de conex˜ao); • Led indicador de situa¸ca˜o cr´ıtica (acende quando temperatura e umidade alcan¸cam os valores cr´ıticos descritos nas Classes: Calor1, Calor2 ou Perigo); • Led LIGADO, indicador que o equipamento se encontra ligado. Para facilitar o entendimento do funcionamento do transmissor, usaremos o fluxograma abaixo, representado na Figura 15. Figura 15 – Fluxograma do transmissor.. Fonte: do pr´oprio autor.. O primeiro passo ´e conectar o Shield Internet, caso haja conex˜ao, os cinco pares de sensores ser˜ao lidos. Caso n˜ao haja, o led indicador de falta de conex˜ao ser´a aceso. Passo.

(45) 44. dois, processar os dados dos sensores, usando para isso os m´etodos Kalman ou M´edia Ponderada, e mostrar no display de visualiza¸c˜ao. Passo trˆes, efetuar a classifica¸c˜ao dos dados rec´em coletados (nova instancia), e caso seja necess´ario, acender led referente a situa¸ca˜o cr´ıtica. Passo quatro, enviar os dados para o banco de dados. Por u ´ltimo, repetir os passos descritos. Foi projetado o circuito eletrˆonico como descrito na Figura 16. Figura 16 – Arquitetura do Transmissor.. Fonte: do pr´oprio autor.. A importˆancia deste circuito, est´a na distribui¸ca˜o dos sensores nas portas do arduino e liga¸c˜ao dos leds indicadores e sa´ıda para a liga¸c˜ao do rel´e respons´avel pelo controle do equipamento controlado no laborat´orio, pois podemos observar, que pela quantidade de sensores utilizados (num total de 10 sensores), acabamos limitando o n´ umero de portas do Arduino, este ´e o motivo de utilizarmos o integrado expansor de portas PCF8574, onde conseguimos comunicar um LCD 16 x 2 com apenas duas portas (serial clock(SCL) e serial.

(46) 45. data(SDA)) do Arduino, conforme pode ser visto na Figura 17. Com estes procedimentos, conseguimos estabelecer uma comunica¸c˜ao I2C entre o arduino e o LCD, facilitando a utiliza¸c˜ao do mesmo com a ajuda de endere¸camento fornecido pelo PCF8574. Todo o circuito do transmissor foi montado numa Caixa/Gabinete Pl´astico PATOLA PB-209 82x170x178mm. na Figura 18 temos o prot´otipo j´a em pleno funcionamento no laborat´orio controlado. Figura 17 – Circuito de liga¸c˜ao ao LCD utilizando o PCF8574.. Fonte: do pr´oprio autor.. Figura 18 – Prot´otipo do transmissor j´a montado e funcionando.. Fonte: do pr´oprio autor..

(47) 46. 4.3. Receptor prim´ ario de controle O Receptor de controle prim´ario consiste num Ardu´ıno mega que controla um. Shield GSM/GPRS e um ESP8266. Este m´odulo de controle ´e respons´avel por receber as informa¸co˜es oriundas do servidor. Dependendo do valor da classe, ele pode executar a¸co˜es distintas, tais como: Controle do Ar-condicionado principal via infra-vermelho, controle do Desumidificador e envio de SMSs. Para facilitar o entendimento do funcionamento do receptor prim´ario, usaremos o fluxograma representado na Figura 19. Figura 19 – Fluxograma do Receptor 1.. Fonte: do pr´oprio autor.. Temos assim os seguintes passos:.

Referências

Documentos relacionados

 Random storage - refere-se à alocação de um espaço de stock de forma aleatória, segundo o espaço disponível no momento de chegada dos produtos (Petersen e Aase,

Predicted values were calculated by measuring the joint probability of effects on isopods’ biomass variation found for single exposures to different soil

A partir deste momento é dada indicação para a seleção da população em estudo e é ativado o envio da medicação pelo promotor, ficando o FH da Unidade de

a) Sistema de produto: produção integrada: soja, capim e algodão. O capim é cultivado como espécie formadora de palha; não é colhido ou pastejado, correspondendo, portanto, a um

todas as doenças dos centros nervosos: as myélites chronicas, as paralysias, certas doenças cancerosas, etc.; vendo os hospitaes, as casas de saúde cada vez mais repletas

A partir da análise das Figuras 5.20, 5.21, 5.22 e 5.23 pode-se afirmar que a variação do início da altura de queda do bloco não alterou os resultados da energia cinética e alturas

Atualmente os currículos em ensino de ciências sinalizam que os conteúdos difundidos em sala de aula devem proporcionar ao educando o desenvolvimento de competências e habilidades

Assim, este trabalho apresenta uma abordagem que tem como objetivo principal: (i) analisar a cobertura de código levando em consideração os fluxos de chamadas existentes no sistema