外接直流馬達
-
import RPi.GPIO as GPIO from time import sleep motor_pin = 18 # Use a PWM-capable GPIO like 18 motor_in1 = 23 motor_in2 = 24 GPIO.setmode(GPIO.BCM) GPIO.setup(motor_pin, GPIO.OUT) GPIO.setup(motor_in1, GPIO.OUT) GPIO.setup(motor_in2, GPIO.OUT) pwm = GPIO.PWM(motor_pin, 1000) # 1kHz PWM frequency pwm.start(0) # Start with 0% duty cycle try: pwm.ChangeDutyCycle(50) # Set speed to 50% GPIO.output(motor_in1,True ) #left back GPIO.output(motor_in2,False) #left front sleep(5) finally: pwm.stop() GPIO.cleanup()
L298N
5V (Pin 2/4) ---> 5V (optional, if ENA jumper is removed) GND (Pin 6) ---> GND GPIO18 (Pin 12) ---> ENA (for PWM speed control) GPIO23 (Pin 16) ---> IN1 GPIO24 (Pin 18) ---> IN2 Motor ---> OUT1 & OUT2 Battery + ---> 12V (motor power input on L298N) Battery - ---> GND (shared with Pi)