Sisukord:
- Tarvikud
- Samm: projekti süda
- 2. samm: projekti elektrooniline vooluahel ja programmeerimine
- 3. samm: funktsioon tühimike seadistamine ()
- 4. samm: projekt ja void loop -funktsioon
- Samm: sõnumite saatmise funktsioonid
Video: Telefoni turvasüsteem Arduinoga: 5 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:47
Kui te seda projekti ei rakenda, on teie kodu kaitsmata. See projekt aitab teil mobiiltelefoni kaudu häire käivitada, kui sissetungija teie koju tungib.
Nii saate selle projekti kasutamisel SMS -i mobiiltelefoni kaudu ja saate oma kodu sissetungide korral kaitsta.
Selleks kasutame Arduino ühilduvat plaati koos SIM800L mooduli ja PIR -anduriga. PIR -andur vastutab sissetungija olemasolu tuvastamise eest ja SIM800L vastutab koduomanikule hoiatava SMS -i saatmise eest.
Tarvikud
- Arduino ühilduv plaat
- Andur PIR
- Takisti 10kR
- Džemprid
- Protoboard
- SIM800L moodul
Samm: projekti süda
Projekti keskmes on SIM800L moodul. See moodul saab vastu võtta Arduino käske ja saata SMS -e kasutaja mobiiltelefonile. Nii saab kasutaja hoiatuse saades helistada politseisse või sooritada muid toiminguid.
Arduino ühilduv juhatus vastutab anduri oleku kontrollimise eest ja saadab seejärel kasutajale hoiatusteate, kui tuvastab sissetungija olemasolu.
See protsess viiakse läbi tänu Arduino ja SIM800L mooduli vahelistele juhtimiskäskudele. Seetõttu tutvustame teile sellest samm -sammult, et saaksite selle süsteemi üles ehitada, kodust lahkuda ja hoiatada teid iga kord, kui mõni sissetungija sinna tungib.
Kui soovite alla laadida Arduino ühilduva plaadi, pääsete sellele lingile juurde ja hankite failid oma plaatide ostmiseks JLCPCB -st.
Nüüd alustame!
2. samm: projekti elektrooniline vooluahel ja programmeerimine
Esiteks teeme elektroonilise vooluahela kättesaadavaks ja seejärel arutame teie jaoks samm -sammult projekti koodi.
#include SoftwareSerial kiip (10, 11);
String SeuNumero = "+5585988004783";
#defineeri andur 12
bool ValorAtual = 0, ValorAnterior = 0;
tühine seadistus ()
{Serial.begin (9600); Serial.println ("Inicializando Sistema …"); viivitus (5000); kiip.algus (9600); viivitus (1000);
pinMode (andur, INPUT); // Konfiguratsioon või Pino do Sensor como Entrada
}
tühine tsükkel ()
{// Le o valor do pino do sensor ValorAtual = digitalRead (sensor);
kui (ValorAtual == 1 && ValorAnterior == 0)
{IntrudeAlert; ValorAnterior = 1; }
kui (ValorAtual == 0 && ValorAnterior == 1)
{NoMoreIntrude (); ValorAnterior = 0; }
}
void IntrudeAlert () // Funcao para enviar mensagem de alerta Umidade Baixa
{chip.println ("AT+CMGF = 1"); viivitus (1000); chip.println ("AT + CMGS = \" " + SeuNumero +" / "\ r"); viivitus (1000); String SMS = "Intrude Alert!"; kiip.println (SMS); viivitus (100); kiip.println ((char) 26); viivitus (1000); }
void NoMoreIntrude () // Funcao para enviar mensagem de alerta Umidade Normal
{chip.println ("AT+CMGF = 1"); viivitus (1000); chip.println ("AT + CMGS = \" " + SeuNumero +" / "\ r"); viivitus (1000); String SMS = "No More Intrude!"; kiip.println (SMS); viivitus (100); kiip.println ((sümbol) 26); viivitus (1000); }
Allpool näidatud koodis deklareerisime algselt jadaside raamatukogu SoftwareSerial.h, nagu allpool näidatud.
#kaasake
Pärast kogu määratlemist määratleti sidetihvtid Tx ja Rx. Need tihvtid on alternatiivsed tihvtid ja neid kasutatakse teiste Arduino tihvtide jadaühenduse võimaldamiseks. SoftwareSerial raamatukogu töötati välja selleks, et võimaldada teil tarkvara kasutada funktsionaalsuse kopeerimiseks
TarkvaraSeriaalne kiip (10, 11);
Pärast seda on mobiiltelefoni number deklareeritud allpool.
String SeuNumero = "+5585988004783";
Elektrooniline kujundusskeem on lihtne ja hõlpsasti kokkupandav. Nagu vooluringilt näha, vastutab Arduino ühilduv plaat anduri oleku lugemise ja seejärel koduomanikule SMS -i saatmise eest.
Sõnum saadetakse, kui majas tuvastatakse sissetungija. PIR (passiivne infrapuna) andur on andur, mida kasutatakse infrapunasignaali liikumise tuvastamiseks. Arduinole saadetud signaalist saadab SIM800L moodul kasutajale sõnumi.
Dioodi kasutatakse pingelanguse tagamiseks SIM800L mooduli toiteks. Kuna moodulit ei saa toita 5 V toitega. Sel moel jõuab teie mooduli toiteks ja selle ohutu töö tagamiseks 4,3 V pinge.
3. samm: funktsioon tühimike seadistamine ()
Tühimuse seadistamise funktsioonis lähtestame jadaühenduse ja seadistame anduri tihvti sisendiks. Koodi piirkond on toodud allpool.
tühine seadistus ()
{
Seriaalne algus (9600); Serial.println ("Inicializando Sistema …"); viivitus (5000); kiip.algus (9600); viivitus (1000); pinMode (andur, INPUT); // Konfiguratsioon või Pino do Sensor como Entrada}
Nagu on näha, lähtestati kaks jadaühendust. Serial.beginit kasutatakse Arduino algseeria ja kiibi initsialiseerimiseks. Kiip.begin on seeria, mida emuleeritakse SoftwareSerial raamatukogu kaudu. Pärast seda kasutame tühjusringi funktsiooni.
4. samm: projekt ja void loop -funktsioon
Nüüd tutvustame tühisilmusfunktsiooni programmeerimise peamist loogikat.
void loop () {// Le o valor do pino do sensor ValorAtual = digitalRead (sensor);
kui (ValorAtual == 1 && ValorAnterior == 0)
{IntrudeAlert ();
ValorAnterior = 1;
}
kui (ValorAtual == 0 && ValorAnterior == 1)
{NoMoreIntrude ();
ValorAnterior = 0;
}
}
Esiteks loetakse PIR kohalolekuanduri signaal, nagu allpool näidatud.
ValorAtual = digitalRead (sensor);
Pärast seda kontrollitakse, kas muutuja ValorAtual väärtus on 1 või 0, nagu allpool näidatud.
if (ValorAtual == 1 && ValorAnterior == 0) {IntrudeAlert ();
ValorAnterior = 1;
} if (ValorAtual == 0 && ValorAnterior == 0) {NoMoreIntrude ();
ValorAnterior = 0;
}
Kui muutuja ValorAtual on 1 ja muutujad ValorAnterior on 0, on andur tegelikult aktiveeritud ja eespool deaktiveeritud (ValorAnterior == 0). Sel viisil funktsioon täidetakse ja kasutaja saab sõnumi teie mobiiltelefonile. Pärast seda on muutuja ValorAnterior väärtus 1 võrdne.
Sel viisil antakse muutujale ValorAnterior märku anduri tegeliku oleku käivitamisest.
Kui muutuja ValorAtual väärtus on 0 ja muutuja ValorAnterior väärtus on 0, ei tuvasta andur sissetungimist ja seejärel käivitatakse selle väärtus.
Sel viisil saadab süsteem sõnumi kasutaja mobiiltelefoni jaoks ja värskendab anduri tegelikku väärtust 0. See väärtus näitab, et andur ei käivitu hetkel.
Kasutajale saadetud sõnumid on toodud ülal.
Nüüd õpime, kuidas töötada selle funktsiooniga, et saata sõnumeid kasutaja mobiiltelefonile.
Samm: sõnumite saatmise funktsioonid
Selles süsteemis on kaks funktsiooni. Need on sama struktuuriga funktsioonid. Erinevus nende vahel on nimi ja saadetud sõnum, kuid seda analüüsides näeme, et need on täiesti samad.
Järgnevalt tutvustame funktsioonide täielikku struktuuri ja arutame koodi.
tühine IntrudeAlert () // Funcao para enviar mensagem de alerta Umidade Baixa {chip.println ("AT+CMGF = 1"); viivitus (1000); chip.println ("AT + CMGS = \" " + SeuNumero +" / "\ r"); viivitus (1000); String SMS = "Avatud uks!"; kiip.println (SMS); viivitus (100); kiip.println ((sümbol) 26); viivitus (1000); }
void NoMoreIntrude () // Funcao para enviar mensagem de alerta Umidade Normal
{chip.println ("AT+CMGF = 1"); viivitus (1000); chip.println ("AT + CMGS = \" " + SeuNumero +" / "\ r"); viivitus (1000); String SMS = "Suletud uks!"; kiip.println (SMS); viivitus (100); kiip.println ((sümbol) 26); viivitus (1000); }
SIM800L moodul kasutab oma funktsioonide juhtimiseks AT -käsku. Seetõttu saadame nende käskude kaudu sõnumi kasutaja mobiiltelefoni jaoks.
AT+CGMF = 1 kasutatakse mooduli konfigureerimiseks töötama SMS -teksti režiimis. Pärast viivitust saadab süsteem kasutaja jaoks järgmise käsu kaudu sõnumi.
chip.println ("AT + CMGS = \" " + SeuNumero +" / "\ r");
Käsus valmistatakse SIM800L moodul ette sõnumi saatmiseks stringis SeuNumero registreeritud mobiiltelefoni numbri kohta. Pärast seda laadib süsteem teate stringis ja saadab kasutaja mobiiltelefoni, nagu allpool näidatud.
String SMS = "Suletud uks!"; kiip.println (SMS); viivitus (100); kiip.println ((char) 26); viivitus (1000);
Sümbolit (26) kasutatakse teate lõppemiseks. See tööprotsess on sarnane kahele funktsioonile, mis saadavad kasutajale sõnumi.
Tänuavaldused
Nüüd hindame JLCPCB toetust selle töö tegemiseks ja kui olete huvitatud, avage järgmine link ja laadige alla Arduino ühilduv tahvel.
Soovitan:
Kodune turvasüsteem, mis kasutab sensori liitmist: 5 sammu
Kodune turvasüsteem, mis kasutab sensori sulandumist: Selle projekti idee on luua odav ja hõlpsasti valmistatav turvaandur, mille abil saab teid hoiatada, kui keegi on selle ületanud. Algne eesmärk oli luua midagi, mis annaks mulle märku, kui keegi trepist üles kõndis, aga ka mina
Elektrooniline turvasüsteem RTC ja kasutaja määratud PIN -koodiga: 7 sammu
Elektrooniline turvasüsteem koos RTC -ga ja kasutaja määratleb PIN -koodi: Tere poisid! See on projekt, mille tegin pic -mikrokontrolleri abil - selle elektroonilise PIN -koodi turvasüsteemi koos reaalajas kella ja kasutaja määratletud PIN -koodi funktsioonidega. See leht sisaldab kõiki üksikasju, et see ise teha
DIY-sõrmejälje võtme turvasüsteem: 8 sammu
DIY-sõrmejälgede võtmete turvasüsteem: see rakendus on kasulik meie igapäevaste vajalike võtmete (lukk) turvamiseks. Mõnikord on meil mõned tavalised võtmed, nagu kodu, garaaž, parkimine kahe või enama inimese vahel. Turul on saadaval mitmeid biomeetrilisi süsteeme
Pizero liikumistuvastav veebikaamera turvasüsteem: 3 sammu
Pizero liikumistuvastav veebikaamera turvasüsteem: see süsteem kasutab pizero, wifi -donglit ja vana veebikaamerat kohandatud tikutoosi ümbrises. See salvestab liikumiste tuvastamise videoid 27 kaadrit sekundis minu sõidutee mis tahes olulistest liikumistest. Seejärel laadib see klipid üles dropboxi kontole. Samuti saab vaadata logisid ja c
Automaatne laseriga juhitav turvasüsteem: 22 sammu
Automaatne laseriga juhitav turvasüsteem: laseriga juhitav turvasüsteem on laialdaselt kasutatav kaitse volitamata juurdepääsu vältimiseks. See on ülitõhus, mis töötab valguspõhise anduri ja laseriga, et kaitsta meie kodusid, kontoreid, panku, kappi ja mitmesuguseid olulisi kohti