Cuprins:
- Provizii
- Pasul 1: Inima proiectului
- Pasul 2: Circuitul electronic al proiectului și programarea
- Pasul 3: Funcția Void Setup ()
- Pasul 4: Proiectul și funcția buclă vid
- Pasul 5: Funcții pentru a trimite mesaje
Video: Sistem de securitate telefonică cu Arduino: 5 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:43
Casa dvs. va fi neprotejată dacă nu aplicați acest proiect. Acest proiect vă va ajuta să declanșați o alarmă prin telefonul mobil atunci când un intrus intră în casa dvs.
În acest fel, dacă utilizați acest proiect, veți primi un SMS prin telefonul mobil și vă veți putea menține casa protejată în caz de invazie.
Pentru aceasta, vom folosi placa compatibilă Arduino cu modulul SIM800L și senzorul PIR. Senzorul PIR va fi responsabil pentru detectarea prezenței unui intrus, iar SIM800L va fi responsabil pentru trimiterea unui SMS de alertă proprietarului casei.
Provizii
- Placă compatibilă Arduino
- Senzor PIR
- Rezistor 10kR
- Jumpers
- Protoboard
- Modul SIM800L
Pasul 1: Inima proiectului
Inima proiectului este modulul SIM800L. Acest modul va putea primi comenzi Arduino și trimite SMS pe telefonul mobil al utilizatorului. În acest fel, atunci când utilizatorul primește alerta, poate suna la poliție sau poate efectua orice alt tip de acțiune.
Placa compatibilă Arduino va fi responsabilă de verificarea stării senzorului și va trimite apoi un mesaj de alertă utilizatorului dacă detectează prezența unui intrus.
Acest proces este realizat datorită comenzilor de control dintre Arduino și modulul SIM800L. Prin urmare, din aceasta, vă vom prezenta pas cu pas pentru a construi acest sistem, pentru a vă lăsa casa protejată și pentru a vă avertiza ori de câte ori un intrus îl invadează.
Dacă doriți să descărcați placa compatibilă Arduino, puteți accesa acest link și puteți obține fișierele pentru a vă cumpăra plăcile de la JLCPCB.
Acum, să începem!
Pasul 2: Circuitul electronic al proiectului și programarea
În primul rând, vom pune la dispoziție circuitul electronic și apoi vom discuta codul proiectului pas cu pas pentru dvs.
#include cip SoftwareSerial (10, 11);
String SeuNumero = "+5585988004783";
#define senzor 12
bool ValorAtual = 0, ValorAnterior = 0;
configurare nulă ()
{Serial.begin (9600); Serial.println ("Inicializando Sistema …"); întârziere (5000); chip.begin (9600); întârziere (1000);
pinMode (senzor, INPUT); // Configura o Pino do Sensor como Entrada
}
bucla nulă ()
{// Le o valor do pino do sensor ValorAtual = digitalRead (senzor);
if (ValorAtual == 1 && ValorAnterior == 0)
{IntrudeAlert; ValorAnterior = 1; }
if (ValorAtual == 0 && ValorAnterior == 1)
{NoMoreIntrude (); ValorAnterior = 0; }
}
void IntrudeAlert () // Funcao para enviar mensagem de alerta Umidade Baixa
{chip.println ("AT + CMGF = 1"); întârziere (1000); chip.println ("AT + CMGS = \" "+ SeuNumero +" / "\ r"); întârziere (1000); String SMS = "Intrude Alert!"; chip.println (SMS); întârziere (100); chip.println ((char) 26); întârziere (1000); }
void NoMoreIntrude () // Funcao para enviar mensagem de alerta Umidade Normal
{chip.println ("AT + CMGF = 1"); întârziere (1000); chip.println ("AT + CMGS = \" "+ SeuNumero +" / "\ r"); întârziere (1000); String SMS = "Nu mai intru!"; chip.println (SMS); întârziere (100); chip.println ((char) 26); întârziere (1000); }
În codul prezentat mai jos, am declarat inițial biblioteca de comunicații seriale SoftwareSerial.h, așa cum se arată mai jos.
#include
După definirea bibliotecii, pinii de comunicare Tx și Rx au fost definiți. Acești pini sunt pini alternativi și sunt utilizați pentru a permite comunicații seriale pe alți pini Arduino. Biblioteca SoftwareSerial a fost dezvoltată pentru a vă permite să utilizați software-ul pentru a reproduce funcționalitatea
Software Cip serial (10, 11);
După aceasta, numărul de telefon mobil a fost declarat a fost afișat mai jos.
String SeuNumero = "+5585988004783";
Schema de proiectare electronică este simplă și ușor de asamblat. După cum puteți vedea pe circuit, placa compatibilă Arduino este responsabilă pentru citirea stării senzorului și apoi pentru trimiterea unui SMS proprietarului casei.
Mesajul va fi trimis dacă se detectează un intrus în casă. Senzorul PIR (Passive Infra Red) este un senzor folosit pentru a detecta mișcarea din semnalul infraroșu. Din semnalul trimis către Arduino, modulul SIM800L va trimite un mesaj utilizatorului.
Dioda va fi utilizată pentru a furniza o cădere de tensiune pentru alimentarea modulului SIM800L. Deoarece modulul nu poate fi alimentat cu 5V. În acest fel, va ajunge o tensiune de 4,3V pentru a alimenta modulul și pentru a vă asigura că acesta funcționează în siguranță.
Pasul 3: Funcția Void Setup ()
În funcția de configurare nulă, vom inițializa comunicarea serială și vom configura pinul senzorului ca intrare. Regiunea codului este prezentată mai jos.
configurare nulă ()
{
Serial.begin (9600); Serial.println ("Inicializando Sistema …"); întârziere (5000); chip.begin (9600); întârziere (1000); pinMode (senzor, INPUT); // Configura o Pino do Sensor como Entrada}
După cum se poate vedea, cele două comunicări seriale au fost inițializate. Serial.begin este folosit pentru a inițializa serialul nativ al Arduino, iar chip.begin este serialul emulat prin biblioteca SoftwareSerial. După aceasta, vom face funcția buclă nulă.
Pasul 4: Proiectul și funcția buclă vid
Acum, vom prezenta principala logică a programării în funcția de buclă de gol.
void loop () {// Le o valor do pino do sensor ValorAtual = digitalRead (senzor);
if (ValorAtual == 1 && ValorAnterior == 0)
{IntrudeAlert ();
ValorAnterior = 1;
}
if (ValorAtual == 0 && ValorAnterior == 1)
{NoMoreIntrude ();
ValorAnterior = 0;
}
}
În primul rând, semnalul de la senzorul de prezență PIR va fi citit așa cum se arată mai jos.
ValorAtual = digitalRead (senzor);
După aceasta, se va verifica dacă valoarea variabilei ValorAtual este 1 sau 0, așa cum se arată mai jos.
if (ValorAtual == 1 && ValorAnterior == 0) {IntrudeAlert ();
ValorAnterior = 1;
} if (ValorAtual == 0 && ValorAnterior == 0) {NoMoreIntrude ();
ValorAnterior = 0;
}
Dacă variabila ValorAtual este 1 și variabilele ValorAnterior este 0, senzorul este de fapt activat și anterior este dezactivat (ValorAnterior == 0). În acest fel, funcția va fi executată și utilizatorul va primi mesajul pe telefonul dvs. mobil. După aceasta, valoarea variabilei ValorAnterior va fi egală la 1.
În acest fel, variabila ValorAnterior va fi semnalizată că starea reală a senzorului este acționată.
Acum, în cazul în care valoarea variabilei ValorAtual este 0 și valoarea variabilei ValorAnterior este egală cu 0, senzorul nu detectează intrusul și apoi se acționează valoarea sa.
În acest fel, sistemul va trimite mesajul pentru telefonul mobil al utilizatorului și va actualiza valoarea reală a senzorului pentru 0. Această valoare va indica faptul că senzorul nu se acționează în acest moment.
Mesajele trimise pentru utilizator sunt prezentate mai sus.
Acum, vom învăța cum să funcționăm funcția pentru a trimite mesajele pentru telefonul mobil al utilizatorului.
Pasul 5: Funcții pentru a trimite mesaje
În acest sistem, există două funcții. Sunt funcții cu aceeași structură. Diferența dintre ele este numele și mesajul trimis, dar atunci când îl analizăm, vom vedea că sunt complet la fel.
În continuare, vom prezenta structura completă a funcțiilor și vom discuta despre cod.
void IntrudeAlert () // Funcao para enviar mensagem de alerta Umidade Baixa {chip.println ("AT + CMGF = 1"); întârziere (1000); chip.println ("AT + CMGS = \" "+ SeuNumero +" / "\ r"); întârziere (1000); String SMS = "Ușă deschisă!"; chip.println (SMS); întârziere (100); chip.println ((char) 26); întârziere (1000); }
void NoMoreIntrude () // Funcao para enviar mensagem de alerta Umidade Normal
{chip.println ("AT + CMGF = 1"); întârziere (1000); chip.println ("AT + CMGS = \" "+ SeuNumero +" / "\ r"); întârziere (1000); String SMS = "Ușă închisă!"; chip.println (SMS); întârziere (100); chip.println ((char) 26); întârziere (1000); }
Modulul SIM800L folosește comanda AT pentru a-și controla funcțiile. Prin urmare, prin aceste comenzi, vom trimite mesajul pentru telefonul mobil al utilizatorului.
AT + CGMF = 1 este utilizat pentru a configura modulul să funcționeze în modul SMS text. După întârziere, sistemul va trimite mesajul pentru utilizator prin următoarea comandă.
chip.println ("AT + CMGS = \" "+ SeuNumero +" / "\ r");
În comandă, modulul SIM800L va fi pregătit pentru a trimite un mesaj pentru numărul de telefon mobil înregistrat în șirul SeuNumero. După aceasta, sistemul va încărca mesajul în șir și va trimite pentru telefonul mobil al utilizatorului, așa cum se arată mai jos.
String SMS = "Ușă închisă!"; chip.println (SMS); întârziere (100); chip.println ((char) 26); întârziere (1000);
Caracterul (26) este utilizat pentru a semnaliza sfârșitul mesajului. Acest proces de lucru este similar pentru două funcții pentru a trimite un mesaj utilizatorului.
Mulțumiri
Acum, apreciem sprijinul JLCPCB pentru realizarea acestei lucrări și, dacă sunteți interesat, accesați următorul link și descărcați placa compatibilă Arduino.
Recomandat:
Sistem de securitate de casă care folosește senzorul Fusion: 5 pași
Sistem de securitate de casă care folosește senzorul Fusion: Ideea din spatele acestui proiect este de a crea un senzor de securitate ieftin și ușor de realizat, care să poată fi folosit pentru a vă alerta când cineva l-a trecut. Scopul inițial era să creez ceva care să mă poată anunța când cineva urca scările, dar și eu
Sistem de securitate ușă SMS utilizând GboardPro (GSM Cum Arduino Mega): 4 pași
Sistem de securitate a ușilor SMS care utilizează GboardPro (GSM Cum Arduino Mega): Acesta este un proiect DIY simplu, dar foarte util, de alertă de securitate la domiciliu. Am făcut acest proiect din cauza furtului din biroul meu
Sistem de securitate la domiciliu Arduino: 7 pași (cu imagini)
Sistem de securitate la domiciliu Arduino: Acesta este un sistem de securitate la domiciliu care utilizează Arduino Mega 2560, care va declanșa alarma atunci când se deschide orice ușă sau se detectează mișcare în cameră când sistemul este activat. Este un proiect frumos pentru oricine în ultimul an în universitate. îl puteți actualiza ev
Sistem de securitate Arduino PIR care utilizează claxonul auto: 7 pași (cu imagini)
Sistem de securitate PIR Arduino care utilizează claxonul auto: Bine, deci în acest proiect vom face o alarmă de hoț folosind un senzor PIR, Arduino, releu și un claxon auto
Sistem de securitate RFID (bazat pe Arduino): 6 pași (cu imagini)
Sistem de securitate RFID (bazat pe Arduino): un dispozitiv foarte frumos pe care să îl aveți chiar și în caseta dvs