Gsm riasztó rendszer arduino mozgásérzékelővel. Betörésjelző felépítése mozgásérzékelővel Arduino és infravörös érzékelők alapján

Az előző cikkben megtanultuk, hogyan kell használni a SIM800L GSM modult, és elkészítettük a rakomány távoli vezérlésének egyszerű kialakítását. Ma érdekesebbet fogunk csinálni, nevezetesen az Aliexpress és az Arduino által a SIM800L modulon elhelyezett GSM betörő riasztást, amely egy apartman, nyaraló, garázs stb. Védelmére használható. más objektumok, és amikor elindul, értesít egy hívást vagy SMS-t.

A GSM jelzéshez szükségünk van:

  • GSM / GPRS modul SIM800L;
  • Arduino Nano, UNO vagy más Arduinka;
  • DC-DC Buck konverter;
  • 3,7 V-os akkumulátor;
  • 10 k ellenállások - 7 db;
  • Tápegység.

Hogyan készítsünk biztonsági GSM riasztást a SIM800L modulon és az Arduino-n, a munka leírása:

Összekapcsoljuk a SIM800L modult, az Arduino-t, az érzékelőket stb. Az alábbi séma szerint, mindent összegyűjtünk egy kenyérdeszkán, hogy bármikor megváltoztasson, bármilyen megfelelő esetben elhelyezhetjük, és eltávolíthatjuk a vezetékeket a biztonsági érzékelők házából és a tápegységről. Az akkumulátort a tokba helyezzük, amelyre szükség van, hogy amikor a házban elveszik az áram, az eszköz önálló üzemmódba kerül, az akkumulátorral táplálva. A fokozatos átalakítón a kimeneten 4,2 voltot állítunk be, ezen a feszültségnél a GSM SIM modul működik, és ezzel egyidejűleg az akkumulátor is újratöltődik, és ez a feszültség is elegendő az Arduino Nano működéséhez.

Bármely öt érzékelőt csatlakoztathat az áramkörhöz, ezek olyanok, mint a nádkapcsolók, páratartalom, füst, mozgás stb. amelyek támogatják a relé működését, mivel ezt az áramkört úgy konfigurálják, hogy riasztást kiváltjon az öt érzékelő bármelyikének nyitott áramkörére, de ha szükséges, a vázlatot újracsukhatóvá lehet tenni.

Az első érzékelő bekapcsolásakor a megadott számra hívást kezdeményeznek, majd a hívást félbeszakítják és a második számra hívják, ezt akkor hajtják végre, ha az első szám jelenleg nem elérhető. A másik 4 biztonsági érzékelő bekapcsolásakor csak egy SMS-t küldünk, amelyben a kioldott zóna száma vagy neve meg van írva, és ezt az üzenetet két telefonszámra is elküldjük.

A vázlatban a „Riasztás!” Helyett megadhat telefonszámot, és megadhatja nevét a védett zónákhoz. 1. zóna ”,“ Riasztás! 2. zóna ”,“ Riasztás! Zóna3 "... Megírhatja annak az objektumnak a nevét, ahová egy adott érzékelőt helyez, például" Riasztás! Okno ”,“ Riasztás! Dverj "stb., A zónaneveket csak latinul kell írni. A vázlat ezenkívül beállítja a visszahívási időt a tulajdonosnak, vagyis azt, hogy hány óra elteltével értesíti Önt arról, hogy az egész rendszer működik és minden rendben van, alapértelmezés szerint 144 óránként visszahívásra kerül.

Így készítettünk egy egyszerű biztonsági riasztást a SIM800L és az Arduino modulon, a vázlat és az áramkör módosítható, például a SIM800L modul támogatja a hangszóró és a mikrofon csatlakoztatásának lehetőségét, amely lehetővé teszi a védett terület hallgatását, valamint a hangjának a hangszóróra történő bejutását.

Töltse le a vázlatot Arduino számára.

Annak érdekében, hogy otthonát megvédjék a betolakodóktól, egyre több ember telepít riasztást. Ezek lehetővé teszik, hogy időben figyelmeztesse a szobába való belépést. Manapság különféle típusú riasztások léteznek, de a közelmúltban egyre inkább növekszik a GSM riasztások népszerűsége, mivel ezek lehetővé teszik az objektumtól való távolságra vonatkozó információk beérkezését, főleg az, hogy a tulajdonosnak akkoriban telefonja van, és ez a telefon a hálózatban van. Sajnos ezek a rendszerek még nem voltak túl olcsók ahhoz, hogy kizárólag őket részesítsék előnyben. De manapság ön is készíthet egy egyszerű GSM jelzést. És a népszerű Arduino testület segít ebben a kérdésben.


Ez a projekt egy biztonsági (riasztó) rendszer a házba belépő betolakodók figyelmeztetésére. A rendszer GSM technológiát használ.



Behatolás-érzékelő modul van csatlakoztatva a biztonsági rendszer mikrovezérlő paneléhez, amely alapulhat például infravörös érzékelőn vagy ultrahangos közelségérzékelőn. Miután jelet kapott egy ilyen modulról, egy SMS-t küldünk a felhasználó telefonjára az otthoni behatolásról.


Az alábbi ábra a biztonsági rendszer tömbvázlata.



A rendszer fő elemei egy mikrovezérlő kártya (például Arduino Uno) és a SIM900A GSM / GPRS modul. A teljes rendszer táplálható egy 12 V / 2A tápegységről.


Az alábbi kép egy Arduino alapú GSM otthoni biztonsági rendszer sematikus ábráját mutatja.



A rendszer működése nagyon egyszerű, és nem igényel külön magyarázatot. A tápfeszültség bekapcsolásakor a rendszer készenléti üzemmódba kerül. Amikor a J2 bezáródik, figyelmeztető üzenet automatikusan elküldésre kerül az előre beállított mobiltelefonszámra. Bármely érzékelő csatlakoztatható a J2 bemenethez. Meg kell jegyezni, hogy a J2 1. érintkezőjének alacsony szintje aktív és aktiválja a biztonsági rendszert.


Ezenkívül a rendszer hozzáadta a hívás kezdeményezésének képességét az S2 gomb megnyomásával. Az S3 gomb használható a hívás visszaállítására.


Az alábbiakban található Arduino kódja.


// Csatlakoztassa a Tx-tűt a GPS-modul D3-tűjéhez // Csatlakoztassa az Rx-tűt a GPS-modul D4-tűjéhez // Csatlakoztassa az SMS küldési jelet a D7 tűhöz (aktív alacsony szint) // Csatlakoztassa a CALL hívásjelet a D8 tűhöz (aktív alacsony) // Csatlakoztassa az END hívás-visszaállítási jelet a D9 pin-hez (aktív alacsony) #include NewSoftSerial mySerial (3,4); // állítsa be az RX és TX érintkezőket a GSM modullal való kommunikációhoz #define msg_key 7 #define call_key 8 #define end_key 9 String number \u003d "0000000000"; // Itt a nullák helyett be kell írnia a tízjegyű mobilszám érvénytelen beállítását () (Serial.begin (9600); mySerial.begin (9600); pinMode (msg_key, INPUT); pinMode (call_key, INPUT); pinMode (end_key, INPUT) ); digitalWrite (msg_key, HIGH); digitalWrite (call_key, HIGH); digitalWrite (end_key, HIGH);) void loop () (// sms küldése minden alkalommal, amikor az msg_key tûnik, ha (digitalRead (msg_key) \u003d\u003d LOW) / / Ellenőrizze, hogy megnyomta-e az sms küldési gombot (mySerial.println ("AT + CMGF \u003d 1"); // Állítsa be az üzemmódot szöveges mód késleltetésként (150); mySerial.println ("AT + CMGS \u003d \\" + 00 "+ szám + "\\" "); // Írja be a rendeltetési hely számát nemzetközi formátumban, helyettesítve a nulla késleltetést (150); mySerial.print (" Figyelem! A behatoló figyelmeztetése! "); // Írja be az üzenet késleltetését (150); mySerial.write (( byte) 0x1A); // A 0x1A üzenet karakter vége: a Ctrl + z késleltetés egyenértékű (50); mySerial.println ();) // Hívás kezdeményezése, amikor a call_key másikat indít, ha (digitalRead (call_key) \u003d\u003d LOW) // Ellenőrizze vajon a call_key már megnyomva van-e (mySerial.println ("ATD + 91" + szám + ";"); // Határozzuk meg n híváshoz szükséges szám (digitalRead (call_key) \u003d\u003d LOW); késleltetés (50); ) // Alaphelyzetbe állítja a hívást, ha (digitalRead (end_key) \u003d\u003d LOW) // Ellenőrizze, hogy a hívás-visszaállítás gombot már megnyomta-e (mySerial.println ("ATH"); míg (digitalRead (end_key) \u003d\u003d LOW); késleltetés (50 );))

Így meglehetősen könnyű a saját kezével létrehozni egy GSM riasztást az Arduino tábla alapján. Egy ilyen riasztó természetesen olcsóbb lesz, mint a mai piacon létező szabadalmaztatók, és majdnem azonos módon fog működni.

Alapmodulok - GSM-modul SIM800L, Arduino Nano (bármilyen Uno-t használhat stb.), Lépcsőzetes kártya, mobiltelefon akkumulátor.

Ábra: 1. A biztonsági riasztómodulok elrendezése Arduinón

Jelző gyártás

A kenyérlapra a párnákon keresztül rögzítjük, amelyek lehetővé teszik a modulok cseréjét, ha szükséges. Riasztás bekapcsolása 4,2 voltos tápellátással a SIM800L és az Arduino Nano kapcsolóján keresztül.



Az első hurok aktiválásakor a rendszer először felhívja az első számot, aztán leállítja a hívást, és visszahívja a második számot. A második szám hozzáadódik arra az esetre, ha az első hirtelen leválasztódik stb. A második, harmadik, negyedik és ötödik hurok aktiválásakor az elindított zóna számát tartalmazó SMS elküldésre kerül, szintén két számra. Séma és vázlat, akiket érdekel a videó alatti leírás.
Az elektronikát megfelelő házba helyezzük.



Ha nem kell 5 csonk, csatlakoztassa az Arduino 5 V-os csavarját a nem szükséges bemenetekhez. GSM riasztórendszer 5 hurok számára akkumulátorral, amely lehetővé teszi az eszköz számára, hogy áramszünet esetén néhány napig önállóan működjön. Bármilyen biztonsági érintkezőt, relékapcsolatot stb. Csatlakoztathat hozzájuk, amelynek eredményeként egy egyszerű, olcsó, kompakt biztonsági eszközt kapunk az SMS küldésére és a 2 szám tárcsázására. Használható nyári ház, lakás, garázs stb. Őrzésére.

Több a videóban

Helló kedves olvasó! A mai cikk egy egyszerű otthoni biztonsági rendszer felépítéséről szól, a rendelkezésre álló alkatrészek felhasználásával. Ez a kicsi és olcsó készülék segít megvédeni otthonát a behatolástól az Arduino, mozgásérzékelő, kijelző és hangszóró segítségével. A készülék tápellátását akkumulátor vagy számítógépes USB-port képes biztosítani.

Tehát kezdjük!

Hogyan működik?

A melegvérű állatok teste infravörös tartományban bocsát ki, amely az emberi szem számára láthatatlan, de érzékelőkkel kimutatható. Ezek az érzékelők olyan anyagból készülnek, amely spontán polarizálódhat, ha hőnek van kitéve, ami lehetővé teszi a hőforrások megjelenését az érzékelő hatósugarán belül.

A szélesebb körű fellépés érdekében a Fresnel lencséket használják, amelyek különböző irányból gyűjtik az IR sugárzást és koncentrálják azt az érzékelőre.

Az ábra azt mutatja, hogy a lencse torzítja a rá eső sugarakat.

Érdemes megjegyezni, hogy a különösen forró alkatrészek nélküli robotok és a hidegvérű robotok nagyon gyengén bocsátanak ki az infravörös tartományban, így az érzékelő nem működik, ha a Boston Dynamics munkatársai vagy hüllők úgy döntöttek, hogy körülvesznek téged.

Ha az IR sugárzás szintje megváltozik a hatástartományban, azt az Arduino dolgozza fel, majd az állapot megjelenik az LCD kijelzőn, a LED villog, és a hangszóró sípol.

Mire van szükségünk?

  1. (vagy bármilyen más díj).
  2. (16 karakter, két sor)
  3. Egy csatlakozó a korona és az Arduino csatlakoztatásához
  4. (bár normál hangszóró használható)
  5. USB kábel - csak programozáshoz ( kb. per .: mindig az Arduinóinkkal jár!)
  6. Számítógép (ismét csak a program írásához és betöltéséhez).

Mellesleg, ha nem akarja ezeket az alkatrészeket külön-külön megvásárolni, azt javasoljuk, hogy vegye figyelembe a miénket. Például, mindent, amire szükséged van, és még ennél is többet megtalálhatja az indítókészletben.

Csatlakozzunk!

A mozgásérzékelő csatlakoztatása nagyon egyszerű:

  1. A Vcc tű csatlakoztatva van az 5 V Arduino-hoz.
  2. A Gnd tűt csatlakoztatjuk az Arduino GND-hez.
  3. Az OUT-csatlakozó az Arduino # 7-es digitális érintkezőjéhez van csatlakoztatva

Csatlakoztassuk a LED-et és a hangszórót. Itt minden egyszerű:

  1. Összekapcsoljuk a LED rövid lábát (mínusz) a földdel
  2. A LED hosszú lába (plusz) az Arduino 13. kimenetére van csatlakoztatva
  3. Hangszóró piros vezetéke a 10. kimenethez
  4. Fekete huzal - a földre

És most a legnehezebb az 1602 LCD kijelző és az Arduino csatlakoztatása. Van I2C nélküli kijelzőnk, tehát sok Arduino kimenetre lesz szükség, de az eredmény megéri. Az ábra az alábbiakban látható:

Csak az áramkör egy részére van szükség (nincs potenciométer kontrasztjavítónk). Ezért csak a következőket kell tenni:

Most már tudja, hogyan lehet 1602-es képernyőt csatlakoztatni az Arduino UNO R3-hoz (akárcsak az Arduino bármely verziójától a Mini-től a Mega-ig).

Programozzuk

Itt az ideje, hogy továbblépjünk a programozásra. Az alábbiakban található a kód, amelyet csak ki kell töltenie, és ha mindent helyesen összerak, a készülék készen áll!

#include int ledPin \u003d 13; // LED pin int inputPin \u003d 7; // Tű, amelyhez a mozgásérzékelő csatlakozik, int pirState \u003d LOW; // Jelenlegi állapot (elején semmit sem találtak) int val \u003d 0; // Változó a digitális bemenetek állapotának leolvasásához int pinSpeaker \u003d 10; // Az a tű, amelyhez a hangszóró csatlakozik. PWM tű szükséges a LiquidCrystal LCD számára (12, 11, 5, 4, 3, 2); // Inicializálja az LCD-kijelző érvénytelen beállítását () (// Határozza meg az adatátvitel irányát a pinMode (ledPin, OUTPUT); pinMode (inputPin, INPUT); pinMode (pinSpeaker, OUTPUT); // A hibakeresési információk elindítása a soros porton keresztül Serial .begin (9600); // Kimenet indítása az LCD-kijelzőn lcd.begin (16, 2); // Állítsa be az indexet a kijelzőn, ahonnan a kiadás indul // (2 karakter, 0 sor) lcd.setCursor (2, 0) ; // Kimenet az LCD kijelzőre lcd.print ("PIR Motion"); // Ismét mozgatás lcd.setCursor (5, 1); // Outc lcd.print ("Sensor"); // Szünet az olvasáshoz, mi volt a kimeneti késleltetés (5000); // lcd.clear () törlése; // hasonló az lcd.setCursor (0, 0); lcd.print ("adatfeldolgozás."); késleltetés (3000); lcd.clear (); lcd.setCursor (3, 0); lcd.print ("Waiting For"); lcd.setCursor (3, 1); lcd.print ("Motion ....");) void loop () (// Olvassa el érzékelő leolvasása val \u003d digitalRead (inputPin); if (val \u003d\u003d HIGH) (// Ha mozgás van, akkor világítsa meg a LED-et, és kapcsolja be digitalWrite sziréna (ledPin, HIGH); playTone (300, 300); késleltetés (150); // Ha ezidáig nem történt mozgás, akkor egy üzenetet jelenítünk meg // hogy észlelték // Az alábbi kódra csak az állapotváltozás beírásához van szükség, és nem minden alkalommal, ha az érték jelenik meg (pirState \u003d\u003d LOW) (Serial.println ( "Mozgás észlelve!"); Lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Mozgás érzékelve!"; PirState \u003d HIGH;)) else) (else) (ha a mozgás a digitalWrite (ledPin, LOW); playTone (0, 0); késleltetés (300); if (pirState \u003d\u003d HIGH) (// Informáljuk, hogy a mozgás megtörtént, de már befejeződött a Serial.println ("A mozgás véget ért!"); Lcd.clear () ; lcd.setCursor (3, 0); lcd.print ("Waiting For"); lcd.setCursor (3, 1); lcd.print ("Motion ...."; pirState \u003d LOW;)))) / / Hanglejátszás funkció. Időtartam (időtartam) - ezredmásodpercben, frekvencia (frekvencia) - Hz-ben érvénytelen lejátszási hangban (hosszú időtartam, int frekvencia) (időtartam * \u003d 1000; int időszak \u003d (1,0 / frekvencia) * 100000; hosszú múlt_idő \u003d 0; míg (eltelt_idő)< duration) { digitalWrite(pinSpeaker,HIGH); delayMicroseconds(period / 2); digitalWrite(pinSpeaker, LOW); delayMicroseconds(period / 2); elapsed_time += (period); } }

A projekt a tolvajok belépési kísérleteinek megakadályozására / ellenőrzésére szolgáló rendszer fejlesztésére és fejlesztésére vonatkozik. A kifejlesztett biztonsági eszköz egy beágyazott rendszert (magában foglal egy nyílt forráskódú szoftvert használó hardver mikrovezérlőt és egy gsm modemet), amely a GSM (Global System for Mobile Communications) technológián alapul.

A házba biztonsági berendezés telepíthető. A betörésjelző interfész-érzékelője szintén csatlakozik a vezérlőalapú betörésjelző rendszerhez.
Behatolási kísérlet esetén a rendszer figyelmeztető üzenetet (például sms-t) küld a tulajdonosnak a mobiltelefonon vagy bármely előre konfigurált mobiltelefonon további feldolgozás céljából.

A biztonsági rendszer Arduino Uno mikrovezérlőből és egy szabványos GSM / GPRS alapú SIM900A modemből áll. Az egész rendszert bármilyen 12 V-os 2A tápegységgel / akkumulátorral lehet táplálni.

Az alábbiakban egy arduino alapú biztonsági rendszer ábrája látható.

A rendszer működése nagyon egyszerű és magától értetődő. Amikor a rendszert áramellátással látják el, készenléti üzemmódba lép. Ha a J2 csatlakozó érintkezői rövidre vannak zárva, egy előre programozott figyelmeztető üzenetet küld a kívánt mobilszámra. Bármely behatolásjelzőt (például fényvédőt vagy mozgásérzékelőt) csatlakoztathat a J2 bemeneti csatlakozóhoz. Vegye figyelembe, hogy egy aktív alacsony (L) jel a J2 1. érintkezőjén aktiválja a betörés riasztást.

Ezenkívül egy opcionális “hívás-riasztó” eszközt adtak a rendszerhez. Aktiválja a telefonhívást, amikor a felhasználó megnyomja az S2 gombot (vagy ha egy másik elektronikus egység riasztást vált ki). A „hívás” gomb (S2) megnyomása után a hívást egy másik S3 gomb - a „vége” - gomb megnyomásával lehet megszakítani. Ez az opció használható „nem fogadott hívás” riasztás létrehozására behatolás esetén.

Az áramkör nagyon rugalmas, így bármilyen SIM900A modemet (és természetesen az Arduino Uno kártyát) képes használni. Az összeszerelés megkezdése előtt figyelmesen olvassa el a modem dokumentációját. Ez megkönnyíti a rendszer könnyebbé és élvezetesebbé tételét.

A radioelemek listája

Kijelölés Egy típus Megnevezés összeg jegyzetPontszámA jegyzetfüzetem
Arduino tábla

Arduino Uno

1 A jegyzettömbbe
GSM / GPRS modemSIM900A1 A jegyzettömbbe
IC1 Lineáris szabályozó

LM7805

1 A jegyzettömbbe
C1 100uF 25 V1 A jegyzettömbbe
C2 Elektrolit kondenzátor10mkF 16V1 A jegyzettömbbe
R1 Ellenállás

1 kΩ

1 A jegyzettömbbe
LED1 Fénykibocsátó dióda 1 A jegyzettömbbe
S1 GombRögzítéssel1