- Szükséges alkatrészek
- Áramkör a Raspberry Pi és a PIR érzékelő alapú mozgásérzékelőhöz
- A Raspberry Pi Python-kódja:
A biztonsági rendszerek fontos szerepet játszanak mindennapi életünkben, és rengeteg különböző típusú biztonsági rendszert találhatunk, különféle technológiákkal és különböző árkategóriákkal. Elektronikus lelkesedésként egy egyszerű biztonsági rendszert hozhat létre néhány dollár és szabadidő eltöltésével. Itt ebben a cikkben megosztok egy barkácsolási útmutatót egy egyszerű Raspberry pi és PIR szenzor alapú mozgásérzékelő riasztás készítéséhez, amely bekapcsolja a hangjelzőt, amikor a PIR érzékelő bármilyen emberi mozgást észlel a környéken. Korábbi cikkünk egyikében egy egyszerű PIR szenzor alapú mozgásérzékelő áramkörre is kitértünk, ahol részletesen bemutattuk a PIR érzékelő működését.
Szükséges alkatrészek
- Raspberry Pi 3 (bármilyen modell)
- PIR érzékelő
- Berregő
- Kenyérlemez
- Csatlakozó vezetékek
A PIR érzékelő működése
A passzív infravörös (PIR) szenzort passzívnak nevezik, mert infravörösöt fogad, nem bocsát ki. Alapvetően minden hőváltozást észlel, és amikor bármilyen változást észlel, a kimeneti PIN-kódja MAGAS lesz. Piroelektromos vagy IR mozgásérzékelőként is emlegetik őket.
Itt meg kell jegyeznünk, hogy minden tárgy hevítéskor kibocsát bizonyos mennyiségű infravörös színt. Az emberi ember a test hője miatt infrát is sugároz. A PIR érzékelők képesek érzékelni az infravörös kis változását. Valahányszor egy tárgy áthalad az érzékelő tartományán, a levegő és a tárgy közötti súrlódás miatt infravörös sugarakat produkál, és a PIR elkapja.
A PIR érzékelő fő alkotóeleme az ábrán látható piroelektromos érzékelő (téglalap alakú kristály a műanyag kupak mögött). Ezzel együtt a BISS0001 ("Micro Power PIR mozgásérzékelő IC"), néhány ellenállás, kondenzátor és egyéb alkatrész a PIR érzékelő felépítéséhez. A BISS0001 IC az érzékelőtől veszi a bemenetet, és feldolgozza, hogy ennek megfelelően a kimeneti tű legyen HIGH vagy LOW.
A piroelektromos érzékelő két részre oszlik, amikor nincs mozgás, mindkét fél azonos állapotban marad, ami azt jelenti, hogy mindkét érzékeli az infravörös azonos szintjét. Amint valaki belép az első felébe, az egyik fele infravörös szintje nagyobb lesz, mint a másik, ez pedig a PIR-ek reakcióját idézi elő, és a kimeneti tűt magasra teszi.
A piroelektromos érzékelőt egy műanyag kupak fedi, amelyen belül sok Fresnel lencse található. Ezek a lencsék olyan módon hajlítottak, hogy az érzékelő széles tartományt tud lefedni.
Áramkör a Raspberry Pi és a PIR érzékelő alapú mozgásérzékelőhöz
Amint azt a Raspberry Pi és a PIR érzékelő alapú mozgásérzékelő fenti sematikus diagramja mutatja, a PIR érzékelő pozitív érintkezője össze van kötve a 4 érintkezővel (5v), a PIR érzékelő földelő csapja pedig a Raspberry Pi 6 érintkezőjével (földelés) (Itt találja a Raspberry Pi Pin diagramját. A PIR érzékelő kimeneti csatlakozója össze van kötve a Raspberry pi GPIO 23 -jával, amelyet a Raspberry Pi bemenetére használnak. Az itt kimenetként deklarált GPIO 24-es érintkező a hangjelző pozitívjához kapcsolódik, a hangjelző földje pedig a málna pi földjéhez (6. érintkező) csatlakozik.
A Raspberry Pi Python-kódja:
Ennek a málna pi és PIR szenzor alapú mozgásérzékelőnek a Python-kódja meglehetősen egyszerű, és könnyen megérthető az alábbi kódrészben található megjegyzésekkel. Kijelentettem, hogy a GPIO 23. és 24. érintkezője bemeneti és kimeneti csap.
igaz: ha GPIO.input (23): #Ha mozgás van, a PIR érzékelő bemenetet ad a GPIO23 GPIO.output (24, True) #Kimenetnek a Buzzernek adhatók GPIO24 időn keresztül. sleep (1) #Buzzer bekapcsol 1 másodperc GPIO.output (24, False)
A 'while' ciklust 'True' néven használják, így a cikluson belüli tartalom mindig végrehajtásra kerül. if GPIO.input (23): utasítás kimutatja, hogy a GPIO 23 tű magas-e, és ha ugyanez igaz, akkor a 24 kimeneti PIN-kódot magasra teszi. A time.sleep (secs) függvény a program szüneteltetésére szolgál a pythonban egy adott időre, ahol a „secs” másodpercben megadott idő. Tehát itt 1 másodpercig szünetet tartottunk. A következő sorban a 24-es kimenetet hamissá tettük, így a hangjelző megáll, amíg a hurok meg nem kezdi a következő iterációt, mivel míg a loop mindig igaz, minden előzetes feltétel nélkül.