何谓自抗扰?
最近修改日期:2026-02-06
参与者:Jackrainman
配套资源:B站视频讲解
目录
1. ADRC 概述
1.1 核心问题
在控制理论中,我们必须承认一个事实:内部扰动和外部扰动都会对物体的状态产生变化。传统控制方法(如 PID)对不确定性往往效果不佳。
两类扰动: - 内部扰动:系统参数变化、未建模动态、非线性特性 - 外部扰动:环境干扰、负载变化、测量噪声
1.2 解决思路
自抗扰控制(Active Disturbance Rejection Control, ADRC)由韩京清教授提出,其核心目标是解决系统的不确定性控制问题。
ADRC 的破局之道是 "化繁为简" ——通过实时估计与补偿机制,将复杂不确定系统转化为简单的理想系统。
1.3 ADRC 框架
韩京清教授提出的 ADRC 框架包含三个核心组件:

┌─────────────────────────────────────────────────────────┐
│ ADRC 控制器架构 │
├─────────────────────────────────────────────────────────┤
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ 跟踪微分器 │ → │ 非线性反馈 │ ← │ ESO │ │
│ │ (TD) │ │ (NLSEF) │ │ (状态观测器) │ │
│ └─────────────┘ └──────┬──────┘ └──────▲──────┘ │
│ ↑ │ │ │
│ 参考输入 r 控制量 u 输出 y │
└─────────────────────────────────────────────────────────┘
| 组件 | 作用 | 说明 |
|---|---|---|
| 跟踪微分器(TD) | 安排过渡过程 | 使指令光滑化,提供微分信号 |
| 扩张状态观测器(ESO) | 估计总扰动 | 实时估计系统状态和扰动 |
| 非线性状态误差反馈(NLSEF) | 生成控制量 | 非线性组合生成控制信号 |
2. 积分器串联型
2.1 核心概念
⭐ 关键概念:韩京清教授 1979 年提出的理念——无论系统是否线性,在一定条件下都可以回归于积分器串联型。
积分器串联型(Integrator Chain)是 ADRC 理论的基础概念。
数学上,一个 n 阶积分器串联型系统可表示为:
这意味着输出是输入的 n 次积分。
2.2 典型实例
| 物理量 | 积分关系 | 物理意义 |
|---|---|---|
| 位移 \(y\) | \(y = \iint a \, dt^2\) | 加速度的二次积分是位移 |
| 速度 \(v\) | \(v = \int a \, dt\) | 加速度的积分是速度 |
| 电荷 \(q\) | \(q = \int i \, dt\) | 电流的积分是电荷 |
| 流量 \(Q\) | \(Q = \int v \, dt\) | 流速的积分是流量 |
2.3 意义
一旦所有控制问题都能转化为积分器串联型,就能实现 "一套研究处处用" 的普适性控制策略,大幅降低控制器设计复杂度。
3. 总扰动
3.1 概念定义
总扰动是 ADRC 最核心的概念之一。它将系统中所有不确定因素打包为一个整体:
- 系统内部非线性:\(-a_1\dot{y} - a_0y\)
- 参数不确定性:\(\Delta a_1, \Delta a_0\)
- 外部扰动:\(d(t)\)
数学表示:
3.2 "两个自由度"视角
从控制结构看,总扰动处理体现了两个自由度的设计思想:
┌─────────────────────────────────────────┐
│ 外环:Controller │
│ 设计期望的动态特性 │
│ (跟踪性能、响应速度) │
└─────────────────────────────────────────┘
↑
│ u₀(虚拟控制量)
↓
┌─────────────────────────────────────────┐
│ 内环:Rejector │
│ 抵消被控对象的不确定性 │
│ u = u₀ - f̂/b │
└─────────────────────────────────────────┘
- 去扰器(Rejector):内环,负责抵消不确定性
- 控制器(Controller):外环,设计期望性能
这样,我们只需要研究 不确定 → 确定,被扰 → 无扰 即可。
3.3 补偿公式
这是 ADRC 最关键的数学公式:
代入原系统方程 \(\ddot{y} = f + bu\):
当估计准确时(\(\hat{f} \approx f\)),复杂系统被简化为纯积分串联型 \(\ddot{y} \approx b u_0\)。
💡 核心洞察:ADRC 的核心思想是将系统内部的未知动态和外部扰动合并定义为"总扰动",通过实时估计与补偿,将系统简化为积分器串联型。
4. 扩张状态观测器(ESO)
4.1 基本原理
扩张状态观测器是 ADRC 的"眼睛",其核心思想是:
将总扰动视为一个待估计的状态变量
4.2 为什么要"扩张"
常规状态观测器(如 Luenberger 观测器)只关注系统原生状态: - \(x_1 = y\)(输出/位移) - \(x_2 = \dot{y}\)(速度)
而 ESO 将总扰动 \(f\) 定义为新的状态: - \(x_3 = f\)(扩张状态)
这就是"扩张"(Extended)的含义——增加一个维度来估计扰动。
4.3 状态空间方程
对于二阶系统 \(\ddot{y} = f + bu\),扩张后的状态方程为:
其中定义状态变量: - \(x_1 = y\)(位置) - \(x_2 = \dot{y}\)(速度) - \(x_3 = f(y, \dot{y}, w, t)\)(总扰动)
4.4 反馈修正机制
ESO 的估计能力来源于反馈校正:
关键洞察:如果模型预测的 \(z_1\) 与实际 \(y\) 不符,说明我们对扰动 \(z_3\) 的估算有误。这个误差会反馈修正所有状态估计,直到模型和现实吻合。
💡 学习提示:理解反馈修正机制是掌握 ESO 工作原理的关键。
5. 线性扩张状态观测器(LESO)
5.1 LESO vs ESO
| 特性 | ESO(原始) | LESO(线性化) |
|---|---|---|
| 结构 | 非线性 | 线性 |
| 实现难度 | 较高 | 较低 |
| 工程应用 | 理论分析 | 工程实践 |
| 参数调节 | 复杂 | 相对简单(带宽法) |
LESO 相比 ESO 在工程上更容易实现,是高志强教授对 ADRC 的重要改进。
5.2 极点配置法
LESO 设计的关键是合理配置观测器极点。
对于 n 阶系统,设计 n+1 阶 LESO 时,将所有极点配置在 \(-\omega_o\)(观测器带宽):
5.3 极点配置表
二阶系统(n=2 → 3阶LESO):
| 增益 | 公式 |
|---|---|
| \(l_1\) | \(3\omega_o\) |
| \(l_2\) | \(3\omega_o^2\) |
| \(l_3\) | \(\omega_o^3\) |
四阶系统(n=4 → 5阶LESO):
| 增益 | 公式 |
|---|---|
| \(l_1\) | \(5\omega_o\) |
| \(l_2\) | \(10\omega_o^2\) |
| \(l_3\) | \(10\omega_o^3\) |
| \(l_4\) | \(5\omega_o^4\) |
| \(l_5\) | \(\omega_o^5\) |
5.4 带宽 \(\omega_o\) 的选择
\(\omega_o\) 是 LESO 最重要的设计参数:
- 增大 \(\omega_o\):观测响应更快,估计更准确,但易受噪声影响
- 减小 \(\omega_o\):滤波效果更好,但估计滞后
实际工程中需要权衡,通常取 \(3\omega_c \sim 5\omega_c\)(\(\omega_c\) 为控制器带宽)。
6. ADRC 阶数确定
6.1 阶数与相对阶
ADRC/LADRC 的阶数取决于被控对象的相对阶——即输出 \(y\) 对输入 \(u\) 的最高阶导数的阶数。
观察微分方程左侧最高阶的导数项: - \(\dot{y} = f + bu\) → 1阶系统 - \(\ddot{y} = f + bu\) → 2阶系统 - \(y^{(4)} = f + bu\) → 4阶系统
6.2 n阶系统与n+1阶观测器
ADRC 的核心法则:n 阶系统必须配备 n+1 阶观测器。
| 系统阶数 n | 需估计的状态 | 观测器阶数 |
|---|---|---|
| 1 | \(y, \dot{y}, f\) | 2 |
| 2 | \(y, \dot{y}, \ddot{y}, f\) | 3 |
| 4 | \(y, \dot{y}, \ddot{y}, \dddot{y}, f\) | 5 |
6.3 阶数的物理意义
阶数代表控制信号 \(u\) 需要经过多少次积分累积才能影响输出 \(y\)。
例如: - 弹簧阻尼系统:力 → 加速度 → 速度 → 位移(3阶) - 电机系统:电压 → 电流 → 转矩 → 速度 → 位置(4阶)
💡 记忆口诀:n 阶系统,n+1 阶观测器,多出来的那个就是"总扰动"。
7. 跟踪微分器(TD)
7.1 作用
跟踪微分器有两个核心功能:
- 安排过渡过程:使输入指令光滑化,避免控制量突变
- 提取微分信号:从噪声信号中提取可靠的微分
7.2 物理意义
二阶 TD 说明我们需要给控制器安排过渡过程,指令和微分都需要给控制器,指令应当是光滑的,这样能让被控对象时时刻刻跟踪指令。
在控制系统中,直接对指令求导会产生噪声放大问题。TD 通过安排合理的过渡过程,既保证输出能跟踪指令,又避免剧烈的控制动作。
7.3 与 ESO 的关系
TD 和 ESO 协同工作,但处理对象不同:
| 组件 | 处理对象 | 输出 |
|---|---|---|
| TD | 指令信号 \(r\) | 光滑指令 \(v_1\)、微分 \(v_2\) |
| ESO | 输出信号 \(y\) | 状态估计 \(z_1, z_2\)、扰动 \(z_3\) |
8. 非线性组合
8.1 与 PID 的区别
传统 PID 使用线性组合:
ADRC 的非线性组合(NLSEF)使用非线性函数:
8.2 fal 函数
fal 函数是 ADRC 中常用的非线性函数:
特点: - 小误差时(\(|e| > \delta\)):高增益(\(|e|^\alpha\)),快速收敛 - 大误差时(\(|e| \leq \delta\)):低增益(\(e/\delta^{1-\alpha}\)),避免超调
💡 直观理解:fal 函数实现了"小误差大增益,大误差小增益"的非线性特性。
9. 设计范式
9.1 完整设计流程
┌────────────────────────────────────────────────────┐
│ 步骤1:建立过程动态方程 │
│ ẏ = f(y, ẏ, d, t) + bu │
└────────────────────────────────────────────────────┘
↓
┌────────────────────────────────────────────────────┐
│ 步骤2:确定系统阶数 n │
│ 根据最高阶导数确定 │
└────────────────────────────────────────────────────┘
↓
┌────────────────────────────────────────────────────┐
│ 步骤3:设计 n+1 阶 LESO │
│ 配置观测器带宽 ωo,计算增益 li │
└────────────────────────────────────────────────────┘
↓
┌────────────────────────────────────────────────────┐
│ 步骤4:设计控制律 │
│ u = (u₀ - ẑ₃) / b │
└────────────────────────────────────────────────────┘
↓
┌────────────────────────────────────────────────────┐
│ 步骤5:参数整定 │
│ 调节 ωo, b, k₁, k₂ 等参数 │
└────────────────────────────────────────────────────┘
9.2 关键参数说明
| 参数 | 符号 | 作用 | 整定建议 |
|---|---|---|---|
| 观测器带宽 | \(\omega_o\) | 决定扰动估计速度 | 通常为 \(3\sim5\) 倍控制器带宽 |
| 输入系数 | \(b\) | 控制系统增益 | 通过阶跃响应估算 |
| 控制增益 | \(k_1, k_2\) | 决定闭环响应速度 | \(k_p = \omega_c^2, k_d = 2\omega_c\) |
| 非线性参数 | \(\alpha, \delta\) | 改善暂态性能 | 工程上常简化为线性形式 |
10. 总结
10.1 核心思想回顾
| 核心思想 | 说明 |
|---|---|
| 不确定性打包 | 将所有扰动打包为"总扰动" \(f\) |
| 实时估计补偿 | 通过 ESO 实时估计并抵消扰动 |
| 化繁为简 | 将复杂系统转化为积分串联型 |
| 扩张观测 | 增加状态维度来估计不可测扰动 |
10.2 与 PID 的对比
| 特性 | PID | ADRC |
|---|---|---|
| 鲁棒性 | 一般 | 优秀 |
| 依赖模型 | 否 | 否(仅需相对阶) |
| 参数调节 | 经验法 | 带宽法(更系统) |
| 抗扰能力 | 一般 | 强(主动估计补偿) |
| 实现复杂度 | 低 | 中等 |
10.3 学习建议
- 先理解积分器串联型概念——这是 ADRC 的理论基础
- 深入理解总扰动的定义——这是 ADRC 的核心创新
- 掌握 ESO/LESO 的数学原理——这是实现抗扰的关键
- 通过仿真和实验验证——理论结合实际
- 注意参数整定的工程实践——带宽法是 LADRC 的精髓
10.4 扩展阅读
- 韩京清教授原著:《自抗扰控制技术》
- 高志强教授 LADRC 系列论文
- LADRC 工程化实现论文
- MATLAB/Simulink 中的 ADRC 工具箱