0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

ADRC算法的工作原理、特点及行业应用

UtFs_Zlgmcu7890 来源:未知 作者:胡薇 2018-05-09 09:36 次阅读

一、PID的历史

在讲述ADRC算法前,我们先回顾它的前辈:PID算法。

1932年出生在瑞典后来移民美国的H•Nyquist发表了论文,采用图形的方法来判断系统的稳定性。在其基础上H•W•Bode等人建立了一套在频域范围设计反馈放大器的方法。这套方法,后来也用于自动控制系统的分析与设计。

与此同时,反馈控制原理开始应用于工业过程中。1936年英国的考伦德(A•Callender)和斯蒂文森(A•Stevenson)等人给出了PID控制器的方法,自此PID算法正式形成了。PID控制是在自动控制技术中占有非常重要地位的控制方法。几十年前的PID控制器还是机械式的,如图1的气压控制器。

图1 机械式PID气压控制器

时至今天,凡是有“自动控制”能力的产品,几乎无一不采用到PID算法,大至武器、飞机、轮船,小至家电、IOT设备、玩具等等。例如我们日常使用的空调,它是使用着PID算法将温度控制在我们期望值上;手机导航靠PID算法准确分析运动状态;无人机靠PID算法稳定飞行姿态。 PID在我们周围无处不在,尽心尽力地帮助人类实现“自动控制”。但和几十年前不同,随着计算机技术的发展,现在的PID大多是“软控制”的,即在处理器里面运行软件控制,结构大为简化。

二、PID的原理与不足

图2是直流电机的PID调速系统。No(t)是期望得到的电机目标速度,N(t)是电机实际的速度,U(t)是PID控制器的输出电压。No(t)与N(t)相比较,得出的偏差值E(t)=No(t)-N(t),经PID控制器计算后输出控制电压U(t),驱动电机改变速度。当实际速度偏小时,即No(t)> N(t),E(t)>0,PID控制器加大U(t)输出,电机实际速度将提高;当实际速度偏大时,即No(t)

图2 直流电机PID调速系统

PID控制器使用公式1进行计算。公式的右边有三项,分别是比例(Proportion)、积分(Integration)和微分(Differential)。

公式 1

比例环节的作用是对偏差作出快速响应,KP越大,控制能力越强,但过大的KP会增大超调量(超过给定值的量)。另外比例环节可以减少静态误差(稳定时与给定值比较的偏差),但不能完全消除。图3使用比例环节把电机的转速从零提升到2500r/min,提升过程比较快,但出现了超调,且存在静态误差。

图3 比例环节的作用

积分环节的作用是消除积累下来的偏差(静态误差)。在控制过程中,只要有偏差存在,积分环节的输出就不断增大,直到偏差E(t)=0,输出才可能稳定在某一值上。但积分环节会降低响应速度,增加超调量。TI越大,积分作用越弱。图4是在比例环节的基础上加上积分环节,先前的静态误差得到消除,电机趋于2500 r/min,但增加了另外一段超调量。

图4 比例环节+积分环节的作用

图5使用了PID的所用环节控制电机。每个环节各尽其职,比例环节P快速提升速度,积分环节 I 消除静态误差,微分环节D压制超调量。

图5 比例环节+积分环节+微分环节的作用

PID虽然应用广泛,但有明显的不足。PID反应慢,它是要等到误差发生后,才去补偿控制,如果控制力太大(比例系数KP),就有超调,如果过小,就反应慢。PID对环境变化敏感,例如无人机的螺旋桨在高速旋转时,受到很强的压缩空气阻力,PID的作用力要很大才能维持稳定的速度,但是当低速时,空气阻力非常小,在强大的PID作用力下,螺旋桨会震动、不稳定,所以这时需要另外一套较弱的PID。

三、ADRC的诞生

干扰,或者称扰动,是指系统外部的环境出现变化,或者系统内部特性改变,最终影响了系统的性能。例如上面提到的无人机的螺旋桨,空气阻力随转速变化,影响电机速度的稳定性,这个是外部扰动;当电机长时间运行后,温度明显上升,铜线圈的电阻值升高,原来预估的给多少V电压就得到多少A电流的关系不存在了,这是内部扰动。

来个假设吧,如果世界一切美好、没有任何内外扰动,那么对于任何系统,只要调整好一次PID参数,就可在任何情况下都达到理想效果。但事与愿违,扰动无处不在,如何实现“他强由他强,清风拂山岗;他横由他横,明月照大江”的抗扰动效果,一直是自控工程中最核心的研究工作。

自抗扰控制(ADRC)技术是已故韩京清研究员借鉴经典PID控制理论,在1999年正式系统地提出来的。他的灵感来源于指南车(又称司南车),是中国古代用来指示方向的一种装置。它与指南针利用地磁效应不同,它不用磁性,它是利用机械传动系统来指明方向的一种机械装置。

其原理是:靠人力来带动两轮的指南车行走,依靠车内的机械传动系统来传递转向时两车轮的差动来带动车上的指向木人与车转向的方向相反角度,使车上的木人指示方向,不论车子转向何方,木人的手始终指向指南车出发时设置的方向。“车虽回运而手常指南”这种思想在ADRC算法中得到了升华。

图6 指南车

四、 ADRC的原理

图7是直流有刷电机ADRC调速控制框图。ADRC的核心有三大模块:跟踪微分器、扩张状态观测器和状态误差反馈控制律。

对于电机速度控制,跟踪微分器的输入是目标速度;输出是跟踪速度和跟踪加速度,跟踪速度等于目标速度,跟踪加速度就是目标加速度。

扩张状态观测器的输入分别是:实际速度、输出电压u和系数b0的乘积;输出分别是观测速度、观测加速度和观测扰动,其中观测速度等于实际速度,观测加速度等于实际加速度,观测扰动是系统内部和外部的总扰动,它除以b0后,减去状态误差反馈控制律输出的电压u0,即得到给电机的电压u。

状态误差反馈控制律根据速度误差(跟踪速度-观测速度)、加速度误差(跟踪加速度-观测加速度),输出电压u0,如果两个误差都为零,那么u0为零。系数b0是大致设定的参数,在这里它表示多少V电压对应多少转速RPM。ADRC不管电压和速度的真实关系,它只按自己设定的b0去控制,它认为当前电压是u,速度应该是u*b0,如果实际速度有不同,偏差都认为是扰动(观测扰动),可能是外部阻力变化引起的,也可能是电机内部参数估计不准引起的。观测扰动除以b0后,直接补偿到u输出。所以ADRC就是任性,它无需专门测量扰动,“他自狠来他自恶,我自一口真气足”。

另外,如果系统同时明确:目标速度和目标加速度,那么可以省去跟踪微分器,直接输入这两个量。

图7 ADRC速度控制

五、ADRC的特点

1、 几乎和模型无关

ADRC适用于从对对象模型一无所知到完全掌握对象模型的任何情况,如图7,大致设定电压和速度的关系b0即可。当然如果能准确捕捉到这个关系,ADRC工作强度将减轻,效果更佳。例如我们正在研究,当电机正在运行、发热严重时,电机内部的电阻、电感、反向电动势等参数都明显变化,在不注入额外测量信号下(尽量不影响电机运行),如何利用AI人工智能神经元技术,准确估算电机参数、重构电机模型b0,这样ADRC的性能将更经一步提升。

2、反应敏捷

传统PID控制都要等到误差发生后,才能去补偿控制,而ADRC将观察到的扰动第一时间补偿到输出端。而且PID中的微分项D,虽然说有预测功能,但是它仅仅是将本次的误差减去上一次的误差,得到很粗劣的微分结果,而ADRC使用跟踪微分器,准确跟踪目标值的微分(图7的跟踪加速度),以及用扩张状态观测器得出实际值的微分(图7的观测加速度),两个相减即为准确的误差微分。

图8是在京东热卖的某产品的电机速度图。它采用基于PID的FOC技术,电机要不停地加减速运动,黄线是目标速度,红线是实际速度。实际的加减速还是很快的、跟踪效果还可以,这个效果已经是行业领先了。曾几何时我们想,如果不换电机,这个效果已经无法再好了。

图8 基于PID的FOC

但某一天,如图9,我们将FOC里面的PID代码直接换成了ADRC,出现了惊人的一幕。目标速度和实际速度两条线几乎重合,几乎没有超调、没震动、没静态误差,而且加减速提高了30%以上、噪声降低2db、能效提高5%!

图9 基于ADRC的FOC

3、 易用性

ADRC在最初推出时虽然性能惊人,但是要调试的参数非常多,不容易使用。但是随着Scaling and Bandwidth-Parameterization等理论的提出,ADRC参数调整变得简单多了,例如周立功的ADRC库,只要分步调整扩张状态观测器的带宽、状态误差反馈控制律的带宽2个参数,系统即可大致调好。

4、 灵活性

ADRC是在PID的启发下发展出来的,一般的只要有PID的地方,都可以直接用ADRC替换。

六、ADRC的应用

目前ADRC已在多个领域使用,如高超音速飞行器、磁悬浮、超导粒子加速器、大型射电望远镜、坦克火控系统、核电站冷却系统等等,又如工业机器人伺服电机驱动器、无人机飞控系统、扫地机器人,甚至网站搜索引擎等等。

图10 高超音速飞行器

还有周立功的无人机电调、工业电机驱动器、汽车水泵电调、汽车风机电调、无刷电机专用控制芯片、基于NXP i.MXRT的多电机FOC方案等等,都内置了自行研发的高效ADRC算法。

图11 内置ADRC算法的S32K FOC汽车电调

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • PID
    PID
    +关注

    关注

    35

    文章

    1446

    浏览量

    83793
  • ADRC
    +关注

    关注

    3

    文章

    12

    浏览量

    10275

原文标题:自抗扰控制01:为何ADRC会成为百年PID算法的继承者?

文章出处:【微信号:Zlgmcu7890,微信公众号:周立功单片机】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    超声波电机的工作原理特点

    超声波电机的工作原理特点
    发表于 01-22 06:09

    AD9755是什么工作原理?具有什么特点

    新型D/A变换器AD9755具有什么特点?AD9755是什么工作原理?以AD9755作为数模转换器来产生任意波形的实例
    发表于 04-21 06:57

    I2C总线具有什么特点工作原理是什么?

    I2C总线特点是什么?I2C总线工作原理是什么?USB2I2C功能特点是什么?
    发表于 05-20 06:27

    SERDES工作原理和器件特点是什么?

    本文以TLK3132为例,详细介绍了SERDES工作原理和器件特点,并以WI系统中的CPRI应用需求为例,提供TLK3132的设计方法等。
    发表于 05-25 06:40

    AMBE-1000的特点是什么?是什么工作原理

    AMBE-1000的主要特点是什么?AMBE-1000的基本工作原理是什么?AMBE-1000的应用是什么?
    发表于 06-07 06:35

    两种典型的ADRC算法介绍

    前言  上篇中详细阐述了经典的自抗扰控制算法的原理,本篇将围绕两种ADRC算法展开,针对扩张状态观测器的参数整定问题进行详解,同时,对跟踪微分器的几个重要应用进行介绍。两种典型的ADRC
    发表于 09-07 08:02

    光伏逆变器工作原理特点

    工作原理特点工作原理:逆变装置的核心,是逆变开关电路,简称为逆变电路。该电路通过电力电子开关的导通与关断,来完成逆变的功能。特点:(1)要求具有较高的效率。由于目前太阳能电池的价格
    发表于 09-16 07:03

    编码器具有哪些特点工作原理是什么?

    伺服电机的作用是什么?有哪些分类?编码器具有哪些特点工作原理是什么?
    发表于 09-29 08:33

    什么是USART?工作原理是什么?具有哪些特点

    什么是UART?有什么特点?什么是USART?工作原理是什么?具有哪些特点
    发表于 12-13 06:05

    数字式PID调节算法的具体工作原理是什么?

    数字式PID调节算法的具体工作原理是什么?
    发表于 02-11 08:11

    实用ADRC算法在炉温控制系统中的应用_徐新乐

    实用ADRC算法在炉温控制系统中的应用_徐新乐
    发表于 01-13 21:36 6次下载

    反向传播算法工作原理

    反向传播算法(BP算法)是目前用来训练人工神经网络的最常用且最有效的算法。作为谷歌机器学习速成课程的配套材料,谷歌推出一个演示网站,直观地介绍了反向传播算法
    的头像 发表于 07-02 16:01 9745次阅读
    反向传播<b class='flag-5'>算法</b>的<b class='flag-5'>工作原理</b>

    自抗扰控制ADRC算法的MATLAB仿真程序资料免费下载

    本文档的主要内容详细介绍的是自抗扰控制ADRC算法的MATLAB仿真程序资料免费下载。
    发表于 06-25 08:00 30次下载
    自抗扰控制<b class='flag-5'>ADRC</b><b class='flag-5'>算法</b>的MATLAB仿真程序资料免费下载

    容栅传感器的工作原理特点

    本文主要介绍了容栅传感器的工作原理及容栅传感器的特点
    发表于 03-13 09:44 9783次阅读

    永磁同步电机转速环ADRC电流环ADRC双环无传感器控制

    永磁同步电机转速环ADRC电流环ADRC无传感器控制 原理、仿真、波形、总结 转速环、电流环ADRC原理 仿真框图 仿真波形 总结 原理、仿真、波形、总结 转速环、电流环ADRC原理
    发表于 03-15 09:38 5次下载
    永磁同步电机转速环<b class='flag-5'>ADRC</b>电流环<b class='flag-5'>ADRC</b>双环无传感器控制