الL9110S محرك السائق هو حل مدمج وفعال للتحكم بمحركات التيار المستمر ومحركات الخطوة في مشاريع Arduino الخاصة بك. سواء كنت تبني روبوتًا بسيطًا أو نظام أتمتة أكثر تعقيدًا، فإن L9110S يوفر طريقة موثوقة لإدارة عمليات المحرك مع أكثر قدر من التوصيل والأسطر البرمجية البسيطة. في هذه المقالة، سنستعرض ميزات L9110S محرك السائق، كيفية توصيله بـ Arduino، وسنقدّم أمثلة شفرة للبدء.
ما هو الـ L9110S?
الL9110S هو دائرة متكاملة لسائق محرك بقناتين مصممة للتحكم بسرعة واتجاه محركين DC أو محرك خطوة واحد. يعمل ضمن نطاق جهد من 2.5V إلى 12V، مما يجعله متعدد الاستخدامات لتطبيقات مختلفة. الـ L9110S معروف بحجمه الصغير، وانخفاض استهلاك الطاقة، وسهولة التكامل مع المتحكمات الدقيقة مثل Arduino.
لماذا تختار الـ L9110S?
- تصميم مدمج: حجمه الصغير يجعله مثاليًا للمشاريع ذات المساحة المحدودة.
- قناتان: تحكم في محركين بشكل مستقل، مما يتيح حركات معقدة.
- سهل الاستخدام: واجهة بسيطة مع وسم واضح لتوصيلات سهلة.
- فعّال من حيث التكلفة: سعر مناسب دون التضحية بالوظائف.
توصيل الـ L9110S إلى Arduino
إعداد الـ L9110S مع Arduino بسيط. فيما يلي دليل خطوة بخطوة لإجراء التوصيلات:
- توصيلات الطاقة:
- وصل دبوس
VCCفي الـ L9110S إلى دبوس 5V على الـ Arduino. - وصل دبوس
GNDفي الـ L9110S إلى دبوس GND على الـ Arduino. - توصيلات المحرك:
- وصل المحرك الأول إلى دبابيس
OUT1وOUT2. - إذا كنت تستخدم محركًا ثانيًا، فوصّله إلى دبابيس
OUT3وOUT4. -
دبابيس التحكم:
- وصل دبابيس
AIN1وAIN2إلى دبوسين رقميين على الـ Arduino (مثل الدبابيس 2 و3). - إذا كنت تستخدم محركًا ثانيًا، وصل
BIN1وBIN2إلى دبّيسين رقميين آخرين (مثل الدبابيس 4 و5).
- وصل دبابيس
راجع المخطط أدناه للحصول على تمثيل مرئي للتوصيلات:
برمجة الـ Arduino
بعد إعداد الأجهزة، الخطوة التالية هي برمجة الـ Arduino للتحكم بالمحركات. فيما يلي مثال شفرة يوضح كيفية التحكم باتجاه وسرعة محرك DC باستخدام L9110S محرك السائق.
// Define motor control pins
const int AIN1 = 2;
const int AIN2 = 3;
// Setup function
void setup() {
// Initialize the motor control pins as outputs
pinMode(AIN1, OUTPUT);
pinMode(AIN2, OUTPUT);
}
// Loop function
void loop() {
// Rotate motor forward
digitalWrite(AIN1, HIGH);
digitalWrite(AIN2, LOW);
delay(2000); // Run for 2 seconds
// Stop the motor
digitalWrite(AIN1, LOW);
digitalWrite(AIN2, LOW);
delay(1000); // Stop for 1 second
// Rotate motor backward
digitalWrite(AIN1, LOW);
digitalWrite(AIN2, HIGH);
delay(2000); // Run for 2 seconds
// Stop the motor
digitalWrite(AIN1, LOW);
digitalWrite(AIN2, LOW);
delay(1000); // Stop for 1 second
}
شرح:
-
AIN1وAIN2تُستخدمان للتحكم باتجاه المحرك. - وضع
AIN1على HIGH وAIN2على LOW يدير المحرك في الأمام. - وضع
AIN1على LOW وAIN2على HIGH يدير المحرك في الخلف. - وضع كلا من
AIN1وAIN2على LOW يوقف المحرك.
التحكم بالسرعة عبر PWM
الL9110S يدعم PWM (تضمين عرض النبضة) للتحكم بالسرعة. عن طريق تغيير دورة العمل لإشارة PWM، يمكنك ضبط سرعة المحرك. إليك كيفية تعديل الشيفرة السابقة لتشمل التحكم بالسرعة:
// Define motor control pins
const int AIN1 = 2;
const int AIN2 = 3;
const int PWM_PIN = 9; // PWM pin for speed control
// Setup function
void setup() {
// Initialize the motor control pins as outputs
pinMode(AIN1, OUTPUT);
pinMode(AIN2, OUTPUT);
pinMode(PWM_PIN, OUTPUT);
}
// Loop function
void loop() {
// Set speed to 150 out of 255
analogWrite(PWM_PIN, 150);
// Rotate motor forward
digitalWrite(AIN1, HIGH);
digitalWrite(AIN2, LOW);
delay(2000); // Run for 2 seconds
// Stop the motor
digitalWrite(AIN1, LOW);
digitalWrite(AIN2, LOW);
delay(1000); // Stop for 1 second
// Rotate motor backward
digitalWrite(AIN1, LOW);
digitalWrite(AIN2, HIGH);
delay(2000); // Run for 2 seconds
// Stop the motor
digitalWrite(AIN1, LOW);
digitalWrite(AIN2, LOW);
delay(1000); // Stop for 1 second
}
شرح: الدالة analogWrite() ترسل إشارة PWM إلى المحرك، مما يسمح لك بالتحكم في سرعته. تتراوح القيمة من 0 (إيقاف) إلى 255 (السرعة القصوى).
تطبيقات الـ L9110S مع Arduino
التركيبة بين L9110S محرك السائق وArduino تفتح مجموعة واسعة من إمكانيات المشاريع:
- الروبوتات: تحكم بحركة الأذرع الروبوتية أو الروبوتات المتنقلة بتحكم دقيق في المحركات.
- أنظمة الأتمتة: أتمتة مهام مثل فتح/إغلاق الأبواب، ضبط الصمامات، أو تحريك مكونات في خطوط التجميع.
- مشاريع افعلها بنفسك: ابتكر مشاريع إلكترونية مخصصة مثل شرائح كاميرا بمحركات، أنظمة ري أوتوماتيكية للنباتات، أو مركبات يتم التحكم بها عن بعد.
- أدوات تعليمية: علّم الطلاب عن التحكم بالمحركات والإلكترونيات والبرمجة من خلال مشاريع عملية.
خاتمة
الL9110S محرك السائق هو مكوّن متعدد الاستخدامات وسهل الاستخدام لأي شخص يرغب في التحكم بالمحركات باستخدام Arduino. قدرته ذات القناتين، إلى جانب بساطة التوصيل والبرمجة، تجعله خيارًا ممتازًا للمبتدئين والهواة المتمرسين على حد سواء. باتباع الخطوات الموضحة في هذه المقالة، يمكنك دمج التحكم بالمحركات بسرعة في مشاريعك وتوسيع وظائف أنظمة Arduino الخاصة بك.
جرب سرعات واتجاهات ومحركات مختلفة لاستغلال كامل إمكانيات L9110S محرك السائق. تمنياتنا بتجارب ممتعة!
