کوډ ولټوئ

د ESP32 ټیوټوریل 15/55 - د ESP32 L293D سره د DC موټرو سرعت کنټرول | د SunFounder د ESP32 IoT زده کړې کټ

د ESP32 ټیوټوریل 15/55 - د ESP32 L293D سره د DC موټرو سرعت کنټرول | د SunFounder د ESP32 IoT زده کړې کټ

د ESP32 ښوونیز 15/55 - د ESP32 L293D سره د DC موټور سرعت کنټرول | د SunFounder د ESP32 IoT زده کړې کټ

د ESP32 سره د DC موټور کنټرول کول ممکن ډارونکي ښکاري، مګر د سم اجزاوو او پوهې سره دا خورا اداره کېدونکی دی. په دې ښوونیز درس کې، موږ به یوه پروژه جوړه کړو چې موږ ته اجازه راکوي د L293D موټور چلوونکي په کارولو سره د DC موټور سرعت او لوري کنټرول کړو. په پای کې، تاسو به یو فعال ترتیب ولرئ چې کولی شي موټور مخکې او شاته وګرځوي پداسې حال کې چې د هغه سرعت تنظیموي. د بصري حوالې لپاره، ډاډ ترلاسه کړئ چې ویډیو وګورئ (په ویډیو کې په 00:00).

ESP32-15_L293D_motor_schematic

هارډویر تشریح شوی

د دې پروژې اصلي اجزاوې د ESP32 مایکروکنټرولر او د L293D موټور چلوونکی شامل دي. ESP32 یو پیاوړی مایکروکنټرولر دی چې جوړ شوي Wi-Fi او Bluetooth وړتیاوې لري، چې دا د IoT غوښتنلیکونو لپاره مناسب کوي. دا کولی شي د خپلو GPIO پنونو له لارې مختلف هارډویر اجزاوې کنټرول کړي، پشمول د موټورونو. L293D یو دوه ګونی H-پل موټور چلوونکی دی چې تاسو ته اجازه درکوي د دوو DC موټورونو لوري او سرعت کنټرول کړئ. هر H-پل کولی شي موټور په هر لوري کې د موټور ترمینلونو ته د پلي شوي ولتاژ قطبيت په بیرته راګرځولو سره پرمخ بوځي. سربیره پردې، L293D کولی شي د هر چینل تر 600 mA پورې جریان اداره کړي، چې دا د کوچنیو او منځنیو موټورونو لپاره مناسب کوي.

L293D-Motor-Driver-IC

ډیټاشیټ تفصیلات

جوړونکی Texas Instruments
د برخې شمېره L293D
منطق/IO ولتاژ 2.5 – 7 V
د برېښنا رسولو ولتاژ 4.5 – 36 V
د تولید جریان (په هر چینل) 600 mA (عادي)
د لوړ جریان (په هر چینل) 1.2 A (اعظمي)
د PWM فریکونسي لارښود 20 kHz (عادي)
د ننوتلو منطق حدونه 0.8 V (لوړ)، 2.0 V (ټیټ)
د ولتاژ کمښت / RDS(on) / سنتریت 1.5 V (اعظمي)
حرارتي حدونه 150 °C (اعظمي)
بسته 16-DIP
یادښتونه / ډولونه څلور ګونی نیم-H چلوونکی

 

  • د لوړ جریان غوښتنلیکونو لپاره د تودوخې مناسب ضایع کول ډاډمن کړئ.
  • د ولتاژ د زیاتوالي مخنیوي لپاره د برېښنا رسول د کاپاسیټرونو سره جلا کړئ.
  • د بیرته راګرځیدلي قطبيت مخنیوي لپاره د تارونو په اړه محتاط اوسئ.
  • د ډیر تودوخې مخنیوي لپاره د سرعت کنټرول لپاره PWM وکاروئ.
  • د زیان مخنیوي لپاره د موټور درجه بندي ولتاژ وګورئ.

د تارونو لارښوونې

ESP32-15_L293D_motor_wiring

د ESP32 او L293D موټور چلوونکي تار کولو لپاره، د برېښنا په نښلولو سره پیل وکړئ. د L293D پن 16 د خپل برېښنا رسولو مثبت ترمینل سره وصل کړئ، او پن 4 ځمکې ته. بیا، موټور وصل کړئ: یو ترمینل پن 3 ته او بل د L293D پن 6 ته. د کنټرول سیګنالونو لپاره، د ESP32 GPIO پن 13 د L293D پن 2 سره او GPIO پن 14 پن 7 سره وصل کړئ. په پای کې، ډاډ ترلاسه کړئ چې د ESP32 ځمکه د L293D ځمکې سره وصل کړئ ترڅو یو ګډ حواله ډاډمن شي. که ویډیو بدیل تارونه یادوي (په ویډیو کې په 05:00)، ډاډ ترلاسه کړئ چې ښودل شوي ځانګړي بدلونونه تعقیب کړئ.

د کوډ مثالونه او تشریح

د موټور کنټرول لپاره کوډ د موټور لپاره د پنونو تعریف کول او د دوی حالتونو ټاکل لري. دلته د setup فنکشن څخه یوه برخه ده:

#define motor1A 13
#define motor2A 14

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

په دې برخه کې، موږ د موټور کنټرول پنونه د ثابتو په توګه تعریف کوو او د setup فنکشن کې یې د تولید په توګه ټاکو. دا خورا مهم دی ځکه چې دا د موټور کنټرول لپاره پنونه چمتو کوي. د loop فنکشن هغه ځای دی چې د موټور چلند کنټرول کیږي. دلته د loop یوه مهمه برخه ده:

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);
}

دا کوډ موټور په یو لوري کې د 2 ثانیو لپاره ګرځوي، بیا لوري د نورو 2 ثانیو لپاره بیرته راګرځوي، او په پای کې موټور د 3 ثانیو لپاره ودروي. دا لوپ به په غیر محدوده توګه تکرار شي، چې دوامداره کنټرول ته اجازه ورکوي. د نورو تفصیلي لیدونو او بشپړ کوډ لپاره، هغه بشپړ پروګرام ته مراجعه وکړئ چې د مقالې لاندې بار کیږي.

مظاهره / څه تمه وکړو

په بریالیتوب سره د تارونو او کوډ اپلوډ کولو وروسته، تاسو باید وګورئ چې موټور د 2 ثانیو لپاره په یو لوري کې ګرځي، د نورو 2 ثانیو لپاره لوري بدلوي، او بیا د 3 ثانیو لپاره ودریږي. که موټور د تمې سره سم ځواب ورنکړي، د عامو ستونزو لکه بیرته راګرځیدلي قطبيت یا غلط پن اړیکو لپاره وګورئ (په ویډیو کې په 08:00). دا ترتیب د ESP32 او L293D په کارولو سره د DC موټور سرعت او لوري کنټرول لپاره یوه مستقیمه لار چمتو کوي.

د ویډیو وخت نښې

  • 00:00 پیل
  • 2:01 د DC موټر پېژندنه
  • 6:14 L293D موټر چلوونکی
  • 9:17 د پروژې اسناد
  • 11:04 د تارونو اړیکه تشریح شوې
  • 14:41 د Arduino موټر کنټرول د ESP32 سره
  • 17:10 د ESP32 بورډ لپاره د Arduino بندرونه غوره کول
  • 18:52 د پروژې ننداره
  • 22:08 د ESP32 په کارولو سره د موټر سرعت کنټرول
  • 26:22 د سرعت کنټرول ننداره
  • 28:01 د سرعت او لوري کنټرول د Arduino کوډ
  • 29:05 د سرعت او لوري ننداره

انځورونه

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
ژبه: 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);
}

هغه شیان چې تاسو ورته اړتیا لرئ

سرچینې او حوالې

فایلونه📁

ډیټاشیټ (pdf)