rede de sensores alimentada por um sistema de coleta...

70
REDE DE SENSORES ALIMENTADA POR UM SISTEMA DE COLETA DE ENERGIA DO AMBIENTE. Mayli Silva de Souza Projeto de Gradua¸c˜ ao apresentado ao Curso de Engenharia Eletrˆonica e de Computa¸ c˜ao da Escola Polit´ ecnica, Universidade Federal do Rio de Janeiro, como parte dos requisitos necess´ arios ` a obten¸c˜ao do t´ ıtulo de Enge- nheiro. Orientador: Antˆ onio Carlos Moreir˜ ao de Queiroz Rio de Janeiro Setembro de 2016

Upload: others

Post on 28-Jan-2021

2 views

Category:

Documents


0 download

TRANSCRIPT

  • REDE DE SENSORES ALIMENTADA POR UM SISTEMA DE

    COLETA DE ENERGIA DO AMBIENTE.

    Mayli Silva de Souza

    Projeto de Graduação apresentado ao Curso

    de Engenharia Eletrônica e de Computação

    da Escola Politécnica, Universidade Federal

    do Rio de Janeiro, como parte dos requisitos

    necessários à obtenção do t́ıtulo de Enge-

    nheiro.

    Orientador: Antônio Carlos Moreirão de

    Queiroz

    Rio de Janeiro

    Setembro de 2016

  • REDE DE SENSORES ALIMENTADA POR UM SISTEMA DE

    COLETA DE ENERGIA DO AMBIENTE

    Mayli Silva de Souza

    PROJETO DE GRADUAÇÃO SUBMETIDO AO CORPO DOCENTE DO CURSO

    DE ENGENHARIA ELETRÔNICA E DE COMPUTAÇÃO DA ESCOLA PO-

    LITÉCNICA DA UNIVERSIDADE FEDERAL DO RIO DE JANEIRO COMO

    PARTE DOS REQUISITOS NECESSÁRIOS PARA A OBTENÇÃO DO GRAU

    DE ENGENHEIRO ELETRÔNICO E DE COMPUTAÇÃO

    Autor:

    Mayli Silva de Souza

    Orientador:

    Prof. Antônio Carlos Moreirão de Queiroz, D. Sc.

    Examinador:

    Prof. Jose Gabriel Rodriguez Carneiro Gomes, Ph.D.

    Examinador:

    Prof. Carlos Fernando Teodósio Soares, D. Sc.

    Rio de Janeiro

    Setembro de 2016

    ii

  • UNIVERSIDADE FEDERAL DO RIO DE JANEIRO

    Escola Politécnica - Departamento de Eletrônica e de Computação

    Centro de Tecnologia, bloco H, sala H-217, Cidade Universitária

    Rio de Janeiro - RJ CEP 21949-900

    Este exemplar é de propriedade da Universidade Federal do Rio de Janeiro, que

    poderá inclúı-lo em base de dados, armazenar em computador, microfilmar ou adotar

    qualquer forma de arquivamento.

    É permitida a menção, reprodução parcial ou integral e a transmissão entre bibli-

    otecas deste trabalho, sem modificaçãode seu texto, em qualquer meio que esteja ou

    venha a ser fixado, para pesquisa acadêmica, comentários e citações, desde que sem

    finalidade comercial e que seja feita a referência bibliográfica completa.

    Os conceitos expressos neste trabalho são de responsabilidade do(s) autor(es).

    iii

  • AGRADECIMENTO

    Gostaria de agradecer primeiramente a Deus que é digno de receber toda honra.

    Sem a fé e a esperança depositadas nele, nada disso seria posśıvel. Também quero

    agradecer a minha famı́lia, aquela que nunca deixou de me apoiar e ajudar no que

    fosse preciso. Meus pais, Marcos e Márcia, que sempre deram todo suporte que

    puderam, que acreditaram em mim em todos os momentos e que nunca duvidaram

    que eu era capaz. Agradeço à minhas queridas irmãs, Mayná e Maytê, que sempre

    despositaram em mim toda a confiança posśıvel e por terem me encorajado mais

    do que ninguém. Ao Leon, meu braço direito, que me acompanhou de perto, que

    me auxiliou em tudo que fosse posśıvel e que nunca mediu esforços para me ver

    sorrir. Também gostaria de deixar um agradecimento especial ao meu orientador

    Antônio Carlos, que esteve comigo por anos. Agradeço por toda paciência, por

    todos os ensinamentos de qualquer caráter e por ter sido um marco na minha vida

    acadêmica. Por fim, agradeço a todas estas peças primordiais que tornaram isso

    posśıvel.

    iv

  • RESUMO

    Este trabalho visa a aplicação de microgeradores de energia elétrica, baseados em

    geradores eletrostáticos acionados por vibrações mecânicas, como fonte de alimenta-

    ção para módulos sensores que se comunicam por sinais de rádio, com aplicação em

    sensoriamento em áreas de dif́ıcil acesso, onde existam fontes de vibração mecânica

    dispońıveis. Os microgeradores deste tipo são baseados em capacitores variáveis me-

    canicamente que podem ser constrúıdos por técnicas de microeletromecânica, o que

    os torna muito compactos. O sistema usualmente opera em conjunto com um cir-

    cuito controlador envolvendo um conversor CC/CC para reduzir uma relativamente

    alta tensão de sáıda para uma mais baixa, que é então utilizada para alimentar o

    próprio sistema de controle, possivelmente sem necessidade de uma bateria para ar-

    mazenamento de energia. O módulo sensor é composto de um microcontrolador de

    baixo consumo, de um transceptor (opera tanto como transmissor ou receptor) e do

    sistema de medição da grandeza desejada. Com geradores de pequenas dimensões, a

    potência que pode ser obtida é pequena, menos de 100 µW tipicamente. Isto requer

    operação da carga em modo intermitente com baixo ciclo de trabalho, operando bre-

    vemente com alta potência consumida entre longos intervalos de inatividade, onde a

    energia é acumulada em um capacitor. Devido à baixa potência dispońıvel e ao breve

    peŕıodo dispońıvel para consumo, o desafio é estabelecer uma comunicação entre os

    módulos sensores dentro deste curto intervalo de tempo consumindo necessariamente

    pouca energia.

    Palavras-Chave: microgeradores, comunicação, sensores, vibração, microcontrola-

    dor.

    v

  • ABSTRACT

    This work aims the application of electric power microgenerators, based on elec-

    trostatic generators driven by mechanical vibration, as power supply for sensors

    modules that communicate by radio signals, which applies to sensing for use in hard

    to reach areas where there are mechanical vibration sources available. The micro-

    generators of this type are based on mechanically variable capacitors which may be

    build by microelectromechanical techniques, which makes them very compact. The

    system usually operates with a controller circuit involving a DC/DC converter to

    reduce a relatively high voltage to a lower one, which is then used to power the

    control system itself, possibly without the need of a battery for energy storage. The

    sensor module consists of a low-power microcontroller, a transceiver (operates also

    as a transmitter or a receiver) and the measurement system. With small generators,

    the power that can be obtained is small, typically less than 100 µW. This requires

    operation of the load intermittently with low duty cycle, operating briefly with high

    power consumption between long sleep intervals, where the energy is accumulated in

    a capacitor. Due to the low power available and the short available period for con-

    sumption, the challenge is to establish a communication between the sensor modules

    within this short time interval necessarily requiring little power.

    Key-words: microgenerators, communication, sensors, vibration, microcontroller.

    vi

  • SIGLAS

    UFRJ - Universidade Federal do Rio de Janeiro

    MEMS - Microelectromechanical Systems

    CC - Corrente Cont́ınua

    PIC - Peripheral Interface Controller

    MCU - Micro Controller Unit

    SPI - Serial Peripheral Interface

    GFSK - Gaussian frequency-shift keying

    ADC - Analog to Digital Converter

    EEPROM - Electrically-Erasable Programmable Read-Only Memory

    vii

  • Conteúdo

    1 Introdução 1

    1.1 Tema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

    1.2 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

    1.3 Metodologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

    1.4 Descrição . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

    2 Sistema de Coleta de Energia 5

    2.1 Dobrador de Bennet . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

    2.1.1 Máquina de Wilson . . . . . . . . . . . . . . . . . . . . . . . . 9

    2.2 Circuitos de Controle . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

    2.2.1 Controle Modificado . . . . . . . . . . . . . . . . . . . . . . . 11

    3 Comunicação entre Módulos 13

    3.1 Delimitações . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

    3.2 Dispositivos Utilizados . . . . . . . . . . . . . . . . . . . . . . . . . . 14

    3.2.1 Microcontrolador PIC . . . . . . . . . . . . . . . . . . . . . . 14

    3.2.2 Transceptor . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

    3.2.3 Arduino . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

    3.3 Algoritmo Desenvolvido . . . . . . . . . . . . . . . . . . . . . . . . . 18

    3.3.1 Cenário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

    3.3.2 Módulo Remoto e Módulo Base . . . . . . . . . . . . . . . . . 19

    3.3.3 Protocolo de Comunicação . . . . . . . . . . . . . . . . . . . . 21

    3.3.4 Problemas encontrados . . . . . . . . . . . . . . . . . . . . . . 22

    3.3.5 Algoritmo Final . . . . . . . . . . . . . . . . . . . . . . . . . . 24

    viii

  • 4 Resultados Experimentais 28

    4.1 Resultados Práticos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

    4.2 Resultados Teóricos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

    5 Conclusão e Trabalhos Futuros 48

    5.1 Conclusão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

    5.2 Trabalhos Futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

    Bibliografia 51

    A Algoritmo PIC 53

    B Algoritmo Arduino 55

    C Esquemáticos 57

    ix

  • Lista de Figuras

    2.1 Versão eletrônica do dobrador de Bennet. . . . . . . . . . . . . . . . . . 6

    2.2 Versão do dobrador como carregador de bateria. . . . . . . . . . . . . . . 7

    2.3 Dobrador com energia extráıda através de um conversor CC/CC do tipo

    buck. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

    2.4 Máquina de Wilson. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

    2.5 Circuito de controle. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

    2.6 Novo circuito de controle. . . . . . . . . . . . . . . . . . . . . . . . . . 12

    3.1 PIC 16F628A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

    3.2 Transceptor nRF24L01+ . . . . . . . . . . . . . . . . . . . . . . . . . . 16

    3.3 Arduino Due . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

    3.4 Estação remoto e estação base . . . . . . . . . . . . . . . . . . . . . . . 19

    3.5 Etapas de transmissão e recepção entre os módulos. . . . . . . . . . . . . 20

    3.6 Trecho do código. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

    4.1 Placa experimental para o módulo remoto. . . . . . . . . . . . . . . . . . 29

    4.2 Placa experimental e Gerador Eletróstático. . . . . . . . . . . . . . . . . 29

    4.3 Arduino e Transceptor. . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

    4.4 Porta serial problema 2. . . . . . . . . . . . . . . . . . . . . . . . . . . 31

    4.5 Porta serial problema 1. . . . . . . . . . . . . . . . . . . . . . . . . . . 31

    4.6 Problemas em conjunto. . . . . . . . . . . . . . . . . . . . . . . . . . . 32

    4.7 Acionamentos do remoto em vermelho e recarga da fonte de 3 V em azul. . 33

    4.8 Capacitor que controla o tempo do monoestável. . . . . . . . . . . . . . . 33

    4.9 Capacitor de sáıda. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

    4.10 LED em azul e sáıda regulada de 3 V em vermelho. . . . . . . . . . . . . 35

    x

  • 4.11 LED em azul, Pino CE do PIC em vermelho e sáıda regulada de 3 V em

    verde. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

    4.12 Pino RB0 do PIC em azul e sáıda regulada de 3 V em vermelho. . . . . . 37

    4.13 Sáıda regulada de 3 V em azul e LED sinalizador de problema em vermelho. 38

    4.14 Sáıda regulada em azul, LED sinalizador de problema em vermelho e LED

    referente ao estado OK em verde. . . . . . . . . . . . . . . . . . . . . . 39

    4.15 Pino RB0 do PIC em vermelho e sáıda regulada em azul. . . . . . . . . . 40

    4.16 Pino RB6 do PIC em vermelho e sáıda regulada em azul. . . . . . . . . . 41

    4.17 Pino RB0 do PIC em vermelho e sáıda regulada em azul. . . . . . . . . . 42

    4.18 Diagrama de tempo quando há problema no sensor 1. . . . . . . . . . . . 43

    4.19 LED sinalizador de OK em azul e sáıda regulada em vermelho. . . . . . . 44

    4.20 LED sinalizador de OK em vermelho e sáıda regulada com menor consumo

    em azul. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

    4.21 LED sinalizador de problema em vermelho, de estado OK em verde e sáıda

    regulada ampliada em azul. . . . . . . . . . . . . . . . . . . . . . . . . 46

    C.1 Conexão PIC e nRF24L01+. . . . . . . . . . . . . . . . . . . . . . . . . 57

    C.2 Conexão Arduino e nRF24L01+. . . . . . . . . . . . . . . . . . . . . . . 58

    xi

  • Lista de Tabelas

    3.1 Especificações técnicas PIC 16F628A. . . . . . . . . . . . . . . . . . . 15

    3.2 Especificações técnicas nRF24L01+. . . . . . . . . . . . . . . . . . . . 16

    3.3 Especificações de consumo nRF24L01+. . . . . . . . . . . . . . . . . 17

    3.4 Especificações do Arduino Due. . . . . . . . . . . . . . . . . . . . . . 18

    3.5 Protocolo de comunicação. . . . . . . . . . . . . . . . . . . . . . . . . 21

    xii

  • Caṕıtulo 1

    Introdução

    1.1 Tema

    Uma nova área de pesquisa aberta recentemente é a de sistemas de captura

    de energia do ambiente, para alimentar circuitos com sensores autônomos. Pesquisas

    têm sido feitas nos últimos anos sobre captura de energia diretamente por circui-

    tos integrados usando fontes fotovoltaicas, térmicas, vibracionais, etc. No caso das

    fontes vibracionais, as formas que parecem adequadas para integração, usando sis-

    temas microeletromecânicos (MEMS) são o uso de piezoeletricidade e eletrostática.

    Geradores eletrostáticos usando capacitores variáveis simples alterados por vibração

    foram reportados na literatura recente, mas estes usualmente requerem um com-

    plicado sistema de controle e conversores CC/CC para extração de energia, que é

    sempre muito pouca, microwatts no máximo. Observou-se em [1] que era posśıvel

    usar a estrutura de alguns geradores eletrostáticos clássicos simples, notadamente

    o “dobrador de Bennet”, ou “dobrador de eletricidade”, para captura de energia de

    vibração, sem necessidade de um sistema de controle e com alta eficiência. Também

    foi mostrado em [1][2] que é posśıvel explorar a instabilidade dos geradores eletros-

    táticos para gerar potências bem maiores do que é posśıvel obter com geradores

    baseados em um único capacitor variável se for posśıvel a operação em tensão ele-

    vada. Portanto, seria posśıvel construir um gerador eletrostático integrado gerando

    até miliwatts de potência.

    Com intuito de aproveitar esta descoberta, o projeto visa aplicar a energia

    dispońıvel no processo descrito para usá-la em comunicações por rádio, visando cons-

    1

  • truir um sistema de transmissão e recepção autônomo. Desta forma, o trabalho tem

    como propósito a construção de um sistema de demonstração consistindo de um

    transmissor de rádio de baixo consumo que transmite a leitura digital de sensores

    periodicamente, alimentado pelo gerador elétrico que extrai energia de vibrações

    mecânicas. A aplicação de sistemas assim é em redes de sensores, onde os elementos

    sensores são autônomos, têm dimensões reduzidas e não têm conexões f́ısicas ex-

    ternas. Uma interessante possibilidade é a de o sistema ser totalmente constrúıdo

    em circuito integrado, incluindo o gerador eletrostático de energia implementado em

    microeletromecânica. O dispositivo pode então ser constrúıdo totalmente selado e

    com dimensões muito reduzidas, dispensando até mesmo uma bateria interna recar-

    regável. A principal vantagem deste sistema é a monitoração remota de sensores

    instalados em locais que são pouco acesśıveis, uma vez que este sistema não requer

    manutenção e não será necessário a troca de baterias visto que o sistema é autônomo.

    Os sensores podem ser usados para monitorar o estado de processos industriais, de

    véıculos, de sondas de perfuração, etc.

    1.2 Objetivos

    O objetivo geral é conseguir realizar um sistema de transmissão por rádio de baixo

    consumo que consiga monitorar uma rede de sensores de maneira autônoma e ali-

    mentado pelo microgerador. Nos trabalhos [3] [4] foram desenvolvidos protótipos

    macroscópicos do gerador eletrostático e de alguns circuitos de controle que viabi-

    lizam a utilização da energia pelo sistema de comunicação. Alguns ajustes deverão

    ser realizados no circuito de controle e no gerador elestrostático para atender às es-

    pecificações dos dispositivos relacionados à transmissão. Desta forma, tem-se como

    objetivos espećıficos:

    • Viabilizar o processo de utilização da pouca energia dispońıvel com um

    sistema de baixo consumo;

    • Construir um sistema de transmissão e recepção adequado às especificações

    e restrições;

    • Elaborar um algoritmo que realize a comunicação de um microcontrolador

    de baixo consumo com o dispositivo de transmissão de rádio.

    2

  • 1.3 Metodologia

    A finalidade é adequar todo o projeto a utilizar o sistema de coleta de energia

    que é fruto do trabalho realizado em [3]. Assim, a energia dispońıvel é gerada por

    um gerador eletrostático acionado por vibração mecânica, que disponibiliza perio-

    dicamente uma pequena quantidade de energia. É em conformidade com o sistema

    de coleta de energia e seu circuito de controle que serão adequadas as necessidades

    para aplicação na rede de sensores. Visando um baixo consumo dos dispositivos que

    participarão da transmissão e recepção dos sinais digitais proveninentes dos sensores,

    foi escolhido utilizar um microcontrolador PIC para realizar a interface de controle

    entre o sensor e o dispositivo de transmissão e recepção por rádio.

    O PIC será responsável pelo protocolo de comunicação com o transceptor, assim

    que o gerador estiver pronto, ou seja, com energia dispońıvel, as funções a serem im-

    plementadas seriam: O módulo sensor alimentado pelo sistema de coleta de energia

    deve primeiramente coletar a informação do sensor e a transmitir junto com códigos

    de identificação e endereçamento, de acordo com protocolo a ser especificado. A

    seguir, enquanto ainda há energia dispońıvel, ou em um próximo ciclo (caso a sin-

    cronia seja perdida no anterior), deve monitorar o receptor de rádio esperando uma

    resposta da base com instruções ou confirmação de recebimento. A estação base do

    sistema é similar, porém será utilizado um Arduino no lugar do PIC com o mesmo

    módulo de rádio usado na estação remota, mas ficará sempre ligada esperando re-

    ceber comunicações da rede de sensores. Um computador deve poder acessar as

    informações no módulo base, recebidas dos módulos sensores, e comandar o envio

    de instruções aos sensores. Um aspecto importante do sistema é o controle de ener-

    gia nos módulos sensores, que devem ficar normalmente em modo de extremamente

    baixo consumo ou desligados enquanto não houver energia dispońıvel. Quando o

    gerador informar que há energia dispońıvel, deve-se usar esta energia da forma mais

    eficiente posśıvel, rapidamente, voltando ao modo de baix́ıssimo consumo ordena-

    damente até o próximo ciclo. Uma possibilidade a investigar é a comunicação entre

    módulos sensores, por exemplo em um caso em que um sensor esteja muito distante

    da base, mas possa se comunicar com outros sensores, que repetiriam sua informação

    até que ela chegue na base. O pequeno ciclo de trabalho permitido pelo sistema de

    3

  • coleta de energia pode tornar dif́ıcil esta forma de operação.

    1.4 Descrição

    O Caṕıtulo 2 descreve os principais geradores de energia utilizados para realização

    deste trabalho e suas fundamentais diferenças. Também serão abordados os circuitos

    de controle para os diferentes tipos de gerador, juntamente com a descrição das

    mudanças necessárias para adequação do ciclo de trabalho e da energia necessária

    para o processo de alimentação dos módulos de sensores.

    O Caṕıtulo 3 apresenta os fundamentos da comunicação entre os módulos. São

    apresentadas as especificações e o detalhamento dos dispositivos utilizados, assim

    como as delimitações para o desenvolvimento do algoritmo. Todo este algoritmo é

    explicitado apresentando uma detalhada interpretação do processo escolhido para

    realizar a comunicação entre os módulos.

    Os resultados experimentais são apresentados no Caṕıtulo 4. Nele será apresen-

    tado todo o sistema de funcionamento constrúıdo macroscopicamente.

    No Caṕıtulo 5 serão abordadas idéias para trabalhos futuros e a conclusão final

    deste trabalho.

    4

  • Caṕıtulo 2

    Sistema de Coleta de Energia

    2.1 Dobrador de Bennet

    Com a crescente demanda atual para utilização de sensores em aplicações diversas

    e que necessitam de monitoramento, ou seja, consigam se comunicar transmitindo e

    recebendo informações, a utilização de dispositivos que não necessitem de troca de

    bateria, reposição ou manutenção parece ser oportuno. Geralmente, estes sistemas

    requerem pouca energia e operam sem atividade na maior parte do tempo, enviam

    ou transmitem informações em ciclos de trabalhos espećıficos ou apenas quando

    necessário. Baseado nessas premissas, entende-se que é desejável que hajam formas

    de extração de energia do ambiente para que estes sistemas possam trabalhar de

    forma consistente quando for solicitado.

    Sistemas de coleta de energia são usados para extrair energia elétrica do meio

    ambiente em situações onde o uso da rede elétrica ou de uma bateria são imposśıveis

    ou incovenientes. Uma possibilidade é a captura de energia vibracional através de um

    dispositivo capacitivo, onde um capacitor é constrúıdo para variar sua capacitância

    por meio da variação da distância entre suas placas através da energia de vibração.

    Se o capacitor é inicialmente carregado de alguma maneira, uma redução da sua

    capacitância pela separação das suas placas, converte energia mecânica em energia

    elétrica [1]. Tais dispositivos capacitivos possuem como vantagem a possibilidade de

    serem constrúıdos utilizando técnicas MEMS.

    5

  • Figura 2.1: Versão eletrônica do dobrador de Bennet.

    Uma clássica estrutura proposta inicialmente por Abraham Bennet em 1787 apre-

    sentou o primeiro gerador eletrostático do tipo “dobrador de eletricidade”, que fun-

    ciona por meio de indução eletrostática. De um modo geral, podemos dizer que

    geradores eficientes podem ser obtidos explorando as estruturas clássicas de gerado-

    res elestrostáticos. Em [1], uma estrutura diferente é proposta, utilizando capacitores

    variáveis e diodos para operar de maneira similar ao dobrador de Bennet.

    A idéia do dobrador de Bennet é que a cada ciclo uma carga inicial, que por menor

    que seja está sempre presente, seja dobrada para que possa gerar uma alta tensão em

    apenas alguns ciclos de operação do circuito. No entanto, no circuito da figura 2.1 o

    dobrador não será iniciado automaticamente se não possuir uma tensão inicial que

    seja suficiente para polarizar os diodos, de modo que consiga dar ińıcio à operação

    de multiplicação da carga. Entretanto, pode ser iniciado com sinal de interferência

    elétrica das vizinhanças, que é o que acontece com o protótipo constrúıdo em [3].

    Sempre se pode colocar uma antena para isto. Todavia, esta questão não é problema

    quando o objetivo é se comportar como um carregador de bateria. O dobrador pode

    ser utilizado de diversas maneiras como um carregador de bateria na versão mais

    simples, C1 é substitúıdo por uma bateria como na figura 2.2.

    O dobrador da figura 2.1, em condições proṕıcias com as capacitâncias variando

    ciclicamente, é instável com as tensões crescendo exponencialmente e sendo multi-

    6

  • Figura 2.2: Versão do dobrador como carregador de bateria.

    plicadas por um fator a cada ciclo de variação da capacitância [2]. Em [1] também

    foi brevemente mencionado que a instabilidade do dobrador pode ser utilizada de

    maneira vantajosa, permitindo que a tensão em C1 cresça até um valor alto e depois

    descarregando a energia armazenada em uma bateria usando um conversor CC/CC.

    Em [2] são feitas análises do modelo do dobrador funcionando como carregador

    de bateria. O fato de o gerador poder ser iniciado com pouca carga inicial, que pode

    ser proveniente de rúıdo elétrico ou interferência externa, é usado para eliminar o

    uso de bateria.

    Uma das técnicas dispońıveis implementa geradores eletrostáticos simples basea-

    das em capacitores variáveis que, na maioria dos casos, exploram o ganho de energia

    que é obtido quando um capacitor mecanicamente variável é carregado quando a

    sua capacidade é grande e, em seguida, descarregado quando a sua capacidade é

    pequena. Conversores CC/CC são utilizados para implementar de forma eficiente a

    operação de carga e descarga, o que requer um sistema de controle um pouco com-

    plexo, transformando a alimentação do sistema de controle em uma questão nada

    fácil [3].

    No modelo para o dobrador mostrado na figura 2.1, uma carga inicial no capacitor

    C1 é multiplicada por um fator que pode chegar a um máximo de dois em cada ciclo

    da variação da capacitância de Ca e Cb (dáı o nome “dobrador”) e depois de alguns

    7

  • Figura 2.3: Dobrador com energia extráıda através de um conversor CC/CC

    do tipo buck.

    ciclos atinge um limite que é dado apenas pelas tensões de ruptura dos dispositivos.

    A forma mais simples de usar o dobrador como fonte de energia é com o capacitor

    C1 substitúıdo por uma bateria, onde o dobrador não necessitaria de um sistema de

    controle. Estas formas foram estudadas em [5] [6]. A quantidade de energia obtida

    deste modo é muito pequena, caso a operação seja em baixa tensão. Quando mais

    energia é necessária, uma possibilidade é a de deixar o dobrador (na forma da figura

    2.1) atingir a maior tensão posśıvel, e em seguida, extrair a energia armazenada na

    sua sáıda por um conversor CC/CC, como na figura 2.3.

    Em inúmeros experimentos com esta estrutura, verificou-se que o dobrador nunca

    falha para começar a operar, mesmo quando nenhuma carga inicial expĺıcita é for-

    necida [3]. Isto permite a possibilidade de evitar a utilização de uma bateria, permi-

    tindo que o dobrador apenas carregue um capacitor de armazenamento através do

    conversor CC/CC, com um regulador de tensão implementado para manter a tensão

    máxima constante. Um sistema de carregamento passivo alternativo também deve

    existir, para alimentar o sistema de controle do conversor quando o dobrador começa

    a operar.

    Importante salientar que para extrair alguma energia considerável do dobrador, é

    necessário colocar um capacitor de carga, pois do contrário, só será extráıda energia

    dos capacitores internos do dobrador, o que é muito pouco. Existe um capacitor

    ótimo de carga que extrai a maior potência posśıvel em [7] há um estudo detalhado

    8

  • sobre como escolher este capacitor ótimo.

    2.1.1 Máquina de Wilson

    Figura 2.4: Máquina de Wilson.

    A máquina de Wilson também é um gerador eletrostático baseado em capacitores

    variáveis, porém ela possui algumas diferenças quanto ao dobrador de Bennet. Um

    estudo sobre a máquina de Wilson foi feito em [8] onde são descritos detalhes sobre

    seu funcionamento. A figura 2.4 mostra a versão eletrônica da máquina de Wilson,

    que é ligada ao conversor CC/CC da mesma forma que o dobrador.

    Este gerador permite um ajuste da potência gerada, com mais flexibilidade que

    no dobrador, pois possui duas sáıdas onde a tensão no lado não usado como sáıda

    da máquina pode ser limitada em valores à escolha, até certo limite natural.

    2.2 Circuitos de Controle

    A carga ideal transferida por descarga na figura 2.3 é obtida equacionando a

    energia armazenada na capacitância de sáıda do dobrador. Quando a chave está

    fechada e o capacitor C1 possuindo tensão VC1 iguala-se a energia armazenada na

    capacitância do dobrador com QV0:

    Q =(C1 + Cab)V

    2C1

    2V0(2.1)

    9

  • Figura 2.5: Circuito de controle.

    Cab é a contribuição de Ca e Cb em série. Considerando VD4 a queda no diodo

    D4 e VD5 a queda no diodo D5, a equação da carga se torna:

    Q =(C1 + Cab)(VC1 + VD5)

    2

    2(V0 + VD4 + VD5)(2.2)

    O dobrador recupera de uma descarga em poucos ciclos após a mesma, porque a

    carga no nó entre os capacitores variáveis não é perdida. À medida que o tempo

    de recuperação e Q são ambos proporcional a C1, há pouco efeito na utilização de

    maiores ou menores C1. Um valor um pouco menor do que o máximo de Ca ou Cb

    é o adequado, resultando na recuperação de um ou dois ciclos [3].

    A figura 2.5 mostra uma versão do sistema de controle que é alimentado pelo

    dobrador e também fornece energia para si mesmo. Um diodo Zener D9 foi adici-

    onado para regular, ou melhor, para limitar a tensão de sáıda e3. A limitação da

    máxima tensão de sáıda do dobrador foi feita pelo diodo D8 avalanche já presente

    no transistor de alta tensão M4. O circuito mede a tensão de sáıda do dobrador, e1,

    10

  • através do divisor capacitivo C11-C12 ligado a M1. Quando e1 é suficientemente alta,

    M1 conduz e dispara o circuito mono-estável abaixo, que liga o transistor de alta

    tensão M4, a chave do conversor buck, M2, que reseta a sáıda do divisor capacitivo,

    e M3, que retorna a tensão na entrada da porta NAND para ńıvel alto, formando

    um “inversor dividido” com M1.

    Este sistema de controle consome energia praticamente apenas para chavear M4,

    com um pouco de energia adicional consumida pelo monoestável e idealmente tem

    um consumo de energia insignificante enquanto monitora a tensão de sáıda do do-

    brador. O resistor grande R2 foi conectado à fonte de alimentação para que, deste

    modo, C12 seja carregado lentamente, acionando o monoestável periodicamente caso

    não seja acionado pelo divisor capacitivo. Quando o dobrador começa a operar, e

    e3 é muito baixo para alimentar as portas CMOS, sua tensão de sáıda e1 sobe até

    a tensão de ruptura de D8, e sua operação é como em um carregador de bateria

    conectado diretamente puxando alguma corrente para carregar C3 através de D8,

    elevando e3. A carga entregue a cada ciclo, ignorando as quedas dos diodos, em

    função dos valores dos capacitores do dobrador nas fases 1 e 2 do ciclo de operação

    (Ca1 e CB2 pequeno, Ca2 e Cb1 grande) e de Vbreak, a tensão de ruptura de D8 mais

    a tensão de sáıda sobre C3, é:

    Q = Vbreak

    Ca2Ca1− Cb2

    Cb1− 1

    1Ca1

    + 1Cb1

    (2.3)

    A corrente fornecida neste modo é pequena, e assim uma carga adicional a ser

    alimentado pelo sistema deve estar no modo de espera de baixa energia durante a

    inicialização. Quando a tensão sobre C3 sobe o suficiente, o conversor buck começa

    a operar.

    2.2.1 Controle Modificado

    Para utilizar o circuito de controle da figura 2.5 neste projeto, foram necessários

    alguns ajustes, como mostra a figura 2.6. Foi acrescentado um contador que aciona a

    carga a cada 128 acionamentos do conversor. Um monoestável controla o tempo em

    que a carga é acionada. Uma fonte de 3 V foi constrúıda para alimentar o PIC e o

    11

  • Figura 2.6: Novo circuito de controle.

    transceptor (que suporta tensões de alimentação de até 3.6 V no máximo) e é gerada

    por um transformador feito com o indutor do conversor buck. O indutor primário de

    5 mH fica com 6.8 V durante o acionamento, gerando 3.6 V sobre o secundário de

    1.4 mH, e 3 V na sáıda, aproximadamente. Um Zener de 3.3 V garante que a tensão

    não passe de 3.3 V, o que poderia acontecer com pouca carga. O resistor pontilhado

    é uma fuga que deve existir para garantir que o circuito comece a funcionar. Pode

    ser alcançada com um diodo grande inversamente polarizado porém é melhor ser um

    Zener com alguma fuga ou mesmo um LED.

    12

  • Caṕıtulo 3

    Comunicação entre Módulos

    3.1 Delimitações

    Transmitir informações de sensores não é uma tarefa dif́ıcil quando o projeto não

    possui ŕıgidas especificações de consumo e tempo. Apesar desta tarefa ser aparente-

    mente fácil, nesta aplicação, o desafio é conseguir estabelecer uma comunicação de

    baix́ıssimo consumo de energia em menos de 20 ms.

    O primeiro problema começa na escolha do microcontrolador que ficará ligado

    ao sensor e ao transceptor. Atualmente existem diversos microcontroladores muito

    potentes com frequência de clock na ordem de centenas de MHz, que fazem com

    que as informações e cálculos sejam processados muito rápido. Seria ideal a escolha

    de um destes, caso a restrição fosse apenas a transmissão e recepção em um curto

    peŕıodo de tempo. Entretanto, estes microcontroladores modernos, ao custo de seus

    velozes processadores, devido a grande quantidade de diferentes periféricos e a alta

    capacidade das memórias, consomem muito acima do que temos dispońıvel quando

    é utilizado o dobrador apresentado no caṕıtulo 2 como alimentação.

    Devido a impossibilidade da utilização de microcontroladores mais modernos e

    atuais, a solução foi procurar alternativas de baixo consumo e com uma frequência

    de clock razoável que permitam atender às necessidades de tempo e consumo.

    Na seções seguintes, as tentativas de estabelecer uma comunicação entre os mó-

    dulos serão detalhadas, assim como a estratégia utilizada para implementação do

    13

  • algoritmo final.

    3.2 Dispositivos Utilizados

    3.2.1 Microcontrolador PIC

    Devido às delimitações apresentadas, a solução encontrada foi utilizar microcon-

    troladores PIC para fazer o controle do módulo que será alimentado pelo dobrador

    de eletricidade.

    Figura 3.1: PIC 16F628A.

    Microcontroladores PIC são controladores programáveis que possuem a vantagem

    de ter baixo custo e consumo. Existem diversos tipos de microcontroladores PICs,

    variam tanto em relação a quantidade de periféricos, capacidade das memórias e

    arquiteturas. Para este trabalho, escolhemos um PIC simples. Ele possui poucos

    periféricos porém detém a vantagem de ter modos de baix́ıssimo consumo.

    O escolhido foi o PIC 16F628A (figura 3.1), um microcontrolador de 8 bits, onde

    algumas de suas principais especificações encontram-se na tabela 3.1. Mais informa-

    ções sobre este modelo pode ser encontrado em [9].

    Este PIC também possui a vantagem de suportar osciladores externos. Como o

    clock interno do PIC (4 MHz) é relativamente baixo, poderia se optar por colocar,

    14

  • Tabela 3.1: Especificações técnicas PIC 16F628A.

    Oscilador interno 4 MHz

    Corrente de Operação 120 µA @ 1 MHz, 2.0 V, typical

    Corrente de Standby 100 nA @ 2.0 V, typical

    Pinos I/O 16 com controle de direção

    Memória de Programa/Flash 2048 palavras

    Memória de dados - SRAM 224 bytes

    Memória de dados - EEPROM 128 bytes

    Timers 8/16 bit 2/1

    por exemplo, um oscilador a cristal externamente para aumentar a velocidade de

    processamento. Isto seria um benef́ıcio que reduziria a preocupação com o pouco

    tempo dispońıvel para o PIC executar as tarefas, porém osciladores a cristal não se

    estabilizam instantaneamente. Entretanto, osciladores externos poderiam ser uma

    boa alternativa a se testar. Neste trabalho, mesmo com a baixa frequência do

    oscilador interno o objetivo foi atingido e não foi necessário a inclusão de um clock

    externo.

    3.2.2 Transceptor

    O transceptor é um dispositivo que pode ser configurado para se comportar tanto

    como um transmissor ou como um receptor. Ele ficará ligado no PIC e será contro-

    lado e configurado por ele. Sua função será de inicialmente transmitir a informação

    lida do sensor pelo PIC e em seguida receber uma instrução da base de comunicação

    para que o microcontrolador a execute.

    O dispositivo de comunicação escolhido foi o nRF24L01+ (figura 3.2). Este trans-

    ceptor opera na frequência de 2.4 GHz e possui funcionamento adequado para apli-

    cações sem fio e de ultra baixa potência. Para projetar um sistema de rádio com

    o nRF24L01+, é necessário apenas um MCU (microcontrolador) sem componentes

    passivos externos. Este transceptor (ou rádio) utiliza o protocolo de comunicação

    SPI (Serial Peripheral Interface) para ser configurado, ou seja, a comunicação entre

    o PIC e o rádio deverão utilizar esse protocolo.

    15

  • Figura 3.2: Transceptor nRF24L01+.

    O rádio usa modulação do tipo GFSK e possui parâmetros configuráveis como

    canal de frequência, potência de sáıda e velocidade da taxa de transferência de dados.

    Esta taxa pode ser configurada entre 250 Kbps, 1 Mbps e 2 Mbps. A velocidade da

    taxa de transmissão dos dados combinada com dois modos de economia de energia

    torna o nRF24L01+ muito adequado para projetos de ultra baixa potência.

    Alguma das especificações do rádio estão listadas na tabela 3.2.

    Tabela 3.2: Especificações técnicas nRF24L01+.

    Banda de operação 2.4 GHz

    Taxa de dados no ar 250 Kbps, 1 Mbps ou 2 Mbps

    Consumo no modo “power down” 900 nA

    Consumo no modo “standby-I” 26 uA

    Alimentação 1.9 a 3.6 V

    Potência de sáıda 0, -6, -12 ou -18 dBm

    Em [10] pode-se encontrar muitas outras caracteŕısticas interessantes que o

    nRF24L01+ possui. Uma outra tabela muito importante para esta aplicação, é

    a que relaciona a potência de sáıda com o consumo do transceptor (tabela 3.3).

    Através dela podemos selecionar a configuração que mais nos interessa dependendo

    do objetivo, para este trabalho a de menor consumo foi a selecionada (-18 dBm).

    16

  • Tabela 3.3: Especificações de consumo nRF24L01+.

    Potência de Sáıda RF Consumo de corrente DC

    0 dBm 11.3 mA

    -6 dBm 9.0 mA

    -12 dBm 7.5 mA

    -18 dBm 7.0 mA

    3.2.3 Arduino

    Figura 3.3: Arduino Due

    Até então, tem-se um PIC que será alimentada pelo sistema coletor de energia

    vibracional, um sensor e um transceptor que serão ligados a ele. Estes dispositivos

    constituem o módulo remoto que ficará enviando periodicamente informações do

    sensor ao segundo módulo.

    O módulo que ficará recebendo as informações enviadas pelo PIC funcionará como

    uma base. Tal base será ligada a um computador que fica recebendo as informações

    e decide como irá responder. O microcontrolador que será responsável por responder

    à informação recebida não possui especificações restritas, ou seja, pode-se usar um

    microcontrolador mais moderno e que possui alimentação direta pela USB podendo

    estar inteiramente ligado ao computador.

    17

  • O Arduino Due, figura 3.3, foi o escolhido para funcionar na estação base, algumas

    das especificações podem ser encontradas na tabela 3.4.

    Tabela 3.4: Especificações do Arduino Due.

    Microcontrolador AT91SAM3X8E

    Tensão de Operação 3.3 V

    Tensão de Entrada(recomendada) 7-12 V

    Pinos I/O Digitais 54

    Memória Flash 512 Kb

    SRAM 96 Kb

    Velocidade do Clock 84 MHz

    Com o Arduino ligado ao computador, tem-se a facilidade de usar a porta serial

    para a depuração do código. Além disso, através da porta serial pode-se traduzir

    as informações recebidas do sensor de forma que o problema seja mais facilmente

    traduzido. Demonstrações da utilização do Arduino utilizando a porta serial serão

    apresentadas na próxima seção.

    3.3 Algoritmo Desenvolvido

    3.3.1 Cenário

    O cenário principal é o conjunto de dois ambientes, o ambiente da base e o remoto.

    Chamamos de base a estação que estará monitorando as informações que a estação

    remota enviará periodicamente.

    Para melhor visualização, a ilustração da figura 3.4 mostra as principais carac-

    teŕıstica e diferenças entre a estação base e a estação remota. Lembrando que a

    estação Remota é inteiramente alimentada pelo dobrador, ao passo que a estação

    Base pode ser alimentada por qualquer fonte de alimentação.

    Para mostrar que é posśıvel construir uma rede de sensores, as tentativas neste tra-

    balho se basearam em a estação Remota conseguir transmitir e receber informações

    dentro do tempo em que há energia dispońıvel para ser utilizada no dobrador.

    18

  • Figura 3.4: Estação remoto e estação base

    3.3.2 Módulo Remoto e Módulo Base

    Uma vez que há energia suficiente para alimentar o PIC, ele imediatamente vai

    tratar de fazer as configurações iniciais necessárias para o ińıcio da operação. Quando

    o dobrador estabiliza, a sáıda de 3.0 V atinge um valor próximo a este e aplica

    ao circuito remoto, no mesmo instante o PIC começa o processamento. Não há

    qualquer forma de verificação da alimentação no algoritmo gravado no PIC, da

    mesma maneira que ele inicia quando sua alimentação atinge o valor necessário para

    19

  • ele ligar, quando a alimentação do dobrador cai abaixo do valor necessário, ele é

    desligado. Tudo acontece sem qualquer monitoração, a prinćıpio isto não apresentou

    nenhum problema para a vida útil do PIC ou para atrapalhar o acontecimento das

    etapas.

    O PIC, no modelo 16F628A, já tem mecanismos internos para controlar sua ali-

    mentação, como o brown-out reset ou o power-up delay. Nesta aplicação nenhum

    deles foi usado, pois a alimentação é baixa e precisa-se de todo o tempo dispońıvel

    para realizar a transmissão e recepção de informações.

    Na estação Remota a operação começa quando há energia suficiente para alimentar

    o PIC, a partir deste momento as etapas são as seguintes (figura 3.5):

    1. O PIC lê a informação do sensor que está ligado nele.

    2. O PIC transmite a informação lida do sensor para a estação base através do

    rádio.

    3. A estação base processa a informação recebida e se prepara para transmitir

    um comando de volta para o remoto.

    4. A estação base envia a informação para o remoto para que ele possa realizar

    a tarefa correspondente à informação recebida.

    Figura 3.5: Etapas de transmissão e recepção entre os módulos.

    20

  • Pode-se dizer que a principal função da estação remota é enviar informações, ao

    passo que a principal função da base é receber. Entretanto, é importante que a

    comunicação seja bidirecional entre os módulos pois no caso de o sensor sinalizar

    algum problema, a estação base envia algum comando que o PIC entenda para

    tomar uma iniciativa com a intenção de resolver o problema. Para o PIC entender

    a informação proveniente da base, percebe-se a necessidade de um protocolo de

    comunicação personalizado entre os módulos. Na próxima seção o protocolo de

    comunicação básico desenvolvido será apresentado.

    3.3.3 Protocolo de Comunicação

    Neste trabalho foi implementado um algoritmo imaginando dois sensores ligados

    no PIC. Quando um dos sensores apresentar problema, um endereço espećıfico do

    problema desse sensor é enviado para a base, quando os dois sensores não indicarem

    qualquer problema um outro endereço será enviado.

    A tabela 3.5 mostra o significado de cada endereço que é enviado e recebido pela

    estação remota dependendo do problema de cada sensor ou da falta destes.

    Tabela 3.5: Protocolo de comunicação.

    Estado Remoto Envia Base Envia

    Tudo Ok 0x01 0x01

    Problema no sensor 1 0x02 0x02

    Problema no sensor 2 0x03 0x03

    Problema nos dois sensores 0x04 0x04

    O sistema é simples e o funcionamento sequencial, por exemplo, quando o sensor 1

    indicar problema, o PIC enviará um endereço (neste caso 0x02) que representará para

    a base que o sensor 1 apresentou problema. Quando a base receber esse endereço, ela

    terá um endereço espećıfico (neste caso 0x02) para enviar de volta para o remoto, que

    significa um comando para que o PIC solucione o problema. O mesmo acontecerá

    caso o sensor 2 apresente problema, caso os dois sensores apresentem problema, ou

    21

  • caso nenhum deles apresente problema. Neste último caso, o endereço significará

    apenas que tudo está operando como deveria.

    O endereço que o remoto envia e o que ele recebe é igual neste trabalho por apenas

    apenas simplificar a codificação. Em um algoritmo mais complexo, o sensor 1 poderia

    indicar mais de um problema por exemplo, e mais endereços seriam exigidos para

    indicar esse outros posśıveis problemas.

    A primeira coisa que o código gravado no PIC faz é ler as informações destes dois

    sensores, se os dois não estiverem apresentando sinais de problemas, ele enviará um

    endereço que equivale a um estado de operação normal (neste caso 0x01). Caso ele

    identifique um problema em um ou nos dois sensores, um endereço que signifique tal

    condição será enviado para a estação base. Algo similar acontece na estação base,

    dependendo da informação que ela recebe, ela escolhe o endereço para enviar de

    volta para a estação remota. Quando a estação remota recebe o endereço de volta

    da base e realiza a operação correspondente, todo o processo é reiniciado e se repete

    enquanto ainda houver tempo e energia dispońıvel.

    3.3.4 Problemas encontrados

    Diversos problemas foram encontrados durante a implementação de um algoritmo

    final. Aparentemente, estabelecer uma comunicação entre os dois módulos não de-

    veria parecer uma solução dif́ıcil, porém além das restrições anteriormente apresen-

    tadas, a necessidade de reconfigurar o transceptor todas as vezes durante os ciclos

    de operação, ocupa a maior parte do tempo do processo de transmissão e recepção,

    além de induzir um problema de sincronia entre os dois módulos.

    Pode-se afirmar que o PIC é reiniciado toda vez que o conversor CC/CC ligado

    ao dobrador aciona a alimentação de 3 V, a cada 128 ciclos do dobrador. Uma vez

    que ele é desligado, todas as configurações são perdidas e tudo deve ser configu-

    rado novamente no próximo ciclo. O problema é que as configurações referentes ao

    transceptor ocupam alguns do milisegundos do tempo dispońıvel. No caṕıtulo 4,

    serão mostradas com detalhes as figuras correspondentes ao tempo que leva para

    configurar, enviar e receber dados.

    22

  • Este tempo de configuração acontece no mı́nimo duas vezes a cada ciclo, pois o

    PIC primeiro é configurado como transmissor e em seguida deve ser configurado

    como receptor para receber a resposta da base.

    Nos testes iniciais, estimou-se um tempo de 10 ms para o peŕıodo de alimentação

    proveniente do dobrador e portanto para realizar uma comunicação completa. Cha-

    mamos de estabelecer uma comunicação completa, realizar as operações contidas na

    figura 3.5, ou seja, o PIC deve conseguir enviar informações e em seguida receber al-

    guma resposta da base. Porém, também foi observado que o tempo de configuração

    do PIC como transmissor ou receptor demorava cerca de 6 ms, tornando imposśıvel

    a configuração como transmissor e depois como receptor em um mesmo ciclo. Se

    apenas a configuração do transceptor ocupava 6 ms, toda a comunicação demoraria

    no mı́nimo 12 ms o que já seria mais do que os 10 ms estimados inicialmente.

    A primeira tentativa de solucionar este problema foi através da utilização de uma

    memória não volátil. Dado que o PIC apenas conseguiria ou transmitir ou receber

    informações a cada ciclo, seria necessário que ele inicialmente após enviar, guardasse

    a informação de que no ciclo anterior ele havia enviado alguma informação e portanto

    no próximo ele deve ser configurado como receptor para receber. O PIC 16F628A

    possui uma EEPROM (memória não-volátil) com 128 bytes dispońıvel para escrita.

    Diversas tentativas de solucionar o problema utilizando a EEPROM foram desen-

    volvidas, todavia todas elas apresentaram um problema de sincronia aparentemente

    sem solução simples.

    Basicamente, nos algoritmos desenvolvidos utilizando a memória não volátil, o

    PIC transmitia a primeira vez e em seguida escrevia na EEPROM um endereço que

    significava que ele iniciou a comunicação e enviou alguma informação. O Arduino

    que está na base receberia este endereço e entenderia que ele deve enviar alguma

    informação de volta para o PIC. Quando o Arduino enviar esta informação, ele não

    vai possuir nenhuma referência que indique que o PIC está ligado ou não, ou seja,

    não vai ter qualquer garantia que indique que o Arduino enviou a informação e o

    PIC recebeu. Mesmo que o Arduino continue a transmissão um certo número de

    vezes para que ele tenha certeza que o PIC recebeu, quando o PIC de fato receber

    23

  • ele imediatamente vai tratar de enviar uma nova informação, e se o Arduino estiver

    ainda na configuração de transmissor ele não receberá esta informação. Múltiplos

    problemas são encontrados se a alimentação do PIC só permitir que ele envie ou

    receba em um único ciclo. Não haverá qualquer ind́ıcio de sincronia entre os dois

    módulos e isso pode acarretar no travamento de todo o processo.

    Por este motivo foi descartada a utilização da memória não volátil, não apresen-

    tando qualquer vantagem no seu emprego. Contudo, se fez necessário modificar o

    capacitor que controla o tempo do monoestável no circuito de controle do dobra-

    dor, possibilitando que o PIC disponha de mais tempo para que uma comunicação

    completa possa ser estabelecida a cada ciclo.

    3.3.5 Algoritmo Final

    Com uma maior flexibilidade do tempo para estabelecer uma comunicação com-

    pleta, o código final se tornou mais simples do que se esperava. Foram utilizados dois

    pinos do PIC para os sensores serem ligados, também foram acrescentados 3 LEDs

    para indicar cada estado. Seguindo a tabela 3.5, caso o estado atual seja OK, um

    determinado endereço será enviado e o LED correspondente será ligado. No caso do

    estado indicar problema no sensor 1 ou 2, seus respectivos LEDs serão acionados e

    quando o problema for resolvido, o LED correspondente ao estado OK será acionado

    em seguida.

    O algoritmo do PIC e do Arduino são similares, as funções de configuração são

    idênticas e os dois possuem uma função chamada “Send Byte()” que implementa

    o protocolo SPI por software. Apesar do Arduino ter biblioteca open-source para

    trabalhar com o nRF24L01+ e ainda possuir um periférico SPI, optou-se por fazer

    toda configuração manual para que os códigos nos dois módulos sejam parecidos

    visto que o PIC não possui nenhuma dessas vantagens.

    Para compilar o código do PIC foi utilizado a própria IDE da Microchip e também

    seu compilador, são eles: MPLABX e XC8. Para o Arduino a própria IDE do

    Arduino na versão 1.6.9 foi utilizada. O algoritmo desenvolvido tanto para o PIC

    24

  • quanto para o Arduino estão respectivamente no Apêndice A e Apêndice B e foram

    desenvolvidos em C.

    Os algoritmos podem ser melhor entendidos se forem explicados de maneira se-

    quencial, lembrando que a principal função do Remoto é transmitir e a da Base

    receber. Por este motivo durante o loop a primeira coisa que o Remoto faz é ser

    configurado como transmissor e em seguinda transmitir. Na Base o Arduino é con-

    figurado inicialmente como Receptor e começa recebendo informações. A Base per-

    manece sempre ligada e teoricamente nunca é reiniciada, já o Remoto é reiniciado

    cada vez que a alimentação de 3 V é ligada, a cada 128 ciclos de operação do do-

    brador. Deve-se ter uma atenção ao pino RB0(TX IRQ) do PIC. Este pino deve

    ser configurado como sáıda no caso de um tranmissor e como entrada no caso de

    estar no modo receptor. Quando um dado é recebido, uma interrupção é gerada

    nesse pino para indicar que recebeu e após isso ele pode ler o endereço. Através da

    figura 3.6, que é um trecho do código do PIC, e com os passos que o processo segue

    numerados a seguir, o entendimento do algoritmo torna-se mais simples.

    1. O Arduino está configurado como receptor.

    2. O PIC é configurado como transmissor.

    3. O PIC lê os pinos onde os sensores estão ligados.

    4. Caso ele identifique problema no Sensor 1, um endereço equivalente a este

    problema é enviado para a base e o LED correspondente deste sensor é ligado.

    5. O Arduino recebe a informação e joga na porta serial do computador a tradu-

    ção deste endereço.

    6. Após o PIC enviar o endereço e ligar o LED, ele imediatamente se configura

    como receptor.

    7. O Arduino após escrever na porta serial do computador o problema, aguarda

    o PIC se configurar como receptor antes de enviar, ou seja, ele espera cerca de

    6 ms.

    8. O PIC já está configurado como receptor e está aguardando informações da

    Base.

    25

  • 9. O Arduino se configura como transmissor e em seguida transmite um endereço

    correspondente a solução do problema.

    10. O PIC recebe a informação do Arduino, que é um comando para que ele apague

    o LED do problema no sensor 1.

    11. O PIC apaga o LED do problema e acende o LED do estado “OK” que per-

    manece assim por 2 ms e depois é apagado.

    12. O Arduino se configura como receptor e volta para o ińıcio do loop

    13. O PIC volta para o ińıcio do loop.

    Todo o processo é análogo para o caso de problema no sensor 2, para o caso de

    tudo estar operando normalmente e para o caso de os dois sensores apresentarem

    problemas. No caso dos dois sensores sinalizarem problema, os dois LEDs serão

    acesos e depois apagados ao receber o comando da base, em seguida o LED cor-

    respondente ao estado normal será aceso. Neste algoritmo ainda ocorre problemas

    de sincronia, um exemplo é o Arduino demorar a se reconfigurar como receptor e o

    PIC já ter voltado para o ińıcio do loop. Neste caso o arduino quando terminar de

    se configurar como receptor vai ficar aguardando um endereço do PIC (que por sua

    vez já enviou) e o PIC depois que enviou vai entrar num loop aguardando o Arduino

    enviar a informação de volta. Entretanto, o Arduino só envia alguma informação se

    receber algo do PIC primeiro, isto quer dizer que os dois lados estarão esperando

    receber alguma informação para partir pra próxima etapa causando um impasse no

    processo. Apesar disto, se o PIC reiniciar, o que de fato ocorre a cada ciclo de ope-

    ração, o processo volta a operar normalmente. Este problema foi observado apenas

    algumas vezes durante os testes, porém caso o Arduino não receba em um ciclo, ele

    receberá no próximo não causando nenhum problema na comunicação.

    26

  • Figura 3.6: Trecho do código.

    27

  • Caṕıtulo 4

    Resultados Experimentais

    No caṕıtulo 3 o cenário de desenvolvimento foi apresentado, assim como o obje-

    tivo de se alcançar uma comunicação completa entre os dois módulos em que um

    deles é alimentado pelo gerador eletrostático. Neste caṕıtulo, serão apresentados e

    comentados diversos resultados interessantes obtidos durante os experimentos.

    4.1 Resultados Práticos

    Neste cenário de testes, um osciloscópio foi utilizado para visualização dos gráficos.

    Para simular os sensores, foram utilizados dois botões. Ao pressionar os botões, é

    como se os sensores estivessem indicando problemas, ao passo que, o estado de “OK”

    é simulado quando nenhum dos botões está pressionado. Para simplificar:

    1. Estado OK → Nenhum botão está pressionado → Indicado através de um

    LED verde.

    2. Problema no sensor 1→ Botão 1 pressionado→ Indicado através de um LED

    vermelho

    3. Problema no sensor 2 → Botão 2 pressionado → Indicado através de outro

    LED verde.

    Para o módulo remoto, foi criado uma placa experimental com todos os dis-

    positivos necessários para a comunicação. As figuras 4.1 e 4.2 mostram os protótipos

    utilizados.

    28

  • Figura 4.1: Placa experimental para o módulo remoto.

    Figura 4.2: Placa experimental e Gerador Eletróstático.

    29

  • Para o módulo base, a ligação do transceptor foi feita diretamente ao Arduino,

    como mostra a figura 4.3, que por sua vez está sendo alimentado através da porta

    USB do computador.

    Figura 4.3: Arduino e Transceptor.

    De modo geral, todo o sistema funciona como deveria. Ao pressionar um botão,

    seu respectivo LED acende, em seguida apaga quando recebe a informação da base

    e o LED de estado OK é ligado na sequência. Para o estado de OK (nenhum botão

    pressionado), o LED verde acende e também só se apaga quando recebe a instrução

    da base.

    Como descrito no caṕıtulo 3, toda vez que o base receber um sinal do remoto,

    o Arduino escreverá na porta serial o significado do endereço recebido. Isto pode

    ser verificado nas figuras 4.5, 4.4 e 4.6, no instante que os botões indicadores de

    problemas foram pressionados por alguns segundos. Enquanto nenhum dos botões

    estava pressionado, um sinal de OK é impresso na tela. No momento que o botão

    30

  • é pressionado o respectivo sinal pode ser visualizado na tela e em seguida quando

    largamos o botão, o estado de OK volta a aparecer.

    Figura 4.4: Porta serial problema 2.

    Figura 4.5: Porta serial problema 1.

    31

  • Figura 4.6: Problemas em conjunto.

    4.2 Resultados Teóricos

    Para entender os resultados teóricos, deve-se levar em consideração algumas va-

    riáveis importantes. Como foi dito no caṕıtulo 2, um contador é responsável por

    acionar a carga a cada 128 acionamentos do conversor, isto corresponde a 3.5 ms

    aproximadamente de espera entre cada ciclo de acionamento da carga como mostra

    a figura 4.7. Além disso o capacitor ótimo que deve ser colocado em paralelo com a

    entrada do circuito da figura 2.6, também mencionado no caṕıtulo 2, deve ser levado

    em conta, pois caso não exista este capacitor o circuito não consegue entregar tanta

    potência. Isto pode prejudicar o valor calculado para a sáıda do circuito, uma vez

    que não consiga potência suficiente para entregar uma tensão de 3 V na sáıda do

    regulador.

    Outro ponto muito importante a ser avaliado, são os capacitores das figuras 4.8 e

    4.9 que foram retiradas do circuito de controle original. O capacitor de 22 nF que

    pode ser observado na figura 4.8 é responsável por controlar o tempo do monoes-

    tável, ou seja, quanto maior for este capacitor mais tempo teremos dispońıvel para

    transmitir e receber informações. Exemplos assim serão mostrados ao longo deste

    caṕıtulo, porém é fácil de entender que quanto maior for o capacitor, mais energia

    32

  • Figura 4.7: Acionamentos do remoto em vermelho e recarga da fonte de 3 V

    em azul.

    é acumulada e então mais tempo teremos dispońıvel até que ele descarregue.

    Figura 4.8: Capacitor que controla o tempo do monoestável.

    A figura 4.9 mostra a sáıda regulada de 3 V que alimenta todos os dispositivos da

    estação remota. Na figura, dois capacitores de 100 uF em paralelo são responsáveis

    por fazer o filtro da fonte de sáıda. Quando retira-se um capacitor e a sáıda fica com

    100 uF de capacitância ao contrário dos 200 uF obtido com os dois capacitores em

    33

  • Figura 4.9: Capacitor de sáıda.

    paralelo, o consumo torna-se mais viśıvel quando observado no osciloscópio, visto

    que deste modo a queda de tensão provocada pelo consumo será duas vezes mais

    abrupta.

    As figuras 4.10, 4.11 e 4.12 , referem-se às condições do circuito de controle:

    • 100 uF na sáıda regulada de 3 V.

    • Não possui capacitor ótimo ou qualquer capacitor em paralelo com a entrada.

    • Capacitor do monoestável igual a 22 nF.

    Na figura 4.10 a curva em azul é o LED verde indicador de estado OK e a curva

    em vermelho é a sáıda regulada de 3 V, ou seja, alimentação de todo circuito da

    estação remota. Neste caso, esperava-se que a sáıda ficasse regulada em 3 V. Entre-

    tanto, observa-se na figura que a curva em vermelho encontra-se abaixo deste valor

    estando em aproximadamente 2.8 V. Isto se deve a falta do capacitor em paralelo

    com a entrada do circuito, o que causa uma entrega de potência menor do que a

    posśıvel e tornando o sistema não confiável, já que alguns dos componentes pode-

    riam não ligar com um valor abaixo do calculado. A alimentação está dispońıvel por

    aproximadamente 16 ms até que ela desligue novamente. Espera-se que o LED vá

    para ńıvel alto após a transmissão do PIC e que quando receba o comando da base

    o LED vá para ńıvel baixo. De fato, podemos identificar isto na figura, enquanto

    ainda há alimentação o LED passa um peŕıodo ligado e depois volta para ńıvel baixo.

    34

  • Figura 4.10: LED em azul e sáıda regulada de 3 V em vermelho.

    Para garantir que o sinal observado do LED está ligando e desligando no mo-

    mento certo, deve-se observar a figura 4.11 onde a curva em vermelho indica o pino

    RB5(TX CE) do PIC, a curva em azul é o LED e a verde a sáıda regulada de 3 V.

    A idéia aqui fica mais clara se o código desenvolvido no Anexo A ou a figura 3.6

    for analisado em conjunto. Quando o PIC inicia a execução do código, este pino

    permanece em ńıvel baixo até que a função Transmit Data() chegue quase ao fim,

    dado que a última coisa que ela faz é pulsar o pino por exatos 1 ms. Na figura é fácil

    identificar este momento e ainda observar que o LED é ligado logo em seguida como

    era de se esperar. O LED só deve desligar quando a base retornar com o respectivo

    comando, neste caso, observar o pino RB5 não traz muita informação. Entretanto,

    observamos que o LED apaga quase no fim da alimentação do dobrador e ainda que

    há um consumo considerável neste final.

    Observando o código, também sabe-se que o PIC só recebe algum comando da

    base quando ocorre uma interrupção no pino RB0(TX IRQ) fazendo com que este

    35

  • Figura 4.11: LED em azul, Pino CE do PIC em vermelho e sáıda regulada

    de 3 V em verde.

    vá para ńıvel baixo para ler a informação e retorne para o ńıvel alto em seguida.

    Nas figuras anteriores, se considerado o ińıcio da alimentação como 0 ms, o LED

    é apagado um pouco depois dos 15 ms. Na figura 4.12 a curva em azul é o pino

    RB0 do PIC e a em vermelho a alimentação proveniente do dobrador. Em um dado

    momento ocorre a interrupção no pino, e ele vai para ńıvel baixo, e então um pouco

    depois dos 15 ms ele retorna para ńıvel alto, que é um momento imediatamente

    anterior ao momento que o LED retorna a ńıvel zero. Pode-se dizer que isto dá

    ind́ıcios de que o LED só é apagado depois que ele recebe a informação da base.

    36

  • Figura 4.12: Pino RB0 do PIC em azul e sáıda regulada de 3 V em vermelho.

    As figuras 4.13, 4.14 e 4.15, referem-se às condições do circuito de controle:

    • 200 uF na sáıda regulada de 3 V.

    • Foi colocado um capacitor de 220 pF em paralelo com a entrada do circuito,

    sendo este não necessariamente ótimo.

    • Capacitor do monoestável igual a 27 nF na figura 4.13 e 4.14 e igual a 47 nF

    na 4.15.

    Espera-se que com as descrições acima, a sáıda regulada de 3 V esteja acima dos

    2.8 V dado que um capacitor em paralelo com a entrada foi colocado. As quedas

    devido ao consumo na curva da alimentação sejam duas vezes mais suaves à vista do

    capacitor na sáıda regulada ser duas vezes maior e que a alimentação perdure por

    37

  • mais tempo visto que os capacitores do monoestável são maiores do que nos gráficos

    anteriores.

    Na figura 4.13 a curva azul é a sáıda regulada de 3 V e a vermelha um LED

    identificador de problema. Primeiramente, com o capacitor de 27 nF o tempo de

    alimentação que antes era de 16 ms, subiu para 19 ms. Ainda verificamos que a

    alimentação está até um pouco acima dos 3 V e as transições da curva mais suaves

    confirmando todas as previsões para este cenário. Nesta figura e na 4.14 o cenário

    é um botão sendo pressionado, ou seja, um indicativo de problema será enviado

    para a base. O LED na figura foi acionado e em algum momento desligado, como

    dito anteriormente, ele liga imediamente após o PIC transmitir o sinal e desliga

    imediatamente depois do PIC receber o comando da base.

    Figura 4.13: Sáıda regulada de 3 V em azul e LED sinalizador de problema

    em vermelho.

    38

  • No código desenvolvido, logo após o PIC receber um comando da base no caso

    de ter enviado um sinal de problema, ele deverá piscar o LED sinalizador de estado

    OK por 2 ms. Existe um delay no algoritmo desenvolvido para garantir que o LED

    ficará ligado por pelo menos 2 ms após apagar o LED sinalizador do problema. Na

    figura 4.14, as curvas são as mesmas da figura anterior, com o acréscimo de uma

    em verde que representa o LED referente ao estado OK. Este LED é aceso logo em

    seguida do LED do problema ter apagado e permanece assim por 2 ms como era de

    se esperar indicando que todo funcionamento está seguindo a sincronia desejada.

    Figura 4.14: Sáıda regulada em azul, LED sinalizador de problema em ver-

    melho e LED referente ao estado OK em verde.

    Na figura 4.15 um capacitor de 47 nF foi colocado no monoestável, esperando

    que este concedesse um maior tempo para que o PIC continue ligado executando as

    tarefas de transmissão e recepção. No pino RB0 do PIC, como dito em figuras an-

    teriores, ocorre uma interrupção toda vez que o PIC recebe alguma informação. Na

    figura observa-se claramente que ocorrem duas interrupções durante o tempo em que

    39

  • a alimentação está ligada, sendo este tempo de aproximadamente 32 ms com a troca

    do capacitor. Como praticamente a última tarefa que o PIC realiza é receber uma

    informação, duas comunicações completas foram efetuadas durante este intervalo.

    No primeiro cenário experimental, o PIC realizava um comunicação completa em 16

    ms e recebia praticamente no final do tempo dispońıvel de alimentação. Com um

    tempo duas vezes maior ele conseguiu efetuar duas comunicações completas como

    era de se esperar.

    Figura 4.15: Pino RB0 do PIC em vermelho e sáıda regulada em azul.

    Nas figuras 4.16, 4.17, 4.19, 4.20 e 4.21 as condições são idênticas às da figura 4.15.

    Portanto espera-se observar um tempo de alimentação igual a aproximadamente 32

    ms, além das outras condições observadas no cenário de testes anterior. Análises

    mais detalhadas quanto ao consumo da estação remota serão avalidas nestas figuras.

    Para uma melhor identificação dos momentos em que o PIC é configurado como

    transmissor, o dado é transmitido, o PIC é configurado como receptor e o dado é

    40

  • recebido, a figura 4.16 apresenta além da curva da sáıda regulada, um sinal continu-

    amente pulsado que está ligado ao pino RB6(TX SCK) do PIC. Verificando o algo-

    ritmo desenvolvido, nota-se que todas as vezes que um byte é enviado ou recebido,

    este pino correspondente ao SCK da comunicação SPI entre o PIC e o transceptor

    é pulsado. Anteriormente foi dito que após a função de configuração de transmis-

    sor Transmitter Config() seguido da função de envio de dado Transmit Data() o

    pino correspondente ao TX CE permanece ligado por 1 ms. Como não há envio

    de byte durante este intervalo, por o circuito está realizando um delay, o pino SCK

    também sofre este delay ficando desligado por exatos 1 ms como mostra o primeiro

    espaçamento entre os pulsos na figura. Neste momento então, o dado foi enviado.

    Figura 4.16: Pino RB6 do PIC em vermelho e sáıda regulada em azul.

    Em seguida, o PIC trata de chamar a função Receiver Config() para se con-

    figurar como receptor e então espera a interrupção no pino RBO(TX IRQ). Este

    segundo momento de espera também está claro na figura, indicando que o PIC está

    configurado como receptor e está esperando informação da base. Nenhum byte é

    41

  • enviado ou recebido neste momento, o que faz o pino TX SCK permanecer no seu

    último estado. Após este momento, a função Read Payload() é chamada para que

    o dado recebido seja lido. Como há byte para ser recebido o pino TX SCK volta

    a pulsar e depois espera 2 ms que é o delay que possui no código para indicar fim

    de uma comunicação completa entre os módulos. Lembre-se que nesta configuração

    duas comunicações completas devem ocorrer dentro de um ciclo do dobrador, sendo

    que a figura não mostra o final da segunda comunicação, basta verificar a escala.

    Por isto após o terceiro espaçamento o pino TX SCK volta a pulsar, o que indica

    que todo o processo recomeçou.

    A figura 4.17 é só para indicar onde o pulso da interrupção ocorre. Para que,

    comparando com a figura anterior, perceba-se o momento exato que ele recebeu. Ao

    analisar o gráfico, este momento ocorre aproximadamente no meio da terceira reta, a

    mais abrupta de todas, que se comparado a figura anterior, é imediatamente depois

    de se receber o dado e então iniciar a sua leitura.

    Figura 4.17: Pino RB0 do PIC em vermelho e sáıda regulada em azul.

    42

  • Um diagrama de tempo foi criado em uma situação de problema no sensor 1. A

    figura 4.18 mostra todo o processo envolvendo os pinos anteriormente citados e os

    LEDs acendendo em sincronia e no momento correto. A situação foi simulada com

    o capacitor que controla o monoestável igual a 22nF onde é praticamente o tempo

    exato para acontecer apenas uma comunicação completa. Os intervalos de tempo

    são aproximados e podem ser vistos nas figuras anteriores em escala. Nos primeiros

    6.5 ms são enviados 25 bytes da PIC para o rádio onde o último é o endereço que faz

    parte do protocolo, ou seja, que indicará o estado dos sensores. Para configuração do

    receptor, que demora 5 ms, são enviados 20 bytes da PIC para o rádio. O segundo

    intervalo que o SCK fica parado em ńıvel baixo é o intervalo em que a PIC está

    esperando a resposta do Arduino, este tempo é ligeiramente variável porém gira

    em torno de 1 ms. Logo em seguida a PIC prepara o rádio para ler o byte que o

    Arduino enviou como resposta, neste momento a PIC envia 1 byte para o rádio, lê o

    byte recebido e depois envia 3 bytes para limpar o rádio e preparar para a próxima

    configuração.

    Figura 4.18: Diagrama de tempo quando há problema no sensor 1.

    As figuras 4.19 e 4.20 também são comparativas. A primeira delas apenas mostra

    o LED sinalizador de OK ser aceso duas vezes no estado de nenhum problema.

    43

  • A segunda ilustra uma mudança no algoritmo desenvolvido. Em todas as figuras

    anteriores, em qualquer cenário, é posśıvel observar uma queda mais acentuada na

    terceira reta e ao final da comunicação na curva da sáıda do dobrador. A partir disto,

    pode-se afirmar que o consumo é bem maior neste instante do que nos anteriores.

    Como verificado na figura 4.16 este é o momento em que o PIC está configurado

    como receptor, que por algum motivo, faz com que o consumo seja bem maior do que

    na configuração de transmissor. Para tentar reduzir o tempo que o PIC permanece

    neste estado, logo após ele receber um comando da base e ler o dado, antes de realizar

    as tarefas referentes a este comando, ele volta a se configurar como transmissor para

    que o consumo volte a ser reduzido. Como observado também no gráfico da figura

    4.16, toda configuração demora alguns milisegundos para ocorrer. Enquanto o PIC

    está voltando a configuração de transmissor, o LED ainda não foi apagado pois o

    comando enviado pela base não foi executado ainda. Após a configuração como

    transmissor ser efetuada, o PIC então realiza a operação de apagar o LED. De fato,

    a reta de maior consumo permaneceu em queda por menos tempo.

    Figura 4.19: LED sinalizador de OK em azul e sáıda regulada em vermelho.

    44

  • Figura 4.20: LED sinalizador de OK em vermelho e sáıda regulada com menor

    consumo em azul.

    A situação correspondente à figura 4.21 é a de uma sinalização de problema onde

    a curva em azul, em escala diferente das demais, representa a sáıda regulada. As

    curvas vermelha e verde são LEDs (vermelho é problema 1 e verde é estado OK). A

    configuração é a mesma das duas últimas figuras, na tentativa de reduzir o consumo

    deixando o transceptor configurado como receptor menos tempo, e por consequência,

    o LED do problema ligado por mais tempo. Ainda assim a sincronia é mantida com

    o LED sinalizador de OK piscando em seguida.

    Uma análise de consumo mais quantitativa será feita olhando para a figura 4.19. A

    sáıda do regulador é composta por uma capacitância de 200 µF e esta sáıda alimenta

    toda estação remota. Para medir o consumo médio, podemos considerar a queda de

    tensão em cima de um capacitor de 200 µF através da equação 4.1.

    45

  • Figura 4.21: LED sinalizador de problema em vermelho, de estado OK em

    verde e sáıda regulada ampliada em azul.

    i = C∆V

    ∆T(4.1)

    Observando as três retas da figura, a primeira é referente ao consumo durante a

    transmissão, a segunda durante a configuração como receptor e a terceira é referente

    ao consumo enquanto receptor e lendo o dado. Os consumos de cada uma das estapas

    são calculados a seguir:

    • Primeira reta:

    i = 200 µF · 300 mV6.5 ms

    = 9.2 mA (4.2)

    • Segunda reta:

    i = 200 µF · 120 mV5.1 ms

    = 4.7 mA (4.3)

    • Terceira reta:

    i = 200 µF · 400 mV4.1 ms

    = 19.5 mA (4.4)

    46

  • Analisando os resultados, a configuração como receptor consome mais de duas

    vezes mais que a transmissão completa.

    Através da figura 4.7 também pode se calcular quanto o dobrador fornece de

    potência. No caso desta figura tinha-se 200 µF de capacitância na sáıda da fonte de

    3 V e a tensão varia de 2.3 a 3.3 em 3.5s:

    E = CV 2

    2(4.5)

    Onde E é a energia do capacitor, V a tensão e C a capacitância.

    E1 = 200 µF ·2.32

    2= 529 µJ (4.6)

    E2 = 200 µF ·3.32

    2= 1089 µJ (4.7)

    P =(E2 − E1)

    ∆T(4.8)

    Sendo P a potência fornecida pelo dobrador:

    P =(1089 µJ− 529 µJ)

    3.5 s= 160 µW (4.9)

    Portanto, o gerador eletrostático na sáıda regulada de 3 V fornece um total de

    160 µW de potência. Com esta potência duas operações acontecem, para o caso de

    uma só, a potência seria por volta de 80 µW.

    47

  • Caṕıtulo 5

    Conclusão e Trabalhos Futuros

    5.1 Conclusão

    O projeto se concentrou em descobrir se há possibilidade de utilizar a energia do

    gerador elestrostático para construir uma rede de sensores. Para isso, precisou-se

    estudar se há energia e tempo suficientes para realizar uma comunicação satisfatória

    com a base de controle.

    Durante todos os testes, a energia fornecida pelo gerador eletrostático foi suficiente

    para permitir uma comunicação completa do módulo remoto com a base. Verificou-

    se também que o PIC consome muito mais na configuração de receptor do que na

    de transmissor.

    Apesar do primeiro teste ter sido feito com apenas 16 ms de alimentação do módulo

    remoto, foi verificado que poderia se aumentar o capacitor que controla o tempo do

    monoestável, até um certo limite, de maneira que permita milisegundos a mais para

    realização da comunicação.

    Muitos cenários de testes ainda podem ser desenvolvidos. A máquina de Wilson

    pode ser usada no lugar do dobrador de Bennet para gerar maior potência, fazendo

    com que dispositivos mais modernos possam ser utilizados. O maior problema visto

    neste projeto, foi quanto a sincronia entre os módulos. Certamente, com uma rede

    de sensores e mais microcontroladores fazendo parte do cenário, um protocolo de

    comunicação deverá ser estudado para suprir a demanda da necessidade de sincro-

    48

  • nia que haverá e a fim de especificar de qual sensor provém a informação recebida.

    A partir deste projeto, foi posśıvel demonstrar que há possibilidade de realizar co-

    municação sem fio, sem uso de bateria ou rede elétrica para controlar a transmissão

    e recepção de informações sensoriais.

    5.2 Trabalhos Futuros

    Com o sucesso da comunicação entre os módulo remoto e a base, existem diversas

    possibilidades de configurações a se testar. Muitas das ferramentas utilizadas, assim

    como os dispositivos, podem ser trocados a fim de trazer mudanças significativas

    para melhoria do projeto.

    O compilador C utilizado foi bem simples e em versões básicas. Caso um compila-

    dor superior a este seja utilizado, o código será muito melhor otimizado, permitindo

    que a execução do algoritmo seja significativamente mais rápida. Ainda com relação

    ao algoritmo, poderia se diminuir as configurações do receptor uma vez que parte

    delas já foram realizadas na configuração de transmissor, assim o tempo certamente

    também seria menor pois cada configuração demora cerca de 6 ms para completar.

    No caṕıtulo 4 também foi demonstrado que trocando algumas tarefas de lugar tam-

    bém é posśıvel reduzir o tempo em que o PIC fica configurado como receptor afim

    de reduzir o consumo.

    Sobre os dispositivos eletrônicos, versões mais modernas podem ser testadas para

    garantir um protocolo de comunicação mais confiável. O transceptor nRF24L01+

    dispõe de versões superiores que possuem controladores internos. Com isto poderia

    se estudar se o PIC continuaria sendo necessária. Se o PIC continuar sendo um

    microcontrolador indispensável, pode-se estudar a possibilidade de utilizar versões

    com periféricos utéis, tais como SPI e também clocks internos superiores aos 4 Mhz

    do modelo utilizado neste trabalho. A utilização de um módulo SPI interno econo-

    mizaria algumas linhas de código, mas a eficiência da utilização deste periférico deve

    ser avaliada. Não se pode esquecer que se ainda for utilizado o dobrador de Bennet

    como gerador de energia, um capacitor ótimo deve ser calculado para garantir maior

    entrega de potência.

    49

  • Como visto, inúmeras possibilidades podem ser testadas e avaliadas. Certamente

    com a possibilidade do uso da energia de geradores eletrostáticos autônomos, o

    monitoramento de variáveis através de sensores pode ser excessivamente simplificado.

    50

  • Bibliografia

    [1] QUEIROZ, A. C. M., “Electrostatic Vibrational Energy Harvesting Using a

    Variation of Bennet’s Doubler”, 53rd IEEE Midwest Symposium on Circuits

    and Systems, Seattle, USA, pp. 404–407, 2010.

    [2] QUEIROZ, A. C. M., DOMINGUES, M., “Electrostatic Energy Harvesting

    Using Doublers of Electricity”, 54th IEEE Midwest Symposium on Circuits and

    Systems, Seoul, Korea, pp. 1–4, 2011.

    [3] QUEIROZ, A. C. M., SOUZA, M. S., “Batteryless Electrostatic Energy Har-

    vester and Control System”, Circuits and Systems (ISCAS), 2014 IEEE Inter-

    national Symposium on, pp. 1–4, 2014.

    [4] QUEIROZ, A. C. M., DOMINGUES, M., “Electrostatic generators for vibra-

    tional energy harvesting”, IEEE Latin American Symposium on Circuits and

    Systems, Cusco, Peru, pp. 1–4, 2013.

    [5] QUEIROZ, A. C. M., “Electrostatic generators for vibrational energy harves-

    ting”, 2013 IEEE Latin American Symposium on Circuits and Systems, Cusco,

    Peru, pp. 1–4, 2013.

    [6] QUEIROZ, A. C. M., DOMINGUES, M., “The doubler of electricity used as

    a battery charger”, IEEE Trans. on Circuits and Systems II, No. 12, v. 58,

    pp. 787–801, 2011.

    [7] QUEIROZ, A. C. M., “Analysis of the operation of a regenerative electrostatic

    energy harvester”, Circuits and Systems (ISCAS) IEEE International Sympo-

    sium on, pp. 1074–1077, 2015.

    51

  • [8] QUEIROZ, A. C. M., “Energy harvesting using symmetrical electrostatic gene-

    rators”, Circuits and Systems (ISCAS) IEEE International Symposium on, pp.

    650–653, 2016.

    [9] MICROCHIP, PIC16F627A/628A/648A Data Sheet, Report DS40044F, Mi-

    crochip, 2007.

    [10] NORDIC SEMICONDUCTOR, nRF24L01+ Product Specificationt, Report

    Revision 1.0, Nordic, 2008.

    52

  • Apêndice A

    Algoritmo PIC

    /** File: remoto.c* Author: Mayli Silva de Souza** Created on Setembro de 2016*/#include #include #include // #pragma config statements should precede project file includes.// Use project enums instead of #define for ON and OFF.// CONFIG#pragma config FOSC = INTOSCIO // Oscillator Selection bits (INTOSC oscillator: I/O functionon RA6/OSC2/CLKOUT pin, I/O function on RA7/OSC1/CLKIN)#pragma config WDTE = OFF // Watchdog Timer Enable bit (WDT disabled)#pragma config PWRTE = OFF // Power-up Timer Enable bit (PWRT disabled)#pragma config MCLRE = OFF // RA5/MCLR/VPP Pin Function Select bit (RA5/MCLR/VPP pin function is digital input, MCLR internallytied to VDD)#pragma config BOREN = OFF // Brown-out Detect Enable bit (BOD disabled)#pragma config LVP = OFF // Low-Voltage Programming Enable bit (RB4/PGM pin has digital I/O function, HV on MCLR must be usedfor programming)#pragma config CPD = OFF // Data EE Memory Code Protection bit (Data memory code protection off)#pragma config CP = OFF // Flash Program Memory Code Protection bit (Code protection off)#define _XTAL_FREQ 4000000#define TX_MOSI PORTBbits.RB2 //Serial Slave Input.#define TX_MISO PORTBbits.RB7 //Serial Slave Output.#define TX_IRQ PORTBbits.RB0 //Interrupçao de saı́da. Ativo baixo#define TX_CE PORTBbits.RB5 //Chip Enable. Ativa modo TX ou RX#define TX_CSN PORTBbits.RB3 //Chip Select Not. Seleciona o chip zero#define TX_SCK PORTBbits.RB6 //SPI Clock.#define GREEN_LED_OK PORTAbits.RA6#define GREEN_LED PORTAbits.RA0#define RED_LED PORTBbits.RB4unsigned char payload;int flag_receive = 1;unsigned char data;void Send_Byte(char dado){

    unsigned int bit_ctr;for(bit_ctr = 0;bit_ctr < 8;bit_ctr++){

    if(dado & 0x80)TX_MOSI = 1;

    elseTX_MOSI = 0;

    dado = (dado CONFIG ; data -> PTX, power down, CRC Enable 1 byteSend_CmdData (0x24, 0x00); //cmd -> SETUP_RETR ; data-> auto retransmit offSend_CmdData (0x23, 0x03); //cmd -> SETUP_AW ; data -> address 5 byteSend_CmdData (0x26, 0x09); //cmd -> RF_SETUP ; data -> 2Mbps, -18dbmSend_CmdDa