This shows you the differences between two versions of the page.
|
pm:prj2024:avaduva:alin.stan [2024/05/21 18:16] alin.stan [Hardware Design] |
pm:prj2024:avaduva:alin.stan [2024/05/26 12:54] (current) alin.stan [Bibliografie/Resurse] |
||
|---|---|---|---|
| Line 10: | Line 10: | ||
| Senzor de greutate: Asigură o dozare precisă a hranei (1 kg), monitorizând cantitatea rămasă. | Senzor de greutate: Asigură o dozare precisă a hranei (1 kg), monitorizând cantitatea rămasă. | ||
| Servomotor: Descoperă automat recipientul cu mâncare | Servomotor: Descoperă automat recipientul cu mâncare | ||
| - | Ecran LCD: Afișează mesajul "Hranire!" si cantitatea de mancare eliberata.. | + | Ecran LCD: Afișează mesajul "Hranire!" si cantitatea de mancare eliberata,cat si unghiul la care se misca servomotorul |
| Notificări pe telefon: Te anunță când se termină hrănirea și îți indică cantitatea de mâncare rămasă în bol. | Notificări pe telefon: Te anunță când se termină hrănirea și îți indică cantitatea de mâncare rămasă în bol. | ||
| Verificare manuală: Permite verificarea cantității de mâncare prin comandă Bluetooth. | Verificare manuală: Permite verificarea cantității de mâncare prin comandă Bluetooth. | ||
| Line 56: | Line 56: | ||
| ===== Software Design ===== | ===== Software Design ===== | ||
| + | Mediu de dezvoltare: | ||
| + | Platformă de dezvoltare: Arduino IDE | ||
| - | <note tip> | + | Biblioteci: |
| - | Descrierea codului aplicaţiei (firmware): | + | Servo.h: Pentru controlul servomotorului. |
| - | * mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR) | + | Wire.h: Pentru comunicarea I2C cu ecranul LCD. |
| - | * librării şi surse 3rd-party (e.g. Procyon AVRlib) | + | LiquidCrystal_I2C.h: Pentru controlul ecranului LCD I2C. |
| - | * algoritmi şi structuri pe care plănuiţi să le implementaţi | + | HX711.h: Pentru comunicarea cu senzorul de greutate HX711. |
| - | * (etapa 3) surse şi funcţii implementate | + | SoftwareSerial.h: Pentru comunicarea serială cu modulul Bluetooth. |
| - | </note> | + | RemoteXY.h: Pentru integrarea cu aplicația RemoteXY pentru control la distanță. |
| - | ===== Rezultate Obţinute ===== | + | Algoritmi si structuri: |
| - | <note tip> | + | Integrarea cu RemoteXY: |
| - | Care au fost rezultatele obţinute în urma realizării proiectului vostru. | + | Configurarea comunicării seriale pentru modulul Bluetooth. |
| - | </note> | + | Inițializarea RemoteXY pentru a permite controlul de la distanță prin aplicația mobilă. |
| - | ===== Concluzii ===== | + | Controlul servomotorului: |
| + | Maparea valorilor sliderului din aplicația RemoteXY la unghiuri între 45 și 90 de grade. | ||
| + | Actualizarea unghiului servomotorului în funcție de valoarea sliderului doar dacă aceasta s-a schimbat. | ||
| - | ===== Download ===== | + | Surse și funcții implementate: |
| - | <note warning> | + | setup(): |
| - | 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ă ;-). | + | Inițializează RemoteXY, comunicarea serială, ecranul LCD, și senzorul HX711. |
| + | Calibrează senzorul HX711 și afișează valori inițiale pe monitorul serial. | ||
| - | 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**. | + | loop(): |
| - | </note> | + | Gestionează RemoteXY pentru a primi comenzi de la distanță. |
| + | Citește și afișează greutatea măsurată de senzorul HX711 pe monitorul serial. | ||
| + | Controlează unghiul servomotorului în funcție de valoarea sliderului din aplicația RemoteXY. | ||
| + | Afișează unghiul și greutatea pe ecranul LCD. | ||
| + | Include o întârziere scurtă pentru a evita problemele de interfață. | ||
| - | ===== Jurnal ===== | ||
| - | <note tip> | + | ===== Rezultate Obţinute ===== |
| - | Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului. | + | |
| - | </note> | + | https://www.youtube.com/watch?v=IdJ8yPS9MJk&ab_channel=alinS01 |
| + | } | ||
| + | ===== Download ===== | ||
| + | {{:pm:prj2024:avaduva:stan_alin_332cb.zip|}} | ||
| ===== Bibliografie/Resurse ===== | ===== Bibliografie/Resurse ===== | ||
| - | <note> | + | |
| - | Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**. | + | https://arduinogetstarted.com/tutorials/arduino-lcd-i2c |
| - | </note> | + | |
| + | https://randomnerdtutorials.com/arduino-load-cell-hx711/ | ||
| + | |||
| + | https://howtomechatronics.com/how-it-works/how-servo-motors-work-how-to-control-servos-using-arduino/ | ||
| + | |||
| + | https://www.youtube.com/watch?v=HX8ktpfzU2E&themeRefresh=1 | ||
| + | |||
| <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> | ||