我有一个问题。我有一个Raspberry Pi连接到PiFace Relay Plus和PiFace Motor Extra。是否可以同时运行两个或更多电机?
运行一台电机没问题:
import pifacerelayplus
import time
pfr = pifacerelayplus.PiFaceRelayPlus(pifacerelayplus.MOTOR_DC)
pfr.motors[0].forward()
time.sleep(5)
pfr.motors[0].coast()
我还设法运行一台电机而不是下一台电机:
import pifacerelayplus
import time
pfr = pifacerelayplus.PiFaceRelayPlus(pifacerelayplus.MOTOR_DC)
pfr.motors[0].forward()
time.sleep(5)
pfr.motors[0].coast()
time.sleep(2)
pfr.motors[1].forward()
time.sleep(5)
time.motors[1].coast()
但我无法找到如何让两台电机同时运转。我尝试了这个代码,但只运行第一个电机,而不是程序结束,第一个电机仍在运行并且永不停止。第二台电机永远不会开始运转。
import pifacerelayplus
import time
pfr = pifacerelayplus.PiFaceRelayPlus(pifacerelayplus.MOTOR_DC)
pfr.motors[0].forward()
pfr.motors[1].forward()
time.sleep(5)
pfr.motors[0].coast()
pfr.motors[1].coast()
我甚至试图为第二个电机创建另一个变量“prf2”,但它也没有帮助。我很高兴得到任何帮助。
答案 0 :(得分:1)
运行程序时是否收到任何错误?查看pifacerelayplus的源代码,如果您在0.15秒内给出两个电机命令,则意图失败,理由是两个电机的启动浪涌可能比您的电源可以处理的更多。一些短暂的睡眠()应该避免这个问题。