如何使用伺服电机上的PWM将学位转换为占空比以进行平稳的移动



我想用0到180度的伺服电机使光滑移动,反之亦然。我只知道三个值:2.5个占空比0度的占空比周期,90度的7.5个占空比周期和180度的12.5个占空比周期。我想在所有角度之间保持平稳的移动,因此我想要某种功能,以返回每个角度的占空比。我发现此功能dc(d(= d/10 2.5,但它不起作用。

我使用这些命令设置PWM PIN

GPIO.setup(servo,GPIO.OUT)
pwm2 = GPIO.PWM(servo,50)

您可以使用以下功能

def get_pwm(angle):
    return (angle/18.0) + 2.5

此功能将为您提供一定角度所需的PWM。您的问题告诉0 degrees -> PWM is 2.5, 90 degrees -> PWM is 7.5 and 180 degrees -> PWM is 12.5。这表明PWM和角度具有线性关系。但是,当角度为0度时,PWM的起始值为2.5。

最新更新