L298N: Modul zur Steuerung von Motoren für Arduino

l298n

Es gibt viele Module für Arduino oder zur Verwendung in DIY-Projekten von Herstellern. Im Falle von L298N ist ein Modul zur Steuerung von Motoren. Mit ihnen können Sie einfache Codes verwenden Programmieren Sie unser Arduino Board und in der Lage sein, Gleichstrommotoren auf einfache und kontrollierte Weise zu steuern. Im Allgemeinen wird dieser Modultyp eher in der Robotik oder in motorisierten Aktuatoren verwendet, obwohl er für eine Vielzahl von Anwendungen verwendet werden kann.

Wir haben bereits alles eingegeben, was Sie brauchen das ESP-Modul mit ESP8266-Chip, ein Modul, mit dem die Kapazitäten erweitert werden können Arduino-Boards und andere Projekte, damit sie WiFi-Konnektivität haben. Diese Module können nicht nur isoliert verwendet werden, das Gute ist, dass sie kombiniert werden können. Zum Beispiel kann ein ESP8266 für unseren Prototyp und den L298N verwendet werden, mit dem wir einen steuerbaren Motor über das Internet oder drahtlos erhalten würden.

Einführung in den L298N und Datenblätter:

l298n Pinbelegung

Obwohl Sie mit Arduino auch mit Schrittmotoren arbeiten können, die in der Robotik bekannt sind, ist es in diesem Fall normalerweise üblicher, die Steuerung oder zu verwenden Treiber für Gleichstrommotoren. Informationen zum L298-Chip und zu den Modulen finden Sie in den Datenblättern der Hersteller, z STMicroelectronics von diesem Link. Wenn Sie ein Datenblatt des jeweiligen Moduls und nicht nur des Chips sehen möchten, können Sie dieses andere PDF des Moduls herunterladen Handsontec L298N.

Im Großen und Ganzen handelt es sich bei einem L298N jedoch um einen Treiber vom Typ H-Brücke, mit dem die Drehzahl und Drehrichtung von Gleichstrommotoren gesteuert werden können. Dank der 2 kann es auch problemlos mit Schrittmotoren verwendet werden H-Brücke das implementiert. Das heißt, eine Brücke in H, was bedeutet, dass sie aus 4 Transistoren besteht, die es ermöglichen, die Richtung des Stroms zu invertieren, so dass sich der Rotor des Motors in die eine oder andere Richtung drehen kann, wie wir wollen. Dies ist ein Vorteil gegenüber Reglern, bei denen Sie nur die Drehzahl (U / min) steuern können, indem Sie nur den Wert der Versorgungsspannung steuern.

Der L298N kann mit verschiedenen arbeiten Spannungen von 3 V bis 35 V, und bei einer Intensität von 2A. Dies ist es, was die Leistung oder Drehzahl des Motors wirklich bestimmt. Es muss berücksichtigt werden, dass die Elektronik, die das Modul verbraucht, normalerweise etwa 3 V verbraucht, sodass der Motor von der Leistung, mit der wir ihn versorgen, immer 3 V weniger erhält. Es ist ein etwas hoher Verbrauch, in der Tat hat es ein Hochleistungselement, das einen Kühlkörper benötigt, wie Sie auf dem Bild sehen können.

Um die Geschwindigkeit zu steuern, können Sie in diesem Fall etwas invers tun, was wir mit dem LM35 gemacht haben, anstatt eine bestimmte Spannung am Ausgang zu erhalten und diese in Grad umzurechnen. Hier ist es umgekehrt. Wir speisen den Treiber mit einer niedrigeren oder höheren Spannung, um zu erhalten eine schnellere oder langsamere Kurve. Darüber hinaus ermöglicht das L298N-Modul auch die Stromversorgung des Arduino-Boards mit 5 V, solange der Treiber mit mindestens 12 V Spannung versorgt wird.

Integration mit Arduino

Schaltplan von l298n mit Arduino

Da Vielzahl von Projekten, mit denen Sie dieses Modul L298N verwenden können. Tatsächlich können Sie sich einfach alles vorstellen, was Sie damit machen und an die Arbeit gehen können. Ein einfaches Beispiel wäre beispielsweise die Steuerung von zwei Gleichstrommotoren, wie aus dem vorherigen Diagramm mit Fritzing ersichtlich ist.

Bevor wir mit dem L298N arbeiten, müssen wir berücksichtigen, dass der Eingang des Moduls oder Vin unterstützt Spannungen zwischen 3V und 35V und dass wir es auch mit Masse oder GND verbinden müssen, wie auf dem Bild mit dem roten bzw. schwarzen Kabel zu sehen ist. Sobald Sie an die Stromversorgung angeschlossen sind, müssen Sie als Nächstes den Motor oder die beiden Motoren anschließen, die zur gleichzeitigen Steuerung zugelassen sind. Dies ist einfach. Sie müssen nur die beiden Klemmen des Motors mit der Verbindungslasche verbinden, auf der sich das Modul auf jeder Seite befindet.

Und jetzt kommt vielleicht das komplizierteste und ist das Anschließen der Modulanschlüsse oder Stifte zu Arduino richtig. Denken Sie daran, dass, wenn der Jumper oder die Reglerbrücke des Moduls geschlossen ist, dh der Spannungsregler des Moduls aktiviert ist und ein 5-V-Ausgang vorhanden ist, über den Sie die Arduino-Karte mit Strom versorgen können. Wenn Sie dagegen den Jumper entfernen, deaktivieren Sie den Regler und müssen den Arduino unabhängig voneinander mit Strom versorgen. Auge! Da der Jumper nur auf 12 V eingestellt werden kann, müssen Sie ihn für mehr als das entfernen, um das Modul nicht zu beschädigen ...

Das können Sie zu schätzen wissen Für jeden Motor gibt es 3 Anschlüsse. Die mit IN1 bis IN4 gekennzeichneten steuern die Motoren A und B. Wenn Sie keinen der Motoren angeschlossen haben, weil Sie nur einen benötigen, müssen Sie nicht alle einsetzen. Die Jumper auf jeder Seite dieser Anschlüsse für jeden Motor sind ENA und ENB, dh um Motor A und B zu aktivieren, die vorhanden sein müssen, wenn beide Motoren funktionieren sollen.

zu Motor A. (Es wäre dasselbe für B), wir müssen IN1 und IN2 angeschlossen haben, die die Drehrichtung steuern. Wenn IN1 auf HIGH und IN2 auf LOW steht, dreht sich der Motor in die eine Richtung, und wenn sie auf LOW und HIGH stehen, dreht er sich in die andere Richtung. Um die Drehzahl zu steuern, müssen Sie die INA- oder INB-Jumper entfernen und die Pins verwenden, die anscheinend mit dem Arduino PWM verbunden sind. Wenn wir ihm einen Wert von 0 bis 255 geben, erhalten wir eine niedrige bzw. höhere Geschwindigkeit.

In Bezug auf Die Programmierung ist auch in der Arduino IDE einfach. Ein Code wäre beispielsweise:

<pre>// Motor A
int ENA = 10;
int IN1 = 9;
int IN2 = 8;

// Motor B
int ENB = 5;
int IN3 = 7;
int IN4 = 6;

void setup ()
{
 // Declaramos todos los pines como salidas
 pinMode (ENA, OUTPUT);
 pinMode (ENB, OUTPUT);
 pinMode (IN1, OUTPUT);
 pinMode (IN2, OUTPUT);
 pinMode (IN3, OUTPUT);
 pinMode (IN4, OUTPUT);
}
//Mover los motores a pleno rendimiento (255), si quieres bajar la velocidad puedes reducir el valor hasta la mínima que son 0 (parados)</pre>
<pre>//Para mover los motores en sentido de giro contrario, cambia IN1 a LOW e IN2 a HIGH

void Adelante ()
{
 //Direccion motor A
 digitalWrite (IN1, HIGH);
 digitalWrite (IN2, LOW);
 analogWrite (ENA, 255); //Velocidad motor A
 //Direccion motor B
 digitalWrite (IN3, HIGH);
 digitalWrite (IN4, LOW);
 analogWrite (ENB, 255); //Velocidad motor B
}</pre>

Schreiben Sie den ersten Kommentar

Hinterlasse einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert mit *

*

*

  1. Verantwortlich für die Daten: Miguel Ángel Gatón
  2. Zweck der Daten: Kontrolle von SPAM, Kommentarverwaltung.
  3. Legitimation: Ihre Zustimmung
  4. Übermittlung der Daten: Die Daten werden nur durch gesetzliche Verpflichtung an Dritte weitergegeben.
  5. Datenspeicherung: Von Occentus Networks (EU) gehostete Datenbank
  6. Rechte: Sie können Ihre Informationen jederzeit einschränken, wiederherstellen und löschen.