伺服增量 python
servo increment in python
servoMin = 500
servoMid = 1500
servoMax = 2500
servoTilt1 = 1500
servostep = 100
def servo1_up():
servoTilt = servoTilt1 + servostep
if servoTilt > servoMax:
servoTilt = servoMax
port.write("#15P%dT100\r\n" % servoTilt)
你好,
正在为 运行 伺服电机编写一些代码,但我似乎无法将其写入
增量。一切正常,但是当我按下一个键时它只会增加 100(servostep)一次,我试图让它在每次按下键时移动 100。指向正确的方向会很棒。
谢谢
您有两个变量,servoTilt
和 servoTilt1
。第一个是局部的,第二个是全局的。在你递增 servoTilt
之后,它在超出范围时被销毁并且 servoTilt1
保持不变。
解决方案:将 servoTilt1
重命名为 servoTilt
这已经解决了我的问题
servoMin = 500
servoMid = 1500
servoMax = 2500
servoTilt = 1500
servostep = 100
def servo1_up():
global servoTilt
servoTilt += servostep
if servoTilt > servoMax:
servoTilt = servoMax
port.write("#15P%dT100\r\n" % servoTilt)
servoMin = 500
servoMid = 1500
servoMax = 2500
servoTilt1 = 1500
servostep = 100
def servo1_up():
servoTilt = servoTilt1 + servostep
if servoTilt > servoMax:
servoTilt = servoMax
port.write("#15P%dT100\r\n" % servoTilt)
你好,
正在为 运行 伺服电机编写一些代码,但我似乎无法将其写入 增量。一切正常,但是当我按下一个键时它只会增加 100(servostep)一次,我试图让它在每次按下键时移动 100。指向正确的方向会很棒。
谢谢
您有两个变量,servoTilt
和 servoTilt1
。第一个是局部的,第二个是全局的。在你递增 servoTilt
之后,它在超出范围时被销毁并且 servoTilt1
保持不变。
解决方案:将 servoTilt1
重命名为 servoTilt
这已经解决了我的问题
servoMin = 500
servoMid = 1500
servoMax = 2500
servoTilt = 1500
servostep = 100
def servo1_up():
global servoTilt
servoTilt += servostep
if servoTilt > servoMax:
servoTilt = servoMax
port.write("#15P%dT100\r\n" % servoTilt)