Motoren aansturen met de H-brug L298N

FunduinoLaatst bijgewerkt op

Zwei Gleichstrommotoren in beide Richtungen drehen lassen

Übersicht

In dieser Anleitung steuerst du zwei Gleichstrommotoren über die L298N H-Brücke an. Eine H-Brücke besteht aus vier Schaltern (oft Transistoren), die in einer H-förmigen Anordnung verbunden sind. Diese vier Schalter lassen sich so stellen, dass die sogenannte Last (zum Beispiel ein Motor) in beiden möglichen Polaritäten betrieben werden kann. Zudem lässt sich die Stromversorgung ganz trennen. Du kannst einen Gleichstrommotor also in beide Richtungen rotieren lassen.

Pinbelegung

Da die L298N H-Brücke relativ viele Aus- und Eingänge besitzt, haben wir diese nummeriert.

  • 1 = Anschluss für den Gleichstrommotor 1 – „+“
  • 2 = Anschluss für den Gleichstrommotor 1 – „–“
  • 3 = 12V Jumper. Dieser kann entfernt werden, wenn du eine Versorgungsspannung von mehr als 12V Gleichstrom verwendest. Das Entfernen des Jumpers aktiviert den 5V-Regulator der H-Brücke.
  • 4 = Eingang für die Spannungsversorgung der H-Brücke (max. 35V Gleichstrom)
  • 5 = Eingang für den GND
  • 6 = 5V Ausgang, z.B. für die Stromversorgung des Mikrocontrollers
  • 7 = Pin, über den der Gleichstrommotor 1 angesteuert wird. Falls dieser Pin an einen PWM-Pin des Mikrocontrollers angeschlossen wurde, kann die Motorengeschwindigkeit ebenfalls genau bestimmt werden.
  • 8 = Pin IN1 – Steuert Gleichstrommotor 1
  • 9 = Pin IN2 – Steuert Gleichstrommotor 1
  • 10 = Pin IN3 – Steuert Gleichstrommotor 2
  • 11 = Pin IN4 – Steuert Gleichstrommotor 2
  • 12 = Pin, über den der Gleichstrommotor 2 angesteuert wird. Falls dieser Pin an einen PWM-Pin des Mikrocontrollers angeschlossen wurde, kann die Motorengeschwindigkeit ebenfalls genau bestimmt werden.
  • 13 = Anschluss für den Gleichstrommotor 2 – „+“
  • 14 = Anschluss für den Gleichstrommotor 2 – „–“
H-Brücke L298N von oben mit nummerierten Anschlüssen
Die H-Brücke L298N von oben, Anschlüsse durchnummeriert

Schaltplan

Schaltplan mit Arduino, L298N und zwei Gleichstrommotoren
Schaltplan: zwei Gleichstrommotoren an der L298N

Beispielsketch

Beispielsketch
// Gleichstrommotor 1
int GSM1 = 10;
int in1 = 9;
int in2 = 8;
// Gleichstrommotor 2
int GSM2 = 5;
int in3 = 7;
int in4 = 6;
void setup()
{
  pinMode(GSM1, OUTPUT);
  pinMode(GSM2, OUTPUT);
  pinMode(in1, OUTPUT);
  pinMode(in2, OUTPUT);
  pinMode(in3, OUTPUT);
  pinMode(in4, OUTPUT);
}
void loop()
{
  digitalWrite(in1, HIGH);  // Motor 1 beginnt zu rotieren
  digitalWrite(in2, LOW);
  analogWrite(GSM1, 200);   // Motor 1 soll mit der Geschwindigkeit "200" (max. 255) rotieren
  digitalWrite(in3, HIGH);  // Motor 2 beginnt zu rotieren
  digitalWrite(in4, LOW);
  analogWrite(GSM2, 200);   // Motor 2 soll ebenfalls mit der Geschwindigkeit "200" (max. 255) rotieren
  delay(2000);
  digitalWrite(in1, LOW);   // Durch die Veränderung von HIGH auf LOW (bzw. LOW auf HIGH) wird die Richtung der Rotation verändert.
  digitalWrite(in2, HIGH);
  digitalWrite(in3, LOW);
  digitalWrite(in4, HIGH);
  delay(2000);
  digitalWrite(in1, LOW);   // Anschließend sollen die Motoren 2 Sekunden ruhen.
  digitalWrite(in2, LOW);
  digitalWrite(in3, LOW);
  digitalWrite(in4, LOW);
  delay(2000);
}
Handleiding beoordelen

Opmerkingen

Stel een vraag of deel je ervaring

Neem contact met ons op als iets niet werkt. Vermeld daarbij je board en de foutmelding.

We controleren elke reactie voordat deze wordt gepubliceerd. Je e-mailadres blijft bij ons.