Differences

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

Link to this comparison view

pm:prj2025:ajipa:claudiu.stefan [2025/05/24 19:28]
claudiu.stefan1702 [Software Design]
pm:prj2025:ajipa:claudiu.stefan [2025/05/24 21:39] (current)
claudiu.stefan1702 [Bibliografie/Resurse]
Line 112: Line 112:
   * daca seiful este **deblocat** si senzorul de distanta detecteaza un obstacol usa se va deschide automat   * daca seiful este **deblocat** si senzorul de distanta detecteaza un obstacol usa se va deschide automat
  
-**Calibrari**:​ +Codul este creat individual pe placuta ​si verifica daca codul introdus este egal cu codul generat, astfel ca aplicatia ​si placuta lucreaza independent una de alta. Ambele folosesc algoritmul TOTP cu aceeasi cheie secreta si se poate garanta ​ca vor genera acelasi cod. Modulul RTC retine data si ora exacta, astfel se asigura faptul ca cele doua coduri sunt sincronizate (daca modulul ar retine ora cu 3 secunde in urma, atunci codul va fi actualizat cu 3 secunde intarziere, de unde rezulta importanta sincronizarii la secunda).
-  * senzorul de distanta ​este setat sa detecteze la o distanta mica pentru a evita situatia ca senzorul sa detecteze ceva prea indepartat ​si sa deschida usa fara a dori acest lucru +
-  * modulul RTC trebuie calibrat ​cu data si ora exacte dupa ce acesta pierde alimentarea ​de la curent (exista functia ajutatoare setRTC pentru a facilita acest lucru) +
-  * a fost introdus un delay intre activarea motoraselor pentru a nu se suprapune actiunea acestora (ex: al doilea motor sa deschida usa inainte ​ca primul motor sa inlature incuietoarea) +
-  * la pornirea placutei incuietoarea este ridicata, usa adusa in pozitia de "​inchis" ​si incuietoarea este lasata jos pentru a asigura faptul ca seiful porneste ca fiind incuiat+
  
-**Optimizari**:​ 
-  *  
 Repartizare pini: Repartizare pini:
 <​code>​ <​code>​
Line 140: Line 134:
 DDRD &= ~(1 << IR_SENSOR_PIN); ​     // Set as input DDRD &= ~(1 << IR_SENSOR_PIN); ​     // Set as input
 PORTD |= (1 << IR_SENSOR_PIN); ​     // Enable pull-up resistor PORTD |= (1 << IR_SENSOR_PIN); ​     // Enable pull-up resistor
 +
 +start_led(RED_LED);​ // acest apel executa aceasta linie PORTB |= (1 << PB4);
 </​code>​ </​code>​
  
Line 181: Line 177:
 Serial.begin(9600);​ Serial.begin(9600);​
 </​code>​ </​code>​
 +
 +Serialul este folosit in principal pentru debug si afisarea erorilor.
  
 Pentru a asigura ca motorasele se misca lin si la o viteza rezonabila a fost folosita urmatoarea functie pentru a schimba gradual unghiul la care sa se miste motorasul: Pentru a asigura ca motorasele se misca lin si la o viteza rezonabila a fost folosita urmatoarea functie pentru a schimba gradual unghiul la care sa se miste motorasul:
Line 201: Line 199:
 } }
 </​code>​ </​code>​
 +
 +**Calibrari**:​
 +  * senzorul de distanta este setat sa detecteze la o distanta mica pentru a evita situatia ca senzorul sa detecteze ceva prea indepartat si sa deschida usa fara a dori acest lucru
 +  * modulul RTC trebuie calibrat cu data si ora exacte dupa ce acesta pierde alimentarea de la curent (exista functia ajutatoare setRTC pentru a facilita acest lucru)
 +  * a fost introdus un delay intre activarea motoraselor pentru a nu se suprapune actiunea acestora (ex: al doilea motor sa deschida usa inainte ca primul motor sa inlature incuietoarea)
 +  * la pornirea placutei incuietoarea este ridicata, usa adusa in pozitia de "​inchis"​ si incuietoarea este lasata jos pentru a asigura faptul ca seiful porneste ca fiind incuiat
 +
 ===== Rezultate Obţinute ===== ===== Rezultate Obţinute =====
  
-<note tip+Ca rezultat am obtinut un seif cu deschidere/​inchidere automata si cu un nivel de securitate marit datorita codului temporar (acesta fiind aproape imposibil de ghicit - probabilitate 1 la un milion). In acelasi timp, acesta este foarte usor de folosit, deoarece codul se afla permanent pe telefon si poate fi adaugatfoarte usor, doar scanand codul QR. 
-Care au fost rezultatele obţinute în urma realizării proiectului vostru+ 
-</note>+<html
 +<iframe width="​800"​ height="​450"​ 
 +        src="​https://​youtube.com//​embed/​5Rv_Cynij14"​ 
 +        frameborder="​0"​ 
 +        allow="​autoplay;​ encrypted-media"​ 
 +        allowfullscreen>​ 
 +</​iframe>​ 
 +</html>
  
 ===== Concluzii ===== ===== Concluzii =====
  
 +Proiectul a indeplinit asteptarile initiale si se comporta cum ar trebui. Implementarea software a fost relativ simpla, partea dificila fiind conectarea tuturor componentelor si functionarea simultana a acestora. Totodata proiectul a aratat ca se poate face ceva util si interesant folosind o placuta Arduino si niste componente. ​
 ===== Download ===== ===== Download =====
  
Line 225: Line 238:
 ===== Bibliografie/​Resurse ===== ===== Bibliografie/​Resurse =====
  
-<​note>​ +[[https://​github.com/​s1koO/​2FA-Vault/​tree/main|Github]]
-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>​ <​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​
  
pm/prj2025/ajipa/claudiu.stefan.1748104087.txt.gz · Last modified: 2025/05/24 19:28 by claudiu.stefan1702
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