Schrittmotor mit Arduino aufbauen - Treiber, Verdrahtung und Tipps

Ludwig Zander .

24. Oktober 2026

Arduino Uno mit Kabeln verbunden, die einen Stepper Motor Arduino steuern.

Ein Aufbau mit Schrittmotor und Arduino, international oft als stepper motor arduino bezeichnet, ist ein guter Einstieg in präzise Bewegungssteuerung. Ich zeige, welche Motoren und Treiber sinnvoll sind, wie die Verdrahtung funktioniert, warum ein Arduino-Pin allein nicht ausreicht und wo solche Antriebe in der Automobilbranche wirklich eingesetzt werden.

Die wichtigsten Punkte für einen zuverlässigen Schrittmotor-Aufbau

  • Treiber erforderlich: Ein Arduino steuert die Signale, liefert aber nicht direkt den Motorstrom.
  • A4988 oder DRV8825: Diese Module eignen sich für viele NEMA-17-Motoren und erlauben Mikroschritte.
  • Stromlimit einstellen: Ein falsch eingestellter Treiber führt zu Überhitzung, Schrittverlusten oder Motorschäden.
  • Automotive-Prototypen: Schrittmotoren passen zu Klappen, Anzeigen und Stellmechaniken, aber nicht ohne Weiteres zu sicherheitskritischen Fahrzeugfunktionen.
  • Referenzpunkt einplanen: Ohne Endschalter oder Positionssensor kennt der Motor seine absolute Position nach einem Neustart nicht.

Arduino UNO steuert NEMA17-Schrittmotor über Treiberplatine und 12V-Netzteil.

Warum Schrittmotoren mit Arduino so beliebt sind

Ein Schrittmotor bewegt sich nicht einfach nur schnell oder langsam, sondern in definierten Winkelschritten. Ein typischer Motor mit 1,8 Grad pro Schritt benötigt 200 Vollschritte für eine Umdrehung. Dadurch kann ich eine Welle, Klappe, Anzeige oder Spindel sehr gezielt positionieren.

Der entscheidende Unterschied zu einem gewöhnlichen Gleichstrommotor liegt in der Ansteuerung. Der Arduino erzeugt Steuerimpulse, während ein separater Treiber die Spulen mit dem nötigen Strom versorgt. Genau diese Trennung schützt den Mikrocontroller und macht auch stärkere Motoren nutzbar.

In der Praxis wird die Position allerdings nur berechnet. Verliert der Motor wegen zu hoher Last oder Beschleunigung Schritte, merkt der Arduino davon zunächst nichts. Für einfache Bastelprojekte reicht das oft aus, bei einer Fahrzeugmechanik würde ich deshalb zusätzlich einen Endschalter, Hall-Sensor oder Encoder einplanen.

Welcher Motor und welcher Treiber passt zum Projekt

Für den ersten Versuch würde ich nicht automatisch zum größten NEMA-17-Motor greifen. Entscheidend sind Drehmoment, Betriebsspannung, Spulenstrom, Bauform und die Frage, ob die Bewegung leise, schnell oder besonders präzise sein soll.

Komponente Typischer Einsatz Stärken Grenzen
28BYJ-48 mit ULN2003 Klappen, kleine Anzeigen, Lernprojekte Günstig, leicht anzuschließen, niedrige Spannung Wenig Drehmoment, Getriebespiel, eher langsam
NEMA 17 mit A4988 Spindeln, Schlitten, Displays, Prototypen Einfaches STEP/DIR-Signal, bis 1/16-Mikroschritt Kühlung und Stromlimit müssen stimmen
NEMA 17 mit DRV8825 Mehr Drehmoment und höhere Auflösung Bis 1/32-Mikroschritt, höherer Spannungsbereich Kann stärker erwärmen und akustisch auffälliger sein
Automotive-Aktuator Fahrzeugnahe Entwicklungs- und Prüfaufbauten Für Temperatur, Vibration und Bordnetz ausgelegt Deutlich teurer und nicht so schnell austauschbar

Der 28BYJ-48 ist ideal, wenn ich das Prinzip verstehen möchte. Für einen motorisierten Monitor, eine kleine Lüftungsklappe oder eine fein verstellbare Halterung im Car-HiFi-Umfeld ist ein NEMA 17 mit Treiber meist die bessere Wahl. Das Getriebespiel des kleinen 28BYJ-48 kann bei einer Anzeige oder Klappe sichtbar stören.

A4988- und DRV8825-Module arbeiten mit einem STEP- und einem DIR-Eingang. Jeder Impuls am STEP-Pin bewegt den Motor um einen Voll- oder Mikroschritt, während DIR die Richtung festlegt. Die Microstep-Pins verändern die Auflösung, aber sie machen aus einem ungenauen mechanischen Aufbau keine hochpräzise Positionierung.

So verdrahtest du einen NEMA-17-Motor mit Arduino

Für einen typischen Werkbankaufbau benötige ich einen Arduino, einen bipolaren NEMA-17, einen A4988- oder DRV8825-Treiber, ein passendes Netzteil und einige Kabel. Der Motor wird an die beiden Spulenanschlüsse des Treibers angeschlossen, nicht an die Arduino-Pins.

  • STEP geht beispielsweise an Arduino-Pin 3.
  • DIR geht beispielsweise an Arduino-Pin 4.
  • GND von Arduino und Treiber müssen verbunden sein.
  • VMOT erhält die Motorspannung vom separaten Netzteil.
  • VDD wird mit der Logikspannung des Treibers verbunden.
  • Die Microstep-Pins bleiben für den ersten Test auf Vollschritt.

Ein NEMA 17 gehört niemals direkt an den 5-V-Ausgang des Arduino. Außerdem darf ich die Motorleitungen nicht bei eingeschalteter Versorgung abziehen oder umstecken. Ein Kondensator nahe dem VMOT-Anschluss, eine Sicherung und eine saubere Masseführung verhindern viele typische Ausfälle.

const byte stepPin = 3;
const byte dirPin = 4;
const byte enablePin = 5;

void setup() {
  pinMode(stepPin, OUTPUT);
  pinMode(dirPin, OUTPUT);
  pinMode(enablePin, OUTPUT);

  digitalWrite(enablePin, LOW);
}

void moveSteps(long steps, bool direction) {
  digitalWrite(dirPin, direction);

  for (long i = 0; i < steps; i++) {
    digitalWrite(stepPin, HIGH);
    delayMicroseconds(700);
    digitalWrite(stepPin, LOW);
    delayMicroseconds(700);
  }
}

void loop() {
  moveSteps(200, HIGH);
  delay(800);

  moveSteps(200, LOW);
  delay(800);
}

Bei einem Motor mit 200 Vollschritten entspricht ein Aufruf mit 200 Schritten ungefähr einer Umdrehung. Die tatsächliche Geschwindigkeit hängt von der Impulsdauer, der Versorgungsspannung, der Last und der Beschleunigung ab. Für gleichmäßige Bewegungen würde ich bei größeren Projekten eine Bibliothek mit Beschleunigungsprofil verwenden, weil abruptes Starten schnell zu Schrittverlusten führt.

Das Stromlimit entscheidet über Wärme und Zuverlässigkeit

Auf vielen günstigen Treibermodulen ist das Stromlimit ab Werk nicht passend für den eigenen Motor eingestellt. Der Nennstrom auf dem Motordatenblatt bezieht sich normalerweise auf eine Spule. Stelle ich den Treiber deutlich höher ein, wird der Motor heiß und auch der Treiber kann thermisch abschalten.

Beim A4988 hängt die Berechnung des Referenzwerts vom verwendeten Messwiderstand ab. Bei einem verbreiteten Modul mit 0,068 Ohm gilt ungefähr VREF = 8 × Imax × 0,068. Für 1 A ergibt das rund 0,54 V. Das ist ein Rechenbeispiel, kein universeller Einstellwert, denn Bauform, Kühlung und Modulversion können abweichen.

Ich stelle den Strom immer mit einem Multimeter und nach Datenblatt des konkreten Boards ein. Der Strom am Netzteil ist nicht automatisch der Spulenstrom. Besonders bei Mikroschritten und höherer Versorgungsspannung können beide Werte deutlich auseinanderliegen.

Mehr Mikroschritte machen die Bewegung meist ruhiger, verringern aber nicht automatisch das mechanische Spiel. Für eine Klappe oder einen kleinen Zeiger reichen oft Voll- oder Halbschritte. Bei sichtbaren Vibrationen helfen zusätzlich eine niedrigere Beschleunigung, eine stabilere Befestigung und eine geeignete Versorgungsspannung.

Welche Rolle Schrittmotoren im Auto spielen

In Fahrzeugen werden kleine Schrittmotoren unter anderem für Instrumentenzeiger, Klimaklappen und Scheinwerferverstellung eingesetzt. Auch die Positionierung kompakter Anzeigen oder beweglicher Bauteile kann von der kontrollierten Schrittbewegung profitieren. Entscheidend ist dabei nicht nur die Auflösung, sondern die reproduzierbare Bewegung auf kleinem Bauraum.

Für einen Prüfstand oder ein Car-HiFi-Projekt kann ein Arduino sehr nützlich sein. Denkbar sind beispielsweise ein ausfahrbares Display, eine motorisierte Abdeckung, eine verstellbare Lüftungsklappe oder ein kleiner Mechanismus für eine individuelle Einbaukonsole. Ich würde den Arduino dabei als Entwicklungs- und Demonstrationsplattform betrachten, nicht als fertiges Steuergerät für eine sicherheitsrelevante Fahrzeugfunktion.

Anforderung Schrittmotor Alternative
Definierte Winkelposition ohne komplexe Regelung Sehr gut geeignet Servomotor ebenfalls möglich
Hohe Drehzahl Eher ungeeignet Gleichstrommotor mit Encoder
Hohe Haltekraft im Stillstand Gut, aber mit Wärmeentwicklung Getriebemotor mit Bremse
Absolute Position nach Stromausfall Nur mit Referenzsensor Encoder oder Absolutwertgeber

Ein Fahrzeugbordnetz ist außerdem keine ideale 12-V-Laborversorgung. Spannungsspitzen, Verpolung, elektromagnetische Störungen, Temperatur und Vibration müssen berücksichtigt werden. Für einen Einbau ins Auto würde ich deshalb einen automotive-tauglichen Spannungswandler, eine Sicherung, Schutzbeschaltung und einen definierten Rücksetzmechanismus verwenden.

Die häufigsten Fehler bei Arduino-Schrittmotoren

Der Motor brummt nur

Dann sind häufig die Spulenpaare falsch angeschlossen. Mit dem Multimeter lassen sich die beiden Wicklungen über ihren niedrigen Widerstand identifizieren. Werden Anschlüsse verschiedener Spulen vermischt, hält der Motor oft nur fest oder vibriert.

Der Motor verliert Schritte

Zu hohe Geschwindigkeit, zu abrupte Beschleunigung oder zu wenig Drehmoment sind die üblichen Ursachen. Ich reduziere zuerst die Schrittfrequenz und beschleunige langsamer. Erst danach würde ich über einen stärkeren Motor oder eine höhere Versorgungsspannung nachdenken.

Treiber oder Motor werden heiß

Prüfe das Stromlimit, die Kühlung und die mechanische Last. Ein warmer Motor kann normal sein, aber dauerhaft sehr hohe Temperaturen sind ein Warnsignal. Beim DRV8825 kann bei höherem Phasenstrom ein Kühlkörper oder zusätzlicher Luftstrom nötig werden.

Lesen Sie auch: Die Geheimnisse des Motors im Porsche 356: Leistung und Technik enthüllt

Die Position stimmt nach dem Einschalten nicht

Ein Schrittmotor kennt nach dem Start keine absolute Position. Eine einfache Referenzfahrt gegen einen Endschalter löst dieses Problem meist zuverlässig. Bei einer beweglichen Fahrzeugmechanik würde ich zusätzlich eine Plausibilitätsprüfung und eine Begrenzung gegen mechanisches Verklemmen vorsehen.

Aus dem Bastelaufbau wird erst mit Referenz und Schutz ein gutes System

Für den ersten Test genügen Arduino, Treiber und Motor. Sobald die Mechanik dauerhaft laufen oder im Fahrzeug eingesetzt werden soll, zählen andere Dinge stärker: Referenzfahrt, Strombegrenzung, EMV, Temperaturüberwachung und ein sicherer Fehlerzustand.

Mein praktischer Rat ist deshalb, zuerst die Bewegung ohne Last zu testen, danach die reale Mechanik langsam anzukoppeln und die Endpositionen zu vermessen. Eine sauber geplante Halterung bringt oft mehr als ein teurerer Motor. Wenn der Antrieb bei Blockade weiter Strom zieht, braucht das System außerdem eine Abschaltung oder eine Stromüberwachung.

Für eine kleine Anzeige oder Klappe ist ein Schrittmotor mit Arduino eine sehr gute Lern- und Prototypenlösung. Für Drehzahlregelung, hohe Dynamik oder eine absolute Positionsrückmeldung kann ein Servomotor oder ein Gleichstrommotor mit Encoder die bessere Entscheidung sein.

Der sinnvollste nächste Schritt für dein Motorprojekt

Beginne mit einem unbelasteten Motor, stelle das Stromlimit vorsichtig ein und prüfe die Drehrichtung mit wenigen Schritten. Danach kommen Endschalter, Beschleunigungsprofil und die tatsächliche Mechanik hinzu. So erkennst du früh, ob dein Konzept nur auf dem Tisch funktioniert oder auch im engen, vibrationsreichen Umfeld eines Fahrzeugs zuverlässig bleibt.

Häufig gestellte Fragen

Der Arduino erzeugt nur die STEP- und DIR-Signale und liefert nicht den nötigen Spulenstrom. Ein A4988 oder DRV8825 versorgt den Motor, während Arduino und Treiber über GND verbunden werden.
Der 28BYJ-48 mit ULN2003 eignet sich für kleine, langsame Lernprojekte und Klappen. Ein NEMA-17 mit A4988 ist für Spindeln, Schlitten und Displays geeignet und unterstützt bis zu 1/16-Mikroschritt. Der DRV8825 bietet bis zu 1/32-Mikroschritt und einen höheren Spannungsbereich, kann aber stärker erwärmen.
Das Stromlimit muss nach dem Datenblatt des konkreten Motors und Treibermoduls eingestellt werden. Für ein verbreitetes A4988-Modul mit 0,068 Ohm gilt als Rechenbeispiel VREF = 8 × Imax × 0,068. Die Einstellung sollte mit einem Multimeter erfolgen, da Bauform und Kühlung abweichen können.
Ein Schrittmotor kennt nach dem Einschalten seine absolute Position nicht und kann bei Überlast Schritte verlieren. Ein Endschalter, Hall-Sensor oder Encoder ermöglicht die Referenzierung. Bei Fahrzeugmechaniken sind außerdem Strombegrenzung, Temperaturüberwachung, EMV-Schutz und ein definierter Rücksetzmechanismus sinnvoll.
Artikel bewerten

Durchschnitt: 0.0 / 5 · 0 Bewertungen

Tags

schrittmotor arduino a4988 drv8825 referenzfahrt
Autor Ludwig Zander
Ludwig Zander
Mein Name ist Ludwig Zander und ich bringe drei Jahre Erfahrung in der Automobilbranche mit. Schon seit meiner Jugend fasziniert mich die Welt der Automobile, insbesondere die Entwicklungen im Bereich Car HiFi. Ich finde es spannend, wie hochwertige Audiotechnik das Fahrerlebnis erheblich verbessern kann. In meinen Artikeln konzentriere ich mich darauf, komplexe Themen verständlich zu erklären und aktuelle Trends zu beleuchten. Dabei lege ich großen Wert auf sorgfältige Recherche und den Vergleich verschiedener Informationen, um meinen Lesern präzise und nützliche Inhalte zu bieten. Mein Ziel ist es, jedem die Möglichkeit zu geben, die faszinierende Welt der Fahrzeugakustik besser zu verstehen und die besten Entscheidungen für ihr Auto zu treffen.
Kommentare (0)
Kommentar hinzufügen