- Potrebne komponente
- Shema vezja za detektor gibanja na osnovi Raspberry Pi in PIR senzorja
- Koda Python za Raspberry Pi:
Varnostni sistemi igrajo pomembno vlogo v našem vsakdanjem življenju in tam lahko najdemo veliko različnih vrst varnostnih sistemov z različnimi vrstami tehnologij in z različnim cenovnim razredom. Ker ste navdušeni nad elektroniko, lahko ustvarite preprost varnostni sistem, tako da porabite nekaj dolarjev in nekaj prostega časa. Tu v tem članku delim DIY vodnik za izdelavo preprostega alarma detektorja gibanja na osnovi Raspberry pi in PIR senzorja, ki bo vklopil zvočni signal, ko senzor PIR zazna kakršno koli gibanje človeka na tem območju. V enem od naših prejšnjih člankov smo obravnavali tudi preprosto vezje detektorja gibanja na osnovi senzorja PIR, kjer smo podrobno opisali delovanje senzorja gibanja PIR.
Potrebne komponente
- Raspberry Pi 3 (kateri koli model)
- PIR senzor
- Zvočni signal
- Breadboard
- Priključne žice
Delovanje PIR senzorja
Pasivni infrardeči (PIR) senzor se imenuje pasivni, ker sprejema infrardeči vir in ne oddaja. V bistvu zazna kakršno koli spremembo toplote in kadar koli zazna kakršno koli spremembo, postane njegov izhodni PIN VISOK. Omenjeni so tudi kot piroelektrični ali IR senzorji gibanja.
Tu moramo opozoriti, da vsak predmet oddaja določeno količino infrardečega segrevanja. Človek oddaja tudi infrardečo svetlobo zaradi telesne toplote. PIR senzorji lahko zaznajo majhne razlike v infrardeči povezavi. Kadar predmet preide skozi območje senzorja, zaradi trenja med zrakom in predmetom ustvari infrardečo povezavo in ga PIR ujame.
Glavna komponenta PIR senzorja je piroelektrični senzor, prikazan na sliki (pravokotni kristal za plastično kapico). Skupaj s tem BISS0001 ("Micro Power PIR detektor gibanja IC"), nekateri upori, kondenzatorji in druge komponente, ki se uporabljajo za izdelavo PIR senzorja. BISS0001 IC vzame vhod s senzorja in izvede obdelavo, da izhodni zatič VISOKO ali NIZKO ustrezno.
Piroelektrični senzor se deli na dve polovici, ko ni gibanja, ostaneta obe polovici v enakem stanju, kar pomeni, da oba zaznavata enako stopnjo infrardeče povezave. Takoj, ko nekdo vstopi v prvo polovico, postane infrardeča raven ene polovice večja od druge, kar povzroči, da PIR-ji reagirajo in povečajo izhodni pin.
Piroelektrični senzor je pokrit s plastično kapico, v kateri je veliko Fresnelovih leč. Te leče so ukrivljene tako, da lahko senzor zajema širok razpon.
Shema vezja za detektor gibanja na osnovi Raspberry Pi in PIR senzorja
Kot je prikazano v zgornjem shematskem diagramu za detektor gibanja na osnovi Raspberry Pi in PIR senzorja, je pozitivni zatič PIR senzorja povezan z zatičem 4 (5v), ozemljitveni zatič PIR senzorja pa zatičem 6 (Ground) Raspberry Pi (Tu lahko najdete shemo pinov Raspberry Pi). Izhodni zatič PIR senzorja je povezan z GPIO 23 Raspberry pi, ki se uporablja za vhod v Raspberry Pi. Zatič GPIO 24, ki je tukaj prijavljen za izhod, je povezan s pozitivnim zvočnika, ozemljitev zvočnika pa z ozemljitvijo (pin 6) maline pi.
Koda Python za Raspberry Pi:
Koda Python za ta detektor gibanja na osnovi senzorja maline pi in PIR je precej preprosta in jo je mogoče zlahka razumeti s komentarji v spodnjem odseku kode. GPIO nožici 23 in 24 sem razglasil za vhodne in izhodne nožice.
medtem ko je True: če GPIO.input (23): # Če pride do premika, senzor PIR daje vhod GPIO23 GPIO.output (24, True) # Izhod, ki ga Buzzer dobi prek GPIO24 time.sleep (1) #Buzzer se vklopi za 1-sekundni izhod GPIO (24, napačno)
", Medtem ko" se zanka uporablja kot "True", tako da bo vsebina v notranjosti zanke vedno izvršiti. če GPIO.input (23): stavek zazna, ali je GPIO pin 23 visok, in če je enako, izhodni PIN 24 postane visok. Funkcija time.sleep (secs) se uporablja za zaustavitev programa v pythonu za določen čas, pri čemer je 'secs' čas v sekundah. Tu smo ga torej začasno ustavili za 1 sekundo. V naslednji vrstici smo izpisali na 24 kot false, tako da se zvočni signal ustavi, dokler se zanka ne začne z naslednjo ponovitvijo, saj je zanka While nastavljena vedno true brez kakršnega koli predpogoja.