Cum se folosește șoferul de motor L298N cu Arduino

How to Use the L298N Motor Driver with Arduino

Șoferul motorului L298N este un modul popular pentru controlul motoarelor DC și motoarelor pas cu pas. Vă permite să controlați viteza și direcția motorului folosind semnale PWM de la Arduino, ceea ce îl face ideal pentru robotică și proiecte de automatizare. Acest tutorial vă va ghida prin conectare și utilizarea L298N cu Arduino.


Ce vei avea nevoie

  1. L298N Modul de șofer al motorului
  2. Arduino Board (de exemplu, Uno, Mega, Nano)
  3. DC Motors sau Motors Stepper
  4. Sursa de alimentare externă (de exemplu, baterie de 9V sau 12V)
  5. Tablă de pâine și jumper
  6. Un computer cu IDE Arduino instalat

Pasul 1: Înțelegerea șoferului motorului L298N

Modulul L298N este un driver cu motor dual H-Bridge, ceea ce înseamnă că poate controla viteza și direcția a două motoare DC în mod independent sau un motor pas cu pas.

L298N PINOUT

Ac Funcţie
In1, in2 Motor o intrare de control a direcției
In3, in4 Controlul de control al direcției motorului B
Ena Motor un control de viteză (intrare PWM)
ENB Controlul vitezei motorului B (intrare PWM)
OUT1, OUT2 Motor A Outputs
Out3, out4 Ieșiri ale motorului B.
12V (VCC) Sursă de alimentare externă pentru motoare
5V (opțional) Sursa de alimentare logică (dacă jumperul este eliminat)
GND Sol

Note:

  • Modulul include un regulator de bord 5V care alimentează circuitele logice dacă jumperul este în loc și VCC este 7-12V.
  • Înlăturarea jumperului necesită să furnizați separat o alimentare logică de 5V.

Pasul 2: Cablarea L298N către Arduino

Iată cum să conectați L298N la un Arduino Uno și două motoare DC:

Pinul L298N Pinul Arduino
Ena PIN 10 (PWM)
În1 Pinul 8
In2 Pinul 9
ENB PIN 11 (PWM)
In3 Pinul 6
In4 Pinul 7
GND Arduino GND
12V (VCC) Putere externă (9V/12V)
Out1, out2 Motor un terminale
Out3, out4 Motor B terminale

Pasul 3: Încărcați codul

Iată un exemplu de schiță pentru a controla două motoare DC:

Cod de exemplu

// 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
}

Pasul 4: Testați configurarea

  1. Conectați Arduino la computer prin USB.
  2. Deschideți IDE Arduino și selectați corect Bord şi Port sub Instrumente meniu.
  3. Încărcați codul la Arduino făcând clic pe Încărcați.
  4. Observați motoarele care se învârt înainte, se opresc și se inversează pe baza secvenței programate.

Opțional: controlul vitezei dinamic

Puteți regla dinamic viteza motorului modificând valorile PWM trimise la ENA şi ENB pini folosind analogWrite (). De exemplu:

analogWrite(ENA, 100); // Slow speed
analogWrite(ENA, 255); // Full speed

Aplicațiile L298N

  1. Construirea roboților motorizați
  2. Controlul centurilor transportoare
  3. Conducerea motoarelor pas cu pas
  4. Automatizarea sistemelor cu motoare cu curent continuu

Depanare

  • Motoarele care nu se învârt: Asigurați -vă că sursa de alimentare externă este conectată și oferă suficient curent.
  • Direcția motorie incorectă: Verificați cablarea pinilor în pini și a conexiunilor inversă, dacă este necesar.
  • Comportament motor instabil: Folosiți o sursă de alimentare stabilă și evitați conexiunile libere.

Concluzie

Ați interfațat cu succes driverul motorului L298N cu Arduino pentru a controla motoarele DC. Acest modul versatil vă permite să gestionați viteza și direcția motorului cu ușurință. Experimentați în continuare prin integrarea senzorilor, a telecomenzilor sau a altor module în proiectele dvs. motorizate!

Lasă un comentariu

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.