This shows you the differences between two versions of the page.
pm:prj2025:ccristi:andreea.traistaru03 [2025/05/27 20:42] andreea.traistaru03 [Download] |
pm:prj2025:ccristi:andreea.traistaru03 [2025/05/27 22:42] (current) andreea.traistaru03 [Rezultate Obţinute] |
||
---|---|---|---|
Line 51: | Line 51: | ||
- | <note tip> | + | <note tip> Link GitHub: https://github.com/TraistaruAndreea/Proiect_PM |
- | Link github: https://github.com/TraistaruAndreea/Proiect_PM | + | |
+ | Firmware-ul este scris in limbajul C++ folosind extensia Arduino C pentru platforma AVR. Aplicatia este impartita in mai multe componente logice: | ||
- | Firmware-ul este scris în limbajul C++ folosind extensia Arduino C pentru platforma AVR. Aplicatia este impartita in mai multe componente logice: | ||
* Initializare hardware (pini, PWM pentru contrast, UART pentru Bluetooth, LCD). | * Initializare hardware (pini, PWM pentru contrast, UART pentru Bluetooth, LCD). | ||
+ | |||
* Rutine de citire pentru buton cu debounce si senzor PIR. | * Rutine de citire pentru buton cu debounce si senzor PIR. | ||
+ | |||
* Controlul LED-urilor in functie de senzor si comenzi. | * Controlul LED-urilor in functie de senzor si comenzi. | ||
+ | |||
* Interfata cu utilizatorul prin LCD si Bluetooth UART. | * Interfata cu utilizatorul prin LCD si Bluetooth UART. | ||
+ | |||
* Logare a evenimentelor de miscare prin Bluetooth. | * Logare a evenimentelor de miscare prin Bluetooth. | ||
- | </note> | ||
**Mediu de dezvoltare:** | **Mediu de dezvoltare:** | ||
* Platforma utilizata: Arduino IDE | * Platforma utilizata: Arduino IDE | ||
Line 69: | Line 72: | ||
**Algoritmi si structuri implementate:** | **Algoritmi si structuri implementate:** | ||
* Debounce software pentru buton, cu verificare temporala pentru a preveni declansari multiple false. | * Debounce software pentru buton, cu verificare temporala pentru a preveni declansari multiple false. | ||
- | * Comunicare UART (Bluetooth): Trimitere si receptie caractere pentru control de la distanta. | + | * Comunicare UART (Bluetooth): trimitere si receptie caractere pentru control de la distanta. |
- | * Actualizare LCD inteligenta: Verificare daca textul este diferit inainte de a rescrie liniile, pentru a reduce flickerul. | + | * Actualizare LCD inteligenta: verifica daca textul este diferit inainte de a rescrie liniile, pentru a reduce flicker-ul. |
- | * PWM software pentru contrast LCD: Configurarea Timer2 pentru a controla contrastul cu semnal PWM. | + | * Control LED-uri pe baza senzorului PIR: LED-ul se aprinde doar daca se detecteaza miscare si se respecta selectia (rosu sau verde). |
- | * Control LED-uri pe baza senzorului PIR: LED-ul se aprinde doar daca se detecteaza miscare si se respecta selecția (roșu sau verde). | + | |
* Bufferizare si formatare text pentru trimiterea datelor prin Bluetooth (sprintf in printBuffer). | * Bufferizare si formatare text pentru trimiterea datelor prin Bluetooth (sprintf in printBuffer). | ||
* Protectie intreruperi (cli() / sei()) la actualizarea mesajelor pe LCD, pentru consistenta. | * Protectie intreruperi (cli() / sei()) la actualizarea mesajelor pe LCD, pentru consistenta. | ||
+ | </note> | ||
===== Rezultate Obţinute ===== | ===== Rezultate Obţinute ===== | ||
<note tip> | <note tip> | ||
- | DEMO: https://drive.google.com/drive/my-drive?dmr=1&ec=wgc-drive-globalnav-goto | + | DEMO: https://drive.google.com/file/d/1_f0R-Ac0D2NqhR1YbWh6enbfPSf868oR/view?usp=sharing |
Sistemul utilizeaza un senzor PIR pentru a detecta miscarea. | Sistemul utilizeaza un senzor PIR pentru a detecta miscarea. |