Differences

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

Link to this comparison view

pm:prj2026:bianca.popa1106:roxana_mary.baranga [2026/05/06 22:22]
roxana_mary.baranga [Schema bloc]
pm:prj2026:bianca.popa1106:roxana_mary.baranga [2026/05/25 01:46] (current)
roxana_mary.baranga
Line 1: Line 1:
 ====== PlantPet ====== ====== PlantPet ======
 +
 ===== Introducere ===== ===== Introducere =====
  
Line 24: Line 25:
  
 **Module de iesire**: **Module de iesire**:
-  * display TFT LCD color de 1.8", cu rezolutie de 128 x 160 pixeli si interfata SPI, utilizat pentru afisarea locala a starii sistemului+  * display TFT LCD color de 1.8", cu rezolutie de 128 x 160 pixeli si interfata SPI, utilizat pentru afisarea locala a unui „plant pet” care reflecta starea plantei
   * pompa peristaltica de 5V, pentru irigarea plantei   * pompa peristaltica de 5V, pentru irigarea plantei
   * sursa de iluminare LED de 5V, pentru suplimentarea luminii atunci cand lumina ambientala nu este suficienta   * sursa de iluminare LED de 5V, pentru suplimentarea luminii atunci cand lumina ambientala nu este suficienta
  
 **Interfata software**: **Interfata software**:
-  * aplicatie conectata prin WiFi / Bluetooth ​la ESP32, prin care utilizatorul poate vedea starea curenta a plantei si poate seta praguri pentru umiditatea solului, temperatura si lumina+  * aplicatie conectata prin WiFi la ESP32, prin care utilizatorul poate vedea starea curenta a plantei si poate seta praguri pentru umiditatea solului, temperatura si lumina
  
 **Sistemul de alimentare**:​ **Sistemul de alimentare**:​
Line 35: Line 36:
  
 ==== Schema bloc ==== ==== Schema bloc ====
 +{{:​pm:​prj2026:​bianca.popa1106:​schema_bloc_b_roxana.png?​200|}}
  
 ==== Interactiunea modulelor ==== ==== Interactiunea modulelor ====
Line 44: Line 45:
   * daca nivelul de lumina ambientala scade sub pragul stabilit, ESP32 activeaza sursa de iluminare LED   * daca nivelul de lumina ambientala scade sub pragul stabilit, ESP32 activeaza sursa de iluminare LED
   * daca float switch-ul indica un nivel scazut de apa, sistemul dezactiveaza udarea si trimite o alerta catre aplicatie   * daca float switch-ul indica un nivel scazut de apa, sistemul dezactiveaza udarea si trimite o alerta catre aplicatie
-  * starea curenta ​afisata ​si pe LCD si in aplicatie+  * starea curenta ​este afisata ​local pe display-ul TFT sub forma unui „plant pet” ​si la distanta ​in aplicatia web, unde sunt afisate si valorile senzorilor
  
 ===== Hardware Design ===== ===== Hardware Design =====
Line 61: Line 62:
   * 1 x Dioda flyback 1N5819   * 1 x Dioda flyback 1N5819
   * 4 x Rezistente pentru comanda MOSFET   * 4 x Rezistente pentru comanda MOSFET
-  ​* 1 x LED de stare +  * 1 x Breadboard
-  * 1 x Buton de test / reset +
-  ​* 1 x Breadboard ​/ PCB+
   * 1 x Baterie portabila   * 1 x Baterie portabila
   * 1 x Tub siliconic pentru pompa   * 1 x Tub siliconic pentru pompa
   * 1 x Recipient pentru rezervorul de apa   * 1 x Recipient pentru rezervorul de apa
   * Fire de conexiune   * Fire de conexiune
 +
 +{{:​pm:​prj2026:​bianca.popa1106:​schema_hw_roxana.png?​200|}}
  
 ===== Software Design ===== ===== Software Design =====
-TODO+Mediu de dezvoltare:​ 
 +  * VS Code - editor principal 
 +  * PlatformIO - sistem de build si upload 
 +  * framework-ul ESP-IDF pentru dezvoltarea firmware-ului in limbajul C
  
-===== Rezultate Obţinute ===== +Biblioteci: 
-TODO+  * driver/​gpio.h - configurarea si controlul pinilor digitali 
 +  * driver/​spi_master.h - comunicatia SPI cu display-ul TFT 
 +  * esp_adc/​adc_oneshot.h - citirea valorilor analogice de la senzorul de umiditate a solului si de la senzorul de lumina 
 +  * freertos/​FreeRTOS.h - organizarea executiei periodice a codului 
 +  * freertos/​task.h - task-uri pentru logica principala si animatia de pe TFT 
 +  * esp_http_server.h - serverul web local 
 +  * esp_wifi.h - configurarea modulului WiFi 
 +  * esp_netif.h - initializarea interfetei de retea 
 +  * esp_event.h - gestionarea evenimentelor necesare pentru WiFi 
 +  * nvs_flash.h - initializarea memoriei nevolatile necesare subsistemului WiFi 
 +  * esp_timer.h - masurarea timpului si implementarea logicii dependente de timp 
 +  * esp_rom_sys.h - intarzieri scurte folosite in comunicatia cu DHT11 
 + 
 +Algoritmi si structuri implementate:​ 
 +  * achizitie periodica de date de la senzori 
 +  * protocol software pentru DHT11, implementat manual prin controlul duratei impulsurilor 
 +  * pastrarea ultimei valori valide pentru DHT11, pentru a evita afisarea unor valori invalide la erori ocazionale 
 +  * conversia valorilor brute de la soil sensor si LDR in procente si etichete usor de inteles pentru utilizator 
 +  * controlul automat al iluminarii 
 +  * controlul automat al pompei peristaltice 
 +  * folosirea unei zone de buffer (hysteresis) pentru pragurile de lumina si umiditate a solului, astfel incat becul si pompa sa nu porneasca si sa se opreasca foarte des in jurul pragului 
 +  * afisare locala pe TFT sub forma unui „plant pet”, care isi modifica expresia in functie de starea plantei 
 +  * interfata web locala - WiFi access point 
 +  * organizarea codului pe module separate: logica principala, display TFT, conversii si webserver 
 + 
 +Functii implementate:​ 
 +  * initializare display TFT 
 +  * desenare elemente grafice si animatii simple pe TFT 
 +  * afisarea unui personaj virtual care indica starea plantei: HAPPY, THIRSTY, LOW TANK, TOO HOT, LOW LIGHT, ERROR 
 +  * citire senzor DHT11 
 +  * citire ADC 
 +  * conversie valori raw in procente pentru umiditatea solului si nivelul de lumina 
 +  * control bec prin MOSFET 
 +  * control pompa peristaltica prin MOSFET 
 +  * pornire modul WiFi in modul Access Point 
 +  * handlers HTTP pentru pagina web, raportarea starii curente si actualizarea pragurilor 
 +  * actualizare interfata web cu valorile senzorilor si starile actuatorilor 
 + 
 +Am obtinut un produs compact, care poate fi asezat langa o planta. Acesta poate monitoriza si ajusta mediul in care planta se dezvolta si ofera atat o interfata web pentru configurare si vizualizare,​ cat si o interfata locala sugestiva sub forma unui „animal de companie” virtual asociat plantei.
  
 ===== Concluzii ===== ===== Concluzii =====
-TODO+GitHub: https://​github.com/​RoxanaMaryB/​PlantPet 
 + 
 +Demo YouTube: https://​youtube.com/​shorts/​6ExZQT39He8?​feature=share 
 + 
 +Cu cateva zile inainte de PM Fair, pompa peristaltica s-a stricat si am ales sa nu o mai includ in proiectul final. Si partea de hardware (MOSFET, dioda flyback) este montata pentru pompa, si logica software, insa nu am reusit sa gasesc la timp o alta pompa pentru a prezenta proiectul in intregime.
  
 ===== Jurnal ===== ===== Jurnal =====
-TODO+  * 2026/05/06 - am creat pagina de OCW 
 +  * 2026/05/13 - am adaugat partea de Hardware 
 +  * 2026/05/18 - am adaugat partea de Software 
 +  * 2026/05/24 - am adaugat functionalitati noi codului (animatia si conversiile de la raw values la %)
  
 ===== Bibliografie/​Resurse ===== ===== Bibliografie/​Resurse =====
-TODO 
  
 +Datasheet ESP32: https://​docs.espressif.com/​projects/​esp-idf/​en/​v4.2.3/​esp32/​hw-reference/​esp32/​get-started-devkitc.html
 +
 +DHT11: https://​www.makerguides.com/​wp-content/​uploads/​2019/​02/​DHT11-Datasheet.pdf
 +
 +TFT: https://​www.crystalfontz.com/​controllers/​Sitronix/​ST7735S
 +
 +Soil Moisture Sensor: https://​wiki.dfrobot.com/​sen0193
 +
 +MOSFET: https://​www.infineon.com/​assets/​row/​public/​documents/​24/​49/​infineon-irlz44n-datasheet-en.pdf
pm/prj2026/bianca.popa1106/roxana_mary.baranga.1778095345.txt.gz · Last modified: 2026/05/06 22:22 by roxana_mary.baranga
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