Neste artigo vamos entender e testar um dispositivo cada vez mais presente (e mais inteligente) em nossa vida diária, que é o sensor de presença piroelétrico. Este sensor encontra aplicações na área de economia de energia, estando presente em áreas onde a circulação de pessoas não é constante para ligar cargas (lâmpadas, etc) somente quando uma pessoa adentra o ambiente em questão.
   O funcionamento do sensor piroelétrico se baseia na detecção de calor emitido por objetos diversos, quando da exposição de material piroelétrico á este calor. Todo e qualquer objeto que estiver á temperatura acima do zero absoluto emite calor, portanto todo objeto poderia ser “detectado” ou “visto” por um sensor piroelétrico; porém este não é caso, pois os sensores de presença comerciais são ajustados para somente enxergarem seres humanos (ou animais de grande porte).
O ângulo de “visão” do dos sensores piroelétricos é amplo (em torno de 100 graus) devido á utilização de uma lente na frente do mesmo, conhecida como lente de Fresnel. Este tipo de lente direciona os raios (luminosos ou não) para um pequeno ponto central, exatamente onde é colocado o sensor piroelétrico.
   Na experiência de hoje utilizaremos um sensor piroelétrico (PIR sensor) disponível na ICStation (nosso parceiro na China) –  clique aqui para comprar, e também no eBay ou Aliexpress. O datasheet deste sensor está disponível para download aqui (obrigado Adafruit!) e sua imagem é vista abaixo.
   Para teste deste sensor eu vou utilizar um Arduino UNO, porém qualquer outro microcontrolador serve (PIC, Arduino). Este sensor não exige nenhuma biblioteca especial, somente o sensor conectado á um pino digital do Arduino e  um pouco de código (sketch).
   O pino de status do sensor PIR (fio amarelo acima) é apenas uma saída digital que vai de ‘0’ (nada detectado) á ‘1’ (corpo detectado), portanto vamos utilizar um sketch que já vem pronto na IDE do Arduino, chamado “Button.ino” que pode ser encontrado em “Arquivo > Exemplos > Digital > Button”. Este código apenas lê o valor  de uma entrada digital (pino 3 do Arduino no nosso caso) e liga ou desliga o LED no pino 13 do Arduino.
 // constants won't change. They're used here to  
 // set pin numbers:  
 const int buttonPin = 3;   // the number of the pushbutton pin  
 const int ledPin = 13;   // the number of the LED pin  
   
 // variables will change:  
 int buttonState = 0;     // variable for reading the pushbutton status  
   
 void setup() {  
  // initialize the LED pin as an output:  
  pinMode(ledPin, OUTPUT);  
  // initialize the pushbutton pin as an input:  
  pinMode(buttonPin, INPUT);  
 }  
   
 void loop() {  
  // read the state of the pushbutton value:  
  buttonState = digitalRead(buttonPin);  
   
  // check if the pushbutton is pressed.  
  // if it is, the buttonState is HIGH:  
  if (buttonState == HIGH) {  
   // turn LED on:  
   digitalWrite(ledPin, HIGH);  
  } else {  
   // turn LED off:  
   digitalWrite(ledPin, LOW);  
  }  
 }  
   Segundo o tutorial da ICStation (neste link) existem alguns ajustes que podem ser feitos para  personalizar um pouco o funcionamento deste sensor de presença; veja imagem e explicações abaixo.
   Na parte de trás do sensor há 2 potenciômetros, um jumper de 2 posições e um conector para +5V, GND e Sinal. As configurações que podem ser feitas são:
“Delay adjustment” é o potenciômetro que ajusta o tempo que o sensor vai permanecer ligado após a detecção do objeto/ser. Nos nossos testes obtivemos tempos entre 5 e 200 segundos.
“Distance adjustment” é a distância máxima na qual o objeto que se aproxima vai ser detectado. O ajuste vai de alguns centímetros até 7 metros (de frente para o sensor).
– “unrepeatable/repeatable trigger mode”: se o jumper estiver entre o centro e o “unrepeatable mode” o sensor vai ser acionado e vai contar o tempo “delay” e desligar. Se o jumper estiver entre o centro e  o “repeatable mode” o delay será contado a partir da última detecção de pessoas, o que  siginifica que  enquanto houver pessoas na frente do sensor ele vai estar sempre acionado.
   Ao fazer upload do programa acima para o Arduino e ajustar o sensor PIR para “repeatable mode” (jumper no meio e embaixo do conector), o comportamento deve ser similar ao video abaixo: ao detectar um corpo o sensor aciona, e fica acionado até o corpo não ser mais detectado e o tempo de “delay” se esgotar.
   O ser humano encontrou no sensor piroelétrico uma aplicação muito útil e interessante, relacionada á economia de energia; graças á estes pequenos módulos prontos e facilmente encontrados no mercado, fica fácil você mesmo implementar suas ideias de automação residencial e controle por movimento.
– Para comprar o sensor PIR (piroelétrico) em nosso Parceiro ICStation (da China), clique no texto: ICStation PIR Motion Sensor Module
– Para comprar o Arduino UNO em nosso Parceiro ICStation (da China), clique no texto: ICStation ATMEGA328 UNO V3.0 R3 Board Compatible Arduino UNO R3
– Para comprar os cabinhos coloridos (jumpers) em nosso Parceiro ICStation (da China), clique no texto: 1pcs Dupont Wire 10CM 2.54MM Female to Male 1P-1P Jumper Cable For Arduino

Sensor de presença Piroelétrico – PIR motion sensor

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Solve : *
5 + 9 =