Differences

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

Link to this comparison view

pm:prj2025:vradulescu:constantin.matei03 [2025/05/15 19:42]
matei.constantin03 [Hardware Design]
pm:prj2025:vradulescu:constantin.matei03 [2025/05/27 12:11] (current)
matei.constantin03 [Bibliografie/Resurse]
Line 36: Line 36:
  
   * **Divizor rezistiv pentru monitorizarea bateriei**  ​   * **Divizor rezistiv pentru monitorizarea bateriei**  ​
-    Format din 2 rezistențe de 100kOhmi, conectate între Vbat și GND, cu punctul median legat la pinul A0 al ESP32. Acesta scade tensiunea bateriei la un nivel sigur pentru citirea de către ESP32. +    Format din 2 rezistențe de 100kOhmi, conectate între Vbat și GND, cu punctul median legat la pinul A0 al ESP32. Acesta scade tensiunea bateriei la un nivel sigur pentru citirea de către ESP32.  
-    {{ :​pm:​prj2025:​vradulescu:​adc-capacitate-baterie.png?​600 |}}+{{ :​pm:​prj2025:​vradulescu:​adc-capacitate-baterie.png?​300|}}
  
 ===== Hardware Design ===== ===== Hardware Design =====
Line 48: Line 48:
 {{ :​pm:​prj2025:​vradulescu:​schema-electrica.jpg | }} {{ :​pm:​prj2025:​vradulescu:​schema-electrica.jpg | }}
  
-===== Software ​Design ​=====+====== Documentație ​Software ​======
  
-**Mediu de dezvoltare:​**  ​ +=== Stadiul actual al implementării software === 
-PlatformIO+Proiectul este funcțional și bazat pe codul open-source [ESP-Drone](https://​github.com/​espressif/​esp-drone/​tree/​master),​ adaptat pentru ESP32-C3. Au fost făcute modificări la nivelul pinilor conform schemei electrice proprii și s-a configurat ADC-ul pentru monitorizarea bateriei. Conexiunea Wi-Fi funcționează,​ comenzile sunt recepționate prin UDP, iar drona răspunde corect la comenzi.
  
 +=== Alegerea bibliotecilor ===
 +Am folosit **ESP-IDF**,​ deoarece este framework-ul oficial Espressif, oferă control total asupra hardware-ului,​ este bine documentat și include unelte integrate pentru build, flash și debug.
 +
 +=== Element de noutate ===
 +Proiectul aduce noutate prin adaptarea codului ESP-Drone pe microcontrolerul **ESP32-C3**,​ cu o configurație personalizată a pinilor și integrarea unui sistem de monitorizare a bateriei cu ADC. Controlul se face wireless prin aplicație mobilă sau gamepad.
 +
 +=== Utilizarea funcționalităților din laborator ===
 +- PWM pentru controlul motoarelor
 +- ADC pentru citirea tensiunii bateriei
 +- Wi-Fi în mod AP și comunicație UDP
 +- Task-uri și cozi din FreeRTOS
 +- Debug serial și monitorizare loguri
 +
 +=== Structura proiectului și validare ===
 +Proiectul este împărțit pe fișiere:
 +  * **wifi_esp32.c** – conexiune Wi-Fi și UDP
 +  * **main.c** – inițializare și logica principală
 +  * **config.h** – definiri pini și parametri
 +  * **adc_esp32.c** – citire și conversie ADC
 +  * **motors.c** – interpretare comenzi și control motoare
 +  * **led_esp32.c** – controlul ledurilor
 +
 +Validarea s-a făcut prin conectarea aplicației mobile și testarea comenzilor de zbor, cu verificare vizuală și în serial monitor.
 +
 +=== Calibrarea senzorilor ===
 +Am calibrat ADC-ul pe baza valorilor cunoscute de tensiune (3.3V și 4.2V). Tensiunea citită este convertită în procente pentru a estima nivelul bateriei. Valorile sunt filtrate pentru stabilitate.
 +
 +=== Optimizări ===
 +- Dimensiuni reduse pentru buffer-ele UDP
 +- Eliminarea componentelor nefolosite din proiect
 +- Sincronizare eficientă între task-uri cu cozi
 +- Inițializare Wi-Fi rapidă fără DHCP
  
 ===== Rezultate Obţinute ===== ===== Rezultate Obţinute =====
  
-<note tip> +{{:​pm:​prj2025:​vradulescu:​final.jpeg?600 |Imagine finală dronă}} 
-Care au fost rezultatele obţinute în urma realizării proiectului vostru+
-</​note>​+
  
-===== Concluzii ===== 
  
 ===== Download ===== ===== Download =====
  
-<note warning>​ +**Arhiva ​cu codul sursă:** [[https://​ocw.cs.pub.ro/​courses/?​image=pm%3Aprj2025%3Avradulescu%3Adrona.zip&​tab_details=view&​do=media&​ns=pm%3Aprj2025%3Avradulescu|Descarcă drona.zip]]
-O arhivă (sau mai multe dacă este cazul) ​cu fişierele obţinute în urma realizării proiectuluisurse, scheme, etcUn 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**. +**GitHub:** [[https://github.com/​mateic2006/​proiect-pm-drona|Vezi proiectul pe GitHub]]
-</​note>​+
  
 ===== Jurnal ===== ===== Jurnal =====
Line 78: Line 106:
 ===== Bibliografie/​Resurse ===== ===== Bibliografie/​Resurse =====
  
-<​note>​ + ​[[https://​github.com/​espressif/​esp-drone|ESP-Drone - GitHub]] 
-Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**+ [[https://​docs.espressif.com/​projects/​esp-idf/​en/​latest/​esp32c3/​|ESP-IDF Documentation (ESP32-C3)]] 
-</note>+ ​[[https://​randomnerdtutorials.com/|Random Nerd Tutorials - ESP Projects]] 
 + [[https://​docs.espressif.com/​projects/​esp-idf/​en/​latest/​esp32c3/​api-reference/​peripherals/​adc.html|ESP-IDF ADC API Reference]] 
 + ​[[https://​www.espressif.com/​en/​products/​socs/​esp32-c3/​resources|ESP32-C3 Resources]] 
 + ​[[https://​wiki.seeedstudio.com/​XIAO_ESP32C3_Getting_Started/|Getting Started with ESP32C3]]
  
 <​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/vradulescu/constantin.matei03.1747327373.txt.gz · Last modified: 2025/05/15 19:42 by matei.constantin03
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