يُعدّ مُشغّل المحركات L298N خيارًا شائعًا في مشاريع الروبوتات والإلكترونيات عمومًا، نظرًا لانخفاض تكلفته وسهولة استخدامه. باستخدام هذه الوحدة، يُمكنك التحكم في كلٍ من محركات التيار المستمر والمحركات الخطوية، وتنظيم سرعتها واتجاه دورانها. سنشرح في هذا المقال كل ما تحتاج معرفته عن L298N، بدءًا من التوصيلات الأساسية وصولًا إلى كيفية استخدامه مع أردوينو للتحكم في المحركات. تابع القراءة لتحقيق أقصى استفادة من هذا المُشغّل متعدد الاستخدامات.
إذا سبق لك العمل على مشاريع روبوتية أو مركبات يتم التحكم بها بواسطة متحكم دقيق مثل أردوينو، فربما واجهتَ مواقف احتجتَ فيها إلى طاقة إضافية لتشغيل محركات أكبر. هنا يأتي دور وحدة L298N ، وهي وحدة تحكم تُتيح لك إدارة هذه الطاقة الإضافية للمحركات الكهربائية بسهولة. دعونا نتعمق في تفاصيلها.
ما هو L298N وكيف يعمل؟
وحدة L298N هي وحدة تحكم بمحركات تستخدم نظام جسر H لعكس قطبية التيار، وبالتالي التحكم في اتجاه دوران المحرك. يمكن لهذه الوحدة التحكم بمحركين تيار مستمر أو محرك خطوي واحد. توفر تيارًا أقصى قدره 2 أمبير لكل مخرج، مع ذروة 3 أمبير، وتدعم نطاق جهد تغذية من 3 إلى 35 فولت. تجدر الإشارة إلى أن كفاءة هذه الوحدة منخفضة نسبيًا، مما يعني أن المحركات ستتلقى جهدًا أقل بحوالي 3 فولت من الجهد المطبق على الوحدة. تُبدد هذه الخسائر على شكل حرارة.
يشتمل الهيكل الداخلي للوحدة على جسرين من نوع H ، وهي تقنية شائعة الاستخدام في الإلكترونيات للتحكم في اتجاه التيار. يتكون كل جسر من أربعة ترانزستورات مرتبة بتكوين يسمح بالتحكم في كل من قطبية المحرك وحالة تشغيله/إيقافه. بالإضافة إلى ذلك، تتضمن وحدة L298N ثنائيات حماية وغيرها من وسائل الحماية لمنع أي تلف محتمل عند تشغيل هذه المحركات.
المكونات الأساسية والاتصالات

تتميز وحدة L298N بسهولة استخدامها ومرونتها في التكيف مع مختلف أنواع المشاريع. فيما يلي شرح لأهم توصيلات وحدة التحكم:
- فين و جي إن دي: تُستخدم هذه المسامير لتوصيل مصدر الطاقة الخاص بالوحدة. يمكنه دعم جهد الإدخال من 3 فولت إلى 35 فولت.
- المنطقي الخامس: يحتوي هذا الدبوس على وظيفتين، اعتمادًا على ما إذا كان منظم الجهد قد تم تنشيطه عبر وصلة العبور. إذا تم توصيل وصلة العبور، فإن هذا المنفذ سيوفر خرج 5 فولت والذي يمكننا استخدامه لتشغيل أجهزة مثل Arduino. إذا تمت إزالة وصلة العبور، فيجب علينا تشغيل المكون المنطقي بمصدر 5 فولت.
- IN1، IN2، IN3، IN4: تتحكم هذه المسامير في اتجاه المحركات. على سبيل المثال، بالنسبة للمحرك A، إذا كان IN1 عند HIGH و IN2 عند LOW، فسوف يدور المحرك في اتجاه واحد. إذا كان IN1 عند LOW وIN2 عند HIGH، فسوف يدور في الاتجاه المعاكس.
- إينا و إنب: إنهم يتحكمون في سرعة المحركات باستخدام إشارات PWM (تعديل عرض النبض). إذا كانت وصلات العبور في مكانها، فستعمل المحركات بسرعة ثابتة؛ إذا لم يكن الأمر كذلك، فيمكننا ضبط السرعة بقيم من 0 إلى 255.
تشغيل وإمدادات الطاقة للL298N
هناك طريقتان رئيسيتان لتشغيل جهاز L298N :
- مع مصدر طاقة واحد: في هذه الحالة، نستخدم مصدرًا يصل إلى 12 فولت، ونقوم بتوصيل وصلة العبور لتمكين منظم 5 فولت ولا نقوم بتوصيل أي شيء بمنفذ 5 فولت، لأن هذا سيكون بمثابة مخرج.
- مع مصدرين للطاقة: البديل الآخر هو تزويد الوحدة بالطاقة بمصدرين مختلفين، أحدهما سيوفر 5 فولت اللازم للجزء المنطقي من الوحدة والآخر 12 فولت أو أكثر للمحرك، وفي هذه الحالة يتم فصل وصلة المنظم لتجنب التسبب في تلف وحدة.
سواء كنت تستخدم مصدر طاقة واحد أو اثنين، تذكر دائمًا أن تنتبه إلى دبابيس الإدخال والإخراج لتجنب حدوث دوائر قصر أو تلف محتمل.
البرمجة مع اردوينو
من أهم مزايا شريحة L298N سهولة دمجها مع مشاريع Arduino. فبمجرد توصيل بضعة دبابيس، يمكنك التحكم في سرعة واتجاه محرك واحد أو أكثر. إليك كيفية برمجة شريحة L298N باستخدام Arduino:
أولا نقوم بتعيين المنافذ التي سنستخدمها للتحكم في المحركات:
int ENA = 10; // Habilita motor A
int IN1 = 9; // Dirección Motor A
int IN2 = 8; // Dirección Motor A
int ENB = 5; // Habilita motor B
int IN3 = 7; // Dirección Motor B
int IN4 = 6; // Dirección Motor B
نبدأ بتكوين المسامير كمخرجات على setup() وإعلان الوظائف اللازمة لتحريك المحركات في الاتجاهين:
void Adelante() {
digitalWrite(IN1, HIGH);
digitalWrite(IN2, LOW);
analogWrite(ENA, 255);
digitalWrite(IN3, HIGH);
digitalWrite(IN4, LOW);
analogWrite(ENB, 255);
}
void Atras() {
digitalWrite(IN1, LOW);
digitalWrite(IN2, HIGH);
analogWrite(ENA, 128);
digitalWrite(IN3, LOW);
digitalWrite(IN4, HIGH);
analogWrite(ENB, 128);
}
يمكننا ضبط سرعة المحركات عن طريق تغيير القيم في الوظيفة analogWrite()والتي تقبل القيم بين 0 و 255 حيث 255 هي السرعة القصوى.
الحماية L298N
من أبرز ميزات جهاز L298N أنه يتضمن العديد من وسائل الحماية لمنع تلف كل من وحدة التحكم والمحركات. وتشمل هذه الوسائل ما يلي:
- حماية التيار الزائد: إذا اكتشفت الوحدة تيارًا أكبر مما يمكنها تحمله، فسوف تقوم بتنشيط الحماية لمنع الضرر.
- الحماية من الحرارة الزائدة: تم تصميم L298N لتبديد الحرارة المتولدة أثناء التشغيل، ولكن إذا تجاوزت درجة الحرارة حدودًا معينة، فسوف تقوم الوحدة بتنشيط الحماية الحرارية الخاصة بها.
- الثنائيات الحماية: تمنع هذه الثنائيات ارتفاع الجهد الناتج عن القصور الذاتي للمحركات من إتلاف الوحدة.
مثال عملي: التحكم في سيارة روبوتية
يُستخدم متحكم L298N بشكل شائع في مشاريع الروبوتات، مثل السيارات الروبوتية التي يتم التحكم فيها بواسطة أردوينو. في هذا الإعداد، من خلال تثبيت متحكم L298N على الهيكل وتوصيله بأردوينو، يمكننا التحكم في كل من اتجاه وسرعة عجلات السيارة.
مخطط الاتصال المعتاد هو كما يلي: تقوم بتشغيل وحدة L298N ببطارية خارجية للمحركات (عادةً 6 فولت أو 12 فولت) وتوصيل طرف الإخراج 5 فولت إلى Arduino. من الاردوينو يمكنك التحكم في منافذ IN1 و IN2 و IN3 و IN4 لتشغيل المحركات. يسمح لك هذا الإعداد بتحريك السيارة للأمام والخلف والدوران في اتجاهات مختلفة.
إذا كنت ترغب في تبسيط البرمجة والتحكم، يمكنك استخدام المكتبات مثل LEANTEC_ControlMotor.h. تتيح لك هذه المكتبة برمجة المحركات بأوامر أبسط مثل: control.Motor(velocidad, direccion).
يعد L298N حلاً ممتازًا للتحكم في المحركات في المشاريع الصغيرة والمتوسطة الحجم، وينتشر استخدامه على نطاق واسع في مجتمع المصنعين. على الرغم من وجود وحدات تحكم أخرى أكثر تقدمًا وكفاءة، إلا أن الجمع بين تعدد الاستخدامات والسعر والبساطة في L298N يجعلها واحدة من أفضل الخيارات لمشاريع DIY.