我在 Raspberry Pi 2 上运行 Raspbian Stretch。我试图构建一个基本的避障漫游车,但遇到了电机问题。示意图在这里找到:
我没有 DC-DC 转换器,我有一个连接到引脚 17 的带有 330 欧姆电阻的 LED。
我正在使用此代码来运行它:
from gpiozero import LED
from gpiozero import Motor
import RPi.GPIO as GPIO
from time import sleep
# prereqs
GPIO.setmode(GPIO.BCM)
Motorbin = 5
Motorbout = 6
GPIO.setup(Motor2in,GPIO.OUT)
GPIO.setup(Motor2out,GPIO.OUT)
led = LED(17)
for i in range(2):
led.on()
sleep(0.5)
led.off()
sleep(0.5)
# motors are going to start running now
motora = Motor(27, 22)
motora.forward()
sleep(5)
motora.backward()
sleep(5)
motora.stop()
for i in range(2):
led.on()
sleep(0.5)
led.off()
sleep(0.5)
motorb = (5, 6)
motorb.forward()
sleep(5)
motorb.backward()
sleep(5)
motorb.stop()
GPIO.cleanup
我运行了代码,我的 LED 闪烁了两次,第一个电机 (motora) 前后移动,但第二个电机 (motorb) 根本没有移动。我运行了终端命令“gpio readall”,发现我的第二个电机正在运行的引脚(BCM 5、6)设置为“IN”,并且都设置为“1”。
gpio readall 的终端输出
我尝试使用 GPIO.setup 命令将引脚 5 和 6 更改为输出引脚,但它仍然保持不变。我还尝试使用终端命令将引脚的输出从高更改为低,但没有任何反应。GPIO 引脚似乎卡在此模式下。
有什么办法可以修复这些卡住的 GPIO 引脚?在这种情况下,我做对了吗?
任何帮助将不胜感激!!