「 运动控制 」“ADRC自抗扰控制技术”(Active Disturbance Rejection Control)研究

「 运动控制 」“ADRC自抗扰控制技术”(Active Disturbance Rejection Control)研究近年来,虽然现代控制理论取得了一系列成果,但是在工业领域的应用并没有代替PID控制。这说明现代控制理论在实际应用的过程中受到一定的限制,控制理论与生产生活实际仍然存在一定的代沟。对此,韩京清总结为基于“模型论”的控制理论在解决问题时没有以生产生活中的不确定性作为重点,没有抓住生产生活实践中所切实需要的核心。韩京清先生针对生产生活实践中存在的问题潜心研究,积极探索,逐步分析PID理论与现代控…

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

一、前言

        近年来,虽然现代控制理论取得了一系列成果,但是在工业领域的应用并没有代替 PID 控制。这说明现代控制理论在实际应用的过程中受到一定的限制,控制理论与生产生活实际仍然存在一定的代沟。对此,韩京清总结为基于“模型论”的控制理论在解决问题时没有以生产生活中的不确定性作为重点,没有抓住生产生活实践中所切实需要的核心。韩京清先生针对生产生活实践中存在的问题潜心研究,积极探索,逐步分析 PID 理论与现代控制理论的优势与劣势,创造性的将现代控制理论的控制方法与现代信号处理理论有机整合,充分发挥 PID控制的优势,经过长期的摸索与发展,逐渐设计出一种具有较为广泛适用性实用性的控制方法——自抗扰控制技术

二、从PID到ADRC的演化过程

        PID控制方法(如图)因其靠控制目标与实际行为之间的误差来决定消除此误差的优点而被广泛应用于各控制领域中。然而随着现代工业的迅速发展,对控制系统性能的要求越来越高,又由于当时的认识水平和技术条件有限,经典PID逐渐显露出其缺点首先,在PID控制器中直接取控制目标与对象输出的误差容易使闭环系统产生很大的超调;其次,PID控制器中的误差微分的反馈作用不能得到充分发挥;最后,PID中误差的比例(P)、积分(I)、微分(D)的简单的线性加权求和不一定是最好的组合形式。

「 运动控制 」“ADRC自抗扰控制技术”(Active Disturbance Rejection Control)研究

        于是韩京清研究员对上图所示的经典PID进行了改造,如下图所示。其中,利用跟踪微分器(Tracking Differentiator,TD)安排过渡过程,可使输入信号突变部分变得平滑,缓解了PID控制技术中的快速性与超调之间的矛盾;同时也可提取输入信号的微分信号,解决了实际工程中微分信号难以提取的问题,避免噪声放大;并且采用了效率较高的非线性组合方式替代简单的加权求和,显著提高了反馈的效率。

「 运动控制 」“ADRC自抗扰控制技术”(Active Disturbance Rejection Control)研究

        从上图中可以看出,改进后的PID控制器只是利用消除误差来控制好过程,并没有对过程本身(a(t))进行任何估计,致使起着补偿a(t)作用的积分环节难以做到有的放矢,因而鲁棒性差。针对此问题,韩京清研究员还在控制器中构造了ESO,通过它可以对系统内部状态及不确定因素进行实时估计并予以补偿,最终得到了具有“自抗扰”功能的、不依赖于被控对象精确的数学模型的ADRC,其结构框图如下图所示。

「 运动控制 」“ADRC自抗扰控制技术”(Active Disturbance Rejection Control)研究

        目前,ADRC技术己在“空间飞行器”;“小型风力发电机”;“永磁同步电机”;“大型火电机组”,“磁悬浮轴承”;“SWATH船”;“飞艇轨迹跟踪”等众多装置控制中得到了广泛的应用,并取得了很好的控制效果。

三、自抗绕控制器的组成

        自抗扰控制器主要由三部分组成:

  1. 跟踪微分器(tracking differentiator);
  2. 扩展状态观测器 (extended state observer) ;
  3. 非线性状态误差反馈控制律(nonlinear state error feedback law)。

        工作原理框图:

「 运动控制 」“ADRC自抗扰控制技术”(Active Disturbance Rejection Control)研究

  • 跟踪微分器(tracking differentiator)
           跟踪微分器(Tracking Differentiator,TD)安排过渡过程,可使输入信号突变部分变得平滑,缓解了PID控制技术中的快速性与超调之间的矛盾;同时也可提取输入信号的微分信号,解决了实际工程中微分信号难以提取的问题,避免噪声放大;

  • 扩展状态观测器 (extended state observer)
           扩展状态观测器用来解决模型未知部分和外部未知扰动综合对控制对象的影响。虽然叫做扩展状态观测器,但与普通的状态观测器不同。扩展状态观测器设计了一个扩展的状态量来跟踪模型未知部分和外部未知扰动的影响。然后给出控制量补偿这些扰动。将控制对象变为普通的积分串联型控制对象。设计扩展状态观测器的目的就是观测扩展出来的状态变量,用来估计未知扰动和控制对象未建模部分,实现动态系统的反馈线性化,将控制对象变为积分串联型。

  • 非线性状态误差反馈控制律(nonlinear state error feedback law)
    非线性误差反馈控制律给出被控对象的控制策略,显著提高了反馈的效率。

四、自抗扰控制技术的精髓

        韩京清认为系统的总扰动,不仅包括系统的外部扰动,还包括系统内部参数的变化以及建模的未知状态,也即内部扰动。这种方法为控制工程中不确定性问题的提供了一种很好的解决方案,势必会在工业上得到广泛应用。自抗扰控制技术的精髓在于系统总扰动的实时估计与实时补偿,通过扩张状态观测器对控制系统总扰动进行估计,然后在控制律中加入扰动补偿量,对估计出的总扰动进行实时的补偿,从而将具有不确定未知扰动的复杂系统转化为“积分串联型”系统。这种控制方法的特点在于使得控制器对于被控对象有较强的适应性,而不是依据被控对象相关模型设计控制器。

五、自抗扰控制技术的优点

        自抗扰控制技术对系统的数学模型依赖性较小,并且能够通过扩张状态观测器对系统总扰动进行估计,并在控制器中通过补偿量进行补偿,因而具备较强的抗扰能力。由于自抗扰控制器可以对系统的不确定性具有较强的适应性,可以参考系统的数学模型,但是又不完全依赖于数学模型,因此,自抗扰方法的控制对象具有较大范围的适用性。此外,自抗扰控制方法还具有算法结构简单、参数调节较易、系统动态性能较好等特点,使其在生产生活中得到了较为广泛的使用。

六、扩张状态观测器中LESO的设计技巧

        为了方便调试,通常将LESO特征方程的所有极点配置在-w_{0}处,w_{0}为观测器带宽,这样做的优点在于能够使系统更容易到达稳定,调节速度更快。通常情况下,w_{0}的值越大,LESO就越容易估计出系统的扰动,控制器就能够更及时的对系统扰动进行补偿,抗扰能力也就越强。但是,当w_{0}过大时会引入传感器的高频噪声,并且机器人物理系统的采样频率也限制了观测器的实际观测范围和反应速度。因此,w_{0}的取值应该在快速性与抗噪声性之间平衡。

七、自抗扰控制器的结构及原理

        下面以n阶非线性系统为例详细介绍自抗扰控制器中各主要组成部分的工作原理及功能:

「 运动控制 」“ADRC自抗扰控制技术”(Active Disturbance Rejection Control)研究

「 运动控制 」“ADRC自抗扰控制技术”(Active Disturbance Rejection Control)研究

「 运动控制 」“ADRC自抗扰控制技术”(Active Disturbance Rejection Control)研究

「 运动控制 」“ADRC自抗扰控制技术”(Active Disturbance Rejection Control)研究

「 运动控制 」“ADRC自抗扰控制技术”(Active Disturbance Rejection Control)研究

「 运动控制 」“ADRC自抗扰控制技术”(Active Disturbance Rejection Control)研究

「 运动控制 」“ADRC自抗扰控制技术”(Active Disturbance Rejection Control)研究

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/144699.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • vue中引入高德地图并多点标注

    vue中引入高德地图并多点标注vue中引入高德地图并多点标记步骤:通过vue的方法引入地图初始化地图,设置宽和高信息窗口实例遍历生成多个标记点首先在项目的public下的index.html中引入地图<linkrel=”stylesheet”href=”https://cache.amap.com/lbs/static/main1119.css”/><scriptsrc=”https://webapi.amap.com/maps?v=1.4.15&key=申请的key”>&l

  • 三层架构(我了解并详细分析)

    三层架构(我了解并详细分析)

    2021年12月31日
  • js生成二维码_js生成二维码并保存

    js生成二维码_js生成二维码并保存js生成二维码一、一个简单的示例前段时间项目中需要开发扫描二维码查看信息的功能,在网上查了一些资料,把用过的方法进行总结需要导入一个qrcode的js插件。一、一个简单的示例如下:(仅供参考)<%–CreatedbyIntelliJIDEA.User:ASUSauthor:xumzDate:2021/2/27Time:10:33搬运请备注TochangethistemplateuseFile|Settings|Fil

    2022年10月18日
  • strtok理解[通俗易懂]

    strtok理解[通俗易懂]今天使用strtok遇到了一些困惑,

  • pycharm如何配置_网络配置异常怎么修复

    pycharm如何配置_网络配置异常怎么修复PyCharm配置示例1、全局设置:这里是全局设置,也可在每个项目里面单独设置点击右下角的Configure选择Preferences1、设置背景颜色与显示内存大小:2、设置不默认打开上次的工程3、设置显示方法右边分割线:4、设置自动引包:5、设置显示方法缩进线6、设置字体与字体大小:7、设置文件编码格式:请注意,这一步很重要,不要坑队友!8、测试本机是…

  • C#没有.sln文件怎么办?

    C#没有.sln文件怎么办?如果你的C#文件夹下没有.sln文件,你可以用VisualStudio软件,文件->打开->项目/解决方案,在指定的文件夹下找到.csproj文件,在你关闭时,会提示你保存成.sln文件,以后就可以直接打开了。

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号