二阶LADRC带跟踪微分器TD含 包含 跟踪微分器TD 三阶扩张状态观测器ESO 状态误差反馈控制律SEF td,eso,sef均已调好参数见下图。 TD、ESO、SEF均用simulink见下图1 被控对象用普通二阶系统简单易懂。 最后两张和pid对比效果挺不错的。在控制理论中线性活跃扰动抵消控制LADRC是一种非常有效的控制方法尤其是在处理系统扰动和不确定性时表现出色。今天我们将深入探讨二阶LADRC的实现特别是其中的跟踪微分器TD、三阶扩张状态观测器ESO和状态误差反馈控制律SEF。这些模块共同作用使得控制系统在跟踪性能和抗扰动能力上都有出色的表现。跟踪微分器TD跟踪微分器TD的主要作用是为参考输入信号生成其导数估计。这种方法不仅可以避免对系统的微分操作带来的噪声放大问题还可以提供更平滑的参考信号。TD的实现通常基于滑模控制或其他观测器技术。以下是TD的一个简单实现示例% 跟踪微分器TD classdef TrackingDifferentiator handle properties r0 5; % 过冲抑制因子 r 10; % 跟踪小颤荡因子 h 0.001; % 抽样时间 y 0; % 输出 v 0; % 导数估计 end methods function obj TrackingDifferentiator() end function [y, v] compute(obj, u) obj.y obj.y obj.h * (-obj.r0 * obj.y obj.r * (u - obj.y)) ; obj.v v obj.h * (-obj.r0 * obj.v obj.r * (u - obj.y)) ; y obj.y; v obj.v; end end end通过该TD实现我们可以在系统中生成参考信号及其导数估计这对于后续的控制律设计非常重要。扩张状态观测器ESO扩张状态观测器ESO的核心思想是将系统的扰动作为一个扩张状态来估计。通过估计扰动控制器可以主动地进行抵消从而提高系统的鲁棒性。我们采用的是三阶ESO能够更好地捕捉系统的动态特性。以下是ESO的实现示例% 扩张状态观测器ESO classdef ExtendedStateObserver handle properties a0 10; % 观测器带 a1 60; % 观测器带 a2 600; % 观测器带 b0 0.5; % 扰动估计系数 h 0.001; % 抽样时间 x1 0; % 系统状态估计 x2 0; % 系统状态导数估计 x3 0; % 扰动估计 end methods function obj ExtendedStateObserver() end function [x1_est, x2_est, x3_est] compute(obj, u, y) obj.x1 obj.x1 obj.h * (obj.x2 - obj.a0 * (obj.x1 - y)) ; obj.x2 obj.x2 obj.h * (obj.x3 - obj.a1 * (obj.x2 - obj.a0 * (obj.x1 - y)) obj.b0 * u) ; obj.x3 obj.x3 obj.h * (-obj.a2 * (obj.x3 - obj.a1 * (obj.x2 - obj.a0 * (obj.x1 - y)) obj.b0 * u)) ; x1_est obj.x1; x2_est obj.x2; x3_est obj.x3; end end end通过ESO我们可以同时估计系统状态和扰动这为后续的控制器设计提供了重要信息。状态误差反馈控制律SEF状态误差反馈控制律SEF的设计基于对系统的状态误差进行反馈以驱动系统状态向期望状态靠近。通过合理的控制律设计可以有效地减小系统误差。以下是SEF的实现示例% 状态误差反馈控制律SEF classdef StateErrorFeedback handle properties k1 -10; % 状态误差反馈系数 k2 -60; % 状态误差反馈系数 k3 -600; % 状态误差反馈系数 end methods function obj StateErrorFeedback() end function u compute(obj, x_err, v_err, d_est) u obj.k1 * x_err obj.k2 * v_err obj.k3 * d_est; end end end通过SEF我们可以将状态误差、误差导数以及扰动估计结合起来形成一个有效的控制输入。Simulink实现在实际应用中我们通常会使用Simulink来实现和验证控制器的性能。以下是TD、ESO和SEF在Simulink中的实现示例二阶LADRC带跟踪微分器TD含 包含 跟踪微分器TD 三阶扩张状态观测器ESO 状态误差反馈控制律SEF td,eso,sef均已调好参数见下图。 TD、ESO、SEF均用simulink见下图1 被控对象用普通二阶系统简单易懂。 最后两张和pid对比效果挺不错的。![Simulink模块图]通过Simulink模拟我们可以直观地看到控制系统的性能。以下是与PID控制器的对比效果![对比效果图]从对比结果可以看出LADRC控制器在跟踪性能和抗扰动能力上都优于传统的PID控制器。总结二阶LADRC带跟踪微分器TD是一种非常有效的控制方法通过跟踪微分器TD、扩张状态观测器ESO和状态误差反馈控制律SEF的协同作用可以实现系统的高精度控制。通过Simulink的实现和对比分析我们可以清晰地看到LADRC的优越性能。如果你正在寻找一种高性能的控制方法不妨试试LADRC