Motor ESP32 LoRa ovládaný dronem: 10 kroků
Motor ESP32 LoRa ovládaný dronem: 10 kroků
Anonim
Image
Image
Demonstrace
Demonstrace

Dnes diskutujeme o dronových motorech, často nazývaných „bezkartáčové“motory. Díky své síle a vysoké rotaci jsou široce používány v leteckém modelování, hlavně v dronech. Naučíme se ovládat bezkartáčový motor pomocí ESC a ESP32, provádět analogové ovládání na ESC pomocí interního ovladače LED_PWM a pomocí potenciometru měnit otáčky motoru.

Krok 1: Ukázka

Krok 2: Použité zdroje

Použité zdroje
Použité zdroje
  • Propojky pro připojení
  • Wifi LoRa 32
  • ESC-30A
  • Bezkartáčový motor A2212 / 13t
  • USB kabel
  • Potenciometr pro ovládání
  • Protoboard
  • Zdroj napájení

Krok 3: Wifi LoRa 32- Pinout

Wifi LoRa 32- vývod
Wifi LoRa 32- vývod

Krok 4: ESC (elektronické ovládání rychlosti)

ESC (elektronické ovládání rychlosti)
ESC (elektronické ovládání rychlosti)
ESC (elektronické ovládání rychlosti)
ESC (elektronické ovládání rychlosti)
  • Elektronický regulátor otáček
  • Elektronický obvod pro řízení otáček elektromotoru.
  • Ovládáno ze standardního 50Hz PWM servo ovládání.
  • Mění rychlost přepínání sítě tranzistorů s efektem pole (FET). Nastavením spínací frekvence tranzistorů se změní rychlost motoru. Rychlost motoru se mění nastavením časování dodávaných proudových impulzů podle různých vinutí motoru.
  • Specifikace:

Výstupní proud: 30A nepřetržitě, 40A po dobu 10 sekund

Krok 5: Elektronická regulace rychlosti ESC (ESC)

Elektronická regulace rychlosti ESC (ESC)
Elektronická regulace rychlosti ESC (ESC)

Krok 6: Řízení servomotoru PWM

Řízení servomotoru PWM
Řízení servomotoru PWM

Vytvoříme PWM servo, které bude působit na vstup dat ESC směrováním kanálu 0 LED_PWM pro GPIO13, a pomocí potenciometru budeme řídit modulaci.

Pro zachycení použijeme potenciometr 10k jako dělič napětí. Zachycení bude provedeno na kanálu ADC2_5, přístupném pomocí GPIO12.

Krok 7: Analogové snímání

Analogové snímání
Analogové snímání
Analogové snímání
Analogové snímání

Analogově digitální převod

Převedeme hodnoty AD na PWM.

PWM serva je 50 Hz, takže doba pulsu je 1/50 = 0,02 sekundy nebo 20 milisekund.

Musíme jednat alespoň za 1 milisekundu až 2 milisekundy.

Když je PWM na 4095, šířka pulsu je 20 milisekund, což znamená, že bychom měli dosáhnout maxima na 4095/10, abychom dosáhli 2 milisekundy, takže PWM by mělo dostat 410 *.

A po nejméně 1 milisekundě, tedy 409/2 (nebo 4095/20), by PWM měl dostat 205 *.

* Hodnoty musí být celá čísla

Krok 8: Okruh - připojení

Obvod - připojení
Obvod - připojení

Krok 9: Zdrojový kód

Záhlaví

#include // Necessário apenas para 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 displej (0x3c, SDA, SCL, RST); // Instanciando e ajustando os pinos do objeto "display"

Proměnné

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;

Založit

neplatné nastavení () {pinMode (pin_Atuacao_A, VÝSTUP); 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 (); // iusta o alinhamento para a esquerda display.setTextAlignment (TEXT_ALIGN_LEFT); // iusta a fonte para Arial 16 display.setFont (ArialMT_Plain_16); }

Smyčka

void loop () {leitura = analogRead (Leitura_A); ciclo_A = mapa (leitura, 0, 4095, 205, 410); ledcWrite (canal_A, ciclo_A); potencia = mapa (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 ("Potência:")); display.drawString (72, 36, String (potencia)); display.drawString (98, 36, řetězec ("%")); display.display (); // mostra žádný displej}

Krok 10: Soubory

Stáhněte si soubory

INO

PDF