This shows you the differences between two versions of the page.
pm:prj2024:ddosaru:cristian.sbarnea [2024/05/24 21:08] cristian.sbarnea [Hardware Design] |
pm:prj2024:ddosaru:cristian.sbarnea [2024/05/27 14:06] (current) cristian.sbarnea [Jurnal] |
||
---|---|---|---|
Line 9: | Line 9: | ||
<note tip> | <note tip> | ||
- | {{:pm:prj2024:ddosaru:diag_cristian.sbarnea.jpg?600|}} | + | {{:pm:prj2024:ddosaru:diagrama_cristian_sbarnea1.jpg?600|}} |
</note> | </note> | ||
Line 17: | Line 17: | ||
Lista piese: | Lista piese: | ||
* ESP32 | * ESP32 | ||
- | * Senzor de temperatura si umiditate DHT11 | + | * Senzor de temperatura si umiditate DHT22 |
* LCD + modul I2C | * LCD + modul I2C | ||
* Fire | * Fire | ||
{{:pm:prj2024:ddosaru:schema_electrica_cristian.sbarnea.png?600|}} | {{:pm:prj2024:ddosaru:schema_electrica_cristian.sbarnea.png?600|}} | ||
- | {{:pm:prj2024:ddosaru:pr_cristian.sbarnea1.jpeg?600|}} | + | {{:pm:prj2024:ddosaru:pr_cristian.sbarnea1.jpeg?400|}} |
- | {{:pm:prj2024:ddosaru:pr_cristian.sbarnea2.jpeg?600|}} | + | {{:pm:prj2024:ddosaru:pr_cristian.sbarnea2.jpeg?400|}} |
- | {{:pm:prj2024:ddosaru:pr_cristian.sbarnea3.jpeg?600|}} | + | {{:pm:prj2024:ddosaru:pr_cristian.sbarnea3.jpeg?400|}} |
- | {{:pm:prj2024:ddosaru:pr_cristian.sbarnea4.jpeg?600|}} | + | {{:pm:prj2024:ddosaru:pr_cristian.sbarnea4.jpeg?400|}} |
- | {{:pm:prj2024:ddosaru:pr_cristian.sbarnea5.jpeg?600|}} | + | {{:pm:prj2024:ddosaru:pr_cristian.sbarnea5.jpeg?400|}} |
</note> | </note> | ||
Line 33: | Line 33: | ||
<note tip> | <note tip> | ||
Software folosit: | Software folosit: | ||
- | * Virtual Studio Code, PlatformIO | + | * Arduino IDE |
* Arduino JSON | * Arduino JSON | ||
* DHT lib | * DHT lib | ||
Line 39: | Line 39: | ||
* LiquidCrystal_I2C lib | * LiquidCrystal_I2C lib | ||
* WiFi.h lib | * WiFi.h lib | ||
- | Temperatura si umiditatea pot fi verificate si prin intermediul unui server web: | + | * FreeRTOS LIB |
- | {{:pm:prj2024:ddosaru:web_server.png?600|}} | + | * ESPAsyncWebServer |
+ | * Task.h lib | ||
+ | |||
+ | Temperatura si umiditatea din casa pot fi verificate prin intermediul unui server web, pentru a fi accesibil de pe orice device, laptop, telefon, etc. De asemenea, placuta comunica si cu un API de vreme, de unde ia temperatura, umiditatea, viteza vantului pentru Bucuresti, la fiecare 30 de minute. | ||
+ | {{:pm:prj2024:ddosaru:pr_cristian.sbarnea6.jpeg?400|}} | ||
</note> | </note> | ||
Line 46: | Line 50: | ||
<note tip> | <note tip> | ||
- | Care au fost rezultatele obţinute în urma realizării proiectului vostru. | + | Rezultatul final este o stație meteo funcțională care oferă informații utile despre temperatură, contribuind la un confort sporit în locuință. Această realizare mi-a oferit o satisfacție deosebită și m-a motivat să continui să explorez și să dezvolt proiecte similare în viitor. Experiența acumulată va fi cu siguranță valoroasă pentru viitoarele mele proiecte în domeniul electronicii și al programării. |
</note> | </note> | ||
===== Concluzii ===== | ===== Concluzii ===== | ||
+ | |||
+ | Realizarea unui proiect cu un ESP32, un senzor DHT22 și un LCD pentru a crea o stație meteo care afișează temperatura din casă și de afară atat pe un LCD cat si prin intermediul unui server web, a fost o experiență foarte captivantă și educativă. Prin acest proiect, am avut ocazia să aprofundez cunoștințele despre microcontrolere și senzori, să îmbunătățesc abilitățile de programare și să aplic concepte de electronică în practică. | ||
+ | |||
+ | Implementarea acestui sistem a implicat mai multe etape interesante, de la conectarea componentelor hardware până la scrierea codului necesar pentru citirea datelor de la senzor și afișarea lor pe LCD. De asemenea, partea de networking pe ESP32 a fost si ea foarte interesanta, deoarece a trebuit sa folosesc niste biblioteci asincrone si am inclus parti din biblioteca FreeRTOS. În concluzie, am avut ocazia să învăț cum să gestionez interacțiunea dintre diferite componente și să rezolv problemele care au apărut pe parcurs. | ||
===== Download ===== | ===== Download ===== | ||
- | <note warning> | + | <note> |
- | 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:ddosaru:proiect_sbarnea_cristian334cb.zip}} |
</note> | </note> | ||
Line 62: | Line 69: | ||
<note tip> | <note tip> | ||
- | Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului. | + | * 6-9 Mai 2024 -> Comandare si ridicare piese |
+ | * 10 Mai 2024 -> Testare functionalitate piese | ||
+ | * 11 Mai 2024 -> Comandare alt senzor de temperatura (cel de inainte nu functiona) | ||
+ | * 13 Mai 2024 -> Scriere cod minimal pentru LCD si DHT22 | ||
+ | * 15 Mai 2024 -> Scriere cod pentru serverul Web | ||
+ | * 17 Mai 2024 -> Incepere scriere cod pentru requesturi HTTP pe ESP32 | ||
+ | * 21 Mai 2024 -> Terminare cod | ||
+ | * 24 Mai 2024 -> Optimizare cod, adaugare biblioteci asincrone si elemente de RTOS | ||
+ | * 25 Mai 2024 -> Comandare alt senzor de temperatura (l-am ars pe celalalt :-( ) | ||
+ | * 27 Mai 2024 -> O ultima testare a software-ului | ||
</note> | </note> | ||
Line 68: | Line 84: | ||
<note> | <note> | ||
- | Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**. | + | |
+ | * https://arduinojson.org/ | ||
+ | * https://docs.espressif.com/projects/esp-idf/en/stable/esp32/index.html | ||
+ | * https://www.espressif.com/sites/default/files/documentation/esp32_technical_reference_manual_en.pdf | ||
+ | * https://docs.arduino.cc/ | ||
+ | * https://www.youtube.com/watch?v=HUjFMVOpXBM&t=362s&pp=ygUUaHR0cCByZXF1ZXN0IGFyZHVpbm8%3D | ||
+ | * https://www.youtube.com/watch?v=NYP_CxdYzLo&t=375s&pp=ygUUaHR0cCByZXF1ZXN0IGFyZHVpbm8%3D | ||
+ | * https://github.com/witnessmenow/arduino-sample-api-request | ||
+ | * https://github.com/adafruit/DHT-sensor-library | ||
+ | * https://github.com/johnrickman/LiquidCrystal_I2C | ||
+ | * https://github.com/me-no-dev/ESPAsyncWebServer | ||
</note> | </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> | ||