Active disturbance rejection control (or ADRC, also known as automatic disturbance rejection control) is a model-free control technique used for designing controllers for systems with unknown dynamics and external disturbances. This approach only necessitates an estimated representation of the system's behavior to design controllers that effectively counteract disturbances without causing any overshooting.
ADRC has been successfully used as an alternative to
PID control
A proportional–integral–derivative controller (PID controller or three-term controller) is a control loop mechanism employing feedback that is widely used in industrial control systems and a variety of other applications requiring continuous ...
in many applications, such as the control of permanent magnet synchronous motors, thermal power plants and robotics. In particular, the precise control of
brushless motors
A brushless DC electric motor (BLDC motor or BL motor), also known as an electronically commutated motor (ECM or EC motor) or synchronous DC motor, is a synchronous motor using a direct current (DC) electric power supply. It uses an electronic ...
for joint motion is vital in high-speed industrial robot applications. However, flexible robot structures can introduce unwanted vibrations, challenging PID controllers. ADRC offers a solution by real-time disturbance estimation and compensation, without needing a detailed model.
Disturbance rejection
To achieve robustness, ADRC is based on extension of the
system model
Systems modeling or system modeling is the interdisciplinary study of the use of models to conceptualize and construct systems in business and IT development.state variable representing everything that the user does not include in the mathematical description of the base system to be controlled. This virtual state (sum of unknown part of model dynamics and external
disturbance
Disturbance and its variants may refer to:
Math and science
* Disturbance (ecology), a temporary change in average environmental conditions that causes a pronounced change in an ecosystem
* Disturbance (geology), linear zone of faults and folds ...
s, usually denoted as a "total disturbance" or "generalized disturbance") is estimated online with an extended
state observer In control theory, a state observer or state estimator is a system that provides an estimate of the internal state of a given real system, from measurements of the input and output of the real system. It is typically computer-implemented, and pr ...
and used in the
control signal
In telecommunication, signaling is the use of signals for controlling communications. This may constitute an information exchange concerning the establishment and control of a telecommunication circuit and the management of the network.
Classif ...
in order to decouple the system from the actual perturbation acting on the plant. This disturbance rejection feature allows users to treat the considered system with a simpler model insofar as the negative effects of modeling uncertainty are compensated in real time. As a result, the operator does not need a precise analytical description of the base system; one can model the unknown parts of the dynamics as internal disturbances in the base system.
Control architecture
The ADRC consists of three main components: a tracking differentiator, a non-linear state error feedback and an extended state observer. The global convergence of ADRC has been proved for a class of general multiple-input multiple-output systems.
The following architecture is known as the output-form structure of ADRC:There also exists a special form of ADRC, known as error-form structure, which is used for comparing the ADRC with classical controllers such as PID.
Tracking differentiator
The primary objective of the tracking differentiator is to follow the transient profile of the reference signal, addressing the issue of sudden changes in the set point that occur in the conventional PID controller. Moreover, the tracking differentiator also mitigates the possible noise amplification that affects the derivative term of the PID controller by using numerical integration instead of numerical differentiation.
Extended state observer
An extended state observer (ESO) keeps track of the system's states as well as external disturbances and unknown model's perturbations. As a result, ADRC does not rely on any particular mathematical model of disturbance. Nonlinear ESO (NESO) is a subtype of general ESO that uses a nonlinear discontinuous function of the output estimate error. NESO are comparable to sliding mode observers in that both use a nonlinear function of output estimation error (rather than a linear function as in linear, high gain, and extended observers). A sliding mode observer's discontinuity is at the origin, but the NESO's discontinuity is at a preset error threshold.
Nonlinear state error feedback
The intuitiveness of PID control can be attributed to the simplicity of its error feedback. ADRC extends the PID by employing a nonlinear state error feedback, and because of this, seminal works referred to ADRC as nonlinear PID. Weighted state errors can also be used as feedback in a linearization system.
MATLAB
MATLAB (an abbreviation of "MATrix LABoratory") is a proprietary multi-paradigm programming language and numeric computing environment developed by MathWorks. MATLAB allows matrix manipulations, plotting of functions and data, implementation ...