Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pm:prj2023:dene:sistemdealarma [2023/05/29 16:52]
ana_maria.suiu [Software Design]
pm:prj2023:dene:sistemdealarma [2023/05/30 14:21] (current)
ana_maria.suiu [Concluzii]
Line 8: Line 8:
 ===== Introducere ===== ===== Introducere =====
  
-Proiectul consta in implementarea unui sistem de alarma care detecteaza prezenta unui obiect ​strain ​cu ajutorul unor senzori de distanta si de miscare. ​+Proiectul consta in implementarea unui sistem de alarma care detecteaza prezenta ​unei persoane/ ​unui obiect cu ajutorul unor senzori de distanta si de miscare
 +Astfel, cel care este conectat prin wifi la sistem va fi instiintat daca s-a detectat o prezenta in apropiere prin culorile date de led, prin  
 +pornirea unui alarme si prin primirea unul email.
  
-Acesta functioneaza dupa urmatoarea logica : cand este detectata miscarea unui obiect si este determinata distanta acestuia fata de sistem trebuie sa vedem in ce interval se claseaza distanta respectiva. In intervalul [3m, 5m] se coloreaza +Scopul proiectului este de a monitoriza prezenta altor obiecte/ persoane ​straine asupra unui bun, pentru a-l putea tine in siguranta.
-ledul in galben. In intervalul [1m, 3m] ledul se coloreaza in portocaliu, iar persoana conectata la sistem va primi un mesaj pe telefon. In intervalul [5cm, 1m] ledul se coloreaza in rosu si este activata o alarma cu ajutorul unui buzzer. In tot acest timp pe ecranul LCD va fi afisata distanta +
-fata de obiect. Daca nu este detectata prezenta vreunui obiect, pe ecran este afisata un mesaj "In siguranta"​ iar ledul are culoarea verde. +
- +
-Scopul proiectului este de a monitoriza prezenta altor obiecte straine asupra unui bun, pentru a-l putea tine in siguranta.+
  
 ===== Descriere generală ===== ===== Descriere generală =====
 +
 +Sistemul functioneaza dupa urmatoarea logica : cand este detectata miscarea unei persoane, este determinata distanta acestuia fata de sistem. Urmeaza sa vedem in ce interval se claseaza distanta respectiva. La o distanta mai mare de 75cm 
 +ledul ramane verde. In intervalul [50cm, 75cm] ledul se coloreaza in albastru. In intervalul [25cm, 50cm] ledul se coloreaza in galben si este activata o alarma cu ajutorul unui buzzer. In intervalul [0 cm, 25cm] ledul se coloreaza in rosu, este 
 +activata o alarma cu ajutorul buzzerului si persoana conectata la sistem va primi un email. In tot acest timp pe ecranul LCD va fi afisata distanta
 +fata de obiect. Daca nu este detectata prezenta vreunui obiect, pe ecran este afisata un mesaj "Nu s-a detectat miscare!"​ iar ledul are culoarea verde.
 +
 +Schema bloc :
 +
 {{:​pm:​prj2023:​dene:​blank_diagram_1_.png?​nolink&​800|}} {{:​pm:​prj2023:​dene:​blank_diagram_1_.png?​nolink&​800|}}
  
Line 30: Line 36:
    ​* ​ Modul LCD 1602    ​* ​ Modul LCD 1602
    ​* ​ Modul I2C PCF8574T    ​* ​ Modul I2C PCF8574T
-   ​* ​ Modul WI-FI ESP2866+   ​* ​ Modul WI-FI ESP8266
    * Rezistente    * Rezistente
    * Fire    * Fire
 +   * Cutie, culori, benzi colorate pentru design :-D
  
 Schema eletrica : Schema eletrica :
Line 54: Line 61:
 La inceputul programului includ bibliotecile necesare pentru utilizarea anumitor componente, acestea fiind “WiFiEsp.h”,​ “SoftwareSerial.h”,​ La inceputul programului includ bibliotecile necesare pentru utilizarea anumitor componente, acestea fiind “WiFiEsp.h”,​ “SoftwareSerial.h”,​
 “LiquidCrystal_I2C.h” si creez cate un obiect pentru fiecare bibiloteca. Pentru serial1 apelez folosindu-ma de pinii RX si Tx pentru a configura “LiquidCrystal_I2C.h” si creez cate un obiect pentru fiecare bibiloteca. Pentru serial1 apelez folosindu-ma de pinii RX si Tx pentru a configura
-comunicarea seriala pentru modulul wifi. Realizez initializari pentru modului wifi, incluzand numele retelei la care ca conectez prin wifi, parola,+comunicarea seriala pentru modulul wifi. Realizez initializari pentru modului wifi, incluzand numele retelei la care ma conectez prin wifi, parola,
 statusul conectarii la retea, numele serverului unde o sa trimit o cerere pentru a primi un email de alerta. statusul conectarii la retea, numele serverului unde o sa trimit o cerere pentru a primi un email de alerta.
  
Line 91: Line 98:
 makeHttpRequest():​ makeHttpRequest():​
 Incerc sa ma conectez la serverul ifttt pe portul 80. Daca conectare functioneaza,​ afisez mesaj pe seriala si fac o cerere HTTP de tip POST prin Incerc sa ma conectez la serverul ifttt pe portul 80. Daca conectare functioneaza,​ afisez mesaj pe seriala si fac o cerere HTTP de tip POST prin
-intermediul careia imi va trimite un email de alerta ​ca s-a detectat un obiect la mai putin de 25cm fata de sistem.+intermediul careia imi va trimite un email de alerta ​care ma anunta ​s-a detectat un obiect la mai putin de 25cm fata de sistem.
  
 toggleLed():​ toggleLed():​
 In functie de intervalul in care se afla distanta perceputa fata de obiect, fac urmatoarele actiuni astfel: In functie de intervalul in care se afla distanta perceputa fata de obiect, fac urmatoarele actiuni astfel:
-> 75 cm -> ledul ramane verde+[75cm, ..] -> ledul ramane verde 
 [50cm, 75cm] -> ledul se coloreaza in albastru [50cm, 75cm] -> ledul se coloreaza in albastru
-[25cm, 50cm] -> ledul se coloreaza in portocaliu si este apelata functia soundOn() care porneste buzzerul 
-[0,25cm] -> led-ul se coloreaza in rosu si este apelata functia soundOn() care porneste buzzerul (si voi primi si email datorita codului din loop) 
  
 +[25cm, 50cm] -> ledul se coloreaza in galben si este apelata functia soundOn() care porneste buzzerul
  
 +[0,25cm] -> led-ul se coloreaza in rosu si este apelata functia soundOn() care porneste buzzerul (si voi primi si email datorita codului din loop)
  
 +printDistance():​
 +Setez cursorul la inceputul primei linii(0,0) si printez pe acesta "​MISCARE DETECTATA!"​. Setez cursorul la inceputul celei de-a doua linii(1,1) si
 +si afisez distanta perceputa fata de obiect.
  
 +printMessage():​
 +Setez cursorul la inceputul primei linii(0,0) si printez pe acesta "Nu s-a detectat"​. Setez cursorul la inceputul celei de-a doua linii(1,1) si
 +si afisez " ​  ​miscare! ".
  
 +soundOn():
 +Ma folosesc de functia Tone pentru a seta diferite frecvente pentru a produce un sunet de alarma pe buzzer. Opresc sunetul folosind functia noTone.
 +
 +<​note>​
 +Pentru a transforma din timpul masurat de senzorul ultrasonic in distanta am folosit formula : distance = timeUltrasonic * 0.0343 / 2;
 +</​note>​
  
 ===== Rezultate Obţinute ===== ===== Rezultate Obţinute =====
 +{{:​pm:​prj2023:​dene:​suiu_ana_poza1.jpg?​nolink&​700|}}
  
 +{{:​pm:​prj2023:​dene:​suiu_ana_poza2.jpg?​nolink&​700|}}
  
 +{{:​pm:​prj2023:​dene:​suiu_ana_poza3.jpg?​nolink&​700|}}
 +
 +{{:​pm:​prj2023:​dene:​suiu_ana_poza4.jpg?​nolink&​700|}}
 +
 +Ulterior, am realizat si acest suport pentru a putea tine senzorii aproape unul de altul si pentru a avea un design mai frumos. 8-)
 +
 +{{:​pm:​prj2023:​dene:​suiu_ana_poza5.jpg?​nolink&​700|}}
 +
 +Demo proiect :
 +https://​www.youtube.com/​watch?​v=3XNbpsHQOhQ&​ab_channel=Ana%C8%98uiu
 ===== Concluzii ===== ===== Concluzii =====
  
 +Per total a fost un proiect interesant si destul de reusit, pot spune ca am invatat destul de multe lucrand la aceasta. Cea mai grea parte a fost lucrul cu modulul wifi deoarece nu il mai folosisem pana acum si mi-a luat ceva timp pana sa-mi dau seama cum functioneaza. Si in plus
 +nu mergea intotdeauna conectarea la wifi si conectarea la server pentru a primi email.:-(
 ===== Download ===== ===== Download =====
  
 +{{:​pm:​prj2023:​dene:​sistem_de_alarma.zip|}}
 ===== Jurnal ===== ===== Jurnal =====
    
-25.04.2023 : Alegere tema documentatie+25.04.2023 : Alegere tema proiectului
  
 1.05 - 5.05.2023 : Am ales ce piese folosesc si am decis logica implementarii 1.05 - 5.05.2023 : Am ales ce piese folosesc si am decis logica implementarii
Line 130: Line 164:
  
  
 +https://​github.com/​bportaluri/​WiFiEsp/​tree/​master/​examples/​WebClient
 +
 +https://​docs.arduino.cc/​learn/​built-in-libraries/​software-serial
 +
 +https://​www.elementzonline.com/​blog/​ultrasonic-sensor-hc-sr04-with-arduino
  
 <​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​ <​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​
pm/prj2023/dene/sistemdealarma.1685368363.txt.gz · Last modified: 2023/05/29 16:52 by ana_maria.suiu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0