- 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.
- Benodigde materialen
- Raspberry Pi (Raspberry Pi 3B+ of nieuwer aanbevolen)
- Stappenmotor (bijv. NEMA 17)
- Stappenmotor-drivermodule (bijv. DRV8825 of A4988)
- Jumperdraden (DuPont-connectoren)
- 12V DC-voedingsadapter
- Breadboard (optioneel)
- Ontkoppelcondensator (bijv. 100 µF elektrolytisch)
- 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.
- Verbind de vier draden van de stappenmotor met de pinnen A1, A2, B1 en B2 op de motor-drivermodule.
- 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.
- 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.
- 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.
- 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
- 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.