前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ADRC学习

ADRC学习

作者头像
全栈程序员站长
发布2022-07-21 14:27:03
4810
发布2022-07-21 14:27:03
举报

大家好,又见面了,我是你们的朋友全栈君。

学习ADRC先从提出这个算法的论文《从 PID 技术到“自抗扰控制”技术》开始。 https://download.csdn.net/download/qq_34445388/10309935 调试四轮智能车,板球控制系统,两轮直立车,舵机控制,这些控制系统用的都是PID控制,虽然我已经有很多种改进方法,但是还是很难突破传统PID的限制,调节速度和超调一定同时存在,想要得到较好的控制效果,用现代控制理论解决,要知道精确的系统模型。从网上看到有ADRC这种综合了PID和现代模型的优势的控制算法,想要学习一下。 一、先回味一下传统的PID控制技术 PID控制技术相对于是非常简单的,很容易就理解了,基于误差进行控制,只要有误差,就会往无限逼近误差为零的方向调节。

这里写图片描述
这里写图片描述

PID的优点很明显,简单,就是简单,就这么一个公式什么都能进行控制。 但是在使用过程中还是有些技巧的! 1、I 这个量虽然能提高控制的精度,但是他的存在很容易造成超调和滞后,对于响应速度较高(比较接近系统的开环响应频率)的系统,基本上都要选用PD控制,如果是想要再提高响应而不顾超调的话,可以通过对I做限幅,不完全积分等方法加入控制中,明显能够提高系统的响应,但是超调量会急剧增加。 2、P的控制是系统综合能力的体现,P小的时候系统相对稳定,但是跟踪能力差,P大的时候系统总是存在震荡现象。如果你在调试一个系统的时候,他经常会让你抓狂,大也不是,小也不是。这时候就可以使用一些变P的手段,提高P的阶数,增加系统的响应,同时在小误差时能够兼顾稳定性 P= a * Error * Error + b。用一个标准二阶函数就能显著的提高控制系统的品质。 3、D 这个量,确实对于控制的预判有着非常明显的作用,尤其是大滞后的系统,加D之后,能够明显提高响应和抑制积分控制造成的后遗症。但是经过我多次调试发现,微分变量对系统的改善的上限到达比较快,基本上都是PI调节完成之后,D再能对系统品质提高10%——20%,之后就会没什么作用,或者引起震荡。

所以我以前的调试总是绞尽脑汁的想办法,变P变I变D,可是总是很难兼顾系统在不同状态的运行。尤其是增加了很多的调试参数,最后自己都是一团乱,还不能说出一个所以然。看完这一篇感觉恍然大悟,直击内心深处。 PID 的缺点: ①误差的取法; ②由误差 e 提取de/dt 的办法; ③“加权和”策略不一定最好 ; ④积分反馈有许多副作用 我上面说的问题确实很多都与总结的四点有关,下面我们就看看解决办法。

这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

这里的 ‘tao’(那个字符不会显示)在我的理解里就是采样间隔时间,有时候确实是这样的,采样周期越短,噪声被放大越大,引起系统的震荡。比如说直立车速度调节,因为直立,速度和转向都是调节轮子的转速,所以测量的速度噪声特别大,提高采样周期之后才能明显降低噪声的影响。

跟踪微分器TD 看了论文和各种资料,下面我介绍一下我认识的ADRC的TD,至于具体推导原理,是在是不懂。 https://download.csdn.net/download/qq_34445388/10318629 这是韩京清先生研究ADRC几乎所有的论文集链接。

这里写图片描述
这里写图片描述

这是跟踪微分控制器的离散方程,看方程其实就很直接。 h:为时间尺度 MATLAB的仿真步长为0.001所以 h = 0.001

这里写图片描述
这里写图片描述

Simulink 模型里的TD 有一个输入状态,经过TD安排过渡时间,计算fst(快速控制最优综合函数)后,会得到两个输出v1 目标状态,v2系统的微分。

这里写图片描述
这里写图片描述

这是TD的内部结构,和公式里面的一样,就是跟踪微分的阶跃响应公式。fst 输入的第一个参数为 v1(t) – v0(t).在结构图里,就是v1-v,之后的结构对照公式即可看明白。

这里写图片描述
这里写图片描述

这里看一下对TD的仿真波形图。

这里写图片描述
这里写图片描述

基本上很好的跟踪上了正弦波。 这里提示一下TD模型里的参数修改的地方。在这个模型里只有两个参数r,h.

这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

双击1,再选择2的地方就可以了。然后设置3处的两个参数。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/124605.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年4月3,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档