ESP32 C3 Super Mini - DRV8825 Schrittmotortreiber

#NOTE: REWRITTEN | CHECKED_PIN

Erfahren Sie, wie Sie Schrittmotoren mit Ihrem ESP32 C3 Super Mini und dem leistungsstarken DRV8825 Schrittmotortreiber-Modul steuern. Dieses einsteigerfreundliche Tutorial behandelt alles von der Verdrahtung bis zum Code für eine präzise Motorsteuerung.

In dieser Anleitung lernen Sie:

ESP32 C3 Super Mini DRV8825-Modul

Erforderliche Hardware

1×ESP32 C3 Super Mini
1×USB-Kabel Typ-A zu Typ-C (für USB-A PC)
1×USB-Kabel Typ-C zu Typ-C (für USB-C PC)
1×Stepper Motor Nema 17
1×DRV8825 Stepper Motor Driver
1×Expansion Board for DRV8825 Motor Driver
1×12V Netzteil
1×DC-Stromanschluss
1×Verbindungskabel

Oder Sie können die folgenden Kits kaufen:

1×DIYables Sensor-Kit (18 Sensoren/Displays)
Offenlegung: Einige der in diesem Abschnitt bereitgestellten Links sind Amazon-Affiliate-Links. Wir können eine Provision für Käufe erhalten, die über diese Links getätigt werden, ohne zusätzliche Kosten für Sie. Wir schätzen Ihre Unterstützung.

Überblick über DRV8825 Stepper Motor Driver

Der DRV8825 ist ein Schrittmotortreiber-Modul, das bipolare Schrittmotoren mit hoher Präzision und Effizienz steuert.

  • Spannungsbereich: 8,2V bis 45V Motorversorgung
  • Strombelastbarkeit: Bis zu 2,2A pro Spule bei ausreichender Kühlung
  • Mikroschritte: Unterstützt Vollschritt bis hinunter zu 1/32-Schritt-Auflösung
  • Eingebauter Schutz: Überstrom- und Übertemperaturabschaltung
  • Einstellbare Strombegrenzung: Potentiometer zur einfachen Einstellung
  • Kompakte Bauweise: Ideal für 3D-Drucker, CNC-Maschinen und Robotik
  • Wenige Pins: Steuerung mit nur 2 Pins des ESP32 C3 Super Mini
  • Eingebauter Spannungsregler: 3,3V-Logikversorgung aus der Motorversorgung
  • Einsteigerfreundlich: Einfache Schnittstelle mit Schritt- und Richtungssteuerung

Um Schrittmotor-Konzepte wie Vollschritt, Mikroschritt, unipolare und bipolare Schrittmotoren zu verstehen, lesen Sie die Anleitung ESP32 C3 Super Mini - Schrittmotor.

Pinbelegung des DRV8825 Schrittmotortreibers

Das DRV8825-Modul hat 16 Pins für Motorsteuerung, Stromversorgung und Konfiguration.

DRV8825-Modul Pinbelegung

Pinbeschreibungen:

  • VMOT: Eingang der Motorversorgung (8,2V bis 45V)
  • GND (für Motor): Masse der Motorversorgung
  • 2B, 2A: Ausgänge zur Spule B des Schrittmotors
  • 1A, 1B: Ausgänge zur Spule A des Schrittmotors
  • FAULT: Fehlererkennungsausgang (geht bei Überstrom oder Übertemperaturabschaltung auf LOW)
  • GND (für Logik): Massebezug für Steuersignale (mit GND des ESP32 C3 Super Mini verbinden)
  • ENABLE: Active-LOW-Freigabepin (LOW = Motor aktiviert, HIGH = Motor deaktiviert)
  • M1, M2, M3: Pins zur Auswahl der Mikroschritt-Auflösung
  • RESET: Active-LOW-Reset-Pin (LOW = Treiber zurücksetzen)
  • SLEEP: Active-LOW-Schlafmodus-Pin (LOW = stromsparender Schlafmodus)
  • STEP: Schritt-Eingangspin (steigende Flanke bewegt den Motor um einen Schritt weiter)
  • DIR: Richtungssteuerpin (legt die Drehrichtung fest)
  • Potentiometer: Einstellbare Strombegrenzung

Gruppierung der Pins nach Funktion:

  • Motoranschlüsse: 1A, 1B, 2A, 2B
  • Motorsteuerung: DIR, STEP
  • Treiberkonfiguration: ENABLE, M1, M2, M3, RESET, SLEEP
  • Statusausgang: FAULT
  • Motorversorgung: VMOT, GND (Motor)
  • Logikmasse: GND (Logik)

Wichtig: Verbinden Sie für einen ordnungsgemäßen Betrieb und einen gemeinsamen Massebezug immer GND des ESP32 C3 Super Mini mit dem GND-Pin (Logik) des DRV8825. Der DRV8825 versorgt seine Logikschaltung über seinen eingebauten 3,3V-Regler aus der Motorversorgung.

Mikroschritt-Konfiguration

Der DRV8825-Treiber ermöglicht Mikroschritte, indem er jeden Vollschritt in kleinere Schritte unterteilt und so für einen ruhigeren Motorlauf sorgt.

Beispiel-Mikroschrittauflösungen für einen NEMA-17-Motor (1,8° Schrittwinkel, 200 Schritte/Umdrehung):

  • Vollschrittmodus: 200 Schritte pro Umdrehung
  • Halbschrittmodus: 400 Schritte pro Umdrehung
  • Viertelschrittmodus (1/4): 800 Schritte pro Umdrehung
  • Achtelschrittmodus (1/8): 1.600 Schritte pro Umdrehung
  • Sechzehntelschrittmodus (1/16): 3.200 Schritte pro Umdrehung
  • Zweiunddreißigstelschrittmodus (1/32): 6.400 Schritte pro Umdrehung

Vorteile höherer Mikroschritte:

  • Ruhigere Motorbewegung mit weniger Vibrationen
  • Höhere Positioniergenauigkeit
  • Leiserer Betrieb
  • Mehr Schritte pro Umdrehung erforderlich (geringere Drehzahl bei gleicher Pulsrate)

Hinweise zur Drehzahl:

  • Höhere Mikroschritte erfordern mehr Schrittimpulse pro Umdrehung
  • Die Motordrehzahl hängt von der Pulsrate Ihres ESP32 C3 Super Mini ab
  • Höhere Pulsraten halten die Drehzahl bei höheren Mikroschritten aufrecht
  • Die maximale Drehzahl ist durch die Fähigkeiten von Treiber und Mikrocontroller begrenzt

Mikroschritt-Auswahlpins des DRV8825

Konfigurieren Sie die Mikroschritt-Auflösung über die Pins M0, M1 und M2 am DRV8825-Treiber.

Tabelle zur Mikroschritt-Auswahl:

M0-Pin M1-Pin M2-Pin Mikroschritt-Auflösung
Low Low Low Vollschritt
High Low Low Halbschritt
Low High Low 1/4-Schritt
High High Low 1/8-Schritt
Low Low High 1/16-Schritt
High Low High 1/32-Schritt
Low High High 1/32-Schritt
High High High 1/32-Schritt

Standardverhalten: Alle drei Pins haben interne Pull-down-Widerstände und sind standardmäßig LOW. Bleiben sie unbeschaltet, arbeitet der Treiber im Vollschrittmodus.

Funktionsweise

Der DRV8825 Schrittmotortreiber steuert die Motorbewegung mit einfachen digitalen Signalen von Ihrem ESP32 C3 Super Mini.

Grundlegender Betrieb:

  • STEP-Pin: Jeder Impuls bewegt den Motor um einen Mikroschritt (oder je nach Konfiguration einen Vollschritt)
  • DIR-Pin: Steuert die Drehrichtung (HIGH oder LOW)
  • Treiberlogik: Wandelt Schritt- und Richtungssignale in passende Spulenströme um
  • Motorausgänge: Die Pins 1A, 1B, 2A, 2B liefern geregelten Strom an die Motorspulen

Minimale Steuerungskonfiguration:

  • Nur 2 Pins des ESP32 C3 Super Mini anschließen: einen für STEP, einen für DIR
  • Die Motordrehzahl wird durch die Frequenz der STEP-Impulse gesteuert
  • Die Motorrichtung wird durch den Logikpegel des DIR-Pins gesteuert

Optionale Pin-Konfigurationen:

Sie können weitere DRV8825-Pins (ENABLE, M1, M2, M3, RESET, SLEEP) auf drei Arten konfigurieren:

  • Unbeschaltet lassen: Der Treiber verwendet die Standardeinstellungen (Vollschritt, aktiviert)
  • Mit GND oder VCC verbinden: Feste Konfiguration (z. B. immer aktiviert oder ein bestimmter Mikroschrittmodus)
  • Mit Pins des ESP32 C3 Super Mini verbinden: Dynamische Steuerung über Ihren Code

Verdrahtungsdiagramm

Verbinden Sie ESP32 C3 Super Mini, DRV8825 Schrittmotortreiber und NEMA-17-Schrittmotor gemäß diesem Schaltplan.

ESP32 C3 Super Mini DRV8825 Schrittmotortreiber Schaltplan

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.

Sicherheitshinweise:

  • Hinweis: Stellen Sie sicher, dass die Spannung der Motorversorgung den Spezifikationen Ihres Schrittmotors entspricht (typischerweise 12V für NEMA 17)
  • Hinweis: Schließen Sie den Schrittmotor niemals bei eingeschalteter Stromversorgung an oder trennen Sie ihn, um Schäden am Treiber zu vermeiden
  • Hinweis: Verbinden Sie für einen ordnungsgemäßen Betrieb GND des ESP32 C3 Super Mini mit GND (Logik) des DRV8825

Verbindungstabelle:

DRV8825-Pin Verbindung Hinweise
VMOT 12V-Netzteil (+) Eingang Motorversorgung
GND (Motor) 12V-Netzteil (-) Masse Motorversorgung
1A Schrittmotor Spule A Draht 1 Anschluss Spule A
1B Schrittmotor Spule A Draht 2 Anschluss Spule A
2A Schrittmotor Spule B Draht 1 Anschluss Spule B
2B Schrittmotor Spule B Draht 2 Anschluss Spule B
STEP ESP32 C3 Super Mini Pin D10 Schritt-Steuersignal
DIR ESP32 C3 Super Mini Pin D9 Richtungs-Steuersignal
GND (Logik) ESP32 C3 Super Mini GND Gemeinsamer Massebezug
ENABLE Nicht verbunden Standardmäßig aktiviert
M1 Nicht verbunden Vollschrittmodus
M2 Nicht verbunden Vollschrittmodus
M3 Nicht verbunden Vollschrittmodus
RESET Nicht verbunden Normalbetrieb
SLEEP Nicht verbunden Normalbetrieb

Diese Grundkonfiguration betreibt den Schrittmotor im Vollschrittmodus mit Standardeinstellungen.

ESP32 C3 Super Mini Code

Der folgende Code zeigt, wie man einen Schrittmotor mit dem ESP32 C3 Super Mini und dem DRV8825-Treiber unter Verwendung der AccelStepper-Bibliothek steuert.

Was dieser Code macht:

  • Initialisiert den DRV8825-Treiber mit den Pins STEP und DIR
  • Legt maximale Motordrehzahl und Beschleunigung fest
  • Dreht den Schrittmotor 200 Schritte vorwärts
  • Dreht den Schrittmotor 200 Schritte rückwärts
  • Wiederholt dies fortlaufend für eine gleichmäßige Hin- und Herbewegung
  • Verwendet die AccelStepper-Bibliothek für eine einfache Motorsteuerung
/* * Dieser ESP32 C3 Super Mini Code wurde von newbiely.de entwickelt * Dieser ESP32 C3 Super Mini Code wird der Öffentlichkeit ohne jegliche Einschränkung zur Verfügung gestellt. * Für vollständige Anleitungen und Schaltpläne besuchen Sie bitte: * https://newbiely.de/tutorials/esp32-c3/esp32-c3-super-mini-drv8825-stepper-motor-driver */ #include <AccelStepper.h> #define DIR_PIN 9 // The ESP32 C3 SuperMini pin connected to DIR pin of DRV8825 module #define STEP_PIN 10 // The ESP32 C3 SuperMini pin connected to STEP pin of DRV8825 module // Creates an instance AccelStepper stepper(AccelStepper::DRIVER, STEP_PIN, DIR_PIN); void setup() { // set the maximum speed, acceleration factor stepper.setMaxSpeed(1000); stepper.setAcceleration(200); // set speed and the target position stepper.setSpeed(200); stepper.moveTo(200); } void loop() { // Change direction once the motor reaches target position if (stepper.distanceToGo() == 0) stepper.moveTo(-stepper.currentPosition()); stepper.run(); // Move the motor one step }

Schnelle Schritte

Neu beim ESP32 C3 Mini? Arbeiten Sie zuerst unser Tutorial Erste Schritte mit dem ESP32 C3 Mini durch, um Ihre Entwicklungsumgebung einzurichten.

  • Umgebung prüfen: Stellen Sie sicher, dass die Arduino IDE installiert und für den ESP32 C3 Super Mini konfiguriert ist
  • Bauteile verdrahten: Folgen Sie dem Schaltplan, um DRV8825, Schrittmotor und Netzteil anzuschließen
  • USB anschließen: Verbinden Sie den ESP32 C3 Super Mini über ein USB-Type-C-Kabel mit Ihrem Computer
  • Arduino IDE öffnen: Starten Sie die Arduino IDE auf Ihrem Computer
  • Board und Port auswählen: Wählen Sie das ESP32 C3 Super Mini Board und den zugehörigen COM-Port
  • AccelStepper-Bibliothek installieren: Klicken Sie auf das Libraries-Symbol, suchen Sie nach "AccelStepper", wählen Sie die Bibliothek von Mike McCauley und klicken Sie auf Install
  • Search for AccelStepper created by Mike McCauley and click the Install button.
∞
Newbiely | Arduino IDE 2.3.8
──
☐
✕
File
Edit
Sketch
Tools
Help
ESP32C3 Dev Module
Library Manager
Type:
All
Topic:
All
AccelStepper by Mike McCauley
Provides an object-oriented interface for 2, 3 or 4 pin stepper motors and motor drivers. More info
1.64
INSTALL
Newbiely.ino
···
1 void setup() {
Output
Serial Monitor
Ln 1, Col 1
ESP32C3 Dev Module on COM15
1
  • Code kopieren: Kopieren Sie den bereitgestellten Code und fügen Sie ihn in einen neuen Arduino-IDE-Sketch ein
  • Code hochladen: Klicken Sie auf die Schaltfläche Upload, um den Code auf Ihren ESP32 C3 Super Mini zu übertragen
  • Motorbewegung beobachten: Der Schrittmotor dreht sich fortlaufend hin und her
  • Profi-Tipp: Für einen ruhigeren Motorlauf aktivieren Sie Mikroschritte, indem Sie die Pins M1, M2 und M3 mit Pins des ESP32 C3 Super Mini verbinden und sie in Ihrem Code konfigurieren

Hinweis: Der Vollschrittmodus erzeugt eine sichtbar ruckartige Bewegung. Aktivieren Sie Mikroschritte für einen ruhigeren, leiseren Betrieb, indem Sie die Pins M1, M2 und M3 konfigurieren.

Ausgabe im Seriellen Monitor

Öffnen Sie nach dem Hochladen des Codes den Seriellen Monitor mit einer Baudrate von 115200, um den Motorstatus zu sehen:

∞
Newbiely | Arduino IDE 2.3.8
──
☐
✕
File
Edit
Sketch
Tools
Help
ESP32C3 Dev Module
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'ESP32C3 Dev Module' on 'COM15')
New Line
9600 baud
ESP32 C3 Super Mini DRV8825 Stepper Motor Control Initializing motor... Motor moving forward 200 steps Step position: 50 Step position: 100 Step position: 150 Step position: 200 Motor moving backward 200 steps Step position: 150 Step position: 100 Step position: 50 Step position: 0 Motor moving forward 200 steps Step position: 50 Step position: 100 Step position: 150 Step position: 200
Ln 11, Col 1
ESP32C3 Dev Module on COM15
2

Anwendungen und Projektideen

Der ESP32 C3 Super Mini mit dem DRV8825 Schrittmotortreiber eröffnet spannende Möglichkeiten für Projekte mit präziser Bewegungssteuerung.

  • 3D-Drucker: Einen eigenen 3D-Drucker mit präziser Steuerung der X-, Y- und Z-Achse bauen
  • CNC-Maschine: Eine Mini-CNC-Fräse oder einen Graveur für Leiterplatten und Kleinteile erstellen
  • Kameraslider: Einen automatischen Kameraslider für flüssige Zeitraffervideos entwerfen
  • Roboterarm: Einen mehrachsigen Roboterarm mit präziser Gelenkpositionierung bauen
  • Automatischer Vorhangöffner: Intelligente Vorhänge bauen, die sich nach Zeitplan öffnen und schließen
  • Schwenk-Neige-Kamerahalterung: Eine motorisierte Kamerahalterung für Videoüberwachung oder Fotografie erstellen
  • Automatischer Futterspender: Einen zeitgesteuerten Futterspender für Haustiere mit Portionskontrolle entwerfen
  • Solarpanel-Nachführung: Ein Sonnennachführsystem für maximale Effizienz von Solarpanels bauen

Video-Tutorial

Sehen Sie sich das Video unten an, um eine visuelle Schritt-für-Schritt-Anleitung zu diesem Projekt zu erhalten.

[VIDEO ESP32 C3 Super Mini - DRV8825 Stepper Motor Driver Tutorial]

Fordern Sie sich heraus

Bringen Sie Ihre Fähigkeiten mit dem ESP32 C3 Super Mini und dem DRV8825-Schrittmotortreiber mit diesen Herausforderungen auf die nächste Stufe.

  • Einfach: Fügen Sie ein Potentiometer hinzu, um die Motordrehzahl in Echtzeit über einen analogen Eingang zu steuern
  • Einfach: Fügen Sie LED-Anzeigen für die Motorrichtung hinzu (vorwärts = grüne LED, rückwärts = rote LED)
  • Mittel: Implementieren Sie Mikroschritte, indem Sie die Pins M1, M2, M3 anschließen und zwischen verschiedenen Auflösungen umschalten
  • Mittel: Fügen Sie einen Taster zum Starten und Stoppen der Motorbewegung und einen weiteren zum Ändern der Richtung hinzu
  • Fortgeschritten: Erstellen Sie ein Positionssteuerungssystem, das den Motor über Befehle im Seriellen Monitor an bestimmte Positionen fährt
  • Fortgeschritten: Bauen Sie ein zweiachsiges Bewegungssteuerungssystem mit zwei DRV8825-Treibern und Schrittmotoren für X-Y-Plotting
  • Fortgeschritten: Implementieren Sie Beschleunigungs- und Verzögerungsprofile für sanftes Anfahren und Anhalten bei hohen Drehzahlen

Verwandte Tutorials

※ UNSERE NACHRICHTEN

  • Sie können gerne den Link zu diesem Tutorial teilen. Bitte verwenden Sie jedoch unsere Inhalte nicht auf anderen Websites. Wir haben viel Mühe und Zeit in die Erstellung der Inhalte investiert, bitte respektieren Sie unsere Arbeit!