由于使用的是步进电机,控制起来有点麻烦。
import RPi.GPIO as GPIO
import time
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM)
IN1 = 17
IN2 = 27
IN3 = 22
IN4 = 26
IN5 = 19
IN6 = 13
IN7 = 6
IN8 = 4
HIGH = 1
LOW = 0
#def init():
GPIO.setup(IN1, GPIO.OUT)
GPIO.setup(IN2, GPIO.OUT)
GPIO.setup(IN3, GPIO.OUT)
GPIO.setup(IN4, GPIO.OUT)
GPIO.setup(IN5, GPIO.OUT)
GPIO.setup(IN6, GPIO.OUT)
GPIO.setup(IN7, GPIO.OUT)
GPIO.setup(IN8, GPIO.OUT)
i = 0
while i < 1000:
# i = 1:
# i = i + 1
## if i ==1000000000:
# break
GPIO.output(IN1,HIGH)
GPIO.output(IN2,HIGH)
GPIO.output(IN3,HIGH)
GPIO.output(IN4,HIGH)
GPIO.output(IN5,HIGH)
GPIO.output(IN6,HIGH)
GPIO.output(IN7,HIGH)
GPIO.output(IN8,HIGH)
time.sleep(0.00001) #24 0.0006 12 0.0006 0.00001
GPIO.output(IN1,LOW)
GPIO.output(IN2,LOW)
GPIO.output(IN3,LOW)
GPIO.output(IN4,LOW)
GPIO.output(IN5,LOW)
GPIO.output(IN6,LOW)
GPIO.output(IN7,LOW)
GPIO.output(IN8,LOW)
time.sleep(0.0007) #24 0.00009 12 0.0002 0.0008
# time.sleep(sleep_time)
# GPIO.cleanup()
# else:
i = i + 1
# break
先定义DPIO,再使用time函数。这是四个步进电机的驱动程序,电机的驱动电压是24v,小车可以正常的旋转,但是要注意旋转的方向。
![电机的电流和角度](https://img-blog.csdn.net/20180924221342299?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxODU4NTcx/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
![电机的控制端口](https://img-blog.csdn.net/20180924221426252?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxODU4NTcx/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)