Linear ADRC Blockset

A collection of different implementation forms of linear active disturbance rejection control (ADRC).
294 Downloads
Updated 18 Sep 2023

View License

Overview
This blockset includes continuous- and discrete-time, output- and error-based, state-space and transfer function forms of linear active disturbance rejection control (ADRC):
a
  • The continuous-time state-space form of output-based ADRC is the "classic" linear form (cf. Gao, "Scaling and bandwidth-parameterization based controller tuning", DOI: 10.1109/ACC.2003.1242516).
  • Discrete-time state-space forms are based on zero-order hold discretization using the current observer approach (cf. Miklosovic et.al., "Discrete implementation and generalization of the extended state observer", DOI: 10.1109/ACC.2006.1656547).
  • Discrete-time transfer function forms exactly replicate the dynamics of the discrete-time state-space form (cf. Herbst/Madonski, "Tuning and implementation variants of discrete-time ADRC", DOI: 10.1007/s11768-023-00127-0).
  • The inner loops of error-based forms (and hence stability properties) are identical to their output-based equivalents (cf. Madonski et.al., "ADRC in output and error form: connection, equivalence, performance", DOI: 10.1007/s11768-023-00129-y).
Features
  • All blocks can be tuned using bandwidth parameterization (cf. Gao, "Scaling and bandwidth-parameterization based controller tuning", DOI: 10.1109/ACC.2003.1242516), either from time-domain or frequency-domain target values.
  • Some blocks additionally allow using half-gain tuning (cf. Herbst et.al., "Half-gain tuning for active disturbance rejection control", DOI: 10.1016/j.ifacol.2020.12.1864), which reduces the impact of measurement noise on the controller output (may require the Control System Toolbox).
  • Continuous-time variants feature controller output limitation with built-in windup protection, discrete-time variants additionally have a rate limitation option for the controller output.

Cite As

Gernot Herbst (2026). Linear ADRC Blockset (https://in.mathworks.com/matlabcentral/fileexchange/135552-linear-adrc-blockset), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2016b
Compatible with R2016b and later releases
Platform Compatibility
Windows macOS Linux
Tags Add Tags
Version Published Release Notes
1.0