| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 嵌入式 -> HAL库版STM32双轮自平衡车(五) ———— 调参 -> 正文阅读 |
|
[嵌入式]HAL库版STM32双轮自平衡车(五) ———— 调参 |
?系列文章目录HAL库版STM32双轮自平衡车(一) ———代码思路和PID基础精讲 HAL库版STM32双轮自平衡车(二) ——— CubeMX的配置、原理图接线、物料准备 HAL库版STM32双轮自平衡车(四) ———— 原理图以及PCB绘制 HAL库版STM32双轮自平衡车(五) ———— 调参(本篇) 前言这部分B站上以及CSDN里面都有很好的调参过程,其实都大同小异。这篇文章的内容是我学习了网上的各种学习资源然后自己进行归纳总结得到的,希望对你有帮助。文末还放了一些参考链接可以参照学习。 首先要知道直立环是负反馈,就简单理解为小车往哪倒,直立环就阻碍小车往哪倒 速度环是正反馈,就简单理解为小车失去平衡后,只能通过单方向运动维持平衡,加入速度环就是修正小车的角度,小车一直往前面开时,速度环让小车以更快速度行驶使得小车后仰 总体的调参过程如下:
具体调参过程如下:计算确定需要调节参数的大概范围如果小车需要直立,摆幅差不多就要≤10°。,如果超过此范围,小车抖动较为厉害 根据直立环的程序:
由于PWM最大是7200,角度在10°,反推可以得到: 直立环的Kp可选范围应该在0~700。 当然这只是个大致的范围,具体多少还需要进一步调试。 直立环的Kd对应的是角速度,由于角速度都是四位数以上的数值,所以可以从1左右开始试。 速度环Kp&Ki 小车电机满速旋转时,左右两个电机,编码器相加可达160。 假设速度偏差(实际测量值与理想值)达到50%时满转,即速度偏差相加达80时电机满转
那么有 7200/80=90,也就说kp最大为90。 (注意,这里只是在假设偏差为50%的前提下). 判断极性以及调参现象
1.Kp极性: ?? 极性错误:小车往哪边倒,车轮就往反方向开,会使得小车加速倒下。 ? ? ?极性正确:小车往哪边倒,车轮就往哪边开,以保证小车有直立的趋势。 2.Kp大小: ? ?Kp一直增加,直到出现大幅低频振荡。(即小车平衡时出现抖动) ? ?P过小,响应太慢,不能达到直立。 ? ?P过大,会出现大幅度的低频抖动。 3.Kd极性: ?极性错误:拿起小车绕电机轴旋转,车轮反向转动,无跟随。? ?极性正确:拿起小车绕电机轴旋转,车轮同向转动,有跟随。 4.Kd大小: ?Kd一直增加,直到出现高频振荡。(即触碰小车出现剧烈抖动) ? ?D可消除P大了之后产生的大幅低频抖动。 ? ?D过大,会出现高频抖动。 直立环调试完毕后,对所有确立的参数乘以0.6作为最终参数。 原因:之前得到的参数都是Kp、Kd最大值,根据工程经验平衡小车的理想参数为最大参数乘以0.6求得。 ?? 结果:乘0.6后,小车抖动消失,但同时直立效果也变差。待下面加入速度环就能得到更好的性能。
需要注意的是: 在确定【速度环参数极性】时,需要去掉【直立环运算】; ?在调节【速度环参数大小】时,需要引入【直立环运算】。 .Kp&Ki:线性关系:Ki=(1/200)*Kp,仅调Kp即可。 1. Kp&Ki极性:(直立环注释) ? ? 极性错误:手动转动其中一个车轮,另一车轮会以同样速度反向旋转——典型负反馈。 ? ??极性正确:手动转动其中一个车轮,两个车轮会同向加速,直至电机最大速度——典型正反馈。 2.Kp&Ki大小: ? ?增加Kp&Ki,直至:小车保持平衡的同时,速度接近于0,且回位效果好。? ? ?P过小,响应慢,出现的现象是加速减速慢,迟钝。 ? ?P过大,会出现低频抖动。 学习文章: 结语关于HAL库版平衡小车系列文章的更新也接近尾声了,跟着我的步骤一步步地来相信兄台也可以做出来属于自己的平衡小车,如果在制作过程遇到了什么问题,欢迎评论区或者私信与我探讨交流,大家一起进步。 码字不易,希望喜欢的小伙伴别忘了点赞+收藏+关注,你们的肯定就是我创作的动力
|
|
嵌入式 最新文章 |
基于高精度单片机开发红外测温仪方案 |
89C51单片机与DAC0832 |
基于51单片机宠物自动投料喂食器控制系统仿 |
《痞子衡嵌入式半月刊》 第 68 期 |
多思计组实验实验七 简单模型机实验 |
CSC7720 |
启明智显分享| ESP32学习笔记参考--PWM(脉冲 |
STM32初探 |
STM32 总结 |
【STM32】CubeMX例程四---定时器中断(附工 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 22:53:51- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |