This shows you the differences between two versions of the page.
pm:prj2025:cmoarcas:matei.plescan [2025/05/13 11:27] matei.plescan |
pm:prj2025:cmoarcas:matei.plescan [2025/05/30 00:10] (current) matei.plescan |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== RC Car with Front Assist ====== | ====== RC Car with Front Assist ====== | ||
+ | |||
+ | Matei Plescan 333CA | ||
+ | |||
===== Introducere ===== | ===== Introducere ===== | ||
Line 17: | Line 20: | ||
Plăcuța de dezvoltare cu ESP32 (cu WiFi și Bluetooth integrate) va fi plasată pe șasiul cu 2 roți, alături de un driver TB6612FNG pentru motoarele roților, un senzor HC-SR04P, un senzor BMP180, și alte elemente de conexiune (breadboards, fire, etc.). Plăcuța va comunica prin WiFi cu un dispozitiv mobil. Cu senzorul BMP180, va folosi I2C, cu cel HC-SR04P semnale digitale, iar cu driverul va folosi PWM pentru controlul roților. | Plăcuța de dezvoltare cu ESP32 (cu WiFi și Bluetooth integrate) va fi plasată pe șasiul cu 2 roți, alături de un driver TB6612FNG pentru motoarele roților, un senzor HC-SR04P, un senzor BMP180, și alte elemente de conexiune (breadboards, fire, etc.). Plăcuța va comunica prin WiFi cu un dispozitiv mobil. Cu senzorul BMP180, va folosi I2C, cu cel HC-SR04P semnale digitale, iar cu driverul va folosi PWM pentru controlul roților. | ||
- | Piese folosite: | + | **Piese folosite:** |
* ESP32 Devkit | * ESP32 Devkit | ||
- | * Șasiu cu 2 roți și 2 servomotoare | + | * Șasiu cu 2 roți și 2 motoare DC |
- | * Modul driver L298N | + | * Modul buck convertor MP1584EN |
+ | * Modul driver TB6612FNG | ||
* Senzor ultrasonic de distanță HC-SR04P (compatibil 3.3V) | * Senzor ultrasonic de distanță HC-SR04P (compatibil 3.3V) | ||
* Senzor de temperatură și presiune BMP180 | * Senzor de temperatură și presiune BMP180 | ||
Line 27: | Line 31: | ||
* Fire | * Fire | ||
- | Pinii ESP32: | + | **Pinii ESP32:** |
- | * VIN: (al DevKit) 5V – alimentare TB6612FNG Vcc, HC-SR04P Vcc, de la MP1584 | + | |
- | * IO21: SDA – BMP180 | + | |
- | * IO22: SCL – BMP180 | + | |
- | * IO05: TRIG – HC-SR04P | + | |
- | * IO18: ECHO – HC-SR04P | + | |
- | * IO12: STBY – TB6612FNG | + | |
- | * IO33: PWMA – TB6612FNG | + | |
- | * IO26: AIN1 – TB6612FNG | + | |
- | * IO25: AIN2 – TB6612FNG | + | |
- | * IO32: PWMB – TB6612FNG | + | |
- | * IO27: BIN1 – TB6612FNG | + | |
- | * IO14: BIN2 – TB6612FNG | + | |
- | Alimentare | ||
- | Folosesc 4 baterii AA, care scot ~6V. Pentru a le folosi pentru alimentarea circuitului, am introdus un modul de buck convertor bazat pe MP1584EN, care scoate o tensiune de 5V stabilă (ce alimentează ESP32). Senzorul de distanță este alimentat la 5V (dar dă output 3.3V), la fel și logica driver-ului (care primește VCC 6V separat pentru motoare). Senzorul de presiune și temperatură este alimentat de la 3.3V (de la ESP32). | + | ^ Pin ESP32 ^ Funcție ^ Conectat la ^ |
+ | | VIN (5V) | Alimentare | TB6612FNG Vcc, de la MP1584 | | ||
+ | | 3V3 | Alimentare | HC-SR04P Vcc | | ||
+ | | IO21 | SDA | BMP180 | | ||
+ | | IO22 | SCL | BMP180 | | ||
+ | | IO05 | TRIG | HC-SR04P | | ||
+ | | IO18 | ECHO | HC-SR04P | | ||
+ | | IO12 | STBY | TB6612FNG | | ||
+ | | IO33 | PWMA | TB6612FNG | | ||
+ | | IO26 | AIN1 | TB6612FNG | | ||
+ | | IO25 | AIN2 | TB6612FNG | | ||
+ | | IO32 | PWMB | TB6612FNG | | ||
+ | | IO27 | BIN1 | TB6612FNG | | ||
+ | | IO14 | BIN2 | TB6612FNG | | ||
+ | |||
+ | |||
+ | |||
+ | <note important>**Alimentare** | ||
+ | |||
+ | Folosesc 4 baterii AA, care scot ~6V. Pentru a le folosi pentru alimentarea circuitului, am introdus un modul de buck convertor bazat pe MP1584EN, care scoate o tensiune de 5V stabilă (ce alimentează ESP32). Senzorul de distanță este alimentat la 5V (dar dă output 3.3V), la fel și logica driver-ului (care primește VCC 6V separat pentru motoare). Senzorul de presiune și temperatură este alimentat de la 3.3V (de la ESP32).</note> | ||
Schema electrică a proiectului: | Schema electrică a proiectului: | ||
- | {{ schematic-matei-new.png?700 }} | + | {{ rc-car-schematic-new-new-matei.png?700 }} |
Line 58: | Line 68: | ||
* WiFi.h – pentru conectarea la rețea | * WiFi.h – pentru conectarea la rețea | ||
- | * ESPAsyncWebServer.h – pentru serverul web de control | + | * WebServer.h - pentru crearea unei pagini web cu JavaScript |
- | * NewPing.h – pentru senzorul HC-SR04P | + | * Adafruit_BMP085.h + Wire.h - pentru comunicarea I2C cu senzorul de presiune și temperatură |
Algoritmi principali: | Algoritmi principali: | ||
* Un server web simplu cu butoane pentru direcții (înainte, înapoi, stânga, dreapta, stop) | * Un server web simplu cu butoane pentru direcții (înainte, înapoi, stânga, dreapta, stop) | ||
- | * Citirea continuă a senzorului ultrasonic într-un loop separat sau într-un timer | + | * Citirea senzorului ultrasonic |
* Logica de siguranță: dacă distanța < 10cm, comanda de mers înainte este ignorată | * Logica de siguranță: dacă distanța < 10cm, comanda de mers înainte este ignorată | ||
- | * Clientul va primi un mesaj de avertizare când temperatura și presiunea depășesc anumite valori | ||
===== Rezultate Obţinute ===== | ===== Rezultate Obţinute ===== | ||
+ | {{ img_7308.jpeg?300 }} {{ screenshot_2025-05-30_at_00.08.59.png?200 }} | ||
+ | |||
+ | [[https://youtu.be/o2j7rwSTR1c]] | ||
===== Concluzii ===== | ===== Concluzii ===== | ||
+ | A fost un proiect din care am învățat destul de multe, aș spune, mai ales despre alimentare, pentru că am fost nevoit să găsesc soluții la tot felul de probleme legate de tensiunea pe care o ofer plăcuței, dar și motoarelor. | ||
===== Download ===== | ===== Download ===== | ||
+ | {{ rc-car.zip }} | ||
===== Jurnal ===== | ===== Jurnal ===== |