This shows you the differences between two versions of the page.
pm:prj2024:mdinica:diana.caragui [2024/05/19 20:58] diana.caragui |
pm:prj2024:mdinica:diana.caragui [2024/05/28 01:05] (current) diana.caragui |
||
---|---|---|---|
Line 37: | Line 37: | ||
* breadboard\\ | * breadboard\\ | ||
- | <note tip> | + | Stadiu hardware inițial |
- | Aici puneţi tot ce ţine de hardware design: | + | |
- | * listă de piese | + | {{ :pm:prj2024:mdinica:whatsapp_image_2024-05-27_at_14.45.12.jpeg?300 |}} \\ |
- | * 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 | + | Pentru a îl face să arate cât mai mult ca un produs real, am construit o carcasă dintr-o cutie pe care am lipit recipientul pentru hrană, iar în interior am introdus componentele pentru a evita distrugerea firelor sau a pieselor. \\ |
- | * rezultatele simulării | + | |
- | </note> | + | {{ :pm:prj2024:mdinica:whatsapp_image_2024-05-27_at_14.45.11.jpeg?300 |}} \\ |
+ | |||
+ | {{ :pm:prj2024:mdinica:whatsapp_image_2024-05-27_at_14.45.10.jpeg?300 |}} \\ | ||
===== Software Design ===== | ===== Software Design ===== | ||
+ | **Mediu de dezvoltare**: Visual Studio Code + Platform.io \\ | ||
- | <note tip> | + | **Repo Git**: [[https://github.com/dianac22/PetFeeder.git]] \\ |
- | Descrierea codului aplicaţiei (firmware): | + | |
- | * mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR) | + | **Biblioteci utilizate**: LiquidCrystal_I2C.h, Keypad.h, Servo.h, Wire.h, RTClib.h, HX711.h, SPI.h. \\ |
- | * librării şi surse 3rd-party (e.g. Procyon AVRlib) | + | |
- | * algoritmi şi structuri pe care plănuiţi să le implementaţi | + | **Software Design**: \\ |
- | * (etapa 3) surse şi funcţii implementate | + | |
- | </note> | + | Codul este structurat în mai multe fișiere pentru a îmbunătăți modularitatea și lizibilitatea. Fiecare fișier se ocupă de o funcționalitate specifică a sistemului. \\ |
+ | |||
+ | În **main.cpp** funcția de setup se ocupă de configurarea întregului sistem și inițializarea componentelor hardware. Bucla principală rulează în mod continuu și gestionează afișarea timpului, introducerea orei de hrănire a pisicii și verificare greutății containerului de hrană după fiecare masă. \\ | ||
+ | |||
+ | **Utilizarea funcționalităților din laborator**: \\ | ||
+ | |||
+ | Laboratorul 1: UART - Comunicare serială pentru debugging \\ | ||
+ | Laboratorul 3: Timere/PWM - Configurare prin întreruperi a servomotorului \\ | ||
+ | Laboratorul 6: I2C - Comunicare cu ecranul LCD \\ | ||
+ | |||
+ | TO DO: Algoritmi folosiți și restul implementării | ||
===== Rezultate Obţinute ===== | ===== Rezultate Obţinute ===== | ||
- | <note tip> | + | TO DO: Demo |
- | Care au fost rezultatele obţinute în urma realizării proiectului vostru. | + | |
- | </note> | + | |
===== Concluzii ===== | ===== Concluzii ===== | ||
- | ===== Download ===== | + | Experiența a fost una plăcută, în special realizarea designului aparatului care a fost mai greu de elaborat. În primă fază am ales ceva mai complicat și am realizat că nu aveam toate uneltele necesare, prin urmare am improvizat ceva mai simplu, dar care să arate bine în final. Am avut ocazia să aplic și să fixez o serie de noțiuni datorită implementării acestui proiect, fiind prima dată când am lucrat cu unele din componentele utilizate. Am reușit să implementez tot ce mi-am propus, dar aș fi putut adăuga și un modul bluetooth pentru a trimite un mesaj pe telefon utilizatorului când a fost hrănită pisica, făcând astfel proiectul mai complet. Proiectul este funcțional și îndeplinește capabilitățile unui produs real. |
- | <note warning> | + | ===== Download ===== |
- | 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**. | + | {{:pm:prj2024:mdinica:catfeeder.zip|}} |
- | </note> | + | |
===== Jurnal ===== | ===== Jurnal ===== | ||
- | <note tip> | + | * 22 aprilie - alegere temă |
- | Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului. | + | * 27-29 aprilie - achiziționare componente |
- | </note> | + | * 1 mai - începere documentație |
+ | * 10-12 mai - asamblare și testare componente | ||
+ | * 15-19 mai - scriere cod | ||
+ | * 23 mai - asamblare proiect și realizare carcasă | ||
+ | * 24 mai - mici schimbări în cod | ||
===== Bibliografie/Resurse ===== | ===== Bibliografie/Resurse ===== | ||
- | <note> | + | [[https://randomnerdtutorials.com/]] \\ |
- | Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**. | + | [[https://docs.arduino.cc/resources/datasheets/A000066-datasheet.pdf]] \\ |
- | </note> | + | [[https://www.instructables.com/Arduino-Scale-With-5kg-Load-Cell-and-HX711-Amplifi/]] |
<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> | ||