This shows you the differences between two versions of the page.
pm:prj2022:cristip:catfooddispenser [2022/05/30 15:18] ioan_cristian.pop |
pm:prj2022:cristip:catfooddispenser [2022/06/02 03:17] (current) ioan_cristian.pop [Software Design] |
||
---|---|---|---|
Line 4: | Line 4: | ||
Proiectul constă in construirea unui aparat care elibereaza o anumita cantitate de mancare de pisici la o ora exactă, care poate fi setată de utilizator. Aparatul este foarte util atat in cantarirea unei portii (pisica astfel ar primi cantitatea recomandata, nu mai mult sau mai putin) cat si la un moment de timp potrivit. Este util in special cand nu suntem acasa sa-i oferim noi de mancare. | Proiectul constă in construirea unui aparat care elibereaza o anumita cantitate de mancare de pisici la o ora exactă, care poate fi setată de utilizator. Aparatul este foarte util atat in cantarirea unei portii (pisica astfel ar primi cantitatea recomandata, nu mai mult sau mai putin) cat si la un moment de timp potrivit. Este util in special cand nu suntem acasa sa-i oferim noi de mancare. | ||
- | <note tip> | ||
- | Prezentarea pe scurt a proiectului vostru: | ||
- | * ce face | ||
- | * care este scopul lui | ||
- | * care a fost ideea de la care aţi pornit | ||
- | * de ce credeţi că este util pentru alţii şi pentru voi | ||
- | </note> | ||
===== Descriere generală ===== | ===== Descriere generală ===== | ||
- | Functionalitati: | + | === Functionalitati === |
+ | * Aparatul va afisa ora curenta (HH:MM) | ||
+ | * Utilizatorul va putea seta cantitatea unei portii (in grame) | ||
+ | * Utilizatorul va putea adauga (sau sterge) o ora exacta (HH:MM) cand aparatul ar trebui sa elibereze o portie | ||
+ | * Atunci cand ora curenta coincide cu o "alarma" setata de utilizator, aparatul va elibera o portie cantarita | ||
- | - Utilizatorul va putea seta cantitatea unei portii (in grame) | + | === Schema Bloc === |
- | - Utilizatorul va putea adauga (sau sterge) o ora exacta (HH:MM) cand aparatul ar trebui sa elibereze o portie | + | {{ :pm:prj2022:cristip:Schema_Bloc_Pop_Ioan.png?600 }} |
- | - La anumite momente de timp, aparatul va elibera o portie | + | ===== Hardware Design ===== |
- | <note tip> | + | === Lista de piese === |
- | O schemă bloc cu toate modulele proiectului vostru, atât software cât şi hardware însoţită de o descriere a acestora precum şi a modului în care interacţionează. | + | |
- | Exemplu de schemă bloc: http://www.robs-projects.com/mp3proj/newplayer.html | + | * Arduino Uno cu Microporocesor ATmega328p |
- | </note> | + | |
- | + | ||
- | ===== Hardware Design ===== | + | |
- | + | ||
- | Lista de piese: | + | |
* Celula de greutate de 5kg cu amplificator HX711 | * Celula de greutate de 5kg cu amplificator HX711 | ||
* Modul RTC DS3231 AT24C32 | * Modul RTC DS3231 AT24C32 | ||
- | * Servomotor SG92R | + | * Servomotor SG92R (pentru actionarea mecanismului) |
- | * Modul display 7-digit cu 4 cifre (pentru afi | + | * Modul display 7-digit cu 4 cifre (pentru afisari) |
+ | * Shift Register HCF4094 | ||
+ | * Butoane pentru setarea alarmelor / portiilor | ||
- | <note tip> | + | === Piese printate 3D === |
- | Aici puneţi tot ce ţine de hardware design: | + | * Adaptor pentru bratul servomotorului pentru distribuitorul de mancare de pisici |
- | * listă de piese | + | * Suport pentru celula de greutate |
- | * 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 | + | === Schema Electrica === |
- | * rezultatele simulării | + | |
- | </note> | + | {{ :pm:prj2022:cristip:Schema_Electrica_Pop_Ioan.png?600 }} |
===== Software Design ===== | ===== Software Design ===== | ||
+ | === Biblioteci externe === | ||
+ | * [[https://github.com/bogde/HX711|interfatare cu celula de greutate si cu amplificatorul HX711]] | ||
+ | * [[https://github.com/arduino-libraries/Servo|Actionare servomotor]] | ||
+ | * [[https://github.com/NorthernWidget/DS3231|Interfatarea cu modulul RTC]] | ||
+ | * [[https://www.arduino.cc/reference/en/language/functions/communication/wire|Comunicarea I2C cu modulul RTC]] | ||
- | |||
- | <note tip> | ||
- | Descrierea codului aplicaţiei (firmware): | ||
- | * mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR) | ||
- | * librării şi surse 3rd-party (e.g. Procyon AVRlib) | ||
- | * algoritmi şi structuri pe care plănuiţi să le implementaţi | ||
- | * (etapa 3) surse şi funcţii implementate | ||
- | </note> | ||
===== Rezultate Obţinute ===== | ===== Rezultate Obţinute ===== | ||
- | <note tip> | + | Link demo: [[https://youtu.be/SkrUckP-d_Q|link]] |
- | Care au fost rezultatele obţinute în urma realizării proiectului vostru. | + | |
- | </note> | + | |
===== Concluzii ===== | ===== Concluzii ===== | ||
Line 65: | Line 53: | ||
===== Download ===== | ===== Download ===== | ||
- | <note warning> | + | Cod Sursa: {{:pm:prj2022:cristip:Cat_Food_Dispenser.zip| Cat Food Dispenser}}. |
- | 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 ===== | + | |
- | + | ||
- | <note tip> | + | |
- | 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 ===== | ||
- | + | * Schema Electrica celula de greutate: https://create.arduino.cc/projecthub/electropeak/digital-force-gauge-weight-scale-w-loadcell-arduino-7a7fd5 | |
- | <note> | + | * Datahseet Display 7-digit: https://www.farnell.com/datasheets/2095876.pdf |
- | Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**. | + | * Datahseet RTC: https://datasheets.maximintegrated.com/en/ds/DS3231.pdf |
- | </note> | + | * Schema Electrica RTC: https://create.arduino.cc/projecthub/MisterBotBreak/how-to-use-a-real-time-clock-module-ds3231-bc90fe |
+ | * Datahseet Servomotor: http://www.ee.ic.ac.uk/pcheung/teaching/DE1_EE/stores/sg90_datasheet.pdf | ||
<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> | ||