נהג המנוע L298N הוא מודול פופולרי לבקרת מנועי DC ומנועי צעד. זה מאפשר לך לשלוט על מהירות מנוע וכיוון באמצעות אותות PWM מארדואינו, מה שהופך אותו לאידיאלי לפרויקטים של רובוטיקה ואוטומציה. מדריך זה ינחה אתכם באמצעות חיבור ושימוש ב- L298N עם Arduino.
מה תצטרך
- מודול מנהל התקן L298N
- לוח ארדואינו (למשל, אונו, מגה, ננו)
- מנועי DC או מנועי צעד
- מקור כוח חיצוני (למשל, סוללה 9V או 12V)
- חוטי לחם וגשר
- מחשב עם Arduino IDE המותקן
שלב 1: הבנת נהג המנוע L298N
מודול L298N הוא נהג מנוע כפול של גשר H, כלומר הוא יכול לשלוט על המהירות והכיוון של שני מנועי DC באופן עצמאי או מנוע צעד אחד.
L298N Pinout
פִּין | פוּנקצִיָה |
---|---|
IN1, IN2 | מנוע כניסות בקרת כיוון |
IN3, IN4 | מנוע B כניסות בקרת כיוון |
אנה | מנוע בקרת מהירות (קלט PWM) |
Enb | בקרת מהירות B מנוע (קלט PWM) |
Out1, Out2 | מנוע פלט |
Out3, Out4 | תפוקות B מנוע |
12V (VCC) | ספק כוח חיצוני למנועים |
5V (אופציונלי) | ספק כוח לוגי (אם מגשר מוסר) |
GND | טָחוּן |
הערות:
- המודול כולל רגולטור 5V המשולב שמפעיל את מעגלי ההיגיון אם המגשר במקום ו- VCC הוא 7-12V.
- הסרת המגשר מחייבת אותך לספק אספקת לוגיקה של 5V בנפרד.
שלב 2: חיווט ה- L298N לארדואינו
כך תוכלו לחבר את ה- L298N ל- Arduino uno ושני מנועי DC:
PIN L298N | סיכת ארדואינו |
---|---|
אנה | סיכה 10 (PWM) |
In1 | סיכה 8 |
In2 | סיכה 9 |
Enb | סיכה 11 (PWM) |
IN3 | סיכה 6 |
IN4 | סיכה 7 |
GND | Arduino Gnd |
12V (VCC) | כוח חיצוני (9V/12V) |
Out1, Out2 | מנוע מסופים |
OUT3, OUT4 | Motor B terminals |
שלב 3: העלה את הקוד
הנה סקיצה דוגמה לשליטה בשני מנועי DC:
קוד דוגמה
// Motor A connections
#define ENA 10
#define IN1 8
#define IN2 9
// Motor B connections
#define ENB 11
#define IN3 6
#define IN4 7
void setup() {
// Set all pins as outputs
pinMode(ENA, OUTPUT);
pinMode(IN1, OUTPUT);
pinMode(IN2, OUTPUT);
pinMode(ENB, OUTPUT);
pinMode(IN3, OUTPUT);
pinMode(IN4, OUTPUT);
}
void loop() {
// Move Motor A forward
digitalWrite(IN1, HIGH);
digitalWrite(IN2, LOW);
analogWrite(ENA, 150); // Set speed (0-255)
// Move Motor B backward
digitalWrite(IN3, LOW);
digitalWrite(IN4, HIGH);
analogWrite(ENB, 150); // Set speed (0-255)
delay(2000); // Run for 2 seconds
// Stop both motors
digitalWrite(ENA, LOW);
digitalWrite(ENB, LOW);
delay(1000); // Pause for 1 second
// Move both motors in reverse
digitalWrite(IN1, LOW);
digitalWrite(IN2, HIGH);
digitalWrite(IN3, HIGH);
digitalWrite(IN4, LOW);
analogWrite(ENA, 200);
analogWrite(ENB, 200);
delay(2000); // Run for 2 seconds
// Stop both motors
digitalWrite(ENA, LOW);
digitalWrite(ENB, LOW);
delay(1000); // Pause for 1 second
}
שלב 4: בדוק את ההתקנה
- חבר את Arduino למחשב שלך באמצעות USB.
- פתח את ה- Arduino IDE ובחר את הנכון לוּחַ וכן נָמָל מתחת ל כְּלֵי עֲבוֹדָה תַפרִיט.
- העלה את הקוד לארדואינו על ידי לחיצה העלה.
- שימו לב למנועים המסתובבים קדימה, עצירה והיפוך על בסיס הרצף המתוכנת.
אופציונלי: שליטה במהירות באופן דינמי
אתה יכול להתאים את מהירות המנוע באופן דינמי על ידי שינוי ערכי PWM שנשלחו ל ENA
וכן ENB
סיכות באמצעות AnalogWrite (). לְדוּגמָה:
analogWrite(ENA, 100); // Slow speed
analogWrite(ENA, 255); // Full speed
יישומים של L298N
- בניית רובוטים ממונעים
- שליטה על חגורות מסוע
- נהיגה מנועי צעד
- אוטומציה של מערכות עם מנועי DC
פתרון בעיות
- מנועים לא מסתובבים: ודא שאספקת החשמל החיצונית מחוברת ומספקת מספיק זרם.
- כיוון מוטורי שגוי: בדוק את החיווט של הסיכות והחיבורים ההפוכים במידת הצורך.
- התנהגות מוטורית לא יציבה: השתמש באספקת חשמל יציבה והימנע מחיבורים רופפים.
מַסְקָנָה
התממשק בהצלחה את מנהל ההתקן L298N עם Arduino כדי לשלוט על מנועי DC. מודול רב -תכליתי זה מאפשר לך לנהל בקלות מהירות וכיוון המנוע. התנסו עוד יותר על ידי שילוב חיישנים, שלט רחוק או מודולים אחרים בפרויקטים הממונעים שלכם!