S nástupom letnej sezóny bolo potrebné vidiecky dom chrániť. Chcel som urobiť jednoduchý, ale spoľahlivý poplach proti vlámaniu so signálom prenášaným na mobilný telefón. Bolo rozhodnuté zostaviť zariadenie s prenosom poplachu do mobilného telefónu na základe elektronický dosky plošných spojov zakúpené na serveri Aliexpress. Ako sa hovorí lacné, ale veselé. Hlavnými prvkami tohto návrhu sú modul GSM SIM800L a doska Arduino (môžete použiť ľubovoľný - Nano, Uno, Pro Mini a podobne).
Prístroj má päť alarmových vstupov pre kontaktné senzory. Ku každému vstupu je možné pripojiť jeden alebo niekoľko senzorov zapojených do série.V náčrte priraďte každému bezpečnostnému okruhu názov (napríklad vstupné dvere, okno 1, okno 2 atď.). Zabezpečovacie zariadenie funguje takto: keď je prerušený elektrický obvod prvej slučky, jednotka najskôr zavolá na prvý telefón účastníka, potom zastaví hovor a tiež na číslo 2. Č. 2 je nevyhnutný vzhľadom na skutočnosť, že ak je náhle prvý účastník offline, alebo je pripojená batéria a iné problémy). Ak sa spustí slučka nasledujúca po prvej, pošle sa SMS správa s názvom slučky, ktorá pracovala v rovnakom prípade na obe účastnícke čísla.
Stanovenie počtu nástrojov a materiálov.
lítium-iónová batéria zo starého telefónu 3,7 V \ 1600 mA-1 ks
- vodiče;
spájkovačka;
Skúšobný prístroj;
-priehľadný plastový box -1ks;
šaty-up Arduino Nano -1 ks;
- rezistory 10kOhm-7ks;
- doštička z fóliového textilu;
- 1ks vypínač;
- modul SIM800L -1ks;
- Spúšťacia doska 1-2A -1ks;
- konektorové svorky.
Prvý krok, Zostavenie obvodu bezpečnostného zariadenia GSM.
Foto schéma.
Spájkovacie podložky pre modul GSM SIM800L a modul Arduino spájame na doštičku, čo zjednodušuje inštaláciu av prípade potreby uľahčuje výmenu modulov. Spájkovacie rezistory a iné spojenia. Odpory z RX kolíka modulu SIM800L sú pripojené k digitálnemu vstupu Arduino D3 tak, aby zodpovedali napätiu na vstupoch oboch modulov. Vstupy Arduino D4-D8 sú pretiahnuté cez odpory. Spínač je namontovaný v medzere v napájaní modulu SIM800 GSM a doske Arduino na zapnutie celého systému. Pri použití batérie, ktorá umožní prístroju pracovať dva tri dni v neprítomnosti siete 220 V. V mojom prípade menič napätia z napätia 12 V vytvára napätie 4,2 V a súčasne nabíja batériu (môžete použiť inú dosku, napríklad TP4056 s ochranou).
Druhý krok, Programovanie zariadení.
Na karte SIM by sa mali vymazať kódy PIN a všetky nepotrebné funkcie.Najskôr však musíte nakonfigurovať samotný modul SIM800L. V sieti je k tejto téme veľa videí, na tom nie je nič zložité. V náčrte označíme vaše telefónne čísla, upravíme názvy bezpečnostných zón, môžete nastaviť čas na monitorovanie systému (ak zariadenie po stanovenom čase správne funguje, príde kontrolná SMS). Vyplňte náčrt v Arduino a skontrolujte činnosť zariadenia.
skica:
Číslo reťazcaCall_1 = "79123456789"; // Číslo účastníka č. 1 pre hovor
Číslo reťazcaSMS_1 = "+79123456789"; // Číslo účastníka č. 1 pre SMS (líši sa iba znamienkom +)
Číslo reťazcaCall_2 = "79123456782"; // Číslo účastníka 2 pre hovor
Číslo reťazcaSMS_2 = "+79123456782"; // Číslo účastníka č. 2 pre SMS (líši sa iba znamienkom +)
String textZone_1 = "Alarm! Zone1"; // Jeho názov je latinsky.
String textZone_2 = "Alarm! Zone2"; // Jeho názov je latinsky.
String textZone_3 = "Alarm! Zone3"; // Jeho názov je latinsky.
String textZone_4 = "Alarm! Zone4"; // Jeho názov je latinsky.
#include
SoftwareSerial mySerial (2, 3);
#definovať pinSensor_0 4
#definovať pinSensor_1 5
#deineine pinSensor_2 6
#deineine pinSensor_3 7
#deineine pinSensor_4 8
void initGSM (void) {
oneskorenie (2000);
mySerial.begin (9600); // Nastavte komunikačnú rýchlosť s modulom GSM 9600 Baud / s.
mySerial.println ("AT + CLIP = 1");
oneskorenie (300);
mySerial.println ("AT + CMGF = 1");
oneskorenie (300);
mySerial.println ("AT + CSCS = \" GSM \ "");
oneskorenie (300);
mySerial.println ("AT + CNMI = 2,2,0,0,0");
oneskorenie (300);
}
/ * Odosielanie SMS * /
void sendSMS (reťazcový text, reťazcový telefón) {
mySerial.println ("AT + CMGS = \" "+ telefón +" \ "");
oneskorenie (500);
mySerial.print (text);
oneskorenie (500);
mySerial.print (char) 26);
oneskorenie (2500);
}
nepodpísaný dlhý časovačTemp = 0;
uint8_t hodín = 0;
uint8_t flagSensor_0 = 0;
uint8_t flagSensor_1 = 0;
uint8_t flagSensor_2 = 0;
uint8_t flagSensor_3 = 0;
uint8_t flagSensor_4 = 0;
neplatné nastavenie () {
mySerial.begin (9600);
initGSM ();
pinMode (pinSensor_0, INPUT);
pinMode (pinSensor_1, INPUT);
pinMode (pinSensor_2, INPUT);
pinMode (pinSensor_3, INPUT);
pinMode (pinSensor_4, INPUT);
timTemp = millis ();
}
void loop () {
if (millis () - timerTemp> = 3600000) {timerTemp = millis (); hodín ++;}
if (hours> = 144) {// Zmeňte čas riadenia systému na náš, 144 hodín. počet hodín.
sendSMS (String („Systém funguje normálne.OK“), numberSMS_1);
oneskorenie (10000);
sendSMS (String („Systém funguje normálne.OK“), numberSMS_2);
oneskorenie (10000);
hodiny = 0;
timTemp = millis ();
}
if (flagSensor_0 == 0 && digitalRead (pinSensor_0) == 0) flagSensor_0 = 1;
if (flagSensor_1 == 0 && digitalRead (pinSensor_1) == 0) flagSensor_1 = 1;
if (flagSensor_2 == 0 && digitalRead (pinSensor_2) == 0) flagSensor_2 = 1;
if (flagSensor_3 == 0 && digitalRead (pinSensor_3) == 0) flagSensor_3 = 1;
if (flagSensor_4 == 0 && digitalRead (pinSensor_4) == 0) flagSensor_4 = 1;
if (flagSensor_0 == 1) {
Príkazový reťazec;
command = "ATD +" + numberCall_1 + ";"
mySerial.println (príkaz);
oneskorenie (20000);
mySerial.println („ATH“);
oneskorenie (1000);
command = "ATD +" + numberCall_2 + ";";
mySerial.println (príkaz);
oneskorenie (20000);
mySerial.println („ATH“);
oneskorenie (1000);
flagSensor_0 = 2;
}
if (flagSensor_1 == 1) {
sendSMS (textZone_1, numberSMS_1);
oneskorenie (10000);
sendSMS (textZone_1, numberSMS_2);
oneskorenie (10000);
flagSensor_1 = 2;
}
if (flagSensor_2 == 1) {
sendSMS (textZone_2, numberSMS_1);
oneskorenie (10000);
sendSMS (textZone_2, numberSMS_2);
oneskorenie (10000);
flagSensor_2 = 2;
}
if (flagSensor_3 == 1) {
sendSMS (textZone_3, numberSMS_1);
oneskorenie (10000);
sendSMS (textZone_3, numberSMS_2);
oneskorenie (10000);
flagSensor_3 = 2;
}
if (flagSensor_4 == 1) {
sendSMS (textZone_4, numberSMS_1);
oneskorenie (10000);
sendSMS (textZone_4, numberSMS_2);
oneskorenie (10000);
flagSensor_4 = 2;
}
if (flagSensor_0 == 2 && digitalRead (pinSensor_0)! = 0) flagSensor_0 = 0;
if (flagSensor_1 == 2 && digitalRead (pinSensor_1)! = 0) flagSensor_1 = 0;
if (flagSensor_2 == 2 && digitalRead (pinSensor_2)! = 0) flagSensor_2 = 0;
if (flagSensor_3 == 2 && digitalRead (pinSensor_3)! = 0) flagSensor_3 = 0;
if (flagSensor_4 == 2 && digitalRead (pinSensor_4)! = 0) flagSensor_4 = 0;
}
Krok tri, Kontrola zdravotného stavu zariadenia.
Keď sa napája, keď sa modul SIM800L a doska Arduino načítavajú, máte asi 20 sekúnd na opustenie stráženej miestnosti. V module SIM800L LED indikuje aktivitu siete, často hľadá sieť, raz za päť sekúnd signalizuje činnosť siete. Keď zariadenie nájde sieť, odpojte príslušné bezpečnostné vstupy, potom dôjde k telefonickému alebo SMS správam. Takže zariadenie funguje dobre.
Foto SMS. Bude možné zahrnúť akékoľvek bezpečnostné detektory s výstupmi vo forme kontaktov, relé z akčných členov, iba v súlade s vašimi potrebami a predstavivosťou. Vo všeobecnosti sme vyrobili jednoduché bezpečnostné zariadenie. Takýto domáci strážca môže byť vyrobený na zabezpečenie ochrany akýchkoľvek predmetov. Ak chcete zapnúť výstražné zariadenie, musíte prepínačom SIM800 a Arduino dodať 4,2 voltu. Pri prvom vchode prechádza hovor na účastníka č. 1, potom sa prepne na č. 2. Na duplikáciu je uvedený dodatočný č. Číslo otvorenej slučky 2, 3, 4, 5 umožňuje vydanie SMS so špecifickým názvom prerušenej slučky na oboch telefónoch. Všetky tabule umiestnime do vhodného prípadu. Všeobecne si myslím, že je to dobrý zaujímavý prístroj, ktorý sa dá ďalej rozvíjať - pridajte funkcie GSM soketu, DMTF ovládanie a oveľa viac.
Ďalšie podrobnosti nájdete vo videu
Prajem vám veľa zdravia a úspechov v živote a práci!