This shows you the differences between two versions of the page.
pm:prj2025:ccristi:andrei.miga [2025/05/27 22:23] andrei.miga [Software Design] |
pm:prj2025:ccristi:andrei.miga [2025/05/28 00:39] (current) andrei.miga [Descriere generală] |
||
---|---|---|---|
Line 5: | Line 5: | ||
===== Descriere generală ===== | ===== Descriere generală ===== | ||
- | {{:pm:prj2025:ccristi:schema_bloc.png?400|}} | + | {{:pm:prj2025:ccristi:schema_bloc_2_pm.drawio.png?400|}} |
{{:pm:prj2025:ccristi:pm-kicad-schematic_1_.png?600|}} | {{:pm:prj2025:ccristi:pm-kicad-schematic_1_.png?600|}} | ||
+ | |||
+ | {{:pm:prj2025:ccristi:andrei_miga_poza_proiect_pm.jpg?400|}} | ||
Microcontroller-ul (Atmega328P, sub forma unui Arduino UNO R3) controleaza un releu care deblocheaza incuietoarea (alimentata direct de la 12V). Deblocarea este initiata in 2 cazuri: | Microcontroller-ul (Atmega328P, sub forma unui Arduino UNO R3) controleaza un releu care deblocheaza incuietoarea (alimentata direct de la 12V). Deblocarea este initiata in 2 cazuri: | ||
- | - Senzorul de amprenta (AS608) citeste o imagine care se potriveste (cu un nivel de incredere satisfacator) cu una dintre amprentele salvate | + | - Senzorul de amprenta (DY-50) citeste o imagine care se potriveste (cu un nivel de incredere satisfacator) cu una dintre amprentele salvate |
- Butonul de iesire este apasat | - Butonul de iesire este apasat | ||
La un anumit numar de incercari gresite (ex: 10) de deblocare intr-un interval suficient de scurt de timp (ex: 2 minute) se declanseaza alarma. | La un anumit numar de incercari gresite (ex: 10) de deblocare intr-un interval suficient de scurt de timp (ex: 2 minute) se declanseaza alarma. | ||
Line 17: | Line 19: | ||
- Arduino UNO R3 (Atmega328P) | - Arduino UNO R3 (Atmega328P) | ||
- | - Senzor de amprenta AS608 | + | - Senzor optic de amprenta |
- | - Releu (controlat 5V) | + | - MOSFET N-type |
- Yala electromagnetica 12V | - Yala electromagnetica 12V | ||
- Alimentator 12V 2A | - Alimentator 12V 2A | ||
- | - Alarma 12V | + | - Alarma |
- Buton | - Buton | ||
===== Software Design ===== | ===== Software Design ===== | ||
Line 28: | Line 30: | ||
Am folosit biblioteca [[https://github.com/adafruit/Adafruit-Fingerprint-Sensor-Library|Adafruit-Fingerprint-Sensor-Library]] pentru comunicarea cu senzorul de amprenta. | Am folosit biblioteca [[https://github.com/adafruit/Adafruit-Fingerprint-Sensor-Library|Adafruit-Fingerprint-Sensor-Library]] pentru comunicarea cu senzorul de amprenta. | ||
- | ===== Rezultate Obţinute ===== | ||
- | <note tip> | + | Comunicatia dintre senzorul de amprenta si Arduino se face prin UART, pentru care am folosit SoftwareSerial (cel hardware fiind folosit de USB). |
- | Care au fost rezultatele obţinute în urma realizării proiectului vostru. | + | |
- | </note> | + | |
- | ===== Concluzii ===== | + | **Functionalitati** |
+ | |||
+ | * Adaugare amprenta cu prelevarea a 2 imagini | ||
+ | * Eliminare amprenta/e | ||
+ | * Citire amprenta si deblocare yala | ||
+ | * Alarma la 10 incercari gresite consecutiv (fara a lua in calcul erorile de citire) | ||
+ | * Buton de iesire cu intrerupere | ||
+ | |||
+ | **Interfata** | ||
+ | |||
+ | * Adaugarea si eliminarea de amprente se face de catre un operator autorizat | ||
+ | * Nu orice persoana autorizata sa intre poate adauga amprente | ||
+ | * Comunicatia se face prin USB, intre PC si Arduino | ||
+ | * Exista 3 comenzi: **add_fingerprint <id>**, **delete_all_fingerprints** si **delete_fingerprint <id>**. | ||
+ | ===== Rezultate Obţinute ===== | ||
+ | |||
+ | Proiectul a fost terminat cu toate functionalitatile propuse: | ||
+ | * Deblocare yala prin amprenta sau buton | ||
+ | * Adaugare/eliminare amprente | ||
+ | * Alarma la prea multe amprente gresite consecutiv | ||
===== Download ===== | ===== Download ===== | ||
- | <note warning> | + | Repository: [[https://github.com/AndreiMiga77/PM-project|GitHub]] |
- | 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**. | + | Prezentare: [[https://youtu.be/-uAyzJ3bYQs|YouTube]] |
- | </note> | + | |
===== Jurnal ===== | ===== Jurnal ===== | ||
- | <note tip> | + | {{:pm:prj2025:ccristi:andrei_miga_gantt.png?600|}} |
- | Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului. | + | |
- | </note> | + | |
+ | * Saptamana 1: Cumparat componente si creat design hardware | ||
+ | * Saptamana 2: Implementare hardware | ||
+ | * Saptamana 3: Implementare software + bugfixing si testare | ||
===== Bibliografie/Resurse ===== | ===== Bibliografie/Resurse ===== | ||
- | <note> | + | [[https://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-7810-Automotive-Microcontrollers-ATmega328P_Datasheet.pdf|Atmega328P Datasheet]] |
- | Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**. | + | |
- | </note> | + | |
- | + | ||
- | <html><a class="media mediafile mf_pdf" href="?do=export_pdf">Export to PDF</a></html> | + | |