Sadržaj:
- Korak 1: Demonstracija
- Korak 2: Korišteni resursi
- Korak 3: Wi-Fi LoRa 32- ispis
- Korak 4: ESC (elektronička kontrola brzine)
- Korak 5: ESC elektronička kontrola brzine (ESC)
- Korak 6: Kontrola PWM servo motora
- Korak 7: Analogno snimanje
- Korak 8: Krug - veze
- Korak 9: Izvorni kod
- Korak 10: Datoteke
Video: ESP32 LoRa kontrolisani dronski motor: 10 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:07
Danas raspravljamo o bespilotnim motorima, koji se često nazivaju motorima bez četkica. Široko se koriste u aeromodelarstvu, uglavnom u bespilotnim letjelicama, zbog svoje snage i velike rotacije. Naučit ćemo o upravljanju motorom bez četkica pomoću ESC i ESP32, izvođenjem analognog aktiviranja ESC -a pomoću internog LED_PWM kontrolera i korištenjem potenciometra za promjenu brzine motora.
Korak 1: Demonstracija
Korak 2: Korišteni resursi
- Džemperi za povezivanje
- Wi -Fi LoRa 32
- ESC-30A
- Motor bez četkica A2212 / 13t
- USB kabel
- Potenciometar za kontrolu
- Protoboard
- Napajanje strujom
Korak 3: Wi-Fi LoRa 32- ispis
Korak 4: ESC (elektronička kontrola brzine)
- Elektronski regulator brzine
- Elektroničko kolo za kontrolu brzine elektromotora.
- Upravlja se sa standardne PWM servo kontrole od 50Hz.
- Ona mijenja brzinu prebacivanja mreže tranzistora s efektom polja (FET). Podešavanjem sklopne frekvencije tranzistora mijenja se brzina motora. Brzina motora se mijenja prilagođavanjem vremena isporučenih impulsa struje različitim namotima motora.
- Specifikacije:
Izlazna struja: 30A kontinuirano, 40A 10 sekundi
Korak 5: ESC elektronička kontrola brzine (ESC)
Korak 6: Kontrola PWM servo motora
Napravit ćemo PWM servo za djelovanje na ESC unos podataka usmjeravanjem kanala 0 LED_PWM za GPIO13, te ćemo koristiti potenciometar za kontrolu modulacije.
Za hvatanje ćemo koristiti potenciometar od 10k kao razdjelnik napona. Snimanje će se izvršiti na kanalu ADC2_5, kojem je dostupan GPIO12.
Korak 7: Analogno snimanje
Analogno -digitalna konverzija
Pretvorit ćemo vrijednosti AD u PWM.
PWM servo je 50Hz, pa je period impulsa 1/50 = 0,02 sekunde ili 20 milisekundi.
Moramo djelovati za najmanje 1 milisekundu do 2 milisekunde.
Kada je PWM na 4095, širina impulsa je 20 milisekundi, što znači da bismo trebali postići maksimum na 4095/10 da bismo dosegli 2 milisekunde, tako da bi PWM trebao primiti 410 *.
I nakon najmanje 1 milisekunde, dakle 409/2 (ili 4095/20), PWM bi trebao primiti 205 *.
* Vrijednosti moraju biti cijeli brojevi
Korak 8: Krug - veze
Korak 9: Izvorni kod
Zaglavlje
#include // Potrebni apeni za Arduino 1.6.5 e posterior #uključuju "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"
Varijable
const int freq = 50; const int kanal_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;
Postaviti
void setup () {pinMode (pin_Atuacao_A, OUTPUT); ledcSetup (channel_A, freq, resolucao); ledcAttachPin (pin_Atuacao_A, kanal_A); ledcWrite (kanal_A, ciclo_A); display.init (); display.flipScreenVertical (); // Vira a tela verticalmente display.clear (); // ajusta o alinhamento para esquerda display.setTextAlignment (TEXT_ALIGN_LEFT); // ajusta a fonte para Arial 16 display.setFont (ArialMT_Plain_16); }
Petlja
void loop () {leitura = analogRead (Leitura_A); ciclo_A = karta (leitura, 0, 4095, 205, 410); ledcWrite (kanal_A, ciclo_A); potencia = map (leitura, 0, 4095, 0, 100); display.clear (); // limpa ili bafer za prikaz 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 bez prikaza}
Korak 10: Datoteke
Preuzmite datoteke
JA NE
Preporučuje se:
LCD kontrolisani Messenger LCD -- 16x2 LCD -- Hc05 -- Jednostavno -- Bežična oglasna ploča: 8 koraka
LCD kontrolisani Messenger LCD || 16x2 LCD || Hc05 || Jednostavno || Bežična oglasna ploča: …………………………. PRETPLATITE SE na moj YouTube kanal za više video zapisa …… ………………………………… Oglasna ploča se koristi za ažuriranje novih informacija ili Ako želite poslati poruku sa u sobi ili na poluvremenu
Uradi sam Arduino kontrolisani jaje za jaja: 12 koraka (sa slikama)
Uradi sam Arduino kontrolisani jaje za jaja: U ovom uputstvu pokazat ću ti kako napraviti vlastiti Bot za jaja kontroliran pomoću Arduina. Prije sam htio uspjeti, ali mislio sam da mi je preteško, ali sam pogriješio. Lako se gradi, pa to sigurno mogu učiniti svi
Automatski laserski kontrolisani sigurnosni sistem: 22 koraka
Automatski sigurnosni sistem sa laserskom kontrolom: Sigurnosni sistem sa laserskom kontrolom je široko rasprostranjena zaštita za sprečavanje neovlašćenog pristupa. Vrlo je učinkovit koji radi na svjetlosnom senzoru i laseru za zaštitu naših domova, ureda, banaka, ormarića i raznih važnih ploča
Kontrolisani prekidač za svjetlo koji treperi očima koristeći zaštitne naočare Shota Aizawe (My Hero Academia): 8 koraka (sa slikama)
Kontrolisani prekidač za svjetlo koji treperi očima koristeći naočare za brisanje Shota Aizawe (Moja herojska akademija): Ako čitate mangu moje akademije heroja ili gledate anime moje akademske zajednice, morate poznavati lik po imenu shota aizawa. Shota Aizawa, poznata i kao Eraser Head, je Pro Hero i učiteljica razredne nastave u američkom razredu 1-A. Shota's Quirk mu daje ab
Fpga kontrolisani RC servo motor robot ruka - Digilent takmičenje: 3 koraka
Fpga kontrolisana RC servo motorna ruka robota - Digilent takmičenje: FPGA ruka servo motor robot ruka Cilj ovog projekta je stvaranje programabilnog sistema koji može izvesti operacije lemljenja na perf ploči. Sistem je zasnovan na razvojnoj ploči Digilent Basys3 i bit će sposoban za lemljenje