În acest articol vă propun să realizăm o mică alarmă cu ajutorul plăcii de dezvoltare Arduino. În acest scop pe lângă un buzzer şi o placă de dezvoltare Arduino mai avem nevoie şi de un senzor PIR.  Eu voi folosi doi senzori PIR, unul ce l-am câștigat cu ceva timp în urmă la un concurs pe sparkfun.com (https://www.sparkfun.com/products/8630) şi un senzor mai performant DSC cumpărat gratuit de pe piaţă.

1.Puţină teorie…
Senzorul cu infraroșu pasiv , (în engleză, prescurtat PIR) reacționează la schimbarea temperaturii cauzată de schimbarea fluxului de radiații (în principal radiație termică în infraroșu, lungimea de undă fiind de aproximativ 10 µm) de la oameni, animale și vehicule aflate în vecinătatea senzorului. Senzorul (de mișcare) cu infraroșu nu răspunde la diferențele termice statice, care sunt cauzate prin mijloace naturale cum ar fi expunerea la lumina soarelui – percepe numai semnale de schimbare, cum ar fi atunci când o persoană intră în raza de sensibilitate infraroșie (detecție) a senzorului.
În fața senzorului propriu-zis – în distanța focală – se găsește o cupolă sferică sau cilindrică de lentile mici curbe convexe albe, din material plastic noros, dar este în mod clar în infraroșu transparent. Aceste lentile multiple colectează lumină în infraroșu. Lumina în infraroșu ajunge la senzorul propriu-zis care transformă această energie infraroșie în energie electrică, care poate fi analizată de un circuit de procesare (procesor) și care va diferenția alarmele false de alarmele reale.
Sursa: ro.wikipedia.org/wiki/Senzor_infraro99u_pasiv

2.Necesar:
-placa de dezvoltare Arduino Uno
-fire pentru conexiuni
-1 rezistenţă de 10kΩ
-1 regulator de tensiune la 5V (L7805)
-buzzer
-2 senzori PIR

3.Modul de conectare:
Conectarea la Arduino nu pune foarte mari probleme. În cazul senzorului de la sparkfun.com conectarea se face astfel: firul maro vine conectat la GND, cel roşu la +5V iar cel negru (pinul de semnal al senzorului) pe unul dintre pini de intrare ai plăcuţei Arduino. Între pinul de semnal al senzorului şi +5V avem nevoie de o rezistenţă de pullup de 10kΩ. Această rezistenţă are rolul de pune pinul de intrare Arduino pe LOW în momentul în care se detectează mişcare. În lipsa acestei rezistenţe valoarea citiă pe portul plăcuţei Arduino în momentul detectării mişcării ar varia aleator între HIGH şi LOW.
Pentru senzorul PIR DSC conectarea se face putin diferit. Datorita faptului că acest senzor se alimentează la 12V, pinul de semnal v-a face trecerea de la 12V la 0V în momentul in care se detectează mişcarea. Dacă punem cei 12V pe una dintre intrările Arduino riscăm să îl „prăjim”, lucru  pe care nu ni-l dorim. Pentru rezolvarea acestui inconvenient avem la dispoziţie două soluţii, şi anume folosirea unui divizor de tensiune pentru a reduce cei 12V la o valoare mai mică (la acest link gasiti un calculator care va ajuta in aflarea valorii rezistenţelor http://www.raltron.com/cust/tools/voltage_divider.asp), care să fie suportată de Arduino. Sau, a doua soluţie, care presupune folosirea unui regulator de tensiune pentru a reduce cei 12V la 5V. Mai jos se găsesc schemele electrice pentru ambele variante.

PIRDSC

PIRDSC1

Dacă folosiţi varianta cu divizor de tensiune v-a trebuii să modificaţi programul de mai jos pentru a citi valoarea analogică a portului selectat. Eu voi merge în continuare pe varianta cu regulator de tensiune.

Schema finală a aplicaţiei arata aşa:

PIRARDU (1)
4.Partea software
Mai jos se găseşte programul care la detectarea mişcării pe oricare din cei doi senzori PIR v-a semnaliza acest lucru atât pe portul serial cât şi acustic printr-o melodie UAU.

 

Cam asa arata aplicaţia la mine:

PIR_FIN

Programul de mai sus se poate modifica astfel încât să corespundă nevoilor voastre. Dacă aveţi nelămuriri sau alte întrebări legate de acest subiect, secţiunea de comentarii sau cea de suport vă stă la dispoziţie.

Spor la treaba!

Senzori PIR
Etichetat pe:        

13 gânduri despre „Senzori PIR

  • 16/01/2014 la 12:53
    Legătură permanentă

    As avea si eu o intebare.
    Se poate executa oalarma home use din mai multi senzori PIR (Pana la cati suporta).
    Sa pun o tastatura numerica sau ceva pt untroducerea unui cod si eventual o sirena pe un arduino????
    Poate nu-i chiar o intrebare ii mai complexa treaba mea. Dar se poate si cat?

    multunmesc

    Răspunde
  • 16/01/2014 la 14:29
    Legătură permanentă

    Salut,

    Se poate. Arduino UNO are 18 intrari/iesiri digitale care le poti folosi pentru asa ceva. Daca scoti faptul ca pui o sirena (1 iesire) si mai pui un buton dalas pentru armare/dezarmare(1 iesire) poti sa pui 16 senzori PIR.

    Răspunde
    • 17/03/2014 la 16:21
      Legătură permanentă

      E mai bine sa-mi spui ce senzori vrei sa folosesti decat sa-ti insir toti senzorii care poti sa ii folosesti. Numarul senzorilor care pot fi legati pe arduino este foarte mare.

      Răspunde
  • 14/05/2014 la 21:32
    Legătură permanentă

    As, avea o intrebare! Pot utiliza o telecomana si un reciver care sa imi inchida alarma? Adica tot sistemul de alarma?

    Răspunde
        • 15/05/2014 la 09:14
          Legătură permanentă

          Sa pot sa va dau o sugestie am nevoie de mai multe detalii. Spre exemplu: Ce fel de sistem de alarma doriti sa comandati? Are aceasta functie preinstalata? Ce fel de telecomanda vreti sa folositi? etc.

          Răspunde
  • 15/05/2014 la 13:26
    Legătură permanentă

    Am facut alarma cu arduino, am progrmat, si acum as vrea sa inchid tot sistemul meu de alarma cu o telecomda (+recevier). Si ma gandeam de unde sa incep ca nu sunt decis de unde sa pornesc cu programatul si conectarea reviverului

    Răspunde
    • 16/05/2014 la 18:15
      Legătură permanentă

      Da,

      Doar ca trebuie sa fii tot timpul in aproprierea senzorului IR cu telecomanda orientata spre el.

      Răspunde
  • 11/01/2017 la 04:28
    Legătură permanentă

    Buna ziua,

    Tot legat de senzori PIR si senzori de proximitate magnetici (usa /fereastra inchisa)
    Ce lungime de cablu ar fi considerata maxima pentru legarea senzorilor la modulul arduino? O lungime de ex 25 m ar pune probleme? Cablul propus a fi utilizat ar fi un cablu neecranat utp pentru conectarea a 2-3 senzori PIR sau magnetici dintr-o zona.
    Proiectul meu as dori sa fie putin mai complex: alarma, urmarire (afisare intr-un grafic, activitate intr-o camera -sursa find senzorii PIR cand alarma nu e armata) si reglaj temperatura in incalzirea in pardoseala, ventilatie.
    Urmarirea o doresc pentru optimizarea incalzirii, am o cladire de birouri unde unele birouri se folosesc rar iar altele intens, in functie de diferite reguli….uneori nescrise, iar prin urmarirea prezentei as putea sa estimez de ex: biroul 11 este folosit dimineata luni-vineri, biroul 12 este folosit seara doar joi….etc, astfel ca pe un tipar birourile sa fie preincalzite (incalzirea in pardoseala are o inertie de ca. o ora) si astfel cand se muta grupurile sa fie cald, si apoi tot dupa o regula statistica sa se opreasca incalzirea.

    Am fost putin cam larg cu explicatiile, dar asta e ce imi doresc.

    Cu stima.

    Răspunde

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *