
Cuprins:
2025 Autor: John Day | [email protected]. Modificat ultima dată: 2025-01-23 15:04



Astăzi discutăm despre motoarele cu drone, numite frecvent motoare „fără perii”. Sunt utilizate pe scară largă în aeromodelism, în principal în drone, datorită puterii și rotației ridicate. Vom afla despre controlul unui motor fără perii folosind ESC și ESP32, efectuarea unei acționări analogice pe ESC folosind controlerul intern LED_PWM și utilizarea unui potențiometru pentru a modifica viteza motorului.
Pasul 1: demonstrație
Pasul 2: Resurse utilizate

- Jersee pentru conexiune
- Wifi LoRa 32
- ESC-30A
- Motor fără perii A2212 / 13t
- cablu USB
- Potențiometru pentru control
- Protoboard
- Alimentare electrică
Pasul 3: Wifi LoRa 32- Pinout

Pasul 4: ESC (Control electronic al vitezei)


- Controler electronic de viteză
- Circuit electronic pentru controlul vitezei unui motor electric.
- Controlat de la un servo control PWM de 50Hz standard.
- Variază rata de comutare a unei rețele de tranzistoare cu efect de câmp (FET). Prin ajustarea frecvenței de comutare a tranzistoarelor, viteza motorului este modificată. Viteza motorului variază prin ajustarea temporizării impulsurilor de curent furnizate la diferitele înfășurări ale motorului.
- Specificații:
Curent de ieșire: 30A continuu, 40A timp de 10 secunde
Pasul 5: Control electronic al vitezei ESC (ESC)

Pasul 6: PWM Servo Motor Control

Vom crea un servo PWM pentru a acționa asupra datelor de intrare ESC direcționând canalul 0 al LED_PWM pentru GPIO13 și vom folosi un potențiometru pentru a controla modulația.
Pentru captură, vom folosi un potențiometru de 10k ca divizor de tensiune. Captura se va face pe canalul ADC2_5, accesibil de GPIO12.
Pasul 7: Captură analogică


Conversie analog-digital
Vom converti valorile AD în PWM.
PWM al servo-ului este de 50Hz, deci perioada de impuls este de 1/50 = 0,02 secunde sau 20 de milisecunde.
Trebuie să acționăm în cel puțin 1 milisecundă până la 2 milisecunde.
Când PWM este la 4095, lățimea impulsului este de 20 milisecunde, ceea ce înseamnă că ar trebui să atingem maximul la 4095/10 pentru a ajunge la 2 milisecunde, deci PWM ar trebui să primească 410 *.
Și după cel puțin 1 milisecundă, deci 409/2 (sau 4095/20), PWM ar trebui să primească 205 *.
* Valorile trebuie să fie întregi
Pasul 8: Circuit - Conexiuni

Pasul 9: Cod sursă
Antet
#include // Necessário apenas for o Arduino 1.6.5 e posterior # include "SSD1306.h" // o mesmo que #include "SSD1306Wire.h" // OLED_SDA - GPIO4 // OLED_SCL - GPIO15 // OLED_RST - GPIO16 #define SDA 4 #define SCL 15 #define RST 16 SSD1306 display (0x3c, SDA, SCL, RST); // Instanciando e ajustando os pinos do object "display"
Variabile
const int freq = 50; const int canal_A = 0; const int resolucao = 12; const int pin_Atuacao_A = 13; const int Leitura_A = 12; int potencia = 0; int leitura = 0; int ciclo_A = 0;
Înființat
void setup () {pinMode (pin_Atuacao_A, OUTPUT); ledcSetup (canal_A, freq, resolucao); ledcAttachPin (pin_Atuacao_A, canal_A); ledcWrite (canal_A, ciclo_A); display.init (); display.flipScreenVertically (); // Vira a tela verticalmente display.clear (); // ajusta o aliniament pentru a afișa stânga.setTextAlignment (TEXT_ALIGN_LEFT); // ajusta a fonte pentru Arial 16 display.setFont (ArialMT_Plain_16); }
Buclă
void loop () {leitura = analogRead (Leitura_A); ciclo_A = map (leitura, 0, 4095, 205, 410); ledcWrite (canal_A, ciclo_A); potencia = map (leitura, 0, 4095, 0, 100); display.clear (); // limpa o buffer do display display.drawString (0, 0, String ("AD:")); display.drawString (32, 0, String (leitura)); display.drawString (0, 18, String ("PWM:")); display.drawString (48, 18, String (ciclo_A)); display.drawString (0, 36, String ("Potenzia:")); display.drawString (72, 36, String (potencia)); display.drawString (98, 36, Șir ("%")); display.display (); // mostra no display}
Pasul 10: Fișiere
Descărcați fișierele
EU NU
Recomandat:
Motor pas cu pas Motor controlat pas cu microcontroler !: 6 pași

Motor pas cu pas controlat Motor pas cu pas fără microcontroler! Acest proiect nu necesită circuite complexe sau un microcontroler. Deci, fără alte întrebări, să începem
Motor pas cu pas Motor controlat pas cu microcontroler (V2): 9 pași (cu imagini)

Motor pas cu pas controlat Motor pas cu pas fără microcontroler (V2): Într-unul din manualele mele anterioare, v-am arătat cum să controlați un motor pas cu pas folosind un motor pas cu pas fără un microcontroler. A fost un proiect rapid și distractiv, dar a venit cu două probleme care vor fi rezolvate în acest instructabil. Deci, inteligență
Motor pas cu pas Motor controlat pas cu pas Motor pas cu pas ca codificator rotativ: 11 pași (cu imagini)

Motor pas cu pas Motor controlat pas cu pas Motor pas cu pas ca codificator rotativ: Aveți câteva motoare pas cu pas în jur și doriți să faceți ceva? În acest manual, să folosim un motor pas cu pas ca un codificator rotativ pentru a controla poziția unui alt motor pas cu pas folosind un microcontroler Arduino. Deci, fără alte întrebări, hai să
ESP32 cu tutorial modul E32-433T LoRa - Interfațare LoRa Arduino: 8 pași

ESP32 cu tutorial modul E32-433T LoRa | Interfață LoRa Arduino: Hei, ce se întâmplă, băieți! Akarsh aici de la CETech. Acest proiect al meu este interfațarea modulului E32 LoRa de la eByte, care este un modul de emisie-recepție de 1 watt de mare putere cu un ESP32 folosind Arduino IDE. Am înțeles funcționarea E32 în ultima noastră tutorie
Controlul electrocasnicelor peste LoRa - LoRa în automatizarea caselor - Telecomandă LoRa: 8 pași

Controlul electrocasnicelor peste LoRa | LoRa în automatizarea caselor | Telecomandă LoRa: Controlează și automatizează aparatele tale electrice de la distanțe mari (Kilometri) fără prezența internetului. Acest lucru este posibil prin LoRa! Hei, ce se întâmplă, băieți? Akarsh aici de la CETech. Acest PCB are, de asemenea, un afișaj OLED și 3 relee care