Zum Inhalt springen
Arduino Stepper Schrittmotor

Motorsteuerung eines Schrittmotors (Stepper Motor)

    Stepper-Motor-Steuerung

    Um einen Schrittmotor zu steuern, benötigt man eine H-Bridge. Hier der LD293D. Auch, wenn die Schaltung recht komplex aussieht, ist das Prinzip relativ einfach. Die Ausgänge des Arduino-Boards werden durch die vier Schaltstufen der H-Bridge verstärkt und an den Stepper-Motor geschickt.

    Die Arduino-Software kommt mit der Stepper-Library. Das Beispiel MotorKnob (File>Examples>Stepper>MotorKnob) zeigt, wie sie benutzt wird.

    #include <Stepper.h>
    
    /* STEPS muss auf die Anzahl der Stepps des verwendeten Motors angepasst werden */
    #define STEPS 100
    
    // eine Instanz aus der Klasse Stepper wird erzeugt
    // sie bekommt die Anzahl der Steps und die Pins, an die der Schrittmotor
    // angeschlossen ist übermittelt
    Stepper stepper(STEPS, 8, 9, 10, 11);
    
    int previous = 0;
    
    void setup(){
      stepper.setSpeed(30);  // setzt die Geschwindigkeit des Motors in Umdrehungen pro Minute
    }
    
    void loop(){
      int val = analogRead(0);
      // dreht den Motor ja nach Sensorwert (Potentiometer)
      stepper.step(val - previous);
      previous = val;
    }
    H-Bridge mit externer Stromversorgung
    Bipolarer Stepper mit H-Bridge und externer Stromversorgung

    Ein unipolarer Steppermotor wird übrigens ganz ähnlich angeschlossen und es kann auch derselbe Code verwendet werden:


    Sieh dir jetzt meinen neuen Arduino-Videokurs an: Jetzt ansehen!


    Unipolarer Stepper auf dem Breadboard
    Ein unipolarer Steppermotor auf dem Breadboard. Die gelben Anschlüsse sind die gemeinsamen Verbindungen des jeweils roten und schwarzen Magnetanschlusses.

    Wenn dir das Projekt gefallen hat und du von weiteren interessanten Projekten inspiriert werden willst, sieh dir doch mal mein neues E-Book »Arduino Projekte Volume 1« an!

    • Die beliebtesten Arduino-Projekte von StartHardware
    • Inklusive Schaltplan, Beschreibung und Code
    • Arduino-Schnellstart-Kapitel
    • Kompakter Programmierkurs


    0 0 votes
    Article Rating
    38 Comments
    Newest
    Oldest Most Voted
    Inline Feedbacks
    Alle Kommentare anzeigen
    Mimoza
    8 Jahre zuvor

    Hallo
    Hier ist der Quellcode angezeigt, mit dem man die steps vorher schon bestimmen kann. Hab ich auch verstanden, danke dafür.

    Allerdings will ich ein Touchpanel einbauen, mit dem der Nutzer Geschwindigkeit und steps selber eingeben kann. Wie mache ich das? Ich würde mich sehr über Ideen freuen.

    Liebe Grüße,
    Mimoza

    Gerald
    8 Jahre zuvor

    Wie funktioniert die Ansteuerung wenn man einen externen Controller verwendet, also man nur einen Taktausgang benötigt, rechts/links und Start/Stopp?

    8 Jahre zuvor

    That’s not even 10 miutens well spent!

    Patrick Ludwig
    10 Jahre zuvor

    Lag vermutlich daran, dass bei der Google Bildersuche nach „293d“ das erste Bild 12V auf 8 und 16 hat. O_O

    10 Jahre zuvor

    OK :-)

    Patrick Ludwig
    10 Jahre zuvor

    Kommentar hier drüber bitte ignorieren. Hatte das irgendwie so in Erinnerung, dass der IP Symetrisch ist und die Versorgung über Enable läuft.

    Patrick Ludwig
    10 Jahre zuvor

    Hallo Stefan (falls du das noch liest),

    müßte bei Bild 2 und 3 nicht Pin 16 des ICs an der externen Spannung, statt an 5V hängen?

    Marc Morscheit
    10 Jahre zuvor

    Guten Tag, das hier ist eine tolle Seite…

    Ich habe ein Problem ich benötige eine Schrittmotorsteuerung mit Endschalter und Geschwindigkeitsregelung über Poti. Habe schon einiges versucht, nur bin ich leider nicht zu dem Ergebnis gekommen das ich erreichen möchte.
    Wenn mir einer einen Schaltplan inkl. Materialliste und den passenden Code zusenden könnte wäre das echt super. Ich würde Ihn auch für seine mühe entlohnen.
    Mit freundlichen Grüßen
    Marc

    Hans wurst
    11 Jahre zuvor

    Das ist nicht sooo unteresaant und ehher dumm und unnötig aber es gibt immer menschen die daran spaß haben ne?!

    Rainer Amon
    11 Jahre zuvor

    Hallo Stefan,
    kann ich mit oben genannter Steuerung einen Schrittmotor stufenlos steuern?
    Ich kenne mich mit Arduinos und Schrittmotoren bis dato gar nicht aus.
    Deine Seite ist sehr interessant und übersichtlich aufgebaut. Vielen Dank dafür!