Search Code

Tutorial ESP32 15/55 - Xakamaynta Xawaaraha Mootada DC ee ESP32 L293D | Qalabka Barashada ESP32 IoT ee SunFounder

Tutorial ESP32 15/55 - Xakamaynta Xawaaraha Mootada DC ee ESP32 L293D | Qalabka Barashada ESP32 IoT ee SunFounder

Casharka 15/55 ee ESP32 - Xakamaynta Xawaaraha Mootada DC ee ESP32 L293D | Qalabka Barashada IoT ee SunFounder ESP32

Xakamaynta mootada DC ee ESP32 waxay u ekaan kartaa wax adag, laakiin waa wax la maareyn karo marka aad haysato qaybaha saxda ah iyo fahamka. Casharkan, waxaan dhisi doonaa mashruuc noo oggolaanaya inaan xakameyno xawaaraha iyo jihada mootada DC iyadoo la adeegsanayo darawalka mootada L293D. Dhammaadka, waxaad yeelan doontaa qaab shaqeeya oo mootada ku wareejin kara hor iyo gadaal iyadoo la hagaajinayo xawaarteeda. Tixraac muuqaal ah, hubi inaad fiirisay fiidiyowga (fiidiyowga 00:00).

ESP32-15_L293D_motor_schematic

Qaybaha Hardware La Sharaxay

Qaybaha ugu muhiimsan ee mashruucan waxaa ka mid ah ESP32 microcontroller-ka iyo darawalka mootada L293D. ESP32 waa microcontroller awood badan leh oo leh awoodo Wi-Fi iyo Bluetooth ku dhex dhisan, taasoo ka dhigaysa mid ku habboon codsiyada IoT. Wuxuu xakameyn karaa qaybo kala duwan oo hardware ah, oo ay ku jiraan matoorada, iyada oo loo marayo pin-yada GPIO. L293D waa darawal mooto H-bridge labanlaab ah kaas oo kuu oggolaanaya inaad xakameyso jihada iyo xawaaraha laba matoor oo DC ah. H-bridge kastaa wuxuu kaxayn karaa mooto jihada labada dhinac ah iyadoo la rogayo polarity-ga danabka lagu rakibay xubnaha mootada. Intaa waxaa dheer, L293D wuxuu qaadi karaa qulqulka ilaa 600 mA kanal kasta, taasoo ka dhigaysa mid ku habboon matoorada yaryar ilaa kuwa dhexdhexaadka ah.

L293D-Motor-Driver-IC

Faahfaahinta Datasheet-ka

Soo saaraha Texas Instruments
Nambarka qaybta L293D
Danabka Logic/IO 2.5 – 7 V
Danabka sahayda 4.5 – 36 V
Qulqulka soo-saarka (kanal kasta) 600 mA (caadi ahaan)
Qulqulka ugu sarreeya (kanal kasta) 1.2 A (ugu badnaan)
Hagaha soo-noqnoqoshada PWM 20 kHz (caadi ahaan)
Heerarka caqabadaha gelinta 0.8 V (sare), 2.0 V (hoose)
Hoos-u-dhaca danabka / RDS(on) / saturation 1.5 V (ugu badnaan)
Xadka kulaylka 150 °C (ugu badnaan)
Baakad 16-DIP
Qoraallo / noocyo kale Darawal half-H afar-geesood ah

 

  • Hubi inaad si fiican u qaboojiso kulaylka codsiyada qulqulka sare.
  • Ka saar sahayda korontada capacitors si looga hortago kor-u-kaca danabka.
  • Ka digtoonow fiilada si looga hortago rogaanshaha polarity-ga.
  • Isticmaal PWM xakamaynta xawaaraha si looga fogaado kulaylka xad-dhaafka ah.
  • Hubi danabka lagu qiimeeyay mootada si looga hortago dhaawaca.

Tilmaamaha Fiilada

ESP32-15_L293D_motor_wiring

Si aad ugu xidho ESP32 iyo darawalka mootada L293D, ku bilow isku xirka korontada. Ku xidh pin 16 ee L293D terminal-ka togan ee sahayda korontadaada, iyo pin 4 dhulka. Marka xigta, ku xidh mootada: hal terminal pin 3 iyo kan kale pin 6 ee L293D. Calaamadaha xakamaynta, ku xidh GPIO pin 13 ee ESP32 pin 2 ee L293D iyo GPIO pin 14 pin 7. Ugu dambayntii, hubi inaad ku xidho dhulka ESP32 dhulka L293D si loo hubiyo tixraac wadaag ah. Haddii fiidiyowgu xuso fiilada kale (fiidiyowga 05:00), hubi inaad raacdo isbeddellada gaarka ah ee la muujiyay.

Tusaalooyinka Koodhka & Sharaxaad

Koodhka xakamaynta mootada wuxuu ka kooban yahay qeexida pin-yada mootada iyo dejinta qaababkooda. Waa kan qayb ka mid ah shaqada setup:

#define motor1A 13
#define motor2A 14

void setup() {
  pinMode(motor1A, OUTPUT);
  pinMode(motor2A, OUTPUT);  
}

Qaybtan, waxaan ku qeexaynaa pin-yada xakamaynta mootada sidii joogtooyin waxaanan u dejineynaa sidii wax-soo-saarka shaqada setup. Tani waa mid muhiim ah maadaama ay diyaariso pin-yada xakamaynta mootada. Shaqada loop waa meesha dhaqanka mootada lagu xakameeyo. Waa kan qayb muhiim ah oo ka mid ah loop-ka:

void loop() {
  digitalWrite(motor1A, HIGH);     
  digitalWrite(motor2A, LOW);   
  delay(2000); 

  digitalWrite(motor1A, LOW);     
  digitalWrite(motor2A, HIGH);    
  delay(2000); 

  digitalWrite(motor1A, LOW);     
  digitalWrite(motor2A, LOW);    
  delay(3000);
}

Koodhkani wuxuu ku wareejiyaa mootada hal jihada 2 ilbiriqsi, ka dibna wuxuu rogaa jihada 2 ilbiriqsi oo kale, ugu dambayntiina wuxuu joojiyaa mootada 3 ilbiriqsi. Loop-kani wuxuu ku soo noqnoqon doonaa si aan dhammaad lahayn, taasoo u oggolaanaysa xakamayn joogto ah. Aragtiyo faahfaahsan oo dheeri ah iyo koodhka dhammaystiran, tixraac barnaamijka buuxa ee hoos ku shubmaya maqaalka.

Muuujin / Waxa Lagu Filan Karo

Markaad si guul leh u xidho oo u soo rarto koodhka, waxaad arki doontaa mootada oo ku wareegaysa hal jihada 2 ilbiriqsi, beddelaysa jihada 2 ilbiriqsi oo kale, ka dibna joogsanaysa 3 ilbiriqsi. Haddii mootadu aysan u jawaabin sida la filayo, hubi qaladaadka caadiga ah sida rogaanshaha polarity-ga ama isku xirnaanshaha pin-yada oo khaldan (fiidiyowga 08:00). Qaabkani wuxuu bixiyaa hab toos ah oo lagu xakameeyo xawaaraha iyo jihada mootada DC iyadoo la adeegsanayo ESP32 iyo L293D.

Waqtiyada Fiidiyowga

  • 00:00 Bilow
  • 2:01 Hordhac ku saabsan matoorka DC
  • 6:14 Darawalka matoorka L293D
  • 9:17 Dukumeentiyada mashruuca
  • 11:04 Sharaxaadda xiriirinta
  • 14:41 Xakamaynta matoorka Arduino ee ESP32
  • 17:10 Doorashada dekedaha Arduino ee loogu talagalay guddiga ESP32
  • 18:52 Bandejiga mashruuca
  • 22:08 Xakamaynta xawaaraha matoorka iyadoo la isticmaalayo ESP32
  • 26:22 Bandejiga xakamaynta xawaaraha
  • 28:01 Koodhka Arduino ee xakamaynta xawaaraha iyo jihada
  • 29:05 Bandejiga xawaaraha iyo jihada

Sawirro

L293D-Motor-Driver-IC
L293D-Motor-Driver-IC
ESP32-15_L293D_motor_schematic
ESP32-15_L293D_motor_schematic
ESP32-15_L293D_motor_wiring
ESP32-15_L293D_motor_wiring
814-ESP32 Tutorial 15/55- Arduino code for L293D motor control
Luqadda: C++
#define motor1A 13
#define motor2A 14

// the setup function runs once when you press reset or power the board
void setup() {
  // initialize digital pin as an output.
  pinMode(motor1A, OUTPUT);
  pinMode(motor2A, OUTPUT);  
}

// the loop function runs over and over again forever
void loop() {
  
  // Rotate
  digitalWrite(motor1A, HIGH);     
  digitalWrite(motor2A, LOW);   
  delay(2000); 

  // Rotate in the opposite direction
  digitalWrite(motor1A, LOW);     
  digitalWrite(motor2A, HIGH);    
  delay(2000); 

  // Stop
  digitalWrite(motor1A, LOW);     
  digitalWrite(motor2A, LOW);    
  delay(3000);
}

Waad u baahan tahay

Kheyraadka & Tixraacyada

Faylasha📁

Waraaqa xogta (pdf)