⚙️ درایور موتور L293D (L293D Motor Driver)

اسم انگلیسیL293D Motor Driver
در ووکوی (Wokwi)نسخه‌ی آماده‌ای سراغ نداریم
دسته⬛ آی‌سی، درایور و رگولاتور
در شبیه‌ساز فارسیمود ساده (بدون کد) و مود آردوینو · رایگان

درایور موتور L293D (L293D Motor Driver) یک آی‌سی شانزده‌پایه است که داخلش دو پل H (H-Bridge) دارد؛ یعنی دو موتور DC را جدا از هم، در هر دو جهت و با سرعت قابل تنظیم می‌چرخاند. آردوینو فقط فرمان می‌دهد (چند میلی‌آمپر) و L293D جریان سنگین موتور را از یک باتری جدا تأمین می‌کند. ماشین رباتیک، ربات مسیریاب، در کشویی و پنکه‌ی دوجهته کارهای همیشگی‌اش هستند.

L293D در ووکوی (Wokwi)

تا جایی که می‌دانیم ووکوی نسخه‌ی آماده‌ی L293D را ندارد و موتور DC معمولی هم در فهرست قطعه‌هایش نیست. ولی منطق کنترل را می‌شود همان‌جا تست کرد: به‌جای IN1 و IN2 دو wokwi-led (با مقاومت) به پین‌های 8 و 7 بزن و یک LED سوم به‌جای EN روی پین 9. با اجرای کد پایین می‌بینی کدام جهت فعال است و نور LED سوم با PWM کم و زیاد می‌شود. اگر حرکت واقعی می‌خواهی، نزدیک‌ترین چیز در ووکوی wokwi-stepper-motor با درایور wokwi-a4988 است که موتور پله‌ای است، نه DC.

خود L293D همراه موتور و باتری در پروژه‌ی پل اچ تینکرکد فارسی رایگان شبیه‌سازی می‌شود و موتور واقعاً جلو و عقب می‌چرخد.

سیم‌کشی با آردوینو

پایه‌ی L293Dشمارهوصل به
EN1,2۱پین 9 (PWM، سرعت موتور A)
IN1۲پین 8
OUT1۳یک سر موتور
GND۴، ۵، ۱۲، ۱۳GND آردوینو و منفی باتری موتور (مشترک)
OUT2۶سر دیگر موتور
IN2۷پین 7
VCC2 (تغذیه‌ی موتور)۸مثبت باتری موتور، مثلاً ۶ تا ۹ ولت
VCC1 (تغذیه‌ی منطق)۱۶5V آردوینو
EN3,4، IN3، IN4، OUT3، OUT4۹، ۱۰، ۱۵، ۱۱، ۱۴موتور دوم به همین شکل (مثلاً EN به پین 10 و INها به 6 و 5)

جدول منطق ساده است: IN1 بالا و IN2 پایین یعنی یک جهت، برعکسش یعنی جهت دیگر، و دو ورودی برابر یعنی ایست. پایه‌ی EN هم مثل شیر آب است؛ PWM روی آن سرعت را تعیین می‌کند.

کد نمونه

// L293D: one DC motor, forward / stop / reverse with speed control.
const int EN_A = 9;   // PWM -> speed
const int IN1  = 8;
const int IN2  = 7;

void drive(int speed) {          // -255 .. 255
  if (speed > 0) {
    digitalWrite(IN1, HIGH);
    digitalWrite(IN2, LOW);
  } else if (speed < 0) {
    digitalWrite(IN1, LOW);
    digitalWrite(IN2, HIGH);
  } else {
    digitalWrite(IN1, LOW);      // both LOW = motor stops
    digitalWrite(IN2, LOW);
  }
  analogWrite(EN_A, constrain(abs(speed), 0, 255));
}

void setup() {
  pinMode(EN_A, OUTPUT);
  pinMode(IN1, OUTPUT);
  pinMode(IN2, OUTPUT);
}

void loop() {
  for (int s = 0; s <= 255; s += 5) {   // speed up, forward
    drive(s);
    delay(40);
  }
  drive(0);
  delay(800);
  drive(-180);                          // reverse at about 70%
  delay(1500);
  drive(0);
  delay(800);
}

اشتباه‌های رایج

آموزش‌های مرتبط

سؤال‌های رایج

L293D چند آمپر جریان می‌دهد؟

حدود ۶۰۰ میلی‌آمپر پیوسته برای هر کانال و تا حدود ۱٫۲ آمپر به‌صورت لحظه‌ای. برای موتورهای گیربکسی کوچک ربات کافی است؛ برای موتورهای پرجریان‌تر سراغ درایورهای ماسفتی برو.

فرق L293D با L293 چیست؟

حرف D یعنی دیودهای محافظ (هرزگرد) داخل خود آی‌سی هستند. با L293 بدون D باید برای هر خروجی خودت دیود بگذاری تا ولتاژ برگشتی موتور آی‌سی را نسوزاند.

ووکوی L293D دارد؟

تا جایی که می‌دانیم نه. منطق جهت و PWM را می‌توانی با چند LED در ووکوی تست کنی و مدار کامل با موتور و باتری را در شبیه‌ساز تینکرکد فارسی رایگان ببینی.

📖 طرز کار، مشخصات فنی و نکته‌های خرید این قطعه در دانشنامه‌ی تینکرکد فارسی: درایور موتور L293D آمده است.

آموزش‌هایی که از این قطعه استفاده می‌کنند

💡

۳۰ ایده پروژه اینترنت اشیا با ESP32، از مبتدی تا پیشرفته (با قطعه‌ها و نقطه‌ی شروع)

قطعه‌های دیگرِ آی‌سی، درایور و رگولاتور

🔋

مبدل کاهنده LM2596

LM2596 Buck Converter

🌀

درایور استپر ULN2003

ULN2003 Stepper Driver

🔌

رگولاتور ولتاژ ۷۸۰۵

7805 Voltage Regulator

⏱️

آی‌سی تایمر ۵۵۵

555 Timer IC (NE555)

🔺

آپ‌امپ (تقویت‌کننده‌ی عملیاتی)

LM358 Op-Amp

🧮

شیفت‌رجیستر 74HC595

74HC595 Shift Register

همه‌ی ۱۰۵ قطعه ← · آموزش مدار

درایور موتور L293D را در شبیه‌ساز امتحان کن 🚀