A biztonság mindig is mindannyiunk számára komoly gondot jelentett, és sok Hi-tech és IoT alapú biztonsági és felügyeleti rendszer érhető el a piacon. A betolakodó vagy betörő riasztó az egyik klasszikus és népszerű projekt az elektronikai hallgatók és hobbisták körében. Számos betörésjelzőt is építettünk különböző technológiák alapján:
- Lézeres biztonsági riasztási áramkör
- IR alapú biztonsági riasztás
- Betörésjelzés PIR segítségével
- GSM alapú biztonsági rendszer
Ma még egy biztonsági riasztót felveszünk a listánkba, amely az ultrahangos érzékelőn alapul. Ez az Arduino vezérelt ajtó riasztó az ajtó közelében telepíthető, hogy bárki jelenlétét észlelje az ajtóban. Amikor valaki az ultrahangos érzékelő hatósugarába esik, a hangjelző sípolni kezd. Az érzékelő érzékelési tartományát ajtójának megfelelően állíthatja be. Ez a rendszer a mozgásérzékelő célját is szolgálhatja.
Szükséges alkatrészek:
- Kenyérlemez
- Ultrahangos érzékelő
- Berregő
- Arduino Mega (bármilyen modell)
- Jumper huzalok
- USB kábel Arduino vagy 12v, 1A adapterhez.
Ultrahangos érzékelő modul:
A HC-SR04 ultrahangos érzékelőt arra használjuk, hogy bármely személy jelenlétét észleljük az ajtóban. Az érzékelő modul ultrahangos adóból, vevőből és a vezérlő áramkörből áll. Az ultrahangos érzékelő két kör alakú szemből áll, amelyek közül az egyiket az ultrahangos hullám továbbítására, a másikat pedig annak fogadására használják.
Kiszámíthatjuk az objektum távolságát az ultrahangos hullám által az érzékelőhöz való visszatéréshez szükséges idő alapján. Mivel a hang ideje és sebessége ismert, a következő képletekkel számíthatjuk ki a távolságot.
- Távolság = (Idő x Hangsebesség) / 2
Az érték el van osztva kettővel, mivel a hullám előre és hátra halad ugyanazon a távolságon. De ebben a projektben a NewPing.h könyvtárat használtuk, és ez a könyvtár gondoskodik erről a számításról, és csak néhány kulcsszót kell használnunk, a magyarázatot az alábbi programozási szakasz tartalmazza.
Ellenőrizze az alábbi projektet, hogy megmérje bármely objektum távolságát és megértse az ultrahangos érzékelő működését:
- Arduino alapú távolságmérés ultrahangos érzékelővel
- Távolságmérés HC-SR04 és AVR mikrokontrollerrel
Áramkör és magyarázat:
Az ultrahangos riasztás áramköri csatlakozásai nagyon egyszerűek. Az ultrahangos érzékelő kioldó csapja a 2. sz. Az Arduino 12 és az Echo érzékelő csatlakozik az Arduino 11. lábához. Az érzékelő Vcc-je az Arduino 5 V-os tűjéhez, az érzékelő GND-je pedig az Arduino GND-jéhez csatlakozik. Egy csap a berregő van kötve GND Arduino, és a másik csap csatlakozik 8 th pin Arduino.
Munka magyarázat:
Az Arduino ajtó riasztó használata nagyon egyszerű. Amikor valaki az ultrahangos érzékelő útvonalára / tartományába esik, a mikrovezérlő érzékeli az objektum távolságát az érzékelőtől, és ha az objektum a meghatározott tartományban van, akkor a magas jelet küldi a hangjelzőnek, és a hangjelzés elkezd sípolni.
Az áramkört úgy tesztelheti, hogy az érzékelő elé bármit beletesz a hatósugarába, ellenőrizze, hogy a Videó bemutatja. Az ultrahangos érzékelő ezen funkciója felhasználható az akadályokat elkerülő robot felépítésére is.
Programozási magyarázat:
Ebben a projektben a Tim Eckel által kifejlesztett NewPing.h könyvtárat használtuk az ultrahangos érzékelőkhöz. Bár használhatjuk az ultrahangos érzékelőt e könyvtár nélkül, mint az előző projektünkben, de ez a könyvtár számos jó tulajdonságot kínál az ultrahangos érzékelőhöz, és könnyebbé válik az ultrahangos érzékelők kódolása ezzel a könyvtárral. Könnyen használhatjuk az ultrahangos szenzor funkcióit ennek a könyvtárnak a használatával anélkül, hogy túl sok kódsort írnánk; olyan, mint más könyvtárak, amelyeket a komplexitás kezelésére használnak alacsonyabb szinten.
#include
Ezt a linket követve ellenőrizheti a könyvtár összes szolgáltatását, használatát és mintakódjait. Ellenőrizze a könyvtár hivatalos Arduino oldalát is.
A Library legújabb kiadása letölthető a fenti linkről. Továbbá letöltöttük a Teensy számára módosított alábbi könyvtár linket:
github.com/PaulStoffregen/NewPing
Először tesztelje az érzékelőt az oldalán megadott példakódok elégetésével. Projektünkhöz a példakódokat is felhasználtuk, és Ajtó riasztási projektünknek megfelelően módosítottuk őket.
A ravasztüske az Arduino 12-es, az Echo-tüske pedig az Arduino 11-es csatlakozójához van csatlakoztatva. A MAX_DISTANCE azt jelenti, hogy a távolság, amelyig az érzékelő képes érzékelni az akadályt, 500 cm vagy 5 m.
#define TRIGGER_PIN 12 #define ECHO_PIN 11 #define MAX_DISTANCE 500
A sor alatt megadjuk azt a Baud Rate-et, amellyel az adatokat ultrahangos érzékelőből küldjük az Arduino soros portra.
Serial.begin (115200);
A 10. sz. Tű kimeneti tűként van konfigurálva, és csatlakozik a hangjelzőhöz. A hangjelző másik csapja az Arduino GND-jéhez csatlakozik.
pinMode (10, OUTPUT);
A void echoCheck () függvényben a sonar.ping_result / US_ROUNDTRIP_CM segítségével kiszámítható az akadály távolsága az érzékelőtől. zászlóval lehet végrehajtani a hangjelzést, ha az akadály 50 cm-es távolságban van az ultrahangos érzékelőtől. Megváltoztathatja ezt a „távolságot” igényei vagy az ajtó mérete szerint.
if ((szonár.megadás_eredmény / US_ROUNDTRIP_CM) <50) zászló = 1; else if ((sonar.ping_result / US_ROUNDTRIP_CM)> 50) flag = 0;
A kódot nagyon jól kommentálja a NewPing.h könyvtár szerzője, és könnyen érthető. Továbbá megnézheti magát a könyvtár oldalt, hogy jobban megértse azt, és felhasználhatja ezt a könyvtárat komplex projektek készítéséhez ultrahangos szenzor segítségével. Az Ajtó riasztás projekt teljes kódját az alábbiakban adjuk meg.
Elsősorban az ultrahangos érzékelőt használják bármely objektumtól való távolság mérésére, de itt láthatjuk, hogy biztonsági riasztóként vagy ajtóriasztóként használható az Arduino-val. Hasonlóképpen sok hasznos projektet hozhatunk létre ezzel, például: Automatikus vízszint-jelző és -vezérlő az Arduino segítségével