Hoe een stappenmotor aan te sturen met een Raspberry Pi

D

Daniel Zhang

Laatst geüpdatet op Aug 17, 2026

  1. Inleiding

De Raspberry Pi is een populaire single-board computer die veel wordt gebruikt in hobby- en industriële projecten. Het is in wezen een kleine computer ter grootte van een creditcard. Hij wordt veel gebruikt in diverse projecten, waaronder het aansturen van stappenmotoren — een veelvoorkomende taak in bewegingsbesturingstoepassingen. In dit artikel leert u hoe u de programmeertaal Python en de RPi.GPIO-bibliotheek kunt gebruiken om een stappenmotor aan te sturen, inclusief de bijbehorende bedradingsinstructies.

  1. Benodigde materialen
  1. Raspberry Pi (Raspberry Pi 3B+ of nieuwer aanbevolen)
  2. Stappenmotor (bijv. NEMA 17)
  3. Stappenmotor-drivermodule (bijv. DRV8825 of A4988)
  4. Jumperdraden (DuPont-connectoren)
  5. 12V DC-voedingsadapter
  6. Breadboard (optioneel)
  7. Ontkoppelcondensator (bijv. 100 µF elektrolytisch)
  1. Bedradingsinstructies

Veiligheidsopmerking: Sluit altijd eerst de motor- en driverbedrading aan voordat u de voeding inschakelt. Controleer alle verbindingen dubbel om schade aan de Raspberry Pi of de drivermodule te voorkomen.

  1. Verbind de vier draden van de stappenmotor met de pinnen A1, A2, B1 en B2 op de motor-drivermodule.
  2. Verbind de positieve pool van de 12V-voeding met de VMOT-pin op de drivermodule en de negatieve pool met de GND-pin. Plaats een ontkoppelcondensator (bijv. 100 µF elektrolytisch) over VMOT en GND, zo dicht mogelijk bij de drivermodule, om spanningspieken te onderdrukken.
  3. Verbind de 5V-voedingspin (fysieke pin 2 of pin 4) van de Raspberry Pi met de VCC-pin op de drivermodule en verbind een GND-pin (bijv. fysieke pin 6) met de GND-pin op de drivermodule.
  4. Verbind de volgende BCM GPIO-pinnen op de Raspberry Pi met de bijbehorende pinnen op de drivermodule:
Raspberry Pi GPIO (BCM) Fysieke pin Drivermodule-pin
GPIO 17 Pin 11 DIR
GPIO 18 Pin 12 STEP
GPIO 27 Pin 13 MS1
GPIO 22 Pin 15 MS2
GPIO 23 Pin 16 ENABLE

Tip: De ENABLE-pin op de meeste A4988/DRV8825-modules is actief-laag. Door deze LAAG te trekken wordt de driveruitgang ingeschakeld.

  1. Python-code-implementatie

Installeer eerst de RPi.GPIO-bibliotheek. Voer de volgende commando's in de terminal in:

sudo apt-get update
sudo apt-get install python3-rpi.gpio

Maak vervolgens een Python-bestand aan met de naam stepper_motor.py en voer de volgende code in:

import time
import RPi.GPIO as GPIO

# Definieer pinnen (BCM-nummering)
DIR = 17
STEP = 18
MS1 = 27
MS2 = 22
ENABLE = 23

# Stel GPIO-modus in
GPIO.setmode(GPIO.BCM)
GPIO.setup(DIR, GPIO.OUT)
GPIO.setup(STEP, GPIO.OUT)
GPIO.setup(MS1, GPIO.OUT)
GPIO.setup(MS2, GPIO.OUT)
GPIO.setup(ENABLE, GPIO.OUT)

# Schakel driver in en stel richting in
GPIO.output(ENABLE, GPIO.LOW)   # Driver inschakelen (actief-laag)
GPIO.output(DIR, GPIO.HIGH)     # Draairichting met de klok mee

# Stel stapmodus in op basis van drivermodel (bijv. A4988)
GPIO.output(MS1, GPIO.HIGH)     # 1/4 stap
GPIO.output(MS2, GPIO.LOW)

# Stuur motorrotatie aan
steps = 200
delay = 0.001  # Kortere vertraging voor hogere snelheid

for _ in range(steps):
    GPIO.output(STEP, GPIO.HIGH)
    time.sleep(delay)
    GPIO.output(STEP, GPIO.LOW)
    time.sleep(delay)

# Ruim GPIO op
GPIO.cleanup()

Sla tot slot het bestand op en voer het uit in de terminal:

python3 stepper_motor.py
  1. Samenvatting

Dit artikel heeft beschreven hoe u een Raspberry Pi kunt gebruiken om een stappenmotor aan te sturen, inclusief bedradingsinstructies en Python-code met behulp van de RPi.GPIO-bibliotheek. U kunt eenvoudig motorbesturing realiseren door deze stappen te volgen. Pas de parameters in de code (zoals het aantal stappen, de vertraging en de microstapinstellingen) aan op basis van uw projectvereisten.