【平衡小车制作】(七)串级PID调参及平衡成果展示(超详解)

  大家好,我是小政。本篇文章我将针对PID调参进行详细的讲解,让每位小伙伴能够对比例、积分、微分三个参数如何调节有更加清晰的理解。

一、调参步骤

  1. 确立机械中值
  2. 直立环(内环)——Kp极性、Kp大小、Kd极性、Kd大小
  3. 速度环(外环)——Kp&Ki极性、Kp&Ki大小
  4. 转向环——系数极性、系数大小

二、机械中值

  把小车放在底面上,从前向后以及从后向前绕电机轴旋转平衡小车,两次向另一边倒下的角度的中值,即为机械中值。
举例:往后倒在2度,往后倒在-3度左右,这边我取的机械中值为-1度

float Med_Angle=-1.0;      // 机械中值,能使得小车真正平衡住的角度 

在这里插入图片描述

图1 往后倒在2度左右(Y轴,即Roll)

在这里插入图片描述

图2 往前倒在-3度左右(Y轴,即Roll)

三、直立环

1.Kp极性:

极性错误:小车往哪边倒,车轮就往反方向开,会使得小车加速倒下。
极性正确:小车往哪边倒,车轮就往哪边开,以保证小车有直立的趋势。

2.Kp大小:

Kp一直增加,直到出现大幅低频振荡。(即小车平衡时出现抖动)
注:Kp的绝对值范围大概在150至350内,当我设置为320时出现低频振荡,可以略微增大Kp,当出现大幅度低频振荡时,说明Kp已经足够大,是时候引入微分项。

3.Kd极性:

极性错误:拿起小车绕电机轴旋转,车轮反向转动,无跟随。
极性正确:拿起小车绕电机轴旋转,车轮同向转动,有跟随。

4.Kd大小:

Kd一直增加,直到出现高频振荡。(即触碰小车出现剧烈抖动)
注:Kd的绝对值范围大概在0.1至0.9内,当我设置为0.8时出现高频振荡,此时需及时关闭电机,以防电机及驱动烧毁。
  直立环调试完毕后,对所有确立的参数乘以0.6作为最终参数。
  原因:之前得到的参数都是Kp、Kd最大值,根据工程经验平衡小车的理想参数为最大参数乘以0.6求得。
  结果:乘0.6后,小车抖动消失,但同时直立效果也变差。待下面加入速度环就能得到更好的性能。
我最终调整好的直立环Kp与Kd参数:

float 
  Vertical_Kp=200,
  Vertical_Kd=0.5;     // 直立环Kp、Kd

四、速度环

1.需要注意的点

(1)
 在调节【速度环参数极性】时,需要去掉【直立环运算】;
 在调节【速度环参数大小】时,需要引入【直立环运算】。
(2)
 【转向环运算】始终是去掉的一个状态,若转向环已提前将参数调好,未注释也影响不大。

2.Kp&Ki:

线性关系:Ki=(1/200)*Kp,仅调Kp即可。

3.Kp&Ki极性:(直立环注释)

极性错误:手动转动其中一个车轮,另一车轮会以同样速度反向旋转——典型负反馈。
极性正确:手动转动其中一个车轮,两个车轮会同向加速,直至电机最大速度——典型正反馈。

4.Kp&Ki大小:

增加Kp&Ki,直至:小车保持平衡的同时,速度接近于0,且回位效果好。
注:Kp的绝对值范围在0.1至0.9内。

我最终调整好的速度环Kp与Kd参数:

float 
  Velocity_Kp=0.30,
  Velocity_Ki=0.0015;   // 速度环Kp、Ki(正反馈)

五、转向环

1.Kp极性:
极性错误:拿起小车,并将小车绕Z轴旋转,两车轮旋转的趋势与小车旋转趋势一致——典型正反馈。
极性正确:拿起小车,并将小车绕Z轴旋转,两车轮旋转的趋势与小车旋转趋势相反——典型负反馈
2.Kp大小:
加大Kp,直至走直线效果较好,且无剧烈抖动。
注:Kp大概范围在0.1至0.9内。

我最终调整好的转向环Kp与Kd参数:

float 
  Turn_Kp=-0.6;

六、展示

PID参数调整完成后实物展示如下:

平衡小车(纯平衡)

七、总结

  以上一系列文章是平衡小车(纯平衡)系列的全部教学,后续还会更新利用蓝牙模块遥控平衡小车的详细讲解。感兴趣的小伙伴点个关注吧!
(1)硬件原理图+程序+APP:
网址:https://pan.baidu.com/s/1SNBUEOw2lIi0Ry_oNciVxg
提取码:1234

  以上就是平衡小车系列文章第七讲——串级PID调参,若文章中出现错误或者小伙伴对以上内容有所疑问,欢迎大家在评论区留言,小政看到后会尽快回复大家!
【平衡小车制作】(八)蓝牙遥控及平衡成果展示(超详解)
https://blog.csdn.net/weixin_44270218/article/details/113806544

版权声明:本文为CSDN博主「鲁乎乎」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_44270218/article/details/113786386

生成海报
点赞 0

鲁乎乎

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

OV7670摄像头模块资料

OV7670摄像头模块资料 一、实物图和原理图 二、模块简介 OV7670 是 OV( OmniVision)公司生产的 CMOS VGA 图像传感器。该传感器体积小、工作电压低,提供单片 VGA

基于STM32的指纹密码锁

设计简介: 本设计是基于单片机的指纹密码锁,主要实现以下功能: 矩阵按键输入密码,并通过按键显示*号可通过按键或手机开门密码可通过按键进行开门可通过蓝牙模块连接手机进行开门可通过指纹进