Tutorial del sensore di movimento PIR

Sensori a infrarossi piroelettrici ("passivi"):

'' 'Cos'è un sensore PIR?' ''

I sensori PIR ti consentono di rilevare il movimento, quasi sempre utilizzato per rilevare se un essere umano si è spostato all'interno o all'esterno della gamma dei sensori. Sono piccoli, economici, a bassa potenza, facili da usare e non si consumano. Per questo motivo si trovano comunemente in elettrodomestici e gadget utilizzati in case o aziende. Sono spesso indicati come sensori PIR, "infrarossi passivi", "piroelettrici" o "movimento IR".

I PIR sono fondamentalmente costituiti da un sensore piroelettrico (che puoi vedere sopra come una lattina di metallo rotonda con un cristallo rettangolare al centro), in grado di rilevare i livelli di radiazione infrarossa. Tutto emette radiazioni di basso livello e più qualcosa è caldo, più radiazioni vengono emesse. Il sensore in un rilevatore di movimento è effettivamente diviso in due metà. La ragione di ciò è che stiamo cercando di rilevare i livelli di movimento (cambiamento) non medi di IR. Le due metà sono cablate in modo da annullarsi a vicenda. Se una metà vede più o meno radiazioni IR rispetto all'altra, l'uscita oscilla in alto o in basso.

Insieme al sensore piroelettico è presente un gruppo di circuiti di supporto, resistori e condensatori. Sembra che la maggior parte dei piccoli sensori per hobbisti utilizzino il BISS0001 ("Micro Power PIR Motion Detector IC"), senza dubbio un chip molto economico. Questo chip prende l'output del sensore e ne esegue una piccola elaborazione per emettere un impulso di uscita digitale dal sensore analogico.

Per molti progetti o prodotti di base che devono rilevare quando una persona è partita o è entrata nell'area o si è avvicinata, i sensori PIR sono fantastici. Sono a basso consumo e basso costo, abbastanza robusti, hanno una vasta gamma di obiettivi e sono facili da interfacciare. Nota che i PIR non ti diranno quante persone sono vicine o quanto sono vicine al sensore, l'obiettivo è spesso fissato a una certa distanza e distanza (anche se può essere hackerato da qualche parte) e a volte sono anche messi in marcia da casa animali domestici. La sperimentazione è la chiave!

Alcune statistiche di base

Queste statistiche sono per il sensore PIR nel negozio Adafruit che è molto simile a quello Parallax. Quasi tutti i PIR avranno specifiche leggermente diverse, sebbene funzionino praticamente allo stesso modo. Se c'è un foglio dati, ti consigliamo di fare riferimento ad esso

  • Dimensioni: rettangolare
  • Prezzo: $ 10, 00 presso il negozio Adafruit
  • Uscita: impulso digitale alto (3V) quando attivato (movimento rilevato) digitale basso quando inattivo (nessun movimento rilevato). Le lunghezze degli impulsi sono determinate da resistori e condensatori sul PCB e differiscono da sensore a sensore.
  • Gamma di sensibilità: fino a 20 piedi (6 metri) 110 gradi x 70 gradi di rilevamento
  • Alimentazione: tensione di ingresso 3, 3 V - 5 V,
  • BIS0001 Datasheet (il chip del decodificatore utilizzato)
  • Scheda tecnica RE200B (molto probabilmente l'elemento di rilevamento PIR utilizzato)
  • Scheda tecnica NL11NH (obiettivo equivalente utilizzato)
  • Parallax Datasheet sulla loro versione del sensore
    • Un'ottima pagina sui sensori PIR di GLOLAB
    • Rapporto del sensore della NYU

    Passaggio 1: come funziona?


    I sensori PIR sono più complicati di molti altri sensori spiegati in questi tutorial (come fotocellule, FSR e interruttori di inclinazione) perché ci sono più variabili che influenzano l'ingresso e l'uscita dei sensori. Per iniziare a spiegare come funziona un sensore di base, useremo il diagramma piuttosto carino qui sotto (se qualcuno sa da dove proviene, fammelo sapere).

    Il sensore PIR stesso ha due slot al suo interno, ogni slot è realizzato con un materiale speciale sensibile all'IR. L'obiettivo usato qui non sta davvero facendo molto e quindi vediamo che i due slot possono "vedere" oltre una certa distanza (fondamentalmente la sensibilità del sensore). Quando il sensore è inattivo, entrambi gli slot rilevano la stessa quantità di IR, la quantità ambientale irradiata dalla stanza o dalle pareti o all'esterno. Quando passa un corpo caldo come un essere umano o animale, intercetta dapprima metà del sensore PIR, che provoca un cambiamento differenziale positivo tra le due metà. Quando il corpo caldo lascia l'area di rilevamento, accade il contrario, per cui il sensore genera un cambiamento differenziale negativo. Questi impulsi di cambiamento sono ciò che viene rilevato.

    Il sensore PIR stesso

    Il sensore IR stesso è alloggiato in una lattina di metallo ermeticamente sigillata per migliorare l'immunità al rumore / temperatura / umidità. C'è una finestra in materiale trasmissivo IR (tipicamente silicio rivestito poiché è molto facile da trovare) che protegge l'elemento sensibile. Dietro la finestra sono i due sensori bilanciati.

    Guarda le immagini per maggiori dettagli:

    Passaggio 2: obiettivi

    I sensori PIR sono piuttosto generici e per la maggior parte variano solo nel prezzo e nella sensibilità. Gran parte della vera magia avviene con l'ottica. Questa è una buona idea per la produzione: il sensore PIR e i circuiti sono fissi e costano pochi dollari. L'obiettivo costa solo pochi centesimi e può cambiare molto facilmente l'ampiezza, la portata, il modello di rilevamento.

    Nel diagramma sopra, l'obiettivo è solo un pezzo di plastica, ma ciò significa che l'area di rilevamento è solo di due rettangoli. Di solito vorremmo avere un'area di rilevamento molto più grande. Per fare ciò, utilizziamo un obiettivo semplice come quelli che si trovano in una fotocamera: condensano una grande area (come un paesaggio) in una piccola (su pellicola o un sensore CCD). Per ragioni che appariranno presto, vorremmo rendere le lenti PIR piccole, sottili e modellabili da una plastica economica, anche se può aggiungere distorsione. Per questo motivo i sensori sono in realtà lenti Fresnel (vedi immagine sotto).

    OK, quindi ora abbiamo una gamma molto più ampia. Tuttavia, ricorda che in realtà abbiamo due sensori e, cosa più importante, non vogliamo due rettangoli di area di rilevamento molto grandi, ma piuttosto una dispersione di più aree piccole. Quindi quello che facciamo è dividere l'obiettivo in più sezioni, ciascuna delle quali è una lente di Fresnel.

    Le diverse sfaccettature e sotto-lenti creano una gamma di aree di rilevamento, intercalate tra loro. Ecco perché i centri delle lenti nelle sfaccettature sopra sono "incoerenti": ogni altro punta a una metà diversa dell'elemento di rilevamento PIR

    Passaggio 3: connessione al PIR


    La maggior parte dei moduli PIR ha una connessione a 3 pin laterale o inferiore. La piedinatura può variare tra i moduli, quindi controllare tre volte la piedinatura! Viene spesso serigrafato proprio accanto alla connessione. Un pin sarà messo a terra, un altro sarà segnale e l'ultimo sarà la potenza. L'alimentazione è di solito 3-5 V CC, ma può arrivare fino a 12 V. A volte i moduli più grandi non hanno un'uscita diretta e invece fanno funzionare solo un relè, nel qual caso c'è la terra, l'alimentazione e le due connessioni dell'interruttore.

    L'uscita di alcuni relè può essere "open collector" - ciò significa che richiede una resistenza di pullup. Se non stai ottenendo un output variabile, assicurati di provare a collegare un pullup da 10K tra il segnale e i pin di alimentazione.

    Un modo semplice di prototipare con i sensori PIR è collegarlo a una breadboard poiché la porta di connessione ha una spaziatura di 0, 1 ". Alcuni PIR sono già dotati di intestazione, quelli di Adafruit non come al solito l'intestazione è inutile da inserire in un basetta.

    Saldando con un'intestazione ad angolo retto di 0, 1 ", un PIR può essere facilmente installato su una breadboard!

    Passaggio 4: test del PIR


    Una volta che il PIR è collegato, è una buona idea fare un semplice test per verificare che funzioni come previsto. Questo test è valido anche per i test di portata. Basta collegare 3-4 batterie alcaline (assicurarsi di avere più di 3, 5 V CC ma meno di 6 V controllando con il multimetro!) E collegare la terra al pin del PIR. L'alimentazione va al pin +. Quindi collegare un LED rosso di base (i LED rossi hanno tensioni in avanti inferiori rispetto al verde o al blu, quindi funzionano meglio con solo l'uscita 3, 3 v) e una resistenza da 220 ohm (qualsiasi valore da 100 ohm a 1, 0 K ohm andrà bene) all'uscita perno come mostrato. Naturalmente, il LED e la resistenza possono scambiare posizioni fintanto che il LED è orientato alla connessione e si collega tra fuori e terra

    Ora quando il PIR rileva un movimento, il pin di uscita diventa "alto" a 3, 3 V e illumina il LED!

    Dopo aver collegato la breadboard, inserire le batterie e attendere 30-60 secondi affinché il PIR si "stabilizzi". Durante quel periodo il LED potrebbe lampeggiare leggermente. Aspetta che il LED sia spento e poi muoviti di fronte ad esso, agitando una mano, ecc., Per vedere il LED che si illumina!

    Passaggio 5: riavvio

    Una volta che il LED lampeggia, guarda sul retro del sensore PIR e assicurati che il ponticello sia posizionato nella posizione L come mostrato di seguito.

    Ora imposta di nuovo la scheda di test. Si può notare che quando si collega il sensore PIR come sopra, il LED non rimane acceso quando si sposta davanti ad esso, ma in realtà si accende e si spegne ogni secondo circa. Questo si chiama "non-retriggering".

    Ora cambia il ponticello in modo che sia nella posizione H. Se imposti il ​​test, noterai che ora il LED rimane acceso per tutto il tempo in cui qualcosa si sta muovendo. Questo si chiama "riavvio"

    Per la maggior parte delle applicazioni, la modalità "riavvio" (jumper in posizione H) è un po 'più piacevole. Se è necessario collegare il sensore a qualcosa attivato dal limite, è necessario impostarlo su "non riavvolgimento" (ponticello in posizione L).

    Passaggio 6: modifica del tempo di impulso e della durata del timeout

    Esistono due "timeout" associati al sensore PIR. Uno è il timeout "Tx" : per quanto tempo il LED rimane acceso dopo aver rilevato il movimento. Il secondo è il timeout "Ti" che indica per quanto tempo il LED è spento quando non c'è movimento. Questi non sono facilmente modificabili, ma se sei a portata di mano con una saldatura, è ragionevole.

    Innanzitutto, diamo un'occhiata al foglio dati BISS (vedi immagine sotto)

    Determinare R10 e R9 non è troppo difficile. Sfortunatamente questo sensore PIR di seguito è etichettato erroneamente (sembra che abbiano scambiato R9 R17). Puoi tracciare i pin guardando il foglio dati BISS001 e capendo quali sono i pin: R10 si collega al pin 3 e R9 si collega al pin 7. i condensatori sono un po 'più difficili da determinare, ma puoi "ingegnerizzarli" dalla tempistica il sensore e la risoluzione!

    Per il sensore nel negozio Adafruit:

    Tx è = 24576 * R10 * C6 = ~ 1, 2 secondi
    R10 = 4.7K e C6 = 10nF

    Allo stesso modo,

    Ti = 24 * R9 * C7 = ~ 1, 2 secondi
    R9 = 470 K e C7 = 0, 1 uF

    È possibile modificare i tempi scambiando diversi resistori o condensatori. Per un bel tutorial su questo, vedi la pagina di hacking PIR di Keith

    Passaggio 7: esempi di progetti


    Un fungo Mario che canta e lampeggia tramite USB (c'è un video sul sito!)


    Ombrelli da pioggia


    Test di un sensore PIR per l'interfacciamento a Max / MSP per un giardino interattivo


    Un sistema di sicurezza fatto in casa che utilizza sensori PIR (integrato in un pannello Start Trek!)


    Sensore PIR + Arduino + Servo = porta automatica per gatti!

    Un trigger per videocamera remota basato su PIR (anche di Lucky Larry!)

    Passaggio 8: lettura dei sensori PIR

    Collegare i sensori PIR a un microcontrollore è davvero semplice. Il PIR funge da uscita digitale, quindi tutto ciò che devi fare è ascoltare il pin che si sposta in alto (rilevato) o basso (non rilevato).

    È probabile che tu voglia rilanciare, quindi assicurati di mettere il jumper in posizione H !

    Alimentare il PIR con 5 V e collegare terra a terra. Quindi collegare l'uscita a un pin digitale. In questo esempio useremo il pin 2.

    Il codice è molto semplice e sostanzialmente tiene traccia se l'ingresso al pin 2 è alto o basso. Tiene inoltre traccia dello stato del pin, in modo da stampare un messaggio quando il movimento è stato avviato e arrestato:

    / * Tester sensore PIR * /

    int ledPin = 13; // scegli il pin per il LED
    int inputPin = 2; // scegli il pin di ingresso (per sensore PIR)
    int pirState = LOW; // iniziamo, supponendo che non sia stato rilevato alcun movimento
    int val = 0; // variabile per la lettura dello stato dei pin

    void setup () {
    pinMode (ledPin, OUTPUT); // dichiara il LED come uscita
    pinMode (inputPin, INPUT); // dichiara il sensore come input

    Serial.begin (9600);
    }

    void loop () {
    val = digitalRead (inputPin); // legge il valore di input
    if (val == HIGH) {// controlla se l'ingresso è ALTO
    digitalWrite (ledPin, HIGH); // accende il LED
    if (pirState == LOW) {
    // abbiamo appena acceso
    Serial.println ("Rilevato movimento!");
    // Vogliamo solo stampare sulla modifica dell'output, non sullo stato
    pirState = HIGH;
    }
    } altro {
    digitalWrite (ledPin, LOW); // spegni il LED
    if (pirState == HIGH) {
    // abbiamo appena girato
    Serial.println ("Movimento terminato!");
    // Vogliamo solo stampare sulla modifica dell'output, non sullo stato
    pirState = LOW;
    }
    }
    }

    Non dimenticare che ci sono alcune volte in cui non hai bisogno di un microcontrollore. Un sensore PIR può essere collegato a un relè (forse con un buffer a transistor) senza un micro!

Articoli Correlati