平衡小车制作——PID

平衡小车制作——PID,第1张

位置闭环控制就是根据编码器的脉冲累加测量电机的位置信息,得到控制偏差,然后通过对偏差的比例、微分、积分进行控制,使得偏差趋于零

c语言的实现

P用于提高相应速度,I用于减小静差,D用于抑制震荡

速度闭环控制是根据单位时间获取的脉冲数测量电机速度信息,对目标值进行比较

理论分析

直立环使用PD控制

在调试直立环,要在定时器中断服务函数屏蔽速度换和转向环

首先估计kp的取值范围,陪我们设置7200代表占空比百分百

设定kp值为7200,那么小车在10°就会满转

确定参数的原则是:kp一直增加,出现大幅度低频抖动

kd一直增加,直至出现高频抖动

确定了pd的最大数,×0.6就是需要的参数

我们对速度进行低通滤波

一般可以把ki的值设置为kp/200

kp最大值=7200/(160*50%)

pwmout=P*(E(0)-E(1))+I*E(0)+D*(E(0)-2*E(1)+E(2))+pwmpre

pwmpre=pwmout

E(0)是当前

系统偏差

,E(1)是上一次偏差,E(2)上上次偏差。P、I、D分别是

比例系数

、积分系数和微分系数

E=SpeedSet-Speed

SpeedSet可根据路况设置,是你期望小车行驶的速度。Speed是你当前测量的小车的实际速度


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/11805514.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-18
下一篇2023-05-18

发表评论

登录后才能评论

评论列表(0条)

    保存