运行 同时使用 PiFace Relay Plus 和 Motor Extra 两个或多个电机

Running two or more motors at the same time with PiFace Relay Plus and Motor Extra

我有一个问题。我有一个 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()

但我不知道如何同时制造两个电机 运行。我试过这段代码,但只有 运行s 第一个电机,然后程序结束,第一个电机仍然 运行s 并且永远不会停止。第二台电机从不启动 运行.

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",但它也无济于事。我很高兴能得到任何帮助。

您在运行程序中遇到任何错误吗?查看pifacerelayplus的源代码,如果在0.15秒内发出两个电机命令,就会失败,理由是同时启动两个电机的浪涌很可能超过你的电源所能承受的范围。几个短暂的 sleep()s 应该可以避免这个问题。