在将基于模型的控制器(比如MPC)应用到真实对象上之前,必须要考虑由于内扰(模型参数误差,未建模动力学等)和外扰(噪声,干扰力等)的存在对于控制品质的影响,这里我们关心控制品质中的响应速度和稳态误差。特别地,由于MPC基于模型做预测,然后基于预测进行优化,如果扰动不能及时补偿,轻则控制品质下降,重则稳定性被破坏。
抵抗扰动有多种方法,其中网红方法是通过构建观测器对扰动进行观测进而加以补偿。这里我们也蹭一波热度,用一用大名鼎鼎的扩张状态观测器(ESO)来实现我们的offset free MPC。关于ESO的详细介绍,请阅读韩京清老师生前最后的著作《自抗扰控制技术——估计补偿不确定因素的控制技术》。
1. 控制体系结构
需要注意的是,这里MPC的预测模型里边要添加扰动项,在每个控制周期这个扰动项由ESO更新。下面用一个单自由度物块的控制仿真来具体阐述一下。
2. 场景
如图所示,被控对象是一个仅能够沿着竖直方向移动的物块。
3. 建模
这里我们考虑物块的动力学模型,具体如下:
添加扰动项(这里采用直接在控制通道添加的形式),得
扰动观测器我们采用如下线性三阶形式(多了扰动状态)
LESO中的 就是扰动观测值,在每个控制周期先将 赋值给 ,然后MPC控制器再进行计算得出控制输入 ,这里对应的是驱动力。
4. 仿真
物块初始状态是位置为 ,速度为 .
点镇定仿真中目标位置是 ,速度为
轨迹跟踪中的参考轨迹是
- 仅有内扰的点镇定
MPC中物块质量为 ,V-REP中物块质量为
物块状态量
估计的扰动
控制输入
- 仅有外部常值扰动力的点镇定
MPC和V-REP中物块质量均为
外部扰动力为
物块状态量
估计的扰动
控制输入
- 仅有外部正弦扰动力的点镇定
MPC和V-REP中物块质量均为
外部扰动力为
物块状态量
估计的扰动
控制输入
- 内扰加外部常值扰动力的点镇定
MPC中物块质量为 ,V-REP中物块质量为
外部扰动力为
物块状态量
估计的扰动
控制输入
- 内扰加外部正弦扰动力的点镇定
MPC中物块质量为 ,V-REP中物块质量为
外部扰动力为
物块状态量
估计的扰动
控制输入
- 内扰加外部正弦扰动力的正弦轨迹跟踪
MPC中物块质量为 ,V-REP中物块质量为
外部扰动力为
物块状态量
估计的扰动
控制输入
通过这一系列的仿真我们可以看出ESO对于总扰动有比较好的估计。后续我们尝试把这一套控制结构推广到冗余机械臂上,敬请期待。
本例程源文件目前暂不能公开,请谅解!
-----------------------------------------------------
做人呐,最重要的就是开心喽。能帮到别人是最大的快乐,希望本菜鸡能对小白们有所帮助,希望大佬们的批评能帮助本菜鸡成长!
评论(0)
您还未登录,请登录后发表或查看评论