Der Arduino kann von sich aus keine ausreichenden Stromstärken liefern, mit denen man einen Motor betreiben könnte. Daher müssen wir einen sogenannten Motortreiber einsetzen.
Der L298N ist ein solcher Motortreiber. Mit ihm lassen sich gleich zwei Motoren ansteuern.
Pin | Beschreibung |
---|---|
ENA | Enable Driver-Kanal A (5V ein 0V aus) |
IN1 / IN2 | Driverinputs Motor A |
OUT1/OUT2 | Driveroutputs Motor A |
ENB | Enable Driver-Kanal A (5V ein 0V aus) |
IN3 / IN4 | Driverinputs Motor A |
OUT3/OUT4 | Driveroutputs Motor A |
Der Motortreiber wird über die Anschlüsse 12V und GND mit einer Versorgungsspannung von 5V bis 35V versorgt. Zwischen den Anschlüssen 5V und GND liegt eine Spannung von 5V. Damit sollte der Arduino versorgt werden.
Mit den Enable-Pins ENA und ENB lässt sich die Steuerung aktivieren (enable) oder deaktivieren. Liegt eine Spannung von 5V am Enable-Pin an, so ist die Steuerung aktiviert. Liegt eine Spannung von 0V am Enable-Pin an, so ist die Steuerung deaktiviert, der Motor wird vom Stromkreis getrennt und läuft ungebremst aus.
Mit den Pins IN1 und IN2 (IN3 und IN4) wird die Motorspannung gesteuert:
ENA(ENB) | IN1 (IN3) | IN2 (IN4) | Motoraktion |
---|---|---|---|
0V | 0V bis 5V | 0V bis 5V | Motor ist im Leerlauf |
5V | 0V | 0V | Motor wird kurzgeschlossen → Motor bremst |
5V | 5V | 0V | Motor läuft vorwärts |
5V | 5V | 5V | Motor wird kurzgeschlossen → Motor bremstV |
5V | 0V | 5V | Motor läuft rückwärts |