This shows you the differences between two versions of the page.
pm:prj2024:avaduva:matei.costescu2301 [2024/05/26 03:24] matei.costescu2301 [Software Design] |
pm:prj2024:avaduva:matei.costescu2301 [2024/05/26 22:57] (current) matei.costescu2301 [Download] |
||
---|---|---|---|
Line 72: | Line 72: | ||
- | **Poze cu circuitul final** | + | **Poze cu circuitul** |
{{:pm:prj2024:avaduva:security_alarm_1.jpeg?400|}} | {{:pm:prj2024:avaduva:security_alarm_1.jpeg?400|}} | ||
Line 92: | Line 92: | ||
{{:pm:prj2024:avaduva:security_alarm_5.jpeg?400|}} | {{:pm:prj2024:avaduva:security_alarm_5.jpeg?400|}} | ||
- | ===== Software Design ===== | + | Proiect în varianta finală: |
+ | {{:pm:prj2024:avaduva:whatsapp_image_2024-05-26_at_05.20.54_2_.jpeg?400|}} | ||
+ | |||
+ | {{:pm:prj2024:avaduva:whatsapp_image_2024-05-26_at_05.20.54_1_.jpeg?400|}} | ||
+ | |||
+ | |||
+ | **Demo produs final** | ||
+ | [[https://youtu.be/gYy21E4mtyc | Proiect PM]] | ||
+ | |||
+ | ===== Software Design ===== | ||
- | <note tip> | ||
- | Descrierea codului aplicaţiei (firmware): | ||
- | * mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR) | ||
- | * librării şi surse 3rd-party (e.g. Procyon AVRlib) | ||
- | * algoritmi şi structuri pe care plănuiţi să le implementaţi | ||
- | * (etapa 3) surse şi funcţii implementate | ||
- | </note> | ||
**Mediu de dezvoltare** | **Mediu de dezvoltare** | ||
Line 223: | Line 225: | ||
Aceste funcționalități și structura codului permit monitorizarea și afișarea stării de siguranță sau pericol în funcție de senzorii PIR, activând buzzerul și afișând mesajele corespunzătoare pe LCD. | Aceste funcționalități și structura codului permit monitorizarea și afișarea stării de siguranță sau pericol în funcție de senzorii PIR, activând buzzerul și afișând mesajele corespunzătoare pe LCD. | ||
+ | |||
+ | |||
+ | **Reprezentare logică prin diagrama UML** | ||
+ | |||
+ | {{:pm:prj2024:avaduva:diagrama_uml.drawio.png?600|}} | ||
===== Rezultate Obţinute ===== | ===== Rezultate Obţinute ===== | ||
<note tip> | <note tip> | ||
- | Care au fost rezultatele obţinute în urma realizării proiectului vostru. | + | **În urma realizării acestui proiect, am obținut următoarele rezultate:** |
- | </note> | + | |
- | ===== Concluzii ===== | + | * Monitorizarea eficientă a mișcării: |
- | ===== Download ===== | + | Sistemul a reușit să detecteze cu succes mișcările folosind senzorii PIR plasați în două locații diferite. Atunci când a fost detectată mișcare în oricare dintre cele două camere, sistemul a afișat mesajul corespunzător pe ecranul LCD și a activat buzzerul pentru a emite un semnal sonor de avertizare. |
- | <note warning> | + | * Afișaj LCD intuitiv și informativ: |
- | O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului: surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-). | + | |
- | Fişierele se încarcă pe wiki folosind facilitatea **Add Images or other files**. Namespace-ul în care se încarcă fişierele este de tipul **:pm:prj20??:c?** sau **:pm:prj20??:c?:nume_student** (dacă este cazul). **Exemplu:** Dumitru Alin, 331CC -> **:pm:prj2009:cc:dumitru_alin**. | + | Ecranul LCD a fost utilizat eficient pentru a afișa starea de siguranță ("You are safe!") și pentru a emite mesaje de avertizare clare în cazul detectării mișcării, specificând camera de unde provine alerta. Mesajele au fost ușor de citit și au oferit informații în timp real. |
- | </note> | + | |
- | ===== Jurnal ===== | + | * Interfață de comunicare prin Bluetooth: |
- | <note tip> | + | Comunicarea bidirecțională prin modulul Bluetooth HM10 a funcționat corespunzător. Sistemul a putut primi comenzi de la o aplicație de pe telefon pentru a activa sau dezactiva alarma. De asemenea, sistemul a trimis date relevante către aplicație, asigurând o monitorizare și control de la distanță eficiente. |
- | Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului. | + | |
+ | * Măsurarea distanței cu senzorul ultrasonic: | ||
+ | |||
+ | Senzorul ultrasonic a măsurat constant distanța până la un obiect aflat în fața sa, afișând această informație pe consola serială. Aceasta poate fi utilizată pentru monitorizarea deschiderii ușii sau a oamenilor care . | ||
+ | |||
+ | * Răspuns prompt la situații de pericol: | ||
+ | |||
+ | Sistemul a fost capabil să reacționeze rapid la detectarea mișcării prin activarea imediată a buzzerului și a LED-ului, oferind o alertă vizuală și auditivă. Această promptitudine este esențială pentru sistemele de securitate și monitorizare. | ||
+ | |||
+ | * Stabilitatea și Fiabilitatea Sistemului: | ||
+ | |||
+ | Pe durata testelor, sistemul a demonstrat stabilitate și fiabilitate în funcționare. Toate componentele hardware și software au funcționat armonios, fără întârzieri semnificative sau erori. | ||
</note> | </note> | ||
+ | |||
+ | |||
+ | **Optimizări** | ||
+ | |||
+ | În urma realizării proiectului, am implementat câteva optimizări pentru a îmbunătăți performanța și eficiența sistemului. | ||
+ | |||
+ | * Gestionarea Eficientă a Senzorilor PIR | ||
+ | Am redus frecvența citirilor de la senzorii PIR prin utilizarea lor doar atunci când alarma este activată, deoarece citirea constantă a senzorilor PIR poate genera alarme false și poate consuma resurse inutile. În funcția loop(), citirea senzorilor PIR este realizată doar în timpul activării alarmei, reducând astfel încărcarea procesorului. | ||
+ | |||
+ | * Optimizarea Afișajului LCD | ||
+ | |||
+ | Am optimizat utilizarea funcțiilor LCD pentru a reduce numărul de comenzi trimise la afișaj. În loc să folosim lcd.clear() de fiecare dată, am utilizat funcții specifice pentru actualizarea doar a secțiunilor necesare ale afișajului. | ||
+ | Afișajele LCD I2C pot fi lente și consumatoare de resurse dacă sunt utilizate ineficient. | ||
+ | Am utilizat funcțiile LCD doar în blocurile refresh(), pericol(), pericol_cam2(), și pericol_both(), astfel am minimizat utilizarea funcției lcd.clear() pentru a evita timpii de răspuns mari. | ||
+ | ===== Concluzii ===== | ||
+ | Proiectul a atins obiectivele propuse, oferind un sistem de monitorizare și alertare eficient, ușor de utilizat și de înțeles. Implementarea senzorilor PIR, a senzorului de proximitate, a modulului Bluetooth și a afișajului LCD a permis realizarea unui sistem integrat care poate fi utilizat pentru a asigura securitatea într-o varietate de scenarii. Fiabilitatea și reacția promptă a sistemului demonstrează potențialul acestuia pentru aplicații practice în domeniul securității și monitorizării. | ||
+ | ===== Download ===== | ||
+ | |||
+ | {{:pm:prj2024:avaduva:sketch_may15a.zip|}} | ||
+ | |||
+ | |||
===== Bibliografie/Resurse ===== | ===== Bibliografie/Resurse ===== |