Indholdsfortegnelse:
- Trin 1: Demonstration
- Trin 2: Brugte ressourcer
- Trin 3: Wifi LoRa 32- Pinout
- Trin 4: ESC (elektronisk hastighedskontrol)
- Trin 5: ESC Electronic Speed Control (ESC)
- Trin 6: PWM servomotorstyring
- Trin 7: Analog optagelse
- Trin 8: Kredsløb - Forbindelser
- Trin 9: Kildekode
- Trin 10: Filer
Video: ESP32 LoRa -kontrolleret dronemotor: 10 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:28
I dag diskuterer vi dronemotorer, ofte kaldet "børsteløse" motorer. De er meget udbredt til aeromodellering, hovedsageligt i droner, på grund af deres kraft og høje rotation. Vi lærer om styring af en børsteløs motor ved hjælp af ESC og ESP32, udførelse af en analog aktivering på ESC ved hjælp af den interne LED_PWM -controller og brug af et potentiometer til at ændre motorhastigheden.
Trin 1: Demonstration
Trin 2: Brugte ressourcer
- Jumpere til tilslutning
- Wifi LoRa 32
- ESC-30A
- Børsteløs A2212 / 13t motor
- USB -kabel
- Potentiometer til styring
- Protoboard
- Strømforsyning
Trin 3: Wifi LoRa 32- Pinout
Trin 4: ESC (elektronisk hastighedskontrol)
- Elektronisk hastighedsregulator
- Elektronisk kredsløb til styring af en elmotors hastighed.
- Styres fra en standard 50Hz PWM servostyring.
- Det varierer koblingshastigheden for et netværk af felteffekttransistorer (FET'er). Ved at justere transistorernes koblingsfrekvens ændres motorhastigheden. Motorhastigheden varieres ved at justere timingen af de leverede strømimpulser til motorens forskellige viklinger.
- Specifikationer:
Udgangsstrøm: 30A kontinuerlig, 40A i 10 sekunder
Trin 5: ESC Electronic Speed Control (ESC)
Trin 6: PWM servomotorstyring
Vi opretter en PWM -servo til handling på ESC -datainput ved at dirigere kanal 0 på LED_PWM til GPIO13 og bruge et potentiometer til at styre moduleringen.
Til optagelsen vil vi bruge et potentiometer på 10k som en spændingsdeler. Optagelsen foretages på kanal ADC2_5, tilgængelig af GPIO12.
Trin 7: Analog optagelse
Analog til digital konvertering
Vi konverterer værdierne af AD til PWM.
Servoens PWM er 50Hz, så pulsperioden er 1/50 = 0,02 sekunder eller 20 millisekunder.
Vi skal handle i mindst 1 millisekund til 2 millisekunder.
Når PWM er på 4095, er pulsbredden 20 millisekunder, hvilket betyder, at vi bør nå maksimum ved 4095/10 for at nå 2 millisekunder, så PWM skal modtage 410 *.
Og efter mindst 1 millisekund, derfor 409/2 (eller 4095/20), skulle PWM modtage 205 *.
* Værdier skal være heltal
Trin 8: Kredsløb - Forbindelser
Trin 9: Kildekode
Header
#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 display (0x3c, SDA, SCL, RST); // Instanciando e ajustando os pinos do objeto "display"
Variabler
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;
Opsætning
ugyldig opsætning () {pinMode (pin_Atuacao_A, OUTPUT); ledcSetup (kanal_A, frekvens, opløsning); ledcAttachPin (pin_Atuacao_A, kanal_A); ledcWrite (kanal_A, ciclo_A); display.init (); display.flipScreenVertically (); // Vira a tela verticalmente display.clear (); // ajusta o alinhamento para a esquerda display.setTextAlignment (TEXT_ALIGN_LEFT); // ajusta a fonte para Arial 16 display.setFont (ArialMT_Plain_16); }
Sløjfe
void loop () {leitura = analogRead (Leitura_A); ciclo_A = map (leitura, 0, 4095, 205, 410); ledcWrite (kanal_A, ciclo_A); potencia = kort (leitura, 0, 4095, 0, 100); display.clear (); // limpa o buffer viser 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, String ("%")); display.display (); // mostra no display}
Trin 10: Filer
Download filerne
INO
Anbefalede:
LoRa 3 km til 8 km trådløs kommunikation med lavpris E32 (sx1278/sx1276) enhed til Arduino, Esp8266 eller Esp32: 15 trin
LoRa 3 til 8 km trådløs kommunikation med lavpris E32 (sx1278/sx1276) enhed til Arduino, Esp8266 eller Esp32: Jeg opretter et bibliotek til at styre EBYTE E32 baseret på Semtech -serien af LoRa -enheder, meget kraftfuld, enkel og billig enhed.Du kan finde 3Km version her, 8Km version herDe kan arbejde over en afstand på 3000m til 8000m, og de har en masse funktioner og
Lora Gateway baseret på MicroPython ESP32: 10 trin (med billeder)
Lora Gateway Baseret på MicroPython ESP32: Lora har været meget populær i de seneste år. Det trådløse kommunikationsmodul, der bruger denne teknologi, er normalt billigt (ved hjælp af frit spektrum), lille i størrelse, energieffektivt og har en lang kommunikationsafstand og bruges hovedsageligt til indbyrdes kommunikation
Kom godt i gang med ESP32 - Installation af ESP32 -plader i Arduino IDE - ESP32 Blink -kode: 3 trin
Kom godt i gang med ESP32 | Installation af ESP32 -plader i Arduino IDE | ESP32 Blink -kode: I denne instruks kan vi se, hvordan man begynder at arbejde med esp32, og hvordan man installerer esp32 -kort i Arduino IDE, og vi vil programmere esp 32 til at køre blinkkode ved hjælp af arduino ide
ESP32 Med E32-433T LoRa-modul Tutorial - LoRa Arduino -grænseflade: 8 trin
ESP32 Med E32-433T LoRa-modul Tutorial | LoRa Arduino Interfacing: Hey, hvad sker der, fyre! Akarsh her fra CETech.This project of my interfaces the E32 LoRa module from eByte which is a high-power 1-watt transceiver module with an ESP32 using Arduino IDE.We forstod funktionen af E32 i vores sidste tutoria
Styr husholdningsapparater over LoRa - LoRa i hjemmeautomatisering - LoRa fjernbetjening: 8 trin
Styr husholdningsapparater over LoRa | LoRa i hjemmeautomatisering | LoRa fjernbetjening: Styr og automatiser dine elektriske apparater fra lange afstande (kilometer) uden tilstedeværelse af internettet. Dette er muligt gennem LoRa! Hey, hvad sker der, gutter? Akarsh her fra CETech.Dette printkort har også et OLED -display og 3 relæer, som en