伺服增量 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。指向正确的方向会很棒。

谢谢

您有两个变量,servoTiltservoTilt1。第一个是局部的,第二个是全局的。在你递增 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)