PyFirmata 伺服控制问题(Arduino with Python)

问题描述 投票:0回答:1

我正在尝试使用 PyFirmata2(使用 Arduino Nano)控制我的伺服系统。当我给出单个角度时它可以工作,但当我按顺序写多个角度时它无法工作。

使用和不使用延迟的结果相同,使用servo_pin= board.get_pin('d:9:s') 而不是 board.digital[9].mode = SERVO 的结果相同。

有人可以帮助纠正这个问题吗?是否可以直接切换到 PySerial?

提前致谢!

enter image description here

期望伺服器对所有命令做出反应,但在第一个角度工作,然后停止:(

python arduino iot servo pyfirmata
1个回答
0
投票

我不知道你为什么按照你的方式编写代码,但我建议如下。

请参阅 pyfirmata2 库中的伺服示例并尽可能遵循它。您可以在这里找到它:https://github.com/berndporr/pyFirmata2/blob/master/examples/servo.py

你打电话来我觉得很奇怪

board.digital[9].write(10)
特别是因为这个例子会导致这样的结果:

servo_5 = board.get_pin('d:5:s')

v = 90.0 # example value

# Set the duty cycle
servo_5.write(v)
© www.soinside.com 2019 - 2024. All rights reserved.