terça-feira, 29 de setembro de 2015

Adormecendo Arduino: Narcoleptic

Narcoleptic


   É logico que não seria útil usar o Arduino se não houvesse um mode de despertá-lo novamente! Há dois métodos para acordar um Arduino. Um é usando uma interrupção externa e outro é programando um temporizador para acordar o Arduino após um determinado tempo. A biblioteca Narcoleptic utiliza apenas o método do temporizador.

   A biblioteca Narcoleptic fornece uma função delay alternativa que coloca o Arduino para dormir por um período de tempo que é especificado como parâmetro da função delay. Como nada acontece enquanto o Arduino está em delay, esse método funciona muito bem.

    Uma versão Narcoleptic do blink seria essa: 

 #include <Narcoleptic.h>  
 void setup()   
 {  
  pinMode(13, OUTPUT);  
 }  
 void loop()   
 {  
  digitalWrite(13, HIGH);  
  Narcoleptic.delay(1000);  
  digitalWrite(13, LOW);  
  Narcoleptic.delay(10000);  
 }  

    A grande diferença do uso da biblioteca Narcoleptic e o uso da própria função delay. Ao medir o consumo de corrente verifica-se que usando o sketch blink normal, o consumo é de 17,2mA e o uso do blink Narcoleptic cai o consumo aos poucos 3,2 mA.


    OBS: Biblioteca Narcoleptic


segunda-feira, 28 de setembro de 2015

Como economizar o consumo de energia do Arduino

    Quando alimentado com 5V a partir da conexão USB, normalmente um Arduino não consome muita energia. O Arduino Uno, por exemplo, consome cerca de 40mA, correspondendo a apenas 200mW. Isso significa que pode facilmente funcionar com uma bateria de  9V durante umas 4 horas. 
    O consumo de corrente é importante quando o Arduino deve funcionar por um longo período de tempo usando baterias como monitoração remota ou no caso de situações de controle em que o uso de bateria ou energia solar é a única opção. 


segunda-feira, 21 de setembro de 2015

Interrupções de temporizador


    No arduino o usuário dispõem de interrupções que são disparadas por eventos externos, também pode disparar eventos pelo ISRs chamando-as como resultado de eventos ocorridos com o tempo. Essa capacidade poderá ser realmente útil se você precisar fazer algo crítico envolvendo tempo.