Ecco come fare un sensore di movimento PIR Arduino con un profumatore Air Wick
Vedremo come recuperare dai diffusori di profumo Air Wick il sensore di movimento ed utilizzarlo con Arduino.
Questo modello di profumatore aziona un motore che attraverso degli ingranaggi premere sull’ugello della lattina con l’ aroma, premendo si aziona il getto del profumo stesso.
Innanzitutto smontiamo il profumatore Airwik, capovolgendolo, con l’ugello da dove esce il profumo in basso e svitiamo le 4 viti presenti.
Aprendolo vediamo subito il motore ed il circuito contenente il PIR che utilizzeremo con Arduino.
Nella foto è possibile visualizzare i piedini del connettore, questi sono importantissimi per utilizzarli con il nostro Arduino.
Fatto questo analizziamo con attenzione i pin partendo da sinistra
Il Pin 1 è VCC bisogna fare attenzione al fatto che va alimentato con una tensione da 3 a 4 V, in pratica non va collegato al 5 V di Arduino altrimenti si danneggia il PIR.
Il Pin 2 è GND e va collegato a massa
Collegando il Pin 3 a GND si accende il led verde della scheda.
Il Pin 5 è il pin OUT del PIR
Poi abbiamo il Pin 4 –> GND, il Pin 6 dopo 9 minuti si connette a GND, il Pin 7 dopo 18 minuti si connette a GND, il Pin 8 dopo 36 minuti si connette a GND.
Come descritto prima, per accendere il LED (Pin 3) bisogna collegarlo a GND e non VCC.
Per usare il sensore con arduino possiamo caricare nella sua ide il seguente schetch
//the time we give the sensor to calibrate (10-60 secs according to the datasheet)
int calibrationTime = 10;
//the time when the sensor outputs a low impulse
long unsigned int lowIn;//the amount of milliseconds the sensor has to be low
//before we assume all motion has stopped
long unsigned int pause = 1000;// The threshold. The sensor value has to go under this
// for motion to be present.
int threshold = 100;boolean lockLow = true;
boolean takeLowTime;int pirPin = 5; // analog pin 5
void setup()
{
Serial.begin(9600);// This doesn’t seem to make a bit of difference. But it’s
// here anyways.
Serial.print(“calibrating sensor “);
for (int i = 0; i < calibrationTime; i++) {
Serial.print(“.”);
delay(1000);
}
Serial.println(” done”);
Serial.println(“SENSOR ACTIVE”);
delay(50);}
void loop()
{
if (analogRead(pirPin) < threshold) {lockLow = false;
Serial.println(“—“);
Serial.println(“motion detected “);
delay(50);}
}
Questo codice è stato preso dal blog http://blog.outroot.com/airwick-motion-sensor-pir-with-an-arduino/ è stato testato ed effettivamente funziona alla perfezione.
Una volta testato il sensore di movimento PIR Arduino con un profumatore Air Wick ho realizzato un modulo che sfruttando Mysensors misura la Temperatura e rileva i movimenti.
Se sei interessato quindi puoi leggere l’articolo Airwik Mysensors Temperatura e sensore movimento