U.S. patent application number 15/007281 was filed with the patent office on 2016-06-02 for extended active disturbance rejection controller.
The applicant listed for this patent is Cleveland State University. Invention is credited to Zhiqiang Gao, Gang Tian.
Application Number | 20160154388 15/007281 |
Document ID | / |
Family ID | 40161535 |
Filed Date | 2016-06-02 |
United States Patent
Application |
20160154388 |
Kind Code |
A1 |
Gao; Zhiqiang ; et
al. |
June 2, 2016 |
EXTENDED ACTIVE DISTURBANCE REJECTION CONTROLLER
Abstract
Multiple designs, systems, methods and processes for controlling
a system or plant using an extended active disturbance rejection
control (ADRC) based controller are presented. The extended ADRC
controller accepts sensor information from the plant. The sensor
information is used in conjunction with an extended state observer
in combination with a predictor that estimates and predicts the
current state of the plant and a co-joined estimate of the system
disturbances and system dynamics. The extended state observer
estimates and predictions are used in conjunction with a control
law that generates an input to the system based in part on the
extended state observer estimates and predictions as well as a
desired trajectory for the plant to follow.
Inventors: |
Gao; Zhiqiang; (Westlake,
OH) ; Tian; Gang; (Westlake, OH) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
Cleveland State University |
Cleveland |
OH |
US |
|
|
Family ID: |
40161535 |
Appl. No.: |
15/007281 |
Filed: |
January 27, 2016 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
14097624 |
Dec 5, 2013 |
9268315 |
|
|
15007281 |
|
|
|
|
13464558 |
May 4, 2012 |
8644963 |
|
|
14097624 |
|
|
|
|
12195353 |
Aug 20, 2008 |
8180464 |
|
|
13464558 |
|
|
|
|
12067141 |
Sep 10, 2008 |
8060340 |
|
|
PCT/US2006/036156 |
Sep 18, 2006 |
|
|
|
12195353 |
|
|
|
|
10351664 |
Jan 27, 2003 |
8041436 |
|
|
12195353 |
|
|
|
|
60965359 |
Aug 20, 2007 |
|
|
|
60718393 |
Sep 19, 2005 |
|
|
|
60718581 |
Sep 19, 2005 |
|
|
|
60718899 |
Sep 20, 2005 |
|
|
|
60728928 |
Oct 20, 2005 |
|
|
|
60728929 |
Oct 20, 2005 |
|
|
|
60373404 |
Apr 18, 2002 |
|
|
|
Current U.S.
Class: |
700/29 ;
700/37 |
Current CPC
Class: |
G05B 13/02 20130101;
G06F 17/10 20130101; G05B 13/048 20130101; G05B 11/42 20130101;
G05B 5/01 20130101 |
International
Class: |
G05B 13/04 20060101
G05B013/04; G06F 17/10 20060101 G06F017/10 |
Goverment Interests
[0002] This work was supported at least in part by NASA under NASA
contract number GT3-52387. Accordingly, the United States
government may have certain rights herein.
Claims
1. A system for controlling velocity of a plant, comprising: a
first order state space model comprising a velocity value, v(t),
where v(t) equals the sum of f(t) and b*u(t), f(t) represents the
combined effects of internal dynamics and external disturbance of
the plant, u(t) is a control signal, and b is a constant to an
approximate value; a linear extended state observer, which is a
function of a single performance parameter, for estimating the
value of f(t); and a monitor adapted to cancel the effect of f(t)
on the velocity value by an estimate from the linear extended state
observer.
2. The system of claim 1, where the plant is a web processing
system.
3. The system of claim 2, where the velocity value comprises at
least one of a carriage roller velocity, an exit-side roller
velocity, and a process-side roller velocity.
4. The system of claim 1, where the linear extended state observer
comprises a reduced order extended state observer.
5. The system of claim 2, where the web processing system comprises
a web handling machine for processing paper.
6. The system of claim 2, where the web processing system comprises
a web handling machine for processing plastic film.
7. The system of claim 2, where the web processing system comprises
a web handling machine for processing cloth fabrics.
8. The system of claim 2, where the web processing system comprises
a web handling machine for processing strip steel.
9. The system of claim 1, where the velocity value v(t) comprises
velocities of rollers at either end of a web span.
10. The system of claim 1, where the combined effects of internal
dynamics and external disturbance of the plant comprise effects of
temperature and humidity.
11. The system of claim 1, where the combined effects of internal
dynamics and external disturbance of the plant comprise effects of
machine wear and variations in raw material.
12. A control system for a plant, comprising: a plurality of active
disturbance rejection controllers; and a high frequency gain matrix
implemented in an electronic device for receiving at least one
input signal from each of the plurality of active disturbance
rejection controllers and for producing a plurality of control
signals u, where the plant receives the plurality of control
signals u and produces a plurality of output signals y, each of
said plurality of output signals further provided as an input to at
least one of the plurality of active disturbance rejection
controllers.
13. The control system for the plant of claim 12, where the
high-frequency gain matrix is a single gain matrix.
14. The control system for the plant of claim 12, where the
high-frequency gain matrix comprises a plurality of matrices with a
one-to-one association between each input signal and each control
signal.
15. The control system for the plant of claim 12, where the plant
is a turbofan.
16. The control system for the plant of claim 12, where the plant
is one of a chemical process, a mechanical process, or an
electrical process.
17. The control system for a plant of claim 12, where the plant is
one of a chemical process, an airplane flight control, a missile
flight control, a CNC machine control, a robotics control, a
magnetic bearing, a satellite attitude control, or a process
control.
Description
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application is a divisional of U.S. application Ser.
No. 14/097,624 filed Dec. 5, 2013, which is a continuation of U.S.
application Ser. No. 13/464,558 filed May 4, 2012, which is a
continuation of U.S. application Ser. No. 12/195,353 filed Aug. 20,
2008, both of which are hereby incorporated by reference. This
application claims the benefit of U.S. Application No. 60/965,359
filed 20 Aug. 2007, which is hereby incorporated by reference. This
application is a continuation in part and claims the benefit of the
following applications: U.S. application Ser. No. 12/067,141 filed
17 Mar. 2008; that claims priority to the following: Patent
Cooperation Treaty Appl. No. PCT/US2006/036156, filed 18 Sep. 2006;
U.S. Appl. No. 60/718,393, filed 19 Sep. 2005; U.S. Appl. No.
60/718,581, filed 19 Sep. 2005; U.S. Appl. No. 60/718,899, filed 20
Sep. 2005; U.S. Appl. No. 60/728,928, filed 20 Oct. 2005; and U.S.
Appl. No. 60/728,929 filed, 20 Oct. 2005; and U.S. application Ser.
No. 10/351,664 filed, 27 Jan. 2003 that claims priority to U.S.
Appl. No. 60/373,404, filed 18 Apr. 2002, all of which are hereby
incorporated by reference.
TECHNICAL FIELD
[0003] The subject matter described herein relates to controllers,
systems, and methods for feedback control of various systems.
BACKGROUND
[0004] A feedback (closed-loop) control system 10, as shown in
Prior Art FIG. 1, is widely used to modify the behavior of a
physical process, denoted as the plant 110, so it behaves in a
specific desirable way over time. For example, it may be desirable
to maintain the speed of a car on a highway as close as possible to
60 miles per hour in spite of possible hills or adverse wind; or it
may be desirable to have an aircraft follow a desired altitude,
heading and velocity profile independently of wind gusts; or it may
be desirable to have the temperature and pressure in a reactor
vessel in a chemical process plant maintained at desired levels.
All of these industrial tasks are accomplished today by using
traditional feedback control, and the above are examples of what
automatic control systems are designed to do, without human
intervention.
[0005] The key component in a feedback control system is the
controller 120, which determines the difference between the output
"y" of the plant 110, (e.g., the temperature or position) and its
desired value, and produces a corresponding control signal "u"
(e.g., modulating the power input to a heater or motor).
[0006] The goal of controller design is to make the difference
between the actual output of the plant and the desired output as
small as possible as rapidly as possible. Today, controllers are
employed in a large number of industrial control applications and
in areas like robotics, aeronautics, astronautics, motors, motion
control and thermal control, just to name a few.
INDUSTRIAL APPLICABILITY
[0007] The present system and method has potential applicability to
a wide range of different industrial and commercial applications.
The following brief synopsis is intended only to provide background
on some exemplary applications to assist a person of ordinary skill
in the art in understanding this disclosure more fully. Additional
background information on a select number of exemplary industrial
applications are also provided.
BACKGROUND OF THE INVENTION
[0008] Classic Control Theory provides a number of techniques for
an engineer to use in controller design. Existing controllers for
linear, time invariant, and single-input single-output plants are
categorized in one taxonomy into three forms: the
proportional/integral/derivative (PID) controllers, transfer
function based (TFB) controllers, and state feedback (SF)
controllers. The PID controller is defined by the equation:
u=K.sub.Pe+K.sub.I.intg.e+K.sub.D Equation (1)
where (u) is the control signal and (e) is the error between the
set point and the process output (y) being controlled. As commonly
used, the notation of a dot (.cndot.) above a variable indicates
the use of a derivative of the variable where the order corresponds
to the number of dots.
[0009] The PID-type of controller has been employed in engineering
and other applications since the early 1920s. It is an error-based
controller that does not require an explicit mathematical model of
the plant 110.
Transfer Function Based Controller
[0010] The transfer function based (TFB) controller is given in the
form of
U ( s ) = G c ( s ) E ( s ) G c ( s ) = n ( s ) d ( s ) Equation (
2 ) ##EQU00001##
where U(s) and E(s) are Laplace Transforms of u and e defined
above, and n(s) and d(s) are polynomials in s. The TFB controller
can be designed using methods in control theory based on the
transfer function model of the plant, Gp(s). A PID controller can
be considered a special case of a TFB controller because it has an
equivalent transfer function of s.
G c ( s ) = k p + k i s + k d s Equation ( 3 ) ##EQU00002##
State Feedback (SF) Controller
[0011] The State Feedback (SF) controller can be defined by
u=r+Kx Equation (4)
where u is the control input, r is the setpoint for the output to
follow and x is the state vector associated with the system, based
on the state space model of the plant 110:
{dot over (x)}(t)=Ax(t)+Bu(t) Equation (5)
y(t)=Cx(t)+Du(t) Equation (6)
where x(t) is the state vector, y(t) is the output vector, u(t) is
the input or control vector, A is the state matrix, B is the input
matrix, C is the output matrix and D is the feed-through matrix.
When the state x is not accessible, a state observer (SO):
{circumflex over (x)}=A{circumflex over (x)}+Bu+L(y-y) Equation
(7)
is usable to estimate the state x, where the ( ) symbol is used to
denote an estimate or observed value of a given variable and L
denotes the observer coefficient matrix.
State Observers
[0012] Observers extract real-time information of a plant's 110
internal state from its input-output data. The observer usually
presumes precise model information of the plant 110, since
performance is largely based on its mathematical accuracy. Most
prior art closed loop controllers require both types of
information. Such presumptions, however, often make the method
impractical in engineering applications, since the challenge for
industry remains in constructing these models as part of the design
process. Another level of complexity is added when gain scheduling
and adaptive techniques are used to deal with nonlinearity and time
variance, respectively.
Disturbance Observers and Disturbance Rejection
[0013] Recently, disturbance rejection techniques have been used to
account for uncertainties in the real world and successfully
control complex nonlinear systems. The premise is to solve the
problem of model accuracy in reverse by modeling a system with an
equivalent input disturbance d that represents any difference
between the actual plant P and a derived/selected model P.sub.n of
the plant, including external disturbances w. An observer is then
designed to estimate the disturbance in real time and provide
feedback to cancel it. As a result, the augmented system acts like
the model P.sub.n at low frequencies, making the system behave like
P.sub.n and allowing a controller to be designed for P.sub.n.
[0014] The most common of these techniques is the disturbance
observer (DOB) structure (Endo, S., H. Kobayashi, C J. Kempf, S.
Kobayashi, M. Tomizuka and Y. Hori (1996). "Robust Digital Tracking
Controller Design for High-Speed Positioning Systems." Control Eng
Practice, 4:4, 527-536; Kim, B. K., H.-T. Choi, W. K. Chung and I.
H. Suh (2002). "Analysis and Design of Robust Motion Controllers in
the Unified Framework." J. of Dynamic Systems, Measurement, and
Control, 124, 313-321; Lee, H. S. and M. Tomizuka (1996). "Robust
Motion Controller Design for High-Accuracy Positioning Systems."
IEEE Trans. Ind. Electron., 43:1, 48-55; Tesfaye, A., H. S. Lee and
M. Tomizuka (2000). "A Sensitivity Optimization Approach to Design
of a Disturbance Observer in Digital Motion Control." IEEE/ASME
Trans, on Mechatronics, 5:1, 32-38; Umeno, T. and Y. Hori (1991).
"Robust Speed Control of DC Servomotors Using Modern Two Degrees
of-Freedom Controller Design". IEEE Trans. Ind. Electron., 38:5,
363-368). It uses a disturbance observer consisting of a binomial
Q-filters and the inverse model of the plant. And the controller is
called parameterized in the sense that the Q-filter is treated as a
parameter. A model deliberately different from P is suggested in E.
Schrijver and J. Van Dijk, "Disturbance Observers for Rigid
Mechanical Systems: Equivalence, Stability, and Design," Journal of
Dynamic Systems, Measurement, and Control, vol. 124, no. 4, pp.
539-548, 2002 to facilitate design, but no guidelines are given
other than it should be as simple as possible, while cautioning
stability and performance may be in danger if the model is
significantly different from the plant. Another obstacle is that a
separate state observer must be designed to provide state feedback
to the controller. In existing research, derivative approximates
are used in this way but their effect on performance and stability
is questionable. Furthermore, the controller design is dependent on
the DOB design, meaning that derivative approximates can not be
arbitrarily selected.
[0015] Multiple DOBs were used to control a multivariable robot by
treating it as a set of decoupled single-input single-output (SISO)
systems, each with disturbances that included the coupled dynamics
(Bickel, R. and M. Tomizuka (1999). "Passivity-Based Versus
Disturbance Observer Based Robot Control: Equivalence and
Stability." J. of Dynamic Systems, Measurement, and Control, 121,
41-47; Hori, Y., K. Shimura and M. Tomizuka (1992). "Position/Force
Control of Multi-Axis Robot Manipulator Based on the TDOF Robust
Servo Controller For Each Joint." Proc. of ACC, 753-757; Kwon, S.
J. and W. K. Chung (2002). "Robust Performance of the Multiloop
Perturbation Compensator." IEEE/ASME Trans. Mechatronics, 7:2,
190-200; Schrijver, E. and J. Van Dijk (2002) Disturbance Observers
for Rigid Mechanical Systems: Equivalence, Stability, and Design."
J. of Dynamic Systems, Measurement, and Control, 124, 539-548.)
[0016] Another technique, referred to as the unknown input observer
(UIO), estimates the states of both the plant and the disturbance
by augmenting a linear plant model with a linear disturbance model
(Burl, J. B. (1999). Linear Optimal Control, pp. 308-314. Addison
Wesley Longman, Inc., California; Franklin, G. F., J. D. Powell and
M. Workman (1998). Digital Control of Dynamic Systems, Third
Edition, Addison Wesley Longman, California; Johnson, C D. (1971).
"Accommodation of External Disturbances in Linear Regulator and
Servomechanism Problems." IEEE Trans. Automatic Control, AC-16:6,
635-644; Liu, C-S., and H. Peng (2002). "Inverse-Dynamics Based
State and Disturbance Observer for Linear Time-Invariant Systems."
J. of Dynamic Systems, Measurement, and Control, 124, 375-381;
Profeta, J. A. III, W. G. Vogt and M. H. Mickle (1990).
"Disturbance Estimation and Compensation in Linear Systems." IEEE
Trans. Aerospace and Electronic Systems, 26:2, 225-231; Schrijver,
E. and J. Van Dijk (2002) "Disturbance Observers for Rigid
Mechanical Systems: Equivalence, Stability, and Design." J. of
Dynamic Systems, Measurement, and Control, 124, 539-548). Unlike
the DOB structure, the controller and observer can be designed
independently, like a Luenberger observer. However, it still relies
on a good mathematical model and a design procedure to determine
observer gains. An external disturbance w is generally modeled
using cascaded integrators (l/s.sup.h). When they are assumed to be
piece-wise constant, the observer is simply extended by one state
and still demonstrates a high degree of performance.
Extended State Observer (ESO)
[0017] In this regard, the extended state observer (ESO) is quite
different. Originally proposed by Han, J. (1999). "Nonlinear Design
Methods for Control Systems." Proc. 14th IFAC World Congress, in
the form of a nonlinear UIO and later simplified to a linear
version with one tuning parameter by Gao, Z. (2003). "Scaling and
Parameterization Based Controller Tuning." Proc. of ACC, 4989-4996,
the ESO combines the state and disturbance estimation power of a
UIO with the simplicity of a DOB. One finds a decisive shift in the
underlying design concept as well. The traditional observer is
based on a linear time-invariant model that often describes a
nonlinear time-varying process. Although the DOB and UIO reject
input disturbances for such nominal plants, they leave the question
of dynamic uncertainty mostly unanswered. The ESO, on the other
hand, addresses both issues in one simple framework by formulating
the simplest possible design model P.sub.d=l/s.sup.n for a large
class of uncertain systems. The design model P.sub.d is selected to
simplify controller and observer design, forcing P to behave like
the design model P.sub.d at low frequencies rather than P.sub.n. As
a result, the effects of most plant dynamics and external
disturbances are concentrated into a single unknown quantity. The
ESO estimates this quantity along with derivatives of the output,
giving way to the straightforward design of a high performance,
robust, easy to use and affordable industrial controller.
Active Disturbance Rejection Control (ADRC)
[0018] Originally proposed by Han, J. (1999). "Nonlinear Design
Methods for Control Systems." Proc. 14th IFAC World Congress, a
nonlinear, non-parameterized active disturbance rejection control
(ADRC) is a method that uses an ESO. A linear version of the ADRC
controller and ESO were parameterized for transparent tuning by
Gao, Z. (2003). "Scaling and Parameterization Based Controller
Tuning." Proc. of ACC, 4989-4996. Its practical usefulness is seen
in a number of benchmark applications already implemented
throughout industry with promising results (Gao, Z., S. Hu and F.
Jiang (2001). "A Novel Motion Control Design Approach Based on
Active Disturbance Rejection." Proc. of 40th IEEE Conference on
Decision and Control; Goforth, F. (2004). "On Motion Control Design
and Tuning Techniques." Proc. of ACC; Hu, S. (2001). "On High
Performance Servo Control Solutions for Hard Disk Drive." Doctoral
Dissertation, Department of Electrical and Computer Engineering,
Cleveland State University; Hou, Y., Z. Gao, F. Jiang and B. T.
Boulter (2001). "Active Disturbance Rejection Control for Web
Tension Regulation." Proc. of 40th IEEE Conf on Decision and
Control; Huang, Y., K. Xu and J. Han (2001). "Flight Control Design
Using Extended State Observer and Nonsmooth Feedback." Proc. of
40th IEEE Conf on Decision and Control; Sun, B and Z. Gao (2004).
"A DSP-Based Active Disturbance Rejection Control Design for a 1 KW
H-Bridge DC-DC Power Converter." IEEE Trans. on Ind. Electronics;
Xia, Y., L. Wu, K. Xu, and J. Han (2004). "Active Disturbance
Rejection Control for Uncertain Multivariable Systems With
Time-Delay., 2004 Chinese Control Conference. It also was applied
to a fairly complex multivariable aircraft control problem (Huang,
Y., K. Xu and J. Han (2001). "Flight Control Design Using Extended
State Observer and Nonsmooth Feedback. Proc. of 40th IEEE Conf on
Decision and Control).
[0019] What is needed is a control framework for application to
systems throughout industry that are complex and largely unknown to
the personnel often responsible for controlling them. In the
absence of required expertise, less tuning parameters are needed
than current approaches, such as multi-loop PID, while maintaining
or even improving performance and robustness.
INDUSTRIAL APPLICATION
[0020] A selection of industrial applications is presented herein
to provide a background on some selected applications for the
present extended active disturbance rejection controller.
Tracking Control
[0021] Tracking Control refers to the output of a controlled system
meeting design requirements when a specified reference trajectory
is applied. Oftentimes, it refers to how closely the output y
compares to the reference input r at any given point in time. This
measurement is known as the error e=r-y.
[0022] Control problems are categorized in two major groups;
point-to-point control and tracking control. Point-to-point
applications usually call for a smooth step response with small
overshoot and zero steady state error, such as when controlling
linear motion from one position to the next and then stopping.
Since the importance is placed on destination accuracy and not on
the trajectory between points, conventional design methods produce
a bandwidth limited controller with inherent phase lag in order to
produce a smooth output. Tracking applications require a good
tracking of a reference input by keeping the error as small as
possible at all times, not just at the destination. This is
particularly common in controlling a process that never stops.
Since the importance is placed on accurately following a changing
reference trajectory between points, phase lags are avoided as much
as possible because they may lead to significant errors in the
transient response, which lasts for the duration of the process in
many applications. A common method of reducing phase lag is to
increase the bandwidth, at the cost of increased control effort
(energy) and decreased stability margin.
[0023] Various methods have been used to remove phase lag from
conventional control systems. All of them essentially modify the
control law to create a desired closed loop transfer function equal
to one. As a result, the output tracks the reference input without
much phase lag and the effective bandwidth of the overall system is
improved. The most common ethod is model inversion where the
inverse of the desired closed loop transfer function is added as a
prefilter. Another method proposed a Zero Phase Error Tracking
Controller (ZPETC) that cancels poles and stable zeros of the
closed loop system and compensates for phase error introduced by
un-cancelable zeros. Although it is referred to as a tracking
controller, it is really a prefilter that reduces to the inverse of
the desired closed loop transfer function when unstable zeros are
not present. Other methods consist of a single tracking control law
with feed forward terms in place of the conventional feedback
controller and prefilter, but they are application specific.
However, all of these and other previous methods apply to systems
where the model is known.
[0024] Model inaccuracy can also create tracking problems. The
performance of model-based controllers is largely dependent on the
accuracy of the model. When linear time-invariant (LTI) models are
used to characterize nonlinear time-varying (NTV) systems, the
information becomes inaccurate over time. As a result, gain
scheduling and adaptive techniques are developed to deal with
nonlinearity and time variance, respectively. However, the
complexity added to the design process leads to an impractical
solution for industry because of the time and level of expertise
involved in constructing accurate mathematical models and
designing, tuning, and maintaining each control system.
[0025] There have been a number of high performance tracking
algorithms that consist of three primary components: disturbance
rejection, feedback control, and phase lag compensation implemented
as a prefilter. First, disturbance rejection techniques are applied
to eliminate model inaccuracy with an inner feedback loop. Next, a
stabilizing controller is constructed based on a nominal model and
implemented in an outer feedback loop. Finally, the inverse of the
desired closed loop transfer function is added as a prefilter to
eliminate phase lag. Many studies have concentrated on unifying the
disturbance rejection and control part, but not on combining the
control and phase lag compensation part, such as the RIC framework.
Internal model control (IMC) cancels an equivalent output
disturbance. B. Francis and W. Wonham, "The Internal Model
Principal of Control Theory," Automatica, vol 12, 1976, pp.
457-465. E. Schrijver and J. Van Dijk, "Disturbance Observers for
Rigid Mechanical Systems: Equivalence, Stability, and Design,"
Journal of Dynamic Systems, Measurement, and Control, vol. 124,
December 2002, pp. 539-548 uses a basic tracking controller with a
DOB to control a multivariable robot. The ZPETC has been widely
used in combination with the DOB framework and model based
controllers.
[0026] Thus, having reviewed prior art in tracking control, the
application now describes example systems and methods of tracking
control employing predictive ADRC.
Web Processing Applications
[0027] Web tension regulation is a challenging industrial control
problem. Many types of material, such as paper, plastic film, cloth
fabrics, and even strip steel are manufactured or processed in a
web form. The quality of the end product is often greatly affected
by the web tension, making it a crucial variable for feedback
control design, together with the velocities at the various stages
in the manufacturing process. The ever-increasing demands on the
quality and efficiency in industry motivate researchers and
engineers alike to explore better methods for tension and velocity
control. However, the highly nonlinear nature of the web handling
process and changes in operating conditions (temperature, humidity,
machine wear, and variations in raw materials) make the control
problem challenging.
[0028] Accumulators in web processing lines are important elements
in web handling machines as they are primarily responsible for
continuous operation of web processing lines. For this reason, the
study and control of accumulator dynamics is an important concern
that involves a particular class of problems. The characteristics
of an accumulator and its operation as well as the dynamic behavior
and control of the accumulator carriage, web spans, and tension are
known in the art.
[0029] Both open-loop and closed-loop methods are commonly used in
web processing industries for tension control purposes. In the
open-loop control case, the tension in a web span is controlled
indirectly by regulating the velocities of the rollers at either
end of the web span. An inherent drawback of this method is its
dependency on an accurate mathematical model between the velocities
and tension, which is highly nonlinear and highly sensitive to
velocity variations. Nevertheless, simplicity of the controller
outweighs this drawback in many applications. Closing the tension
loop with tension feedback is an obvious solution to improve
accuracy and to reduce sensitivity to modeling errors. It requires
tension measurement, for example, through a load cell, but is
typically justified by the resulting improvements in tension
regulation.
[0030] Most control systems will unavoidably encounter
disturbances, both internal and external, and such disturbances
have been the obstacles to the development of high performance
controller. This is particularly true for tension control
applications and, therefore, a good tension regulation scheme must
be able to deal with unknown disturbances. In particular, tension
dynamics are highly nonlinear and sensitive to velocity variations.
Further, process control variables are highly dependent on the
operating conditions and web material characteristics. Thus, what
are needed are systems and methods for control that are not only
overly dependent on the accuracy of the plant model, but also
suitable for the rejection of significant internal and external
disturbances.
Jet Engine Control Applications
[0031] A great deal of research has been conducted towards the
application of modern multivariable control techniques on aircraft
engines. The majority of this research has been to control the
engine at a single operating point. Among these methods are a
multivariable integrator windup protection scheme (Watts, S. R. and
S. Garg (1996). "An Optimized Integrator Windup Protection
Technique Applied to a Turbofan Engine Control," AIAA Guidance
Navigation and Control Conf.), a tracking filter and a control mode
selection for model based control (Adibhatla S. and Z. Gastineau
(1994). "Tracking Filter Selection And Control Mode Selection For
Model Based Control." AIAA 30th Joint Propulsion Conference and
Exhibit.), an H, method and linear quadratic Gaussian with loop
transfer recovery method (Watts, S. R. and S. Garg (1995)." A
Comparison Of Multivariable Control Design Techniques For A
Turbofan Engine Control." International Gas Turbine and Aeroengine
Congress and Expo.), and a performance seeking control method
(Adibhatla, S. and K. L. Johnson (1993). "Evaluation of a Nonlinear
Psc Algorithm on a Variable Cycle Engine." AIAA/SAE/ASME/ASEE 29th
Joint Propulsion Conference and Exhibit.). Various schemes have
been developed to reduce gain scheduling (Garg, S. (1997). "A
Simplified Scheme for Scheduling Multivariable Controllers." IEEE
Control Systems) and have even been combined with integrator windup
protection and H.sub.m (Frederick, D. K., S. Garg and S. Adibhatla
(2000). "Turbofan Engine Control Design Using Robust Multivariable
Control Technologies. IEEE Trans. on Control Systems
Technology).
[0032] Conventionally, there have been a limited number of control
techniques for full flight operation (Garg, S. (1997). "A
Simplified Scheme for Scheduling Multivariable Controllers." IEEE
Control Systems; and Polley, J. A., S. Adibhatla and P J. Hoffman
(1988). "Multivariable Turbofan Engine Control for Full Conference
on Decision and Control Flight Operation." Gas Turbine and Expo).
However, there has been no development of tuning a controller for
satisfactory performance when applied to an engine. Generally, at
any given operating point, models can become inaccurate from one
engine to another. This inaccuracy increases with model complexity,
and subsequently design and tuning complexity. As a result, very
few of these or similar aircraft design studies have led to
implementation on an operational vehicle.
[0033] The current method for controlling high performance jet
engines remains multivariable proportional-integral (PI) control
(Edmunds, J. M. (1979). "Control System Design Using Closed-Loop
Nyquist and Bode Arrays." Int. J. on Control, 30:5, 773-802, and
Polley, J. A., S. Adibhatla and P J. Hoffman (1988). "Multivariable
Turbofan Engine Control for Full Conference on Decision and
Control. Flight Operation."Gas Turbine and Expo). Although the
controller is designed by implementing Bode and Nyquist techniques
and is tunable, a problem remains due to the sheer number of tuning
parameters compounded by scheduling.
SUMMARY OF INVENTION
[0034] The present system, method, process, and device for
controlling systems is applicable for a variety of different
application and has utility in a number of different industrial
fields. The following brief summary section is provided to
facilitate a basic understanding of the nature and capabilities of
the present system and method. This summary section is not an
extensive nor comprehensive overview and is not intended to
identify key or critical elements of the present systems or methods
or to delineate the scope of these items. Rather this brief summary
is intended to provide a conceptual introduction in simplified form
as an introduction for the more detailed description presented
later in this document.
[0035] The present application describes selected embodiments of
the ADRC controller that comprise one or more computer components,
that extend, build upon and enhance the use of ADRC controllers and
provide enhanced performance and utility. Specifically, in one
aspect the ADRC controller utilizes a predictive computer component
or module that in one embodiment predicts future values of the
plant output and in a second embodiment predicts future estimates
of the system state and generalized disturbance. The generalized
disturbance includes dynamics of the plant itself such that the
plant is effectively reduced to a cascaded integral plant. In the
various embodiments a variety of estimates are available and
introduced.
[0036] In still another aspect, the ADRC controller further
includes a model of the plant dynamics. The model is used in one
embodiment to improve the state estimator or predictor. In a second
embodiment the model is used to provide an enhanced control law
that provides improved performance. In both aspects of the
embodiments discussed in this paragraph, the generalized
disturbance captures model errors and discrepancies and allows the
system to eliminate errors caused by model errors, discrepancies,
and assumptions. In the multiple embodiments, a variety of models
are available for use by one of ordinary skill in the art to
achieve the desired performance relative to the type of plant being
controlled.
[0037] In yet another aspect, the ADRC controller further includes
a non-linear, or discrete time optimal control law. The non-linear
control law of the present embodiment utilizes non-linear control
laws to improve the overall performance of an ADRC controller as
compared to an ADRC controller with a linear
proportional-derivative based control law.
[0038] In still another aspect, additional knowledge of derivative
plant output gathered from high quality sensor information or
direct measurement sensors (e.g. velocity and acceleration sensors)
is used to reduce the order of the system state and disturbance
estimator.
BRIEF DESCRIPTION OF THE DRAWINGS
[0039] The accompanying figures depict multiple embodiments of a
device and method for the separation of constituents from a flow. A
brief description of each figure is provided below. Elements with
the same reference numbers in each figure indicate identical or
functionally similar elements. Additionally, the left-most digit(s)
of a reference number identifies the drawings in which the
reference number first appears.
[0040] FIG. 1 is a block diagram of a Prior Art feedback
controller.
[0041] FIG. 2 is a block diagram of an ADRC configuration for a 2nd
order plant.
[0042] FIG. 3 is a block diagram of a predictive ADRC
configuration.
[0043] FIG. 4 is a block diagram of a 2 degree of freedom transfer
function based (TFB) control structure.
[0044] FIG. 5 is a block diagram of an implementation of a PADRC
configuration based on output prediction.
[0045] The present invention is described with reference to block
diagrams and operational flow charts. It is to be understood that
the functions/acts noted in the blocks may occur out of the order
noted in the operational illustrations. For example, two blocks
shown in succession may in fact be executed substantially
concurrently or the blocks may sometimes be executed in the reverse
order, depending upon the functionality/acts involved, including
for example executing as asynchronous threads on a processor.
Although some of the diagrams include arrows on communication paths
to show a primary direction of communication, it is to be
understood that communication may occur in the opposite direction
to the depicted arrows.
DETAILED DESCRIPTION
[0046] Multiple embodiments of a system, device, and method for the
control of systems are presented herein. Those of ordinary skill in
the art can readily use this disclosure to create alternative
embodiments using the teaching contained herein.
Lexicon
[0047] The following teens used herein have the meanings as
follows.
[0048] As used herein the term "computer component" refers to a
computer and elements of a computer, such as hardware, firmware,
software, a combination thereof, or software in execution. For
example, a computer component can include by way of example, a
process running on a processor, a processor, an object, an
executable, an execution thread, a program, and a computer itself.
One or more computer components can in various embodiments reside
on a server and the server can be comprised of multiple computer
components. One or more computer components are in some cases
referred to as computer systems whereby one or more computer
components operate together to achieve some functionality. One or
more computer components can reside within a process and/or thread
of execution and a computer component can be localized on one
computer and/or distributed between two or more computers.
[0049] "Software", as used herein, includes but is not limited to,
one or more computer readable and/or executable instructions that
cause a computer or other electronic device to perform functions,
actions and/or behave in a desired manner. The instructions may be
embodied in various forms like routines, algorithms, modules,
methods, threads, and/or programs. Software may also be implemented
in a variety of executable and/or loadable forms including, but not
limited to, a stand-alone program, a function call (local and/or
remote), a servelet, an applet, instructions stored in a memory,
part of an operating system or browser, and the like. It is to be
appreciated that the computer readable and/or executable
instructions can be located in one computer component and/or
distributed between two or more communicating, co-operating, and/or
parallel processing computer components and thus can be loaded
and/or executed in serial, parallel, massively parallel and other
manners. It will be appreciated by one of ordinary skill in the art
that the form of software may be dependent on, for example,
requirements of a desired application, the environment in which it
runs, and/or the desires of a designer/programmer or the like.
[0050] "Computer communications", as used herein, refers to a
communication between two or more computers and can be, for
example, a network transfer, a file transfer, an applet transfer,
an email, a hypertext transfer protocol (HTTP) message, a datagram,
an object transfer, a binary large object (BLOB) transfer, and so
on. A computer communication can occur across, for example, a
wireless system (e.g., IEEE 802.11), an Ethernet system (e.g., IEEE
802.3), a token ring system (e.g., IEEE 802.5), a local area
network (LAN), a wide area network (WAN), a point-to-point system,
a circuit switching system, a packet switching system, and so
on.
[0051] An "operable connection" is one in which signals and/or
actual communication flow and/or logical communication flow may be
sent and/or received. Usually, an operable connection includes a
physical interface, an electrical interface, and/or a data
interface, but it is to be noted that an operable connection may
consist of differing combinations of these or other types of
connections sufficient to allow operable control.
[0052] As used herein, the term "signal" may take the form of a
continuous waveform and/or discrete value(s), such as digital
value(s) in a memory or register, present in electrical, optical or
other form.
[0053] The term "controller" as used herein indicates a method,
process, or computer component adapted to control a plant (i.e. the
system to be controlled) to achieve certain desired goals and
objectives.
[0054] As used herein the following symbols are used to describe
specific characteristics of the variable. A variable with a " "
overtop the variable label, unless other indicated to the contrary,
indicates that the variable is an estimate of the actual variable
of the same label. A variable with a ".cndot." overtop the variable
label, unless otherwise indicated, indicates that the variable is
an nth derivative of that variable, where n equals the number of
dots.
[0055] To the extent that the term "includes" is employed in the
detailed description or the claims, it is intended to be inclusive
in a manner similar to the term "comprising" as that term is
interpreted when employed as. a transitional word in a claim.
[0056] To the extent that the term "or" is employed in the claims
(e.g., A or B) it is intended to mean "A or B or both". When the
author intends to indicate "only A or B but not both", then the
author will employ the term "A or B but not both". Thus, use of the
term "or" in the claims is the inclusive, and not the exclusive,
use.
Active Disturbance Rejection Control (ADRC)
[0057] Active Disturbance Rejection Control ("ADRC") is a method or
process and, when embedded within a computer system, a device
(i.e., a controller that processes information and signals using
the ADRC algorithms), that effectively rejects both unknown
internal dynamics of a system of an arbitrary order to be
controlled, or plant 110, and external disturbances in real time
without requiring detailed knowledge of the plant 110 dynamics,
which is required by most existing control design methods.
[0058] The only information needed to configure an ADRC controller
is knowledge of the relative order of the plant 110 and the high
frequency gain of the plant 110. In comparison, traditional
model-based control methods require accurate mathematical models to
conform with prevailing model-based design methods. In some
embodiments, the ADRC controller leverages knowledge gained from
model-based controller designs to improve control performance. The
ADRC approach is unique in that it first forces an otherwise
nonlinear, time-varying and uncertain plant 110 to behave as a
simple linear cascade integral plant that can be easily controlled.
To this end, the unknown, nonlinear, and time-varying internal
dynamics is combined with the external disturbances to foini what
is denoted as the generalized disturbance, which is then estimated
and rejected, thus greatly simplifying the control design.
[0059] The embodiments of the ADRC controller design are founded on
the basic theory that uncertainties in dynamics and unknown
external disturbances in the operating environment are a key
challenge to be dealt with in control engineering practice.
Traditional control systems are incapable of providing a solution
to controlling and mitigating the impact of these uncertainties.
The ADRC controller in contrast is specifically adapted to mitigate
and eliminate the impact of these uncertainties, thus providing a
dynamically simplified system for control.
[0060] One previous major characteristic of the ADRC controller is
the parameterization of the controller as a function of control
loop bandwidth. This parameterization makes all of the ADRC
controller parameters functions of the control loop bandwidth; see,
U.S. patent application Ser. No. 10/351,664, titled, "Scaling and
Parameterizing A Controller" to Zhiqiang Gao, which is hereby
incorporated by reference in its entirety.
[0061] An embodiment of a parameterized ADRC controller applied to
a second-order plant 202 is illustrated in FIG. 2. The system to be
controlled is a second-order plant 202 and represents an arbitrary
plant 110 with predominantly second-order dynamics. The
second-order plant 202 has an output (y) in response to an input
that comprises a control signal (u) with superimposed external
disturbances (d).
[0062] Consider a general uncertain, nonlinear and time-varying
second-order plant 202 of the form:
=f(y,{dot over (y)},d,t)+bu Equation (8)
where y is system output, u is the control signal, b is a constant,
d is external input disturbance, f(y,{dot over (y)},d,t) is treated
as the generalized disturbance. When this generalized disturbance
is cancelled, the system is reduced to a simple double-integral
plant with a scaling factor b, which can be easily controlled. Here
we assume that the approximate value of b, denoted as {circumflex
over (b)}, is given or estimated. As shown in FIG. 2, the scaling
factor ({circumflex over (b)}) is used to scale 208, the control
output (uft). In other embodiments, the scaling factor is implicit
within the linear PD control law 206.
[0063] To capture the information of the generalized disturbance
f(y,{dot over (y)},d,t) and cancel it from the system dynamics
leads us to the Extended State Observer (ESO) 204, which is now
presented. Let x.sub.1=y, x.sub.2={dot over (y)}, and x.sub.3=f,
the description of the above plant 202 is rewritten in state space
form with f(y, {dot over (y)}, d,t), or simply f, treated as an
additional state:
{ x . = A x x + B x u + E f . y = C x x where A x = [ 0 1 0 0 0 1 0
0 0 ] , B x = [ 0 b 0 ] , E = [ 0 0 1 ] , C x = [ 1 0 0 ] Equation
( 9 ) ##EQU00003##
[0064] The corresponding state observer is
{ z . = A x z + B z u + L ( y m - C x z ) f ^ = Vz Equation ( 10 )
##EQU00004##
where y.sub.m is the measured system output, B.sub.z=[0 {circumflex
over (b)} 0].sup.T, V=[0 0 1], and L=[l.sub.1 l.sub.2
l.sub.3].sup.T is the observer gain vector. With the
parameterization technique as described more fully in U.S. patent
application Ser. No. 10/351,664, L is obtained by solving the
equation .lamda.(s)=|sI-A.sub.x+Lc.sub.x|=(s+.omega..sub.o).sup.3;
that is, all the eigenvalues of the observer are placed at
-.omega..sub.o with
l.sub.1=3.omega..sub.o,l.sub.2=3.omega..sub.o.sup.2,l.sub.3=.omega..sub.-
o.sup.3 Equation (11)
[0065] With a well-tuned extended state observer 204, z.sub.1,
z.sub.2, and z.sub.3 will closely track y, {dot over (y)}, and f
respectively, i.e. z.sub.1.apprxeq.y, z.sub.2.apprxeq.{dot over
(y)}, and; z.sub.3.apprxeq.f
[0066] Using the information provided by the extended state
observer 204, the generalized disturbance f is rejected by the
control law
u=(u.sub.0-z.sub.3)/{circumflex over (b)} Equation (12)
which reduces the plant 110 to a unity gain, double integral
plant
=u.sub.o Equation (13)
that can be easily controlled with linear proportional-derivative
(PD) with feedforward
u.sub.o=g.sub.pd(e,e,.omega..sub.c)+{umlaut over (r)} Equation
(14)
where g.sub.pd (e, , .omega..sub.c) is the parameterized linear PD
controller with the loop bandwidth of .omega..sub.c
g.sub.pd(e, ,.omega..sub.c)=.omega..sub.c.sup.2e+2.omega..sub.c
Equation (15)
with the error term defined as
e=r-z.sub.1 ={dot over (r)}-z.sub.2 Equation (16)
where the desired trajectory (r) is provided by the user.
[0067] Note that the linear PD control law 206 in Equation (14)
corresponds to the common PD gains of
k.sub.p=.omega..sub.c.sup.2 and k.sub.d=2.omega..sub.c Equation
(17)
[0068] Using these details, the ADRC controller is generalized in
its various embodiments to control an arbitrary n.sup.th-order
system y.sup.(n)=f(y,{dot over (y)}, . . . ,y.sup.(n-1),d,t)+bu, in
which the external disturbances and unknown internal dynamics are
rejected. In a similar manner, the plant 110 is reduced to a
cascaded integral plant y.sup.(n)=u, which is then controlled by a
generalized proportional-derivative (PD) control law, also
described as a linear PD control law 206 similar to Equation
(14).
Use of Enhanced Sensor Information to Improve Control
Performance
[0069] In other embodiments of the ADRC controller, the linear PD
control law 206 is updated to enhance performance by using direct
measurement of the system output states (y.sub.m) instead of the
estimated states (z.sub.1, z.sub.2). Specifically, when the
measured output y, (t) is sufficiently noise free and {dot over
(y)}.sub.m(t) is obtainable, either via direct measurement or from
y.sub.m(t), the control law in Equation (14) can be implemented
with
e=r-y.sub.m ={dot over (r)}-{dot over (y)}.sub.m Equation (18)
[0070] That is, the output measurement and its derivative are used
in the control law, instead of their estimates, z.sub.1 and
z.sub.2. Similarly for the n.sup.th-order plant 110, the output
measurement y.sub.m and its derivatives from the 1.sup.st to the
(n-1).sup.th-order available, can also be used directly in the PD
control law, also referred to as the linear PD control law 206,
instead of their estimates from the Extended State Observer (ESO)
204. Using the direct measurement of the output measurement state
y.sub.m and its derivatives reduces the phase lag and improve
control system performance, if the output measurement and its
derivatives are not corrupted by noise.
Multiple Extended States
[0071] The Extended State Observer 204 in alternative embodiments
includes more than one extended states, such as embodiments where
the 2nd order plant 202 is replaced with a higher order plant 110.
In one embodiment, when augmented with two extended states,
x.sub.3=f and x.sub.4={dot over (f)}, the extended plant state
space model can be written as follows.
{ x . = A x x + B x u + E f y = C x x where A x = [ 0 1 0 0 0 0 1 0
0 0 0 1 0 0 0 0 ] , B x = [ 0 b 0 0 ] , E = [ 0 0 0 1 ] , C x = [ 1
0 0 0 ] Equation ( 19 ) ##EQU00005##
[0072] With z.sub.1, z.sub.2, z.sub.3, and z.sub.4 tracking
x.sub.1, x.sub.2, x.sub.3, and x.sub.4 respectively, the
4.sup.th-order ESO 204 is employed to estimate f.
{ z . = A x z + B z u + L ( y m - C x z ) f ^ = Vz Equation ( 20 )
##EQU00006##
where B.sub.z=[0 {circumflex over (b)} 0 0].sup.T and V=[0 0 1
0].
[0073] In this manner, any embodiment of an ADRC controller is
adaptable for use with an arbitrary number (h) extended state
observer states with is generalized to control an n.sup.th-order
system.
Discrete Implementation
[0074] ADRC algorithms are implemented in discrete time, with ESO
204 discretized in both Euler and ZOH, and in both the current
estimator and predictive estimator form.
[0075] In discrete implementation, the ESO 204 pole location is
determined in the Z domain by solving the equation
.lamda.(z)=|zI-.phi.+L.sub.pC.sub.x|=(Z-.beta.).sup.3, where
.beta.=e.sup.-.omega..sup.o.sup.T.
[0076] Predictive Discrete Extended State Observer (PDESO) is in
predictive estimator form, as shown in the following equation.
{ z [ k + 1 ] = .PHI. z [ k ] + .GAMMA. u [ k ] + L p ( y m [ k ] -
z 1 [ k ] ) z _ [ k ] = z [ k ] Equation ( 21 ) ##EQU00007##
[0077] Current Discrete Extended State Observer (CDESO) is in
current estimator form, as shown in the following equation.
{ z [ k + 1 ] = .PHI. z [ k ] + .GAMMA. u [ k ] + L p ( y m [ k ] -
z 1 [ k ] ) z _ [ k ] = z [ k ] + L c ( y m [ k ] - z 1 [ k ] )
Equation ( 22 ) ##EQU00008##
[0078] The gain matrices of different ADRC discrete implementations
are shown in the following Table I.
TABLE-US-00001 TABLE I PDESO AND CDESO COEFFICIENT MATRICES Type
.PHI. .GAMMA. L.sub.p L.sub.c Euler [ 1 T 0 0 1 T 0 0 1 ]
##EQU00009## [ 0 b ^ T 0 ] ##EQU00010## [ 3 ( 1 - .beta. ) 3 ( 1 -
.beta. ) 2 / T ( 1 - .beta. ) 3 / T 2 ] ##EQU00011## [ 1 - .beta. 3
( 1 - .beta. ) 2 ( 2 + .beta. ) / T ( 1 - .beta. ) 3 / T 2 ]
##EQU00012## ZOH [ 1 T T 2 2 0 1 T 0 0 1 ] ##EQU00013## [ b ^ T 2 2
b ^ T 0 ] ##EQU00014## [ 3 ( 1 - .beta. ) 3 ( 1 - .beta. ) 2 ( 5 +
.beta. ) / 2 T ( 1 - .beta. ) 3 / T 2 ] ##EQU00015## [ 1 - .beta. 3
3 ( 1 - .beta. ) 2 ( 1 + .beta. ) / 2 T ( 1 - .beta. ) 3 / T 2 ]
##EQU00016##
[0079] This discrete implementation of ADRC is also generalizable
to n.sup.th-order plants 110.
Predictive Active Disturbance Rejection Controller
[0080] The thrust of the many of the embodiments presented here is
the addition of the predictive functions to extend the capabilities
of the original components of the ADRC. This extends the ADRC
controller and generates embodiments of predictive versions of the
ADRC, such as the predictive ADRC 300, depicted in block diagram
form in FIG. 3 In this embodiment, the linear PD control law 206 in
the predictive ADRC 300 is now a predictive control law 306.
Similarly, the observer, or more specifically the extended state
observer 204 from the traditional ADRC 200 is now embodied as a
predictive state and disturbance observer 304. In one embodiment
the predictive state and disturbance observer 304 is a predictive
extended state observer (PESO) where the prediction occurs within
the bounds of the ESO 204 to where the estimated states z.sub.n(t)
are predicted to form the predictive state and disturbance observer
304, and outputs the prediction of the estimated states
z.sub.n(t+.tau.). In a second embodiment, a state predictor method
is used to extend the design of the ESO 204 to estimate the states
z.sub.n(t) and form the predictive state and disturbance observer
304.
[0081] In other embodiments, other estimators and predictors,
either in an integrated form or in combination are used to generate
similar information as that generated by the predictive state and
disturbance observer 304 and used by the embodiments predictive
ADRC 300. One of these other embodiments adopts a disturbance
observer (DOB) estimator structure to estimate the disturbance and
a state observer and a predictor element that together form the
predictive state and disturbance observer 304. In a second other
embodiment, the predictive state and disturbance observer 304
utilizes an unknown input observer (UIO) estimator. Other
estimators, including combinations of estimators such as the
combination of a state observer and a DOB, are suitable for
estimation of both the plant 110 output and the known part of the
general disturbance (f.sub.n) are adaptable using the disclosure
provided herein to those of ordinary skill in the art to serve as a
predictive state and disturbance observer 304.
[0082] The challenge in constructing the various embodiments of a
predictive controller within the general purpose ADRC controller
architecture is how the various signals used by the ADRC algorithm
are predicted and used. The signals used by the ADRC algorithm
originate from a multitude of sources in the various embodiments,
including in one embodiment the extended state observer 204 (ESO).
In another embodiment, a simplified, reduced-order ESO (RESO) is
used when either: (i) quality measurements of the output signals
allows numerical differentiation to estimate derivatives of the
output signal; or (ii) direct measurement of derivatives are
possible (e.g. velocity and acceleration sensors), are
available.
[0083] In another embodiment, a nonlinear proportional-derivative
(NPD) control law is used to further optimize the performance of
the present ADRC system. The RESO aspect of the ADRC controller
provides alternative embodiments of ESO 204 and RESO; a general
form of RESO with multiple extended states for an n.sup.th-order
plant 110, and incorporation of the known plant 110 dynamics into
ESO 204 and control law.
[0084] Furthermore, to facilitate practical implementations of the
new techniques, we have provided at selected locations herein, the
transfer function equivalent predictive ADRC 400, with H(s) 402 and
G.sub.c(s) 404, in a two-degree-of-freedom (2dof) structure shown
in FIG. 4. Similarly, for a transfer function equivalent predictive
ADRC 400, the plant dynamics are represented as G.sub.p(s) 402. For
various forms of the Predictive ADRC 400 described herein, these
transfer function expressions, together with the NPD and RESO, are
novel and significant even when the amount of prediction is set to
zero.
[0085] All of these new developments' help to make the predictive
ADRC 300 possible and to provide the means of implementation the
present embodiments in a diverse range of industrial machinery, and
they are illustrated in details in the following sections.
Basic Design Principles for Predictive ADRC
[0086] In the real world, the sensor feedback, the generation of
the control signal and its arrival at the actuator, and the
estimation of the states and disturbances all contain time delays
and phase lags, which can endanger system stability. To accommodate
such delays and lags, we propose the following Predictive ADRC
control law:
u(t)=(g(e(t+l.sub.e),{dot over (e)}(t+l.sub.
),.omega..sub.c)+{umlaut over (r)}(t+l.sub.u)-{circumflex over
(f)}(t+l.sub.f))/{circumflex over (b)} Equation (23)
where g(e, ,.omega..sub.c) is the parameterized linear PD
controller 206, or nonlinear proportional derivative (NPD)
controller, Equation (68), l.sub.e, l.sub. , l.sub.u, and l.sub.f
are positive real numbers representing the prediction horizons, a
special case of which is l.sub.e=l.sub. =l.sub.u=l.sub.f=.tau. and
the corresponding control law is
u(t)=(g(e(t+.tau.),{dot over (e)}(t+.tau.),.omega..sub.c)+{umlaut
over (r)}(t+.tau.)-{circumflex over (f)}(t+.tau.))/{circumflex over
(b)} Equation (24)
[0087] Also, if a part of the plant 110 dynamics, f.sub.n, is
given, it can be incorporated into ADRC, as shown later in this
disclosure. In the context of Predictive ADRC 300, the knowledge of
f.sub.n can be used to help predict its future value,
f.sub.n(t+l.sub.f.sub.n). The corresponding control law for
Equation (23) and Equation (24) are
u(t)=(g(e(t+l.sub.e),{dot over (e)}(t+l.sub.
),.omega..sub.c)+{umlaut over
(r)}(t+l.sub.u)-f.sub.n(t+l.sub.f.sub.n)-{circumflex over
(f)}.sub.u(t+l.sub.f.sub.u))/{circumflex over (b)} Equation
(25)
and
u(t)=(g(e(t+.tau.),{dot over (e)}(t+.tau.),.omega..sub.c)+{umlaut
over (r)}(t+.tau.)-f.sub.n(t+.tau.)-{circumflex over
(f)}.sub.u(t+.tau.))/{circumflex over (b)} Equation (26)
respectively.
[0088] Described below are various methods to obtain the prediction
of e(t), (t), and {circumflex over (f)}(t), respectively, so that
these predictive ADRC 300 control laws can be implemented.
Prediction of e and
[0089] Two embodiments of methods for predicting the values of
error e(t) and its derivative are presented herein.
[0090] Method 1:
[0091] Using Taylor Series, the prediction of e(t), (t) can be
obtained as e(t+10=e(t)+e(t)l.sub.e or
e ( t + l e ) = e ( t ) + e . ( t ) l e + e ( t ) 2 l e 2 ,
##EQU00017##
and (t+l.sub. )= (t)+e(t)l.sub. . Here (t) can be obtained directly
from {dot over (r)}-{dot over (y)}, or from {dot over (r)}-z.sub.2
using regular ESO, or {dot over (r)}-z.sub.1 using RESO. Here e(t)
can be obtained as e(t)={umlaut over (r)}(t)- (t).apprxeq.{umlaut
over (r)}(t)-(z.sub.3(t)+{circumflex over (b)}u(t)) with ESO or
e(t)={umlaut over (r)}(t)- (t).apprxeq.{umlaut over
(r)}(t)-(z.sub.2(t)+{circumflex over (b)}u(t)) with RESO.
[0092] Method 2:
[0093] Since e(t+.tau.)=r(t+.tau.)-z.sub.1(t+.tau.) and
(t+.tau.)={dot over (r)}(t+.tau.)-z.sub.2(t+.tau.), e(t+.tau.) and
(t+.tau.) can be obtained directly using the future reference
signals r(t+.tau.) and {dot over (r)}(t+.tau.), which are generally
known, and the predicted output of the ESO z.sub.1(t+.tau.) and
z.sub.2 (t+.tau.), which need to be obtained approximately.
Prediction of {circumflex over (f)} in ESO and RESO
[0094] The primary method of predicting {circumflex over (f)} is
the 1.sup.st or 2.sup.nd-order Taylor Series approximation,
i.e.
f ^ ( t + l f ) .apprxeq. f ^ ( t ) + f . ^ ( t ) l f , or Equation
( 27 ) f ^ ( t + l f ) .apprxeq. f ^ ( t ) + f . ^ ( t ) l f + f ^
( t ) 2 l f 2 Equation ( 28 ) ##EQU00018##
which requires the 1.sup.st and/or 2.sup.nd order derivatives of
{circumflex over (f)}. To this end, a new form and a new way of
implementation of extended state observer (ESO) 204 are introduced
first, followed by the discussion on how to use them to obtain the
predicted estimate of {circumflex over (f)} in Equation (27) and
Equation (28)
Reduced-Order ESO
[0095] In the observer-based control methods, the phase lag
introduced by the observer decreases the phase margin of the
control loop and is therefore undesired. To reduce the phase lag in
the ESO 204, an embodiment of a reduced-order ESO (RESO) described
here.
[0096] Consider the plant 202 in Equation (9), if the derivative of
the measured output y.sub.m ({dot over (y)}.sub.m), is given, a
RESO can be constructed with z.sub.1 and z.sub.2 estimating
x.sub.2={dot over (y)} and x.sub.3=f respectively. The
correspondence between the augmented plant state space model and
the RESO is shown as follows.
x . = [ 0 1 0 0 0 1 0 0 0 ] X + [ 0 b 0 ] u + [ 0 0 1 ] f . y = [ 1
0 0 ] x [ z . 1 z . 2 ] = [ 0 1 0 0 ] [ z 1 z 2 ] + [ b ^ 0 ] u + [
l 1 l 2 ] ( y . m - z 1 ) f ^ = [ 0 1 ] z Equation ( 29 )
##EQU00019##
[0097] The shadowed blocks show how the gain matrices of the RESO
are obtained from the augmented plant state space model.
Equivalently, the RESO can be represented as
{ z . = A z z + B z u + L ( y . m - C z z ) f ^ = Vz where A z = [
0 1 0 0 ] , B z = [ b ^ 0 ] , L = [ l 1 l 2 ] , C z = [ 1 0 ] , V =
[ 0 1 ] , and l 1 = 2 .omega. o , l 2 = .omega. o 2 . Equation ( 30
) ##EQU00020##
[0098] With RESO replacing the ESO 204, the corresponding linear PD
control law 206 in ADRC 400 is
u=(g.sub.pd(e, ,.omega..sub.c)+{umlaut over
(r)}-z.sub.2)/{circumflex over (b)} Equation (31)
where
e=r-y.sub.m, ={dot over (r)}-z.sub.1 =Equation (32)
If {dot over (y)}.sub.m is clean it can be also fed back into the
control law instead of z.sub.1, the Equation (33) changes to
e=r-y.sub.m, ={dot over (r)}-{dot over (y)}.sub.m Equation (34)
Note here that the parameterized linear PD control law 206 can be
replaced by the parameterized
[0099] NPD control law 506, which will be introduced later.
[0100] The order of ESO 204 is reduced further if is also given, as
the double derivative of y.sub.m. According to U.S. patent
application Ser. No. 10/351,664, the total disturbance is obtained
as x.sub.3=f= -bu and it is susceptible to measurement noise. In an
alternative embodiment, a first order RESO can be constructed with
the only state z tracking x.sub.3=f. The correspondence between the
augmented plant state space model and the new RESO is shown as
follows.
x . = [ 0 1 0 0 0 1 0 0 0 ] x + [ 0 b 0 ] u + [ 0 0 1 ] f .
##EQU00021## y = [ 1 0 0 ] x ##EQU00021.2## z . = [ 0 ] z + [ 0 ] u
+ l ( y m - b ^ u - z ) ##EQU00021.3## f ^ = z ##EQU00021.4##
[0101] The shadowed blocks show how the gain matrices of the RESO
are obtained from the augmented plant state space model.
Equivalently, the RESO can be represented as
{ z . = A z z + B z u + L ( y m - b ^ u - C z z ) f ^ = Vz Equation
( 35 ) ##EQU00022##
where A.sub.z=0, B.sub.z=0, L=l=.omega..sub.o, C.sub.z=1, V=1. The
corresponding linear PD control law 206 with this RESO is
u=(g.sub.pd(e, ,.omega..sub.c)+{umlaut over (r)}-z)/{circumflex
over (b)} Equation (36)
where e=r-y.sub.m, ={dot over (r)}-{dot over (y)}.sub.m. Note here
again that the parameterized linear PD control law 206 can be
replaced by the parameterized NPD control law 506 to be
introduced.
A New ESO Implementation
[0102] Consider the same second-order plant 202 as described in
Equation (9). The ESO 204 described in U.S. patent application Ser.
No. 10/351,664 can be divided into two parts.
{ [ z . 1 z . 2 ] = [ 0 1 0 0 ] [ z . 1 z . 2 ] + [ 0 b ^ ] u + [ l
1 l 2 ] ( y m - z 1 ) z 3 = .intg. l 3 ( y m - z 1 ) t Equation (
37 ) ##EQU00023##
[0103] The first part is a Luenberger observer for the double
integral plant in Equation (13), and the second part shows that the
estimation of the general disturbance can be obtained by
integrating the observer error with a gain of l.sub.3. This
implementation is equivalent to the ESO 204.
[0104] When implemented in ZOH current estimator form, the
Luenberger observer is
{ z [ k + 1 ] = .PHI. z [ k ] + .GAMMA. u [ k ] + L p ( y m [ k ] -
z 1 [ k ] ) z _ [ k ] = z [ k ] + L c ( y m [ k ] - z 1 [ k ] )
where .PHI. = [ 1 T 0 1 ] , .GAMMA. = [ b ^ T 2 2 b ^ T ] , L c = [
1 - .beta. 2 ( 1 + .beta. 2 - 2 .beta. 1 ) / T ] , L p = [ 2 - 2
.beta. 1 ( 1 + .beta. 1 - 2 .beta. 1 ) / T ] , and .beta. 1 = - 3 2
.omega. o T cos ( 3 2 .omega. o T ) , .beta. 2 = - 3 .omega. o T .
Equation ( 38 ) ##EQU00024##
[0105] Similarly, the RESO in Equation (30) can be divided into two
parts:
{ z . 1 = b ^ u + l 1 ( y . m - z 1 ) z 2 = .intg. l 2 ( y . m - z
1 ) t Equation ( 39 ) ##EQU00025##
where the first part is a first order Luenberger observer, and the
second part is an integrator. When implemented in ZOH current
estimator form, this Luenberger observer is
{ z 1 [ k + 1 ] = .PHI. z 1 [ k ] + .GAMMA. u [ k ] + L p ( y . m [
k ] - z 1 [ k ] ) z _ 1 [ k ] = z 1 [ k ] + L c ( y . m [ k ] - z 1
[ k ] ) Equation ( 40 ) ##EQU00026##
where .PHI.=1, .GAMMA.={circumflex over (b)}T,
L.sub.c=L.sub.p=1-.beta., and
.beta.=e.sup.-2.omega..sup.o.sup.T.
Prediction of {circumflex over (f)}
[0106] With the new implementation of ESO 204, {circumflex over
(f)}=.intg.l.sub.3(y.sub.m-z.sub.1)dt, {dot over ({circumflex over
(f)})}=l.sub.3(y.sub.m-z.sub.1) and {umlaut over ({circumflex over
(f)})}=l.sub.3({dot over (y)}.sub.m-z.sub.2), and this enables us
to determine {circumflex over (f)}(t+l.sub.f) based on the 1.sup.st
or 2.sup.nd-order Taylor series approximation shown in
f ^ ( t + l f ) .apprxeq. .intg. l 3 ( y m - z 1 ) t + l f l 3 ( y
m - z 1 ) or Equation ( 41 ) f ^ ( t + l f ) .apprxeq. .intg. l 3 (
y m - z 1 ) t + l f l 3 ( y m - z 1 ) + l f 2 l 3 2 ( y . m - z 2 )
Equation ( 42 ) ##EQU00027##
[0107] With RESO, {circumflex over (f)}(t+l.sub.f) is obtained
as
{circumflex over (f)}(t+l.sub.f).apprxeq.l.sub.2({dot over
(y)}.sub.m-z.sub.1)dt+l.sub.fl.sub.2({dot over (y)}.sub.m-z.sub.1)
Equation (43)
Equivalent 2dof Transfer Functions with Prediction in ESO
[0108] Using prediction in ESO 204, with the 1.sup.st-order Taylor
series approximation of future value of {circumflex over (f)} used
in control law 404, the equivalent 2dof transfer functions are
C ( s ) = 1 b ^ l f l 3 s 3 + ( k p l 1 + k d l 2 + l 3 ) s 3 + ( k
p l 2 + k d l 3 ) s + k 1 l 3 s 3 + ( l 1 + k d ) s 2 + ( l 2 + k p
+ k d l 1 - l f l 3 ) s Equation ( 44 ) H ( s ) = ( s 3 + l 1 s 2 +
l 2 s + l 3 ) ( s 2 + k d s + k p ) l f l 3 s 3 + ( k p l 1 + k d l
2 + l 3 ) s 2 + ( k p l 2 + k d l 3 ) s + k 1 l 3 Equation ( 45 )
##EQU00028##
where l.sub.1, l.sub.2, l.sub.3 are observer gains defined in
Equation (11) and k.sub.p and k.sub.d are the
proportional-derivative (PD) gains defined in Equation (17).
[0109] When the 2.sup.nd-order Taylor series approximation of
{circumflex over (f)} is used in control law 404, the equivalent
2dof transfer functions are
C ( s ) = 1 b ^ l f 2 l 3 2 s 4 + ( l f l 3 + l f 2 l 1 l 3 2 ) s 3
+ ( k p l 1 + k d l 2 + l 3 ) s 2 + ( k p l 2 + k d l 3 ) s + k 1 l
3 s 3 + ( l 1 + k d - l f 2 l 3 2 ) s 2 + ( l 2 + k p + k d l 1 - l
f l 3 - l f 2 l 1 l 3 2 ) s Equation ( 46 ) H ( s ) = ( s 3 + l 1 s
2 + l 2 s + l 3 ) ( s 2 + k d s + k p ) l f 2 l 3 2 s 4 + ( l f l 3
+ l f 2 l 1 l 3 2 ) s 3 + ( k p l 1 + k d l 2 + l 3 ) s 2 + ( k p l
2 + k d l 3 ) s + k 1 l 3 Equation ( 47 ) ##EQU00029##
Equivalent 2dof Transfer function with Prediction in RESO
[0110] The equivalent 2dof transfer functions of ADRC-RESO with
prediction in {circumflex over (f)} are as follows.
G c ( s ) = 1 b ^ l f l 2 s 3 + ( k p + k d l 1 + l 2 ) s 2 + ( k p
l 1 + k d l 2 ) s + k p l 2 s 2 + ( k d + l 1 - l f l 2 ) s
Equation ( 48 ) H ( s ) = ( s 2 + l 1 s + l 2 ) ( k p + k d s + s 2
) l f l 2 s 3 + ( k p + k d l 1 + l 2 ) s 2 + ( k p l 1 + k d l 2 )
s + k p l 2 Equation ( 49 ) ##EQU00030##
where l.sub.1,l.sub.2 are observer gains defined in Equation
(35).
State Predictor Method for Predictive Extended State Observer
[0111] Another embodiment for forming a predictive state and
disturbance observer 304 module is to use a state predictor method
to extend the performance of a baseline ESO 204 to predict state
estimates .tau.seconds in the future. The basic state predictor
method approach was published by T. Oguchi, H. Nijmeijer,
Prediction of Chaotic Behavior, IEEE Trans. on Circuits and
Systems--I, Vol. 52, No. 11, pp. 2464-2472, 2005, which is hereby
incorporated by reference. The state predictor method is combined
in the embodiments presented herein with the regular ESO 204 of the
form
z . = Az + Bu + L ( y - y ^ ) y ^ = Cz where Equation ( 50 ) A = [
0 1 0 0 0 1 0 0 0 ] , B = [ 0 b ^ 0 ] , C = [ 1 0 0 ] , L = [ 3
.omega. o 3 .omega. o 2 .omega. o 3 ] Equation ( 51 )
##EQU00031##
to form the predictive ESO is in the form of
{dot over (z)}(t)=Az(t)+Bu(t)+L(y(t)-{circumflex over (y)}(t))
{circumflex over (y)}(t)=Cz(t-.tau.) Equation (52)
[0112] Then y(t)=z.sub.1(t-.tau.) will track y(t) while
z.sub.1(t)=y(t+.tau.) is its prediction ti seconds ahead. The ideas
is that since the observer design ensures that the observer error
goes to zero, or becomes very small, if that error is defined as
the difference between y(t) and z.sub.1 (t-.tau.) and
z.sub.1(t-.tau.) will approach y(t) and z.sub.1(t) will approach
y(t+.tau.). Therefore z.sub.1(t) can be used as a prediction of
y(t) .tau. second ahead.
Building a Predictive State and Disturbance Observer Using an
Output Prediction Mechanism
[0113] Perhaps a simpler method to obtain z(t+.tau.) is to leave
the observer unchanged but replace its input y.sub.m(t) with the
predicted output y(t+.tau.) as shown in FIG. 5. This configuration
is used both to obtain the predicted error and its derivatives as
well as the predicted disturbance estimation. Also depicted in FIG.
5 is a prediction module computer component or more generally a
prediction module 508. The prediction module 508 is adapted to
accept the measured system output (y.sub.m(t)) and calculated
estimated values of the system output (y(t+.tau.)) from the present
time to a time (.tau.) in the future.
[0114] A state and disturbance observer 504, shown in FIG. 5,
accepts the predicted and current values of the plant output
(y.sub.m) and the control commands (u(t)) to estimate the future
estimated states (z.sub.n(t+.tau.)) where (n) is the number of
estimated states plus an estimate of the generalized disturbance
(f.sub.n). The state and disturbance observer 504 in one embodiment
is an ESO 204. In a second embodiment, the state and disturbance
observer 504 is a disturbance observer (DOB) structure. In yet
another embodiment, the state and disturbance observer 504 is an
unknown input observer (UID). It is apparent that the combination
of the state and disturbance observer 504 in combination with the
prediction module 508 provides a similar output and performance a
similar function within the framework of an output predictive ADRC
controller 500 as the predictive state and disturbance observer 304
of the predictive ADRC controller 300. In this manner, the various
embodiments of the predictive ADRC controller 300 and output
predictive ADRC controller 500 are correlated.
[0115] Also shown in FIG. 5, a control law 506 is provided that
uses the estimated future states of the plant 110 coupled with the
desired trajectory (r.sup.(n)(t+.tau.)) to generate a current
control input (u(t)). The embodiment of the control law 506
depicted in FIG. 5 incorporates the additive inverse of the
estimated future values of the estimated disturbance (f.sub.n).
Combine the Output Prediction with Regular ESO
[0116] To compensate for the delay, y(t) is replaced with the
approximately predicted output y(t+.tau.) as the input to the ESO
204. Again, the approximated prediction, y(t+.tau.), is obtained
from the Taylor Series approximation. The 1.sup.st-order Taylor
series approximation and the 2.sup.nd-order Taylor series
approximation of y(t+.tau.) are as shown in the following equations
respectively.
y ^ ( t + .tau. ) = y m ( t ) + y . m ( t ) .tau. Equation ( 53 ) y
^ ( t + .tau. ) = y m ( t ) + y . m ( t ) .tau. + y m ( t ) 2 .tau.
2 Equation ( 54 ) ##EQU00032##
[0117] Then the predicted system output and the current control
signal are used as the inputs to the ESO 204 as follows.
{ z . ( t + .tau. ) = A z z ( t + .tau. ) + B z u ( t ) + L ( y ^ (
t + .tau. ) - C z z ( t + .tau. ) ) f ^ ( t + .tau. ) = Vz ( t +
.tau. ) Equation ( 55 ) ##EQU00033##
which will provide both the predicted states and the disturbance
estimation in z(t+.tau.).
Equivalent 2dof Transfer Functions
[0118] When the 1.sup.st-order Taylor series approximation is used
to obtain y(t+.tau.), the equivalent 2dof transfer functions
are
C ( s ) = 1 b ^ ( ( l 3 + k d l 2 + l 1 k p ) s 2 + ( k p l 2 + l 3
k d ) s + k p l 3 ) ( 1 + .tau. s ) s ( s 2 + ( l 1 + k d ) s + ( l
2 + k p + k d l 1 ) ) Equation ( 56 ) H ( s ) = ( s 3 + l 1 s 2 + l
2 s + l 3 ) ( k p + k d s + s 2 ) ( ( l 3 + k d l 2 + l 1 k p ) s 2
+ ( k p l 2 + l 3 k d ) s + k p l 3 ) ( 1 + .tau. s ) Equation ( 57
) ##EQU00034##
[0119] When the 2.sup.nd-order Taylor Series approximation is used
to obtain y(t+.tau.), the equivalent 2dof transfer functions
are
C ( s ) = 1 b ^ ( ( l 3 + k d l 2 + l 1 k p ) s 2 + ( k p l 2 + l 3
k d ) s + k p l 3 ) ( 1 + .tau. s + .tau. 2 2 s 2 ) s ( s 2 + ( l 1
+ k d ) s + ( l 2 + k p + k d l 1 ) ) Equation ( 58 ) H ( s ) = ( s
3 + l 1 s 2 + l 2 s + l 3 ) ( k p + k d s + s 2 ) ( ( l 3 + k d l 2
+ l 1 k p ) s 2 + ( k p l 2 + l 3 k d ) s + k p l 3 ) ( 1 + .tau. s
+ .tau. 2 2 s 2 ) Equation ( 59 ) ##EQU00035##
Combine the Output Prediction with RESO With the RESO
configuration, the prediction is obtained as
{dot over ({circumflex over (y)})}(t+.tau.)={dot over
(y)}.sub.m(t)+y.sub.m(t).tau. Equation (60)
and the new RESO is constructed as
{ z . ( t + .tau. ) = A z z ( t + .tau. ) + B z u ( t ) + L ( y . ^
( t + .tau. ) - C z z ( t + .tau. ) ) f ^ ( t + .tau. ) = Vz ( t +
.tau. ) where A z = [ 0 1 0 0 ] , B z = [ b ^ 0 ] , L = [ l 1 l 2 ]
, C z = [ 1 0 ] , V = [ 0 1 ] , and l 1 = 2 .omega. o , l 2 =
.omega. o 2 . Equation ( 61 ) ##EQU00036##
which again provides the predicted state and disturbance estimation
in z(t+.tau.).
[0120] Equivalent 2 dof Transfer Functions
[0121] With the above the 1.sup.st-order Taylor Series
approximation {dot over (y)}(t+.tau.) is used as the input to the
RESO, the equivalent 2dof transfer functions are:
C ( s ) = 1 b ^ ( ( k p + k d l 1 + l 2 ) s 2 + ( k p l 1 + l 2 k d
) s + k p l 2 ) ( 1 + .tau. s ) s ( s + ( l 1 + k d ) ) Equation (
62 ) H ( s ) = ( s 2 + l 1 s + l 2 ) ( k p + k d s + s 2 ) ( ( k p
+ k d l 1 + l 2 ) s 2 + ( k p l 1 + l 2 k d ) s + k p l 2 ) ( 1 +
.tau. s ) Equation ( 63 ) ##EQU00037##
Combine the Output Prediction with RESO With the RESO
configuration, the prediction is obtained as
{dot over ({circumflex over (y)})}(t+.tau.)={dot over
(y)}.sub.m(t)+ .sub.m(t).tau. Equation (64)
and the new RESO is constructed as
{ z . ( t + .tau. ) = A z z ( t + .tau. ) + B z u ( t ) + L ( y . ^
( t + .tau. ) - C z z ( t + .tau. ) ) f ^ ( t + .tau. ) = Vz ( t +
.tau. ) where A z = [ 0 1 0 0 ] , B z = [ b ^ 0 ] , L = [ l 1 l 2 ]
, C z = [ 1 0 ] , V = [ 0 1 ] , and l 1 = 2 .omega. o , l 2 =
.omega. o 2 . Equation ( 65 ) ##EQU00038##
which again provides the predicted state and disturbance estimation
in z(t+.tau.).
Equivalent 2 dof Transfer Functions
[0122] With the above the 1.sup.st-order Taylor Series
approximation {dot over (y)}(t+.tau.) is used as the input to the
RESO, the equivalent 2dof transfer functions are
C ( s ) = 1 b ^ ( ( k p + k d l 1 + l 2 ) s 2 + ( k p l 1 + l 2 k d
) s + k p l 2 ) ( 1 + .tau. s ) s ( s + ( l 1 + k d ) ) Equation (
66 ) H ( s ) = ( s 2 + l 1 s + l 2 ) ( k p + k d s + s 2 ) ( ( k p
+ k d l 1 + l 2 ) s 2 + ( k p l 1 + l 2 k d ) s + k p l 2 ) ( 1 +
.tau. s ) Equation ( 67 ) ##EQU00039##
A Parameterized Nonlinear PD Control Law, Replacing the Linear PD
Controller
[0123] The parameterized linear PD control law 206 g.sub.pd(e,
,.omega..sub.c) used above can be replaced by the following
parameterized Nonlinear PD (NPD) control law 506 g.sub.pd(e,
,.omega..sub.c):
y = .omega. c 2 e + .omega. c e . , x = { .omega. c e . + R ( R + 8
y ) - R 2 sign ( y ) , y > R .omega. c ( .omega. c e + 2 e . ) ,
y .ltoreq. R g npd ( e , e . , .omega. c ) = { R sign ( x ) , x
> R x , y .ltoreq. R where sign ( x ) = { 1 , x .gtoreq. 0 - 1 ,
x < 0 . Equation ( 68 ) ##EQU00040##
[0124] Equation (68) shows that, within the region |x|.ltoreq.R and
|y|.ltoreq.R, this parameterized NPD control law 506 is
.omega..sub.c.sup.2e+2.omega..sub.c , which is the same as the
parameterized linear PD control law 206 in Equation (15); outside
this region, however, the NPD control law 506 is nonlinear. This
new NPD control law 506 can be used to replace the linear PD
control law 206 in the original ADRC 200 algorithm to achieve
better performance. In one embodiment the NPD control law 506 is
used in conjunction with a predicted state estimate
z.sub.n(t+.tau.). In a second embodiment, the NPD control law 506
is uses only the current state estimate (z.sub.n(t).
A General Form of Reduced-Order Multiple Extended-State ESO for an
n.sup.th-Order Plant
[0125] Although the Predictive ADRC 300 has been presented with an
ESO 204 or RESO with only one extended state, the same technique
can be readily extended to a general n.sup.th-order plant with an
ESO 240 or RESO that has multiple extended states. To facilitate
such development, we present here a general form of the
reduced-order multiple extended states ESO 204 for an
n.sup.th-order plant of the form
y.sup.(n)=f(y,y, . . . ,y.sup.(n-1),d,t)+bu Equation (69)
[0126] Let the n states be x.sub.1=y, x.sub.2={dot over
(x)}.sub.1={dot over (y)}, . . . , x.sub.n={dot over
(x)}.sub.n-1=y.sup.(n-1), and the h extended states be x.sub.n+1=f,
x.sub.n+2=x.sub.n+1=f, . . . , x.sub.+h={dot over
(x)}.sub.n+h-1=f.sup.(h-1). The plant 110 in Equation (69) can now
be expressed in the augmented form:
x . = [ x . 1 x . 2 x . n + h - m x . n + h - m + 1 x . n x . n + 1
x . n + h ] = [ 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 1 0 0
0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 ] [ x 1 x 2 x n + h - m x
n + h - m + 1 x n x n + 1 x n + h ] + [ 0 0 0 b 0 0 ] u + [ 0 0 0 0
0 0 1 ] f . ##EQU00041##
or equivalently
Equation ( 70 ) ##EQU00042## { x . = A x x + B x u + Ef ( h ) y = C
x x where A x = [ 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 ] ( n + h ) .times.
( n + h ) , B x = [ 0 0 b 0 0 ] ( n + h ) .times. 1 , E = [ 0 0 1 ]
( n + h ) .times. 1 , C x = [ 1 0 0 ] 1 .times. ( n + h ) , and the
##EQU00042.2##
nonzero element in B.sub.x is in the n.sup.th row.
[0127] Assume that y, {dot over (y)}, . . . , y.sup.(n+h-m) are
measured or otherwise available as y.sub.m, {dot over (y)}.sub.m, .
. . , y.sub.m.sup.(n+h-m), then the approximate states x.sub.1,
x.sub.2, . . . , x.sub.n+h-m+1 are available (If m=h, the last
state can be obtained from its definition:
x.sub.n+1=f=y.sub.m.sup.(n)-{circumflex over (b)}u). Also assume
f.sup.(n) does not change rapidly and can be handled by the
observer. The ESO 204 order can be reduced to m, where
h.ltoreq.m.ltoreq.n+h. With x.sub.n+h-m+1 and u as inputs, and with
z.sub.1, . . . , z.sub.m estimating x.sub.n+h-m+1, . . . ,
x.sub.n+h respectively, the general ESO 204 form is
z . = [ z . 1 z . m - h z . m - h + 1 z . m ] = [ 0 1 0 0 1 0 0 0 0
1 0 0 0 ] [ z 1 z m - h z m - h + 1 z m ] + [ 0 b ^ 0 0 ] u + [ l 1
l m - h l m - h + 1 l m ] ( x n + h - m + 1 - z 1 ) f ^ = [ 0 0 1 0
] z ##EQU00043##
or in state space form
Equation ( 71 ) ##EQU00044## { z . = A z z + B z u + L ( x n + h -
m + 1 - C z z ) f ^ = Vz where A z = [ 0 1 0 0 0 0 1 0 0 0 0 1 0 0
0 ] m .times. m , L = [ l 1 l 2 l m ] m .times. 1 , C z = [ 1 0 0 ]
1 .times. m , if m = h , B z = [ 0 ] m .times. 1 ; if m > h , B
z = [ 0 0 b ^ 0 0 ] m .times. 1 , V = [ 0 0 1 0 0 ] m .times. 1 T
##EQU00044.2##
Thus, when m>h the nonzero elements of B.sub.z and V are in the
(m-h).sup.th and (m-h+1).sup.th. column respectively.
[0128] For tuning simplicity, the observer gains l.sub.1, . . . ,
l.sub.m are chosen as
l i = ( m i ) .omega. o i , ##EQU00045##
0<i.ltoreq.m.
( m i ) ##EQU00046##
denotes the Binomial Coefficient
m ! i ! ( m - i ) ! . ##EQU00047##
Also, to make the transfer function derivation easier, define
l 0 = ( m 0 ) .omega. o 0 = 1. ##EQU00048##
[0129] With the state z.sub.m-h+1 the ESO 204 to estimate f, a
control law, u=(u.sub.0-z.sub.m-h+1)/{circumflex over (b)}, is
applied to reduce the plant to a pure n.sup.th-order cascade
integral plant y.sup.(n)=u.sub.0, which can be easily controlled
using the parameterized linear PD control law 206 of the form
u 0 = i = 1 n + 1 k i r ( i - 1 ) - i = 1 n + h - m k i y m ( i - 1
) - i = 1 m - h + 1 k n + h - m + i z i Equation ( 72 )
##EQU00049##
where
k i = ( m i - 1 ) .omega. c n + 1 - i , ##EQU00050##
0.ltoreq.i.ltoreq.n+1, and the middle term,
i = 1 n + h - m k i y ( i - 1 ) , ##EQU00051##
is corresponding to the order reduction (it disappears when the
inputs of ESO 204 are y.sub.m and u). In the case where the
measured output y.sub.m is clean and its derivatives can be
obtained from y.sub.m, ADRC 200 can also be applied as
u 0 = i = 1 n + 1 k i r ( i - 1 ) - i = 1 n k i y m ( i - 1 ) - z m
- h + 1 Equation ( 73 ) ##EQU00052##
[0130] The corresponding transfer function representation of ADRC
400, in a 2dof structure (as shown in FIG. 4) is
H ( s ) = .PSI. 0 , m m j = 1 n + 1 k j s j - 1 .PSI. 0 , m m j = 1
n + h - m k j s ( j - 1 ) + j = 1 m - h + 1 k n + h - m + j s n + h
- 1 - m + j .PSI. j , m m Equation ( 74 ) G c ( s ) = 1 b ^ .PSI. 0
, m m j = 1 n + h - m k j s ( j - 1 ) + j = 1 m - h + 1 k n + h - m
+ j s n + h - 1 - m + j .PSI. j , m m j = 1 m - h + 1 k n + h - m +
j s h - 1 + j - m .PSI. 0 , j - 1 m where .PSI. x , y m = i = x y l
i s m - i , 0 .ltoreq. x .ltoreq. y . Equation ( 75 )
##EQU00053##
ADRC with Partially Known Plant Dynamics
[0131] ADRC controller does not require the detail plant model
information. However, if the whole or part of the plant dynamics is
known, various embodiments of the ADRC controller can be modified
to utilize the information to estimate and reject disturbance more
effectively, either by control law modification or ESO 204
modification. With a part of the plant dynamics known, the known
part of the generalized disturbance can be generated and rejected
in the control law directly, while the rest of the generalized
disturbance is estimated by ESO 204 and then rejected in the linear
PD control law 206 as previously shown in the original ADRC 200
framework. The other way to utilize the partially known plant
dynamics is adapting the dynamics into ESO 204, where ESO 204 still
estimates the generalized disturbance.
[0132] Consider the second-order plant 202 in Equation (8), with
the knowledge of the plant information, part of the generalized
disturbance is known, denoted as f.sub.n(y, {dot over (y)}). The
rest is unknown part of the generalized disturbance, denoted as
f.sub.u(y,{dot over (y)},d,t). The plant in Equation (9) can now be
described as
=f.sub.n(y,{dot over (y)})+f.sub.u(y,{dot over (y)},d,t)+bu
Equation (76)
and there are two ways to take advantage of new information in
f.sub.n(y,{dot over (y)}) and incorporate it into ADRC 200. One way
is to improve ESO 204 by combining f.sub.n(x) with
A.sub.xx+B.sub.xu in the plant space description in Equation (76).
The augmented state space form of the plant is
{ x . = A x x + E f . n ( x ) + B x u + E f . u y = C x x Equation
( 77 ) ##EQU00054##
and the corresponding ESO 204 is
{ z . = A x z + E f . n ( z ) + B x u + L ( y m - C x z ) f ^ = Vz
Equation ( 78 ) ##EQU00055##
[0133] Then a new ESO 204 can be constructed to estimate the
generalized disturbance f based on the new state space description
of the plant 110 in Equation (77). For example, consider the plant
=a.sub.1{dot over (y)}+bu where a.sub.1 is given, i.e.
f.sub.n(y,{dot over (y)})=a.sub.1{dot over (y)}. The known part of
the generalized disturbance is obtained from the model information:
{dot over (f)}.sub.n=-a.sub.1 =-a.sub.1(-a.sub.1{dot over (y)}+bu).
In this case where f.sub.n(y,{dot over (y)}) is a linear function,
the augmented state space representation of the plant 110 can be
written as
{ x . = A _ x x + B _ x u + E f . u y = C x x , where A _ x = [ 0 1
0 0 0 1 0 a 1 2 0 ] , B _ x = [ 0 b - a 1 b ] Equation ( 79 )
##EQU00056##
and the new ESO is = .sub.xz+B.sub.zu+L(y.sub.m-C.sub.xz), where
B.sub.z=[0 {circumflex over (b)}-a.sub.1{circumflex over
(b)}].sup.T.
[0134] The other way of taking advantage of the additional
information in f.sub.n(y,{dot over (y)}) is to use it to cancel
known plant dynamics in the control law directly. There are three
ways to do this:
u=(g(e, ,.omega..sub.c)+{umlaut over (r)}-f.sub.n(y.sub.m,{dot over
(y)}.sub.m)-z.sub.3)/{circumflex over (b)} Equation (80)
[0135] or y.sub.m and {dot over (y)}.sub.m can be replaced by
z.sub.1 and z.sub.2 in the control law,
u=(g(e, ,.omega..sub.c)+{umlaut over
(r)}-f.sub.n(z.sub.1,z.sub.2)-z.sub.3)/{circumflex over (b)}
Equation (81)
[0136] or y.sub.m and {dot over (y)}.sub.m can be replaced by r and
{dot over (r)} respectively and rejected in the control law in a
feedforward manner.
u=(g(e, ,.omega..sub.c)+{umlaut over (r)}-f.sub.n(r,{dot over
(r)})-z.sub.3)/{circumflex over (b)} Equation (82)
where g(e, ,.omega..sub.c) is the parameterized PD controller 206
or NPD controller defined in Equation (15) or Equation (68)
respectively. Of course, any combination of the above three methods
are available for use by one of ordinary skill in the art.
INDUSTRIAL APPLICATIONS
[0137] The present active disturbance rejection controller, and its
associated processes, methods and devices as disclosed herein
possesses a number of unique attributes and industrial
applicability, including for example, utility as a controller for
tracking control, web processing applications, and jet engine
control applications as described in greater detail above.
[0138] For example, in the case of tracking or motion control
applications, the various predictive methods presented herein,
particularly the ones that use the knowledge of the plant dynamics,
offer reduced phase lag in the observer and compensate for the time
delay in the plant itself, all of which especially benefit tracking
applications that employ a desired output trajectory, sometimes
called motion profile.
CONCLUSION
[0139] While various embodiments of the present system and method
for feedback control of systems have been described above, it
should be understood that the embodiments have been presented by
the way of example only, and not limitation. It will be understood
by those skilled in the art that various changes in form and
details may be made therein without departing from the spirit and
scope of the invention as defined. Thus, the breadth and scope of
the present invention should not be limited by any of the above
described exemplary embodiments.
* * * * *