This shows you the differences between two versions of the page.
pm:prj2025:atoader:alexia_maria.rat [2025/05/28 14:01] alexia_maria.rat [Software Design] |
pm:prj2025:atoader:alexia_maria.rat [2025/05/28 17:17] (current) alexia_maria.rat [Software Design] |
||
---|---|---|---|
Line 4: | Line 4: | ||
**Prezentarea pe scurt a proiectului:** | **Prezentarea pe scurt a proiectului:** | ||
- | Proiectul consta intr-o masinuta controlata cu ajutorul placutei Arduino, care, la apasarea unui buton, declanșeaza mai multe semnale acustice si luminoase, in timp ce masina se misca. Scopul principal al proiectului este realizarea unui sistem integrat de divertisment. Am pornit de la ideea de a imbina notiunile invatate pe parcursul laboratoarelor de PM cu creativitatea. Astfel proiectul este util ca exemplu de combinare a elementelor de hardware cu sofware dar de asemenea este util si ca mijloc de divertisment. | + | Proiectul consta intr-o masinuta controlata cu ajutorul placutei Arduino, care, la apasarea unor butoane, declanșeaza mai multe semnale acustice si luminoase,iar comenzile din serial fac masina sa se miste. Scopul principal al proiectului este realizarea unui sistem integrat de divertisment. Am pornit de la ideea de a imbina notiunile invatate pe parcursul laboratoarelor de PM cu creativitatea. Astfel proiectul este util ca exemplu de combinare a elementelor de hardware cu sofware dar de asemenea este util si ca mijloc de divertisment. |
===== Descriere generală ===== | ===== Descriere generală ===== | ||
Line 10: | Line 10: | ||
{{ :pm:prj2025:atoader:output_1_.png?700 |}} | {{ :pm:prj2025:atoader:output_1_.png?700 |}} | ||
- | **Switch On/Off** | ||
- | *Comută alimentarea plăcii Arduino şi activează starea de “ready”. | ||
**Butoane** | **Butoane** | ||
Line 18: | Line 16: | ||
*Buton Display: activează afișajul pe LCD. | *Buton Display: activează afișajul pe LCD. | ||
- | *Buton Start: porneşte redarea audio pe buzzer şi motoarele DC. | + | *Buton Start: porneşte redarea audio pe buzzer. |
- | **Arduino UNO R3** (ATmega328P + ATmega16U2) | + | **Arduino UNO R3** |
*Primeşte semnale de la switch şi butoane. | *Primeşte semnale de la switch şi butoane. | ||
Line 114: | Line 112: | ||
===== Implementare Hardware ===== | ===== Implementare Hardware ===== | ||
- | {{ :pm:prj2025:atoader:294e7989-df3e-4156-81d2-70e4b07733bf.jpg?300 |}} | ||
- | |||
+ | {{ :pm:prj2025:atoader:whatsapp_image_2025-05-28_at_15.53.43.jpeg?300 |}} | ||
===== Software Design ===== | ===== Software Design ===== | ||
Line 134: | Line 131: | ||
**Funcții principale:** | **Funcții principale:** | ||
- | *playBrasoveanca() – Redă melodia „Brașoveanca” pe buzzerul conectat la pinul 3, folosind funcția tone(). | + | *playmusic() – Redă melodia pe buzzerul conectat la pinul 3, folosind funcția tone(). |
- | + | ||
- | *switchNitro() – Interrupere pe pinul 2 pentru comutarea stării nitro. | + | |
*setup() – Inițializează toate pinii (input cu pull-up pentru butoane, output pentru LED-uri și motoare), initializează LCD-ul, configurează întreruperi. | *setup() – Inițializează toate pinii (input cu pull-up pentru butoane, output pentru LED-uri și motoare), initializează LCD-ul, configurează întreruperi. | ||
Line 151: | Line 146: | ||
*Butonul LCD (pin A3) comută backlight-ul LCD-ului. | *Butonul LCD (pin A3) comută backlight-ul LCD-ului. | ||
- | *Motoarele sunt controlate prin comenzi (valori cmd între 5 și 9) primite de la serial sau din altă sursă (nu este clar în cod cum anume se modifică cmd). | + | *Motoarele sunt controlate prin comenzi primite de la serial . |
**Pattern-uri de design:** | **Pattern-uri de design:** | ||
- | Debounce simplificat butoane: verificare stare anterioară și stare curentă pentru detectarea apăsărilor (flanc descendent). | + | Debounce simplificat butoane: verificare stare anterioară și stare curentă pentru detectarea apăsărilor . |
**State machine simplificată:** LED-urile au moduri NORMAL și POLICE care schimbă comportamentul în funcție de ledMode. | **State machine simplificată:** LED-urile au moduri NORMAL și POLICE care schimbă comportamentul în funcție de ledMode. | ||
Line 163: | Line 158: | ||
===== Rezultate Obţinute ===== | ===== Rezultate Obţinute ===== | ||
- | <note tip> | + | În urma implementării și testării proiectului, am reușit să dezvolt un sistem funcțional cu următoarele caracteristici: |
- | Care au fost rezultatele obţinute în urma realizării proiectului vostru. | + | |
- | </note> | + | |
- | ===== Concluzii ===== | + | *Controlul motorului: Motoarele s-au putut porni și opri corect folosind comenzile implementate, iar direcția de deplasare (înainte, înapoi, stânga, dreapta) a fost controlată cu succes |
- | ===== Download ===== | + | *Butoanele: au fost corect integrate, permițând schimbarea modurilor LED-urilor și controlul buzzerului si al display-ului |
- | <note warning> | + | *Buzzerul și melodia: Buzzerul a redat corect melodia la apăsarea butonului, iar oprirea melodiei la a doua apăsare s-a realizat fără probleme. |
- | 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**. | + | *LED-urile: LED-urile s-au aprins în modurile programate (normal și intermitent). |
- | </note> | + | |
- | ===== Jurnal ===== | + | *Afișajul LCD: Display-ul LCD a afișat mesajele corespunzătoare |
+ | ===== Concluzii ===== | ||
- | <note tip> | + | *Acesta a fost primul meu proiect hardware-software cu Arduino, iar experiența a fost foarte interesanta. Am învățat să controlez motoare, LED-uri, buzzer și LCD, iar sistemul funcționează conform așteptărilor. |
- | Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului. | + | |
- | </note> | + | |
- | ===== Bibliografie/Resurse ===== | ||
- | <note> | + | ===== Download ===== |
- | Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**. | + | |
- | </note> | + | {{:pm:prj2025:atoader:discocar.zip|}} |
+ | |||
+ | ===== Bibliografie/Resurse ===== | ||
- | <html><a class="media mediafile mf_pdf" href="?do=export_pdf">Export to PDF</a></html> | + | *Optimus Digital[[https://www.optimusdigital.ro/ro/]] |
+ | *Emag[[https://www.emag.ro/]] | ||
+ | *Tinkercad[[https://www.tinkercad.com/circuits]] | ||