Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

Schrittmotor mit A4988 Treiber & Arduino steuern – Vollständige Anleitung

Übersicht: A4988 Stepper Driver

Der A4988 ist ein Microstepping-Treiber für bipolare Schrittmotoren mit integriertem Translator. Steuerung über nur 2 Pins: STEP (Schritt-Impuls) & DIR (Richtung).

Schrittmotor mit A4988 Treiber & Arduino steuern – Vollständige Anleitung

Hauptmerkmale

  • 5 Schrittauflösungen: Full, Half, Quarter, Eighth, Sixteenth
  • Potentiometer für Strombegrenzung
  • Übertemperatur- & Cross-Current-Schutz
  • Logikspannung: 3–5,5 V
  • Max. 2 A/Phase (mit Kühlung), 1 A kontinuierlich ohne Kühlkörper
Schrittmotor mit A4988 Treiber & Arduino steuern – Vollständige Anleitung

Pinout & Anschluss

Schrittmotor mit A4988 Treiber & Arduino steuern – Vollständige Anleitung
PinFunktionAnschluss
VDD / GNDLogikversorgungArduino 5 V / GND
1A, 1BMotor Spule 1Motor A & C
2A, 2BMotor Spule 2Motor B & D
GND / VMOTMotorversorgung8–35 V + 47 µF Elko (entkopplung)
STEPSchritt-ImpulsArduino Digitalpin (z. B. 3)
DIRRichtungArduino Digitalpin (z. B. 4)
SLEEPLow = Sleep-ModeAuf High ziehen (z. B. mit RESET verbinden)
RESETLow = Translator zurücksetzenMit SLEEP verbinden für Normalbetrieb
MS1, MS2, MS3Microstepping-WahlOffen = Full Step (interner Pull-Down)
ENABLEHigh = Ausgänge ausAuf Low/GND für Betrieb
Schrittmotor mit A4988 Treiber & Arduino steuern – Vollständige Anleitung

Benötigte Komponenten

  • Schrittmotor NEMA 17 (bipolar)
  • A4988 Treiber
  • 12 V / 2 A Netzteil + Hohlstecker
  • Arduino Board
  • Breadboard & Jumper-Wires
  • 100 µF Elko (Entkopplung VMOT)

Schaltplan

Full-Step-Modus (MS-Pins offen). DIR → Pin 4, STEP → Pin 3. VMOT: 12 V + 100 µF Elko. Motor: A/C → 1A/1B, B/D → 2A/2B.

Schrittmotor mit A4988 Treiber & Arduino steuern – Vollständige Anleitung

Strombegrenzung einstellen (Wichtig!)

Referenzspannung Vref am Potentiometer messen. Formel: Stromlimit = Vref × 2 (bei manchen Boards abweichend!). Im Full-Step erreicht Wicklungsstrom nur 70 % des Limits.

Beispiel: Gemessen Vref = 0,6 V → Limit = 1,2 A. Full-Step: 1,2 A × 0,7 = 0,84 A theoretisch. Praktisch gemessen: 0,5 A → Formel stimmt nicht für alle Boards. Immer real messen!

Schrittmotor mit A4988 Treiber & Arduino steuern – Vollständige Anleitung
Schrittmotor mit A4988 Treiber & Arduino steuern – Vollständige Anleitung
Schrittmotor mit A4988 Treiber & Arduino steuern – Vollständige Anleitung

Arduino Code – Grundbeispiel

NEMA 17 mit 1,8° Schrittwinkel = 200 Schritte/Umdrehung (Full-Step).

/* Einfache Schrittmotor Steuerung A4988
 * by Dejan Nedelkovski, www.HowToMechatronics.com
 */
const int stepPin = 3;
const int dirPin = 4;

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

void loop() {
  digitalWrite(dirPin, HIGH); // Richtung 1
  for (int x = 0; x < 200; x++) { // 1 Umdrehung
    digitalWrite(stepPin, HIGH);
    delayMicroseconds(500);
    digitalWrite(stepPin, LOW);
    delayMicroseconds(500);
  }
  delay(1000);

  digitalWrite(dirPin, LOW); // Richtung 2
  for (int x = 0; x < 400; x++) { // 2 Umdrehungen
    digitalWrite(stepPin, HIGH);
    delayMicroseconds(500);
    digitalWrite(stepPin, LOW);
    delayMicroseconds(500);
  }
  delay(1000);
}

Erweiterung: Geschwindigkeitsregelung per Potentiometer

/* Schrittmotor Geschwindigkeit per Potentiometer */
const int stepPin = 3;
const int dirPin = 4;
int customDelay, customDelayMapped;

void setup() {
  pinMode(stepPin, OUTPUT);
  pinMode(dirPin, OUTPUT);
  digitalWrite(dirPin, HIGH);
}

void loop() {
  customDelayMapped = speedUp();
  digitalWrite(stepPin, HIGH);
  delayMicroseconds(customDelayMapped);
  digitalWrite(stepPin, LOW);
  delayMicroseconds(customDelayMapped);
}

int speedUp() {
  int customDelay = analogRead(A0);           // 0–1023
  int newCustom = map(customDelay, 0, 1023, 300, 4000); // 300–4000 µs
  return newCustom;
}

Herstellungsprozess

  1. Smartes Sparschwein: Münzprüfer mit Arduino Nano steuern
  2. LED per Bluetooth mit Arduino steuern – Einfache DIY-Anleitung
  3. Zwei Schrittmotoren mit Arduino Nano & Joystick steuern – Einfaches Tutorial
  4. Arduino & MPU6050: Präzise Servomotor-Steuerung mit SG90 & MG996R
  5. Temperatur & Luftfeuchte mit DHT11 auf Blynk auslesen – Arduino-Tutorial Schritt für Schritt
  6. Musikalische Töne mit Arduino erzeugen: Schritt-für-Schritt-Anleitung
  7. Arduino Uno & Bluetooth: Fernsteuerung eines Autos – Schritt-für-Schritt-Anleitung
  8. Modbus auf Arduino meistern: Schritt-für-Schritt-Anleitung
  9. Präzise Schrittmotor-Steuerung: 28BYJ-48 mit Arduino UNO & Joystick
  10. Eigenen KI-Assistenten-Roboter mit Arduino & Python bauen