This shows you the differences between two versions of the page.
pm:prj2024:avaduva:darius.barbusi [2024/05/26 06:32] darius.barbusi [Download] |
pm:prj2024:avaduva:darius.barbusi [2024/05/26 21:25] (current) darius.barbusi [Scheletul proiectului, interacțiunea dintre funcționalități și validare] |
||
---|---|---|---|
Line 240: | Line 240: | ||
Proiectul este structurat în mai multe module care colaborează pentru a asigura funcționarea corectă și eficientă a proiectului. Aceste module includ citirea bancnotelor, actualizarea sumei, securitatea prin cod PIN, sistemul de alarmă și gestionarea servomotoarelor. | Proiectul este structurat în mai multe module care colaborează pentru a asigura funcționarea corectă și eficientă a proiectului. Aceste module includ citirea bancnotelor, actualizarea sumei, securitatea prin cod PIN, sistemul de alarmă și gestionarea servomotoarelor. | ||
+ | |||
+ | **1. Declarația și inițializarea componentelor:** | ||
+ | |||
+ | -Placa de dezvoltare Arduino Uno controlează toate componentele și gestionează logica de funcționare a sistemului | ||
+ | -Senzorul de culoare TCS230 detectează culorile bancnotelor | ||
+ | -LCD I2C afișează suma totală acumulată și alte mesaje de stare pentru utilizator | ||
+ | -Buzzer-ul emite semnale sonore pentru a indica diferite acțiuni și alarme | ||
+ | -LED-urile (roșu și verde) indică vizual starea sistemului | ||
+ | -Servomotoarele mută bancnotele în zona de depozitare și oferă acces la bani | ||
+ | -Tastatura numerică permite introducerea codului PIN pentru accesul la bani | ||
+ | |||
+ | **2. Configurarea componentelor in setup:** | ||
+ | |||
+ | -Inițializarea și setarea servomotoarelor, senzorului de culoare, LCD-ului, buzzer-ului, LED-urilor și butoanelor | ||
+ | -Setarea pozițiilor inițiale pentru servomotoare și configurarea pinilor de intrare și ieșire pentru componentele hardware | ||
+ | |||
+ | **3. Loop-ul principal:** | ||
+ | |||
+ | -Verificarea stării alarmei și gestionarea activării/dezactivării acesteia | ||
+ | -Gestionarea introducerii codului PIN și verificarea corectitudinii acestuia pentru accesul la fonduri | ||
+ | -Monitorizarea stării butoanelor pentru inițierea procesului de scanare a bancnotelor sau resetarea sistemului | ||
+ | -Actualizarea servomotoarelor pentru mișcarea bancnotelor și resetarea sistemului după accesarea fondurilor | ||
+ | |||
+ | **4. Funcții pentru gestionarea componentelor:** | ||
+ | |||
+ | -scanBill(): Activează senzorul de culoare pentru a scana bancnota introdusă | ||
+ | -resetSystem(): Activează procesul de resetare a sistemului | ||
+ | -getColors(): Obțin frecvențele culorilor roșu, verde și albastru ale bancnotei scanate | ||
+ | -check_money_type(): Determină tipul bancnotei pe baza frecvențelor culorilor detectate | ||
+ | -playTone(int frequency, int duration): Redă un ton la buzzer pentru notificări sonore | ||
+ | -activateAlarm(): Activează alarma în cazul introducerii incorecte a PIN-ului de trei ori | ||
+ | |||
+ | **5. Verificarea si actualizarea sumei:** | ||
+ | |||
+ | -Frecvențele culorilor sunt măsurate și comparate cu intervalele predefinite pentru a determina valoarea bancnotei | ||
+ | -Suma totală este actualizată și afișată pe LCD, iar bancnota este mutată în zona de depozitare folosind servomotorul | ||
+ | |||
+ | |||
+ | **6. Securitate:** | ||
+ | |||
+ | -Sistemul este protejat de un cod PIN pentru accesul la bani | ||
+ | -Dacă PIN-ul este introdus incorect de trei ori consecutiv, sistemul de alarmă se activează, emițând un semnal sonor și aprinzând LED-urile roșu și verde | ||
** Interacțiunea Dintre Funcționalități ** | ** Interacțiunea Dintre Funcționalități ** | ||
Line 328: | Line 370: | ||
**DEMO** cu prezentarea tuturor functionalitatilor in arhiva: | **DEMO** cu prezentarea tuturor functionalitatilor in arhiva: | ||
- | {{:pm:prj2024:avaduva:proiect_pm_barbusidarius.zip|}} | + | {{:pm:prj2024:avaduva:proiect_pm_barbusi_darius_final.zip|}} |
===== Bibliografie/Resurse ===== | ===== Bibliografie/Resurse ===== | ||