This shows you the differences between two versions of the page.
pm:prj2025:ccristi:levent.amet [2025/05/27 08:05] levent.amet |
pm:prj2025:ccristi:levent.amet [2025/05/27 10:16] (current) levent.amet |
||
---|---|---|---|
Line 25: | Line 25: | ||
===== Hardware Design ===== | ===== Hardware Design ===== | ||
- | |||
- | <note tip> | ||
- | Aici puneți tot ce ține de hardware design: | ||
- | * listă de piese | ||
- | * scheme electrice (se pot lua și de pe Internet și din datasheet-uri, e.g. http://www.captain.at/electronic-atmega16-mmc-schematic.png) | ||
- | * diagrame de semnal | ||
- | * rezultatele simulării | ||
- | </note> | ||
**Listă de componente** | **Listă de componente** | ||
Line 52: | Line 44: | ||
**Poze proiect hardware** | **Poze proiect hardware** | ||
- | {{:pm:prj2025:ccristi:la_poza1.jpeg?400}} | ||
- | {{:pm:prj2025:ccristi:la_poza2.jpeg?400}} | ||
- | {{:pm:prj2025:ccristi:la_poza3.jpeg?400}} | + | {{:pm:prj2025:ccristi:la_poza1hard.jpeg?750}} |
+ | {{:pm:prj2025:ccristi:la_poza2hard.jpeg?750}} | ||
===== Software Design ===== | ===== Software Design ===== | ||
Line 71: | Line 62: | ||
* executia propriu zisa a codului | * executia propriu zisa a codului | ||
- | Etapa 1: | + | **Etapa 1:** |
Sunt definite variabilele globale(ex: password) care ajuta la gestionarea logicii de securitate a usii, dar si functii ajutatoare playTone(pentru folosirea buzzer-ului), * delayMicroseconds_custom (pentru a se evita functile de delay clasice, functia custom citeste un timer). | Sunt definite variabilele globale(ex: password) care ajuta la gestionarea logicii de securitate a usii, dar si functii ajutatoare playTone(pentru folosirea buzzer-ului), * delayMicroseconds_custom (pentru a se evita functile de delay clasice, functia custom citeste un timer). | ||
Sunt implementate si functiile: | Sunt implementate si functiile: | ||
Line 80: | Line 71: | ||
Sunt definite perifericele utilizate: buzzer-ul, butonul, tastatura matriceala 4x4, LCD-I2C, servomotoarele, senzorul HC-SR04. | Sunt definite perifericele utilizate: buzzer-ul, butonul, tastatura matriceala 4x4, LCD-I2C, servomotoarele, senzorul HC-SR04. | ||
Din cauza faptului ca senzorul HC-SR04 si buzzer-ul folosesc generic acelas timer, a fost nevoie de setarea a 2 timere diferite, cate unul pentru fiecare dispozitiv. | Din cauza faptului ca senzorul HC-SR04 si buzzer-ul folosesc generic acelas timer, a fost nevoie de setarea a 2 timere diferite, cate unul pentru fiecare dispozitiv. | ||
+ | Sunt implementate si intreruperile pentru buton, senzorul HC-SR04 si buzzer. | ||
+ | |||
+ | **Etapa 2:** | ||
+ | In functia de setup sunt setate perifericele(ledul RGB, LCD-ul, servomotoarele) si pinii asociati fiecaruia. De asemenea este setata si parola care va ramane fixata pe tot parcursul executiei codului. | ||
+ | Logica de setare a parolei a fost gandita prin stari. Consideram starea de start in care utilizatorului i se cere o parola de 6 cifre. Codul nu va executa nimic pana nu sunt intrduse 6 caractere. Dupa introducere, utilizatorului i se va cere sa confirme parola. Daca nu va confirma parola, utilizatorului i se va cere sa introduca o parola noua, adica sa ia procesul de la capat. Atunci cand utilizatorul confirma parola, etapa de setup se incheie. Tot acest proces de setup este semnalizat prin lumina albastra a ledului. | ||
+ | |||
+ | **Etapa 3:** | ||
+ | Este etapa propriu zisa de executie a codului. In acest moment, usa este inchisa si exista 2 modalitati de a o deschide: prin apasarea simpla a butonului sau prin introducerea parolei setate. Ambele metode vor apela functia de deschidere a usii. In schimb, introducerea gresita a parolei nu va deschide usa si va semnalata auditiv si vizual pe LCD. | ||
===== Rezultate Obţinute ===== | ===== Rezultate Obţinute ===== | ||
- | <note tip> | + | Proiectul functioneaza conform asteptarilor. Usa se deschide si se inchide corect. |
- | Care au fost rezultatele obţinute în urma realizării proiectului vostru. | + | |
- | </note> | + | |
+ | {{:pm:prj2025:ccristi:la_videohard.gif?750}} | ||
+ | |||
===== Concluzii ===== | ===== Concluzii ===== | ||
+ | Un proiect foarte interesant care m-a ajutat sa-mi fixez cunostintele dobandite la laborator. De asemenea, am avut ocazia sa lucrez cu mai multe dipozitive periferice de diverse tipuri si care m-au pus in situatii inca neintalnite. | ||
===== Download ===== | ===== Download ===== | ||
- | <note warning> | + | Arhiva proiect: {{:pm:prj2025:ccristi:proiect_pm_la.zip|}} |
- | 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**. | + | |
- | </note> | + | |
===== Jurnal ===== | ===== Jurnal ===== | ||
- | <note tip> | + | {{:pm:prj2025:ccristi:planificare_la.jpg?750}} |
- | Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului. | + | |
- | </note> | + | |
===== Bibliografie/Resurse ===== | ===== Bibliografie/Resurse ===== | ||
- | <note> | + | - Pagina PM de pe OCW: [[https://ocw.cs.pub.ro/courses/pm]] |
- | Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**. | + | - Arduino Uno sheet: [[https://docs.arduino.cc/resources/datasheets/A000066-datasheet.pdf]] |
- | </note> | + | - Plusivo Wireless Super Starter Kit: [[https://kits.plusivo.com/]] |
- | <html><a class="media mediafile mf_pdf" href="?do=export_pdf">Export to PDF</a></html> | ||