Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pm:prj2025:aluca:teodora.teodorescu [2025/05/18 22:35]
teodora.teodorescu [Hardware Design]
pm:prj2025:aluca:teodora.teodorescu [2025/05/30 10:25] (current)
teodora.teodorescu [Jurnal]
Line 34: Line 34:
  
 {{:​pm:​prj2025:​aluca:​poza_pet_feeder.jpeg?​600|}} {{:​pm:​prj2025:​aluca:​poza_pet_feeder.jpeg?​600|}}
 +
  
 ===== Software Design ===== ===== Software Design =====
Line 39: Line 40:
  
 <note tip> <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 =====+   * Link Github: 
 +        https://​github.com/​TeodoraTeo05/​cat-feeder-esp32 
 +   * Link Demo video: 
 +        https://​youtu.be/​CCG9btgEeA4
  
-<note tip> +Descrierea codului aplicatiei: 
-Care au fost rezultatele obţinute în urma realizării proiectului vostru.+  * Mediu de dezvoltare: proiectul a fost implementat si testat folosind Arduino IDE, cu placa ESP32 configurata prin Board Manager. Codul a fost scris in C++ si incarcat direct prin cablu USB.
 </​note>​ </​note>​
 +  * Librarii si surse 3rd-party utilizate:
 +    - WiFi.h – pentru crearea unei retele Wi-Fi in mod Access Point (ESP32 functioneaza ca hotspot local).
 +    - WebServer.h – pentru gestionarea cererilor HTTP si afisarea unei pagini HTML de control in browser.
 +    - ESP32Servo.h – pentru controlul servomotoarelor SG90, oferind semnal PWM stabil.
 +    - LiquidCrystal_I2C.h – pentru afisaj LCD 1602 cu interfata I2C.
  
-===== Concluzii =====+  * Algoritmi si structuri implementate:​ 
 +        - giveFood() – activeaza servomotorul de mancare, afiseaza un mesaj pe LCD si porneste buzzerul. 
 +        - giveWater() – activeaza servomotorul pentru apa, afiseaza un mesaj relevant pe LCD si activeaza buzzerul. 
 +        - beepBuzzer() – produce un sunet scurt pentru confirmarea comenzii. 
 +        - handleRoot() – serveste pagina HTML principala catre browserul utilizatorului. 
 +        - handleGiveFood() si handleGiveWater() – trateaza cererile GET de la butoanele web si apeleaza functiile corespunzatoare.
  
-===== Download =====+  * In loop(), se foloseste o structura de polling pentru a verifica starea butoanelor fizice, iar la apasare se declanseaza functiile corespunzatoare (mancare sau apa).
  
-<note warning>​ +  * Interfata HTML include doua butoane care trimit cereri HTTP catre rutele /food si /wateriar serverul ESP32 le gestioneaza in timp real.
-O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului:​ sursescheme, 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**. +  ​Surse si functii implementate:​ 
-</​note>​+    - setup() initializeaza toate componentele:​ LCD-ul, servomotoarele,​ butoanele, buzzerul si serverul webCreeaza reteaua Wi-Fi cu SSID-ul `CatFeeder_AP`. 
 +    - loop() verifica permanent daca au fost apasate butoanele fizice si trateaza cererile web de la clientii conectati la retea. 
 +    - Servomotoarele sunt comandate pe pinii 16 (mancare) si 17 (apa). 
 +    - Butoanele fizice sunt conectate pe pinii 27 si 14 si sunt citite cu `digitalRead()` in combinatie cu `INPUT_PULLUP`. 
 +    - Buzzerul ​este conectat la pinul 4 si este controlat simplu cu `digitalWrite()`. 
 +    ​Pe ecranul LCD apar mesajele`Eat well, my kittens` sau `Drink well, my kittens`, in functie de comanda primita.
  
-===== Jurnal ​=====+ 
 +===== Rezultate Obţinute ​=====
  
 <note tip> <note tip>
-Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului.+Pet feeder - produs final: 
 +  * https://​youtube.com/​shorts/​fqGpPC8dX_Y?​feature=share
 </​note>​ </​note>​
  
-===== Bibliografie/​Resurse ===== 
  
-<​note>​ 
-Listă cu documente, datasheet-uri,​ resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**. 
-</​note>​ 
  
 <​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>​
  
pm/prj2025/aluca/teodora.teodorescu.1747596919.txt.gz · Last modified: 2025/05/18 22:35 by teodora.teodorescu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0