Wie du einen Schrittmotor mit Arduino steuerst (Anschlussschema + Code) – TB660 – Arduino Mega

Anschlussplan

In diesem Beitrag zeige ich dir, wie du einen Schrittmotor 🌀 ganz einfach mit einem Arduino Mega 2560 🤖 und einem Microstep Driver 🚀 steuerst. Perfekt geeignet für CNC-Maschinen, Roboterarme und viele weitere DIY-Projekte 💡.

Was ist ein Schrittmotor?


„Ein Schrittmotor ist ein Motor, der sich – wie der Name schon sagt – in Einzelschritten bewegt. Er dreht sich also nicht frei wie ein normaler Gleichstrommotor, sondern in genau definierten Winkeln – zum Beispiel 1,8° pro Schritt. Dadurch eignet er sich perfekt für präzise Positionierungen, z.B. bei 3D-Druckern oder CNC-Maschinen.“

Schrittmotoren

Aufbau und Funktionsweise

Ein typischer Schrittmotor hat mehrere Spulen im Inneren, die nacheinander bestromt werden. Dadurch entsteht ein drehendes Magnetfeld, das den Rotor Schritt für Schritt weiterzieht. Es gibt verschiedene Typen – Unipolar, Bipolar, und Hybrid-Schrittmotoren – aber das Prinzip ist immer ähnlich.

📊 Anschlussplan (Wiring Diagram)
Zur Ansteuerung brauchst du zwei Dinge:

Was du brauchen wirst:

  • Einen Treiber, wie den A4988, DRV8825 oder TB660 wie bei mir
  • Ein Steuersignal, zum Beispiel von Arduino, SPS oder Raspberry Pi.

    [Zeige z.B. eine Beispiel-Schaltung mit Arduino]

    „Der Treiber nimmt dir die ganze harte Arbeit ab. Du musst ihm nur sagen:

    • STEP: Wann soll der Motor einen Schritt machen
    • DIR: In welche Richtung soll er sich drehen?

    Fertig! Der Rest passiert im Inneren des Treibers.“

    🔌 Anschlussübersicht:

    • Arduino Mega 2560 🧠
    • Microstep Driver 🖧
    • Schrittmotor 🌀

    Wichtige Signale:

    • PUL+ / PUL- ➡️ Schritte erzeugen
    • DIR+ / DIR- 🔄 Drehrichtung festlegen
    • ENA+ / ENA- 🚦 Aktivieren/Deaktivieren (optional)

    🧰 Typische Verdrahtung:

    • 🟢 PUL+ → Pin 3
    • 🟢 DIR+ → Pin 2
    • PUL- / DIR-GND

    💻 Arduino Beispiel-Code

    #define dirPin 2
    #define stepPin 3
    
    void setup() {
      pinMode(dirPin, OUTPUT);
      pinMode(stepPin, OUTPUT);
    
      // Richtung festlegen
      digitalWrite(dirPin, HIGH);
    }
    
    void loop() {
      // Einen Schritt auslösen
      digitalWrite(stepPin, HIGH);
      delayMicroseconds(500);
      digitalWrite(stepPin, LOW);
      delayMicroseconds(500);
    }
    

    🔄 Bewegung in beide Richtungen

    #define dirPin 2
    #define stepPin 3
    
    void setup() {
      pinMode(dirPin, OUTPUT);
      pinMode(stepPin, OUTPUT);
    }
    
    void loop() {
      // 200 Schritte vorwärts 🟢
      digitalWrite(dirPin, HIGH);
      for (int i = 0; i < 200; i++) {
        digitalWrite(stepPin, HIGH);
        delayMicroseconds(500);
        digitalWrite(stepPin, LOW);
        delayMicroseconds(500);
      }
    
      delay(1000);
    
      // 200 Schritte rückwärts 🔄
      digitalWrite(dirPin, LOW);
      for (int i = 0; i < 200; i++) {
        digitalWrite(stepPin, HIGH);
        delayMicroseconds(500);
        digitalWrite(stepPin, LOW);
        delayMicroseconds(500);
      }
    
      delay(1000);
    }
    

    📝 Wichtige Tipps für dein Projekt

    • Richtige Stromversorgung prüfen (z.B. 24V ⚡)
    • Motorstrom am Treiber einstellen ⚠️
    • Treiber vor Überhitzung schützen ❄️
    • Keine Leerlaufdrehung ohne Treiber 🚫

    🎯 Fazit

    So einfach steuerst du einen Schrittmotor 🌀 mit Arduino 🤖. Mit wenigen Bauteilen und ein bisschen Code kannst du beeindruckende Projekte umsetzen 🚀. Viel Spaß beim Nachbauen! 🛠️

    Previous Article

    Learn PLC Programming with 170+ Siemens Projects

    Next Article

    Schrittmotor per serieller Kommunikation mit Python GUI steuern – Schritt für Schritt

    Write a Comment

    Leave a Comment

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

    Subscribe to our Newsletter

    Subscribe to our email newsletter to get the latest posts delivered right to your email.
    Pure inspiration, zero spam ✨