Sei sulla pagina 1di 11

28 IEEE TRANSACTIONS ON INDUSTRIAL ELECTRONICS, VOL IE-33, NO.

1, FEBRUARY 1986

Design of an Adaptive Controller for


Microcomputer Implementation
BARRY W. JOHNSON, MEMBER, IEEE, AND JAMES H. AYLOR, SENIOR MEMBER, IEEE

Abstract-A design procedure for an adaptive controller is described A unique feature of this work is the design method used to
and applied to the design of a velocity controller for small dc motors. The define the operating regions of the system. Clustering tech-
basic concept has been to determine a small set of controllers each of niques from pattern recognition theory are combined with
which is capable of maintaining stability and acceptable performance
over a specific region of motor load parameters. Optimal control theory is optimal control theory to determine a set of suitable control-
used to define the control coefficients while cluster analysis and decision lers. A second unique aspect of this work is the technique used
function techniques from pattern recognition theory are used to deter- for real-time determination of the specific region in which the
mine each controller's region of applicability. Simulation results are system is currently operating. Using parameter estimates,
presented to verify performance improvements using the design proce- classification techniques from pattern recognition theory are
dure. The design procedure produces an adaptive controller which is
computationally feasible for implementation in small microcomputer used to map the estimates into the appropriate region, and the
systems. controller previously derived for that region is selected from
memory.
I. INTRODUCTION
Throughout this paper, a large number of symbols will be
used. Table I shows each symbol and its definition.
A NUMBER of practical applications require the control of
small, direct current (dc), permanent, magnet motors. II. DYNAMIC MODEL OF THE SYSTEM
Examples include industrial robots, medical manipulators [1], The dc, permanent magnet motor under consideration in
and electric wheelchairs [21. In many of these applications, this work can be represented as shown in Fig. 1. The
parameter variations occur which result in performance fundamental equations of the system may be written by
degradations or instability of the control algorithms. For examining the electrical and mechanical characteristics of the
example, the dc motors on an electric wheelchair may motor. The development of these equations is well docu-
experience variations in load inertia of 600 percent or more [3] mented in the literature [3], [4] and will not be repeated in this
because of varying weights and positions of passengers and the paper, but the pertinent equations will be stated. The funda-
use of the same motors and controller on physically different mental electrical equation for the motor is given by
wheelchairs. These performance degradations have previously
been accepted because of the complexity associated with di0
performing adaptive control. The processing time required to ea-Raia-La dta-KtNWL0- (1)
implement many adaptive algorithms is prohibitive in applica-
tions such as the electric wheelchair. The mechanical equation is
The purpose of this paper is to describe the design of an
adaptive velocity controller for a permanent magnet, dc KTia = ()L Jeq + LIeq + Teq (2)
motor. The velocity controller has been designed to signifi- where Tq is an equivalent load torque reflected through the
cantly improve performance while minimizing computations. gear box and given by
Therefore, the controller is suitable for implementation in a
small microcomputer system with limited computational capa- TL
bilities. The basic concept behind the techniques developed Teq = + Tf (3)
here is to derive a number of controllers, each of which is
capable of maintaining adequate control for a specific range or and
region of the system parameters. Parameter estimation is then
employed to determine the region of operation at any given Jeq = NN + NJm (4)
time. Once the appropriate region is identified, the corres- JL
ponding controller is selected from memory.
f3eq N-+ Nf3m.
=
(5)
Manuscript received December 13, 1984; revised May 6, 1985. This work
was supported by the National Institute for Handicapped Research under grant If the state variables are selected as
PGN-23-P-577995-3-05.
The authors are with the Department of Electrical Engineering, University
of Virginia, Charlottesville, VA 22903.
Xi = (L (6)
IEEE Log Number 8406363. X2 = CE (7)
0278-0046/86/0200-0028$01 .00 1986 IEEE
JOHNSON AND AYLOR: ADAPTIVE CONTROLLER 29
TABLE I For the purposes of this paper, a discrete-time model is
DEFINITIONS, OF SYMBOLS desired. If the armature voltage is generated via a zero-order
hold (ZOH), it will be piece-wise constant and change only at
TI
A continuous-time system plant matrix the sampling points. This allows a discrete-time model to be
A discrete-time system closed-loop plant matrix developed as
B continuous-time control vector
oeq equivalent motor damping X((n + 1) T) = FX(nT) + Gea(nT) (12)
AL motor load damping
0. motor shaft damping y(n T) = CX(nT) (13)
C continuous-time system output vector
C, augmented system output vector where
D augmented system reference vector F=eeAT (14)
et motor armature voltage
e.. maximum eigenvalue of QL GT
E vector of parameter estimates
G =
0
(eAT dr)B (15)
F discrete-time system plant matrix
F. augmented system plant matrix C=(1 0) (16)
G discrete-time system control vector
Ga augmented system control vector and y(n'T) is the output shaft velocity of the motor. F and G
i, motor armature current may be determined analytically via the use of Laplace
JN equivalent motor inertia transforms or numerically using series expansions.
JL motor load inertia
Jm motor shaft inertia III. CONTROL STRATEGY
quadratic performance index
There are a number of techniques which may be applied to
JNOR normalized performance measure the control of second-order systems such as the motor
KT motor torque constant considered in this paper. Three examples include a propor-
K, motor velocity constant
L vector of control coefficients tional, integral, and derivative (PID) controller, a state
La motor armature inductance variable controller, and a form of modified PID control. The
N motor gear ratio PID and state variable controllers each possess significant
PL matrix in Liapunov's equation disadvantages. The PID controller has so-called set-point and
Q weighting matrix in quadratic performance index derivative kick problems for step changes in the reference
QL solution of Liapunov's equation
q integral state signal. The state variable controller, on the other hand, may
R weighting factor in quadratic performance index exhibit nonzero steady-state error because of the absence of an
Ra motor armature resistance integral of error term in the controller.
T sampling period The modified PID controller attempts to overcome the
T.q motor equivalent load torque above-mentioned problems by combining the attractive fea-
TL motor load torque
motor frictional torque
tures of both the PID and the state variable controllers. The
Tf modified PID controller, as illustrated in Fig. 2, can be
V Liapunov function for stability analysis
AV Liapunov difference function for stability analysis formulated as an optimal, linear regulator. The use of optimal
x continuous-timae system state vector control theory allows control coefficients to be determined to
X augmented system state vector
xi velocity state variable
produce stability and optimal performance. The basic concepts
acceleration state variable for the modified PID controller are also presented in [5], [6],
X2
y(nT) system output at time nT and [7].
Yd(nT I desired output at time nT To develop the modified PID controller, the state variable
4
output shaft velocity of the motor
ii representation of the system is first augmented with an integral
of error state such that state variable feedback on the
augmented system will incorporate integral of error action.
a state variable representation of the motor can be formulated The integral state is defined as
as
X=AX+ Bea (8) q((n + l) T) = q(nT) +y(nT) -yd(nT) (17)
where
where yd(nT) is the desired output velocity. The augmented
X= (XX2)T (9) state equations are then formed by combining (12), (13), and
(17) to yield
B (o AT (10) Xa((n + 1) T) = FaXa(n T) + Gaea(n T) +
LaJeqJ Dayd(n T) (18)
Ya(n7) = CaXa(nT) (19)
A F -(Raleq +NKvKT) -(RaJeq + La3eq) (11) where
[ LaJeq LaJeq
Xa(n7T) = (X1 X2 q) T (20)
30 IEEE TRANSACTIONS ON INDUSTRIAL ELECTRONICS, VOL. IE-33, NO. 1, FEBRUARY 1986

- la

LOAD
FRICTION
m L

Fig. 1. Model of the direct current motor.

Fig. 2. Modified proportional, integral, and derivative controller.

Fa[C °] (21)
loop system and will minimize the quadratic performance
index [5]. Kalman has shown that if the continuous-time
system is completely controllable, the sampled system will
Ga=(GT O)T (22) also be completely controllable if the sampling frequency is
Da=(0 0 )T (23) selected such that the resonant modes of the system are not
multiples of the sampling frequency [8]. Therefore, if the
Ca=(l 0 0). (24) sampling period is selected to guarantee complete controllabil-
ity then the steady-state solution to the optimal control
If the control law is now selected as problem will yield a stable controller. If the continuous system
e,(n T) = - LX(n T) (25) has only real poles, this requirement is always achieved
because there is no oscillatory motion in the response of the
and a quadratic performance index of the form system. If the poles are complex, however, Kalman's theo-
rem, when applied to second-order systems, requires that
JN=Xa(N)P(N)Xa(N) + E [Xa(i)QXa(i) + ei)Reai)]
i=O Im [S(A)]*n"T (29)
T
(26)
where Im [S(A)] is the imaginary component of the complex
is chosen, and the solution to the optimal control problem is conjugate poles, and n is any nonzero integer. One can assure
given by controllability of the system if the sampling rate is selected to
L (k) = [R + G[,P(k + 1) Ga] - 1GTP(k + 1)Fa
satisfy the expression
(27)
P(k)=FrP(k + 1)Fa+ Q IIm [S(A)]TImax
< (30)
-L T(k)[R + G[rP(k + 1)Ga]L(k). (28) or
Provided the unaugmented system is completely controlla-
ble, the solution of (27) and (28) will converge to a unique,
steady-state solution which will stabilize the resulting closed- T I SAI a (31)
Im [S(A)] max
JOHNSON AND AYLOR: ADAPTIVE CONTROLLER 31
where rIm [S(A)]l max is the maximum magnitude that the Theories from the fields of pattern
complex component of the pole could ever assume. Equation systems are used extensively. The process
recognition and control
(31) represents an upper bound on the sampling period under requires three steps.
(1) A region of interest of possible operating conditions is
worst-case conditions. For many systems, larger sampling first established and an optimal controller is derived for
periods could be used, but one can always guarantee controlla- numerous operating points within this
bility and stability if T is selected using (31). region. A sampling
period which guarantees the existence of a stable solution to
For the system represented by (8)-(1 1), the poles are the optimal control problem for all possible load
located at parameters is
selected so that all of the developed controllers use the same
a22 ±[(a22)2+ 4a213 1/2 sampling period.
2 (32) (2) Clustering is then performed on these samples to
determine the minimal set of controllers necessary for satisfac-
where tory performance.
(3) Based on the regions established by the clustering

(Ra3eq + NKUKT) process, decision functions are derived which will ultimately
a2l = -

Lata JJeq identify appropriate set of control coefficients when the


the
system is in operation.
(RaJeq + Laeq) Each of these steps is described in detail below.
a22 = -
LaJeq
(34)
A limiting condition on the sampling period can be obtained A. Controller Design
because the magnitude of the imaginaiy component can never The system variables of interest are the load parameters,
exceed Ja2 fI/2. Consequently, the sampling period can be namely the load inertia and load damping terms. Despite the
selected from load variations, the parameter values are always bounded in
7r practical applications. A lower bound can be determined by
T< the no-load conditions while an upper bound can be formed
1- (35) from either the maximum load conditions expected or the
Fig. 3 illustrates the region of acceptable sampling periods as a maximum load that the motor is capable of handling. The
function of a2l. upper and lower bounds on load inertia and load damping
To illustrate the performance of the modified PID control- produce a rectangular region in the JL - 13L space in which the

ler, an optimal, steady-state controller was designed for the systema will always operate. The design phase is begun by
motor of Table II. The simulated response of the system to a using Monte-Carlo experiment as a means of generating a set
of data. The load inertia and load damping values are assumed
square-wave velocity command is shown in Fig. 4. The to be uniformly distributed between their upper and lower
sampling period, load inertia, load damping, and resulting
control coefficients are listed in Fig. 4. The selection of the Q bounds, and values are generated by randomly sampling those
matrix and the R scalar, which appear in the solution to the uniform distributions. The purpose of this process is to
optimal control problem, was performed using the results of generate a set of load values that is representative of all
simulations. Various values of Q and R were selected, and the possible values which might occur during the operation of the
optimal, steady-state controller was designed and simulated. system. Once a pair of load inertia and load damping values is
Using the results of the simulation, values for Q and R were
generated,
selected to yield the best responses. It should be noted that the that an optimal, modified PID controller is designed for

Q matrix is a weighting factor on the state trajectory while R is particular operating condition using the technique already
a weighting factor for the control energy used in achieving that presented. The sampling period is selected such that complete
state trajectory. For the designs in this paper, Q was selected load controllability is guaranteed for all of the possible values of
as the identity matrix and R was selected as 0.1. These values inertia and load damping, and the steady-state solution to
were found to yield good performance. the optimal control problem is used. Thus all of the controllers
use the same sampling period. The load
parameters, discrete-
IV. DESIGN OF THE ADAPTIVE CONTROLLER time model, and the optimal control vector are stored for
The concept which will be used to make the system adaptive further processing.
is a form of variable structure control (VSC) [9]. The basic
idea, as illustrated in Fig. 5, is to define several sets of control B. Controller Clustering
coefficients, each of which is applied to the system for a
distinct region of the variable load parameters. As parameters into technique
A is now required for grouping the data elements
vary from one region to another, the system will select new subregions appropriate subregions. The basic idea is to create
of the load parameters and to define one controller
control coefficients from memory such that the appropriate for each
coefficients for a given region are always used. subregion. The controller must be stable and must
The major part of the design process consists of the off-line
perform acceptably throughout its region of applicability.
Of first importance is the stability of the system. Here,
derivation of the sets of control coefficients for the VSC. Liapunov's theory is used as a means of
investigating the
32 IEEE TRANSACTIONS ON INDUSTRIAL ELECTRONICS, VOL. IE-33, NO. 1, FEBRUARY 1986

1.00

c0 0.90
0
V)
0.80
C

0 0.70
0
-o
0C
(17 0.60 f
0.50 +
E
Va
9) 0.40
.0
0
CX
0

E
0.20 f
E 0.10

0.00 _
0.00 10.00 20.00 30.00 40.00 50.00 60.00 70.00 80.00 90.00
(0 1)1/2
Fig. 3. Sampling period restrictions for controllability.

30.00

25.00
-o
c
0
20.00
L)
cn
a)
.L
a) 15.00
0~

-o
a
._10.00

0-
5.00
a1)

0.00

-5.00
0.00 1.00 2.00 3.00 4.00
Time in Seconds
Fig. 4. Example of optimal controller response.

stability of the closed-loop, augmented system given by which results in a A V function given by
Xa((n + 1) T) =AcXa(n 7) + DaYd(nT) (36) A V= _X[(nT)PLX(n 7T) (39)
where where

Ac= (Fa- GaL). L= QL- ATQLAC. (40)


(37)
According to the theory of Liapunov, the autonomous, closed-
.

A Liapunov function is selected as loop system will be asymptotically stable if a symmetric and
positive definite QL can be found for any given symmetric,
V=XX(nT)QLX,(nT) (38) positive definite PL. Kalman has shown that Liapunov's
JOHNSON AND AYLOR: ADAPTIVE CONTROLLER 33

(40), the system stability and performance may be quickly


evaluated.
The overall concept of this phase of the design process is to
find a subset of the controllers designed during the Monte-
Carlo experiment which will provide acceptable performance
over the complete range of parameter values. Performance and
stability criterion will be established using the Liapunov
method just described. Each controller will be used over a
fixed region of the parameter space.
To develop the desired regions, cluster analysis techniques
from pattern recognition theory will be used. Clustering is a
term which implies the sorting or grouping of data elements,
which contain similar characteristics, into the same class. The
Fig. 5. Variable structure control system. first requirement of any clustering algorithm is the specifica-
tion of a measure of similarity. Traditional clustering proce-
dures have previously used distance measures such as the
method is equivalent to requiring the eigenvalues of the standard Euclidean distance between two points. The problem
closed-loop system matrix to lie within the unit circle [10]. at hand is unique, however, and requires a slightly different
The solution of the matrix equation of (40), often referred to formulation of the measure of similarity.
as the Liapunov matrix equation, is greatly facilitated by the To meet the requirements of the problem at hand, two
availability of several algorithms designed for computer similarity measures are specified with a priority system
implementation. The algorithm used here was presented by between the two measures being given. First, for two pair of
Berger [11]. load inertia and load damping values to belong to the same
It is also interesting to note that the method of Liapunov region, they must be capable of being stabilized by the same
may be used to evaluate the performance of any closed-loop, control vector. Second, two pair of load inertia and load
linear, discrete-time system without having to solve for the damping values can belong to the same region, if and only if,
actual state trajectories. This is the primary reason for using the control vector which stabilizes both points also produces a
Liapunov's method as opposed to some other stability analysis system performance which is within some prespecified bound.
technique. Once the Liapunov equation is solved, both The stability and the performance are determined by solving
stability and performance information are readily available. Liapunov's equation. The stability is verified by testing for the
To evaluate the performance of the system using the quadratic existence, symmetry, and positive definiteness of QL. QL will
performance index of (26), one can allow N to approach be positive definite if all of its eigenvalues are positive [13].
infinity such that the complete response for a given initial state The measure of performance is taken to be the largest
can be obtained. Also, because P(N) affects the performance
eigenvalue of QL. Two systems, which have different load
index only at the terminal state of the system, one can obtain a parameters, but which use the same control vector, are
good representation of the performance by letting P(oo) 0 =
compared by solving the Liapunov equation for each system
such that the performance of the closed-loop system is and comparing the performance measures of each. For
evaluated by example, suppose that a system with load parameters (J1, /3k)
has an optimal, steady-state control vector Cl, and the solution
J=z X[(i)(Q + LTRL)Xa(i). to Liapunov's equation yields el as the largest eigenvalue of
(41)
i=Q QL. Then C1 is used on a system with load parameters (J2, 132),
and the solution to Liapunov's equation for that system yields
If PL in (40) is selected as e2 as the largest eigenvalue of QL. The performance degrada-
tion which results by the load parameters changing from (J1,
PL=Q+LTRL (42) 1) to (J2, /2) is then computed as Iel - e2j.
then a normalized, closed-form solution to (41) may be written An algorithm is now required which performs the clustering
as [12] process. The difficulty with most clustering algorithms is the
requirement that the number of clusters be specified a priori.
XY(O)QLXa(O) For the variable structure controller, it is not known in
JNOR
X[ (O)Xa(0)
(43)
advance how many regions are needed to cover the expected
range of load variations, thus a clustering routine is desired
The normalized index can be bounded using the Rayleigh which generates the regions without prior knowledge of the
principle from matrix algebra to obtain number of desired regions.
One such clustering technique is referred to as the maxi-
JNOR < emax (44) mum-minimum or maximin-distance algorithm [14]. In gen-
where emax is the largest eigenvalue of QL [13]. The primary
eral, the technique uses Euclidean distance as a single
advantage of this approach is that once QL is found by solving
similarity measure; however, here, the basic algorithm is
modified to use the existence of stability and the measure of
34 IEEE TRANSACTIONS ON INDUSTRIAL ELECTRONICS, VOL. IE-33, NO. 1, FEBRUARY 1986

performance deviations as dual similarity measures. First, an


element is arbitrarily selected from the data set, and the
optimal control vector associated with that element is desig-
nated as the first controller C1. The remaining samples are
then examined to determine if C1 will stabilize each remaining
element. If Cl fails to stabilize some load characteristic pair
(Ji, 0,), the optimal control vector associated with (Ji, f,) is
designated as the second controller C2. If C1 stabilizes all
elements, the performance variation associated with using C1
on each element is examined. If C1 cannot provide acceptable
control for each (Ji, f), the second controller C2 is chosen as
the optimal controller of the parameters for which Cl performs
worst.
Having generated Cl and C2 as described above, the
algorithm then determines whether or not C1 and C2 stabilize
all of the data elements. If there exists a point which cannot be
stabilized by either C1 or C2, the optimal control vector
associated with that unstabilizable point is selected as the third
controller C3. If C1 or C2 stabilizes all elements, each (Ji, i,)
is associated with the controller which creates the best
performance. If the worst intraclass performance exceeds the
maximum allowable performance degradation, C3 is created as
the optimal control vector associated with the (Ji, f30) for which
C1 or C2 performed worst. The algorithm continues in this
manner until a set of k controllers has been generated such that
at least one of the k controllers stabilizes each point in the load
parameter data set, and each (Ji, O3) is associated with the
controller which produces the best performance. A flowchart
which illustrates the application of the maximum distance rule
to control system design is presented in Fig. 6.
As a design example, consider the motor system specified
by the parameters of Table II. Assume the load inertia can
vary between 0 ft-lbs-s2 and 0.6 ft-lbs-s2, and the load
damping can vary between 0 ft-lbs-s and 0.6 ft-lbs-s. A
-sampling period of 10 ms has been selected to more than
guarantee complete controllability for all possible values of
load inertia and load damping. Uniform distributions are
specified for JL and iL within the stated bounds, and a set of
900 samples is generated. A discrete-time model is now
generated for each of the 900 points and an optimal, steady-
state, modified PID controller also designed for each point.
The data is then grouped using the algorithm of this section
with a maximum intraclass performance deviation of three
Fig. 6. Maximum distance algorithm for control system design.
percent being allowed. The resulting regions are shown in Fig.
7 where the controllers are also identified. Fig. 7 implies that
any element labeled as i can be stabilized by the controller Ci, TABLE II
and will have a performance degradation of no more than three TYPICAL PARAMETERS OF A SMALL DIRECT CURRENT MOTOR
percent from the optimal performance. In this particular
example, eight controllers are required to maintain the KT 10.43 oz. in./amp
stability of the system and to maintain the required perform- K, 7.71 volts/krpm
ance. The elements of each C, are the feedback gains applied R. 0.13 ohms
to each state variable (velocity, acceleration, and integral L. 0.73 millihenries
Jm 0.1 oz. in-sec2
state, respectively).
P 5.0 oz. in./krpm
N 12.0
C. Region Identification
Having determined the regions and the control coefficients
required for the variable structure controller, it becomes of the region in which the system is currently operating. Once
necessary to devise a procedure for the real-time identification region identification has been accomplished, one can easily
JOHNSON AND AYLOR: ADAPTIVE CONTROLLER 35

0.6

Load
0.5
Dampi ng
in
Foot-Pounds - 0.4
Second

0.3

0.2

0.1

0.1 0.2 0.3 0.4 0.5 0.6


Load Inertia in Foot-Pounds-Second2
CONTROLLER CONSTANTIS FOR DESIGN EXAMPLE
Controller
Region Controller Constahts
(proportional. derivative, integral)
Cl 1 (-0.173665, 0.00825, 0.05094)
C2 2 (1.4839. 0.03253. 0.15345)
C3 3 (-0.67202. 0.00099. 0.02158)
C4 4 (0.34642, 0.01552, 0.08058)
C5 5 (-0.53408, 0.00216, 0.02374)
C6 6 (0.46239, 0.00433. O.03558)
C7 7 (0.77182, 0.02187, 0.10767)
C8 8 (0.0148. 0.0106, 0.05968)

Fig. 7. Controller regions for design example.

select the appropriate controller from memory and apply it to finding the separating boundary between all pairs of adjacent
the system such that both stability and performance are classes. Once these boundaries are determined, each region
maintained. If the load parameters can be estimated, the can be uniquely identified.
process of region identification can be viewed as a pattern For the design example of the previous section, the decision
classification problem where the two dimensional feature functions were determined using the MSE approach and are
vector consisting of the load parameters is mapped into a listed in Table III. Fig. 8 illustrates the decision boundaries.
corresponding region. For this particular set of data, 6.1 percent of the samples were
The structure of the regions given in Fig. 7 suggests the incorrectly classified by the determined decision boundaries.
possibility of using linear decision functions as separating Of the incorrectly classified samples, all were checked to
boundaries and performing classification based on those linear guarantee their stability using the controller with which they
decision functions. While the regions are not strictly, linearly were associated, and all misclassified samples were indeed
separable, the errors will occur close to the boundaries. The stable.
design process verifies that any misclassified samples are
stable and achieve acceptable performance using the controller
with which they have been associated. V. SYSTEM PARAMETER ESTIMATION
To determine the separating boundaries, the mean squared
error (MSE) approach has been selected [151, The solution to To use the developed decision functions, the motor's load
the MSE problem is well known [15] and will not be repeated characteristics must be estimated. The properties of a dc
here. Only the unique aspects of this application of the MSE motor, as presented in (1) and (2), suggest a relatively simple
approach will be discussed. form of parameter estimation. If X4, tJL, and ia are measured,
The problem at hand requires the generation of multiple the quantities Jq, and Teq may be estimated using a
3eq,

decision boundaries because the regions cannot be completely recursive least squares approach. Teq is required to correctly
separated by single boundaries. Therefore, the problem cannot estimate Jeq and 3eq, but is not needed to select the appropriate
be considered identically as a multiclass pattern classification controller.
problem. Two decision boundaries are required to completely The recursive, least squares solution is given by [16]
separate a given region from its neighbors. The problem can,
however, be considered as a sequential, two-class problem by E(k + 1) = E(k) + K(k)[KTi0(k + 1 )-M(k + 1)E(k)] (45)
36 IEEE TRANSACTIONS ON INDUSTRIAL ELECTRONICS, VOL. IE-33, NO. 1, FEBRUARY 1986

TABLE III
SEPARATING BOUNDARIES FOR THE DESIGN EXAMPLE

- 70.992JL + 2.9691\ - 0.469

-2(JL'PL)-29065JL - 0-l'0PL + 0.857


93(JL'L) - 22-428JL + 1.OO9PL + 1.541
84(JLAL) - 21.175Jt + 1.264PL + 2.864
-g 15.838JL + 0.616 + 3.409
96(JL'-L) -11.067JL + 0.308PL + 3.650
-
10.8983L + 0.346 + 5.126

0.6

Load 0.5
Damping in
Foot-Pounds-
0.4
Second

0.3

0.2

0.1

0.1 0.2 0.3 0.4 0.5 0.6

Load Inertia in Foot-Pounds-Second2


Fig. 8. Linear decision functions for the design example.

where The least squares estimation process was selected primarily


K(k) = W(k)MT(k + l)[M(k + 1) W(k)MT(k + 1) + 1] - because of its simplicity when compared to other parameter
estimation techniques [7]. However, the least squares ap-
(46) proach will not perform well unless persistent excitation of the
W(k + 1)= W(k) K(k)M(k + 1) W(k)
- (47) system exists. The primary application for which this work
was developed was the electric wheelchair. In practice,
and electric wheelchairs are constantly being maneuvered, thus
providing continuously changing commands to the system.
M(k)= [c.L(k)WL(k) 1] (48) Seldom would one have long periods of time where the
E(k)= (Jeq I3eq Teq) T (49)
commands to the system were constant. Consequently, it was
felt that the least squares approach would be sufficient.
Recursively implementing the above equations produces the
estimates Jeq, feq, and Teq, of the parameters Jeq, Ieq, and Teq . VI. SYSTEM SIMULATION
Using these values, estimates of JL and 13L can be calculated as Using the design example of this paper, a package was
generated to simulate the adaptive control of the output shaft
IL =NJeq-JmN2 (50) velocity of the motor. The adaptive algorithm must perform
AL= N3eq4-3mN. (51) the following steps.
(1) The load parameters are estimated using the least
Rather than estimate JL and from Jeq and
L one may use Ieq, squares approach.
(50) and (51) to transform the decision boundaries into (2) The updated estimates are mapped into an appropriate
functions of Jeq and and then utilize Jeq and Oeq for
feq, region using the derived decision functions.
classification purposes. Table IV illustrates the results of (3) After determining the appropriate region, the correct
performing this task for the design example of this paper. controller is selected from memory and applied to the system.
JOHNSON AND AYLOR: ADAPTIVE CONTROLLER 37

TABLE IV
SEPARATING BOUNDARIES IN TERMS OF THE EQUIVALENT LOAD
PARAMETERS

g1(Jiq,g1) - -851.90JO + 35.628eN + 4.750


9(Jo.P) - -348.78Jo - 1.3200.o + 3.041
g3(J .p) -269.14JN + 12.108f3 + 3.188
-

-Jq. -254.10JN + 15.168&,, + 4.407


-

g5(JPq.q0 -190.06Joq + 7.39000 + 4.575


gjJ|Aq) - -132.80J, + 3.69606pq + 4.470
7(J6,0q) - -130.70Jq + 4.15200,3 + 5.930
30.0

Output
Velocity
in
Radians
per
Second

4.0

Time in Seconds
Fig. 9. Performance of the adaptive controller on an initially unstable
system.

30.0

Output 25.0 Actual


Vel oci ty
in
Radians 20.0
per
Second
15.0

10.0

5. 0

1.0 2.0 3.0 4.0

Time in Seconds
Fig. 10. Performance of the adaptive controller for small changes in inertia
and damping.

The performance of the system is illustrated in Figs. 9 and The first half-cycle of the square-wave is used to identify the
10. Fig. 9 illustrates the performance of the system when the system and, at the l-s time interval, the correct region is
load parameters have varied significantly enough from the identified using the derived decision functions. The correct
design conditions to cause instability. The controller used in controller is then selected from memory.
the first half-cycle of the square-wave of Fig. 9 was designed Fig. 10 illustrates less severe conditions than those of the
for zero load inertia and zero load damping. The actual previous figure. It shows the response of the adaptive
conditions encountered were for the maximum load inertia of controller when the initial controller has been designed for a
0.6 ft-lbs-s2 and the maximum load damping of 0.6 ft-lbs-s. load inertia of 0.1 ft-lbs-s2 and a load damping of 0.1 ft-lbs-s,
38 IEEE TRANSACTIONS ON INDUSTRIAL ELECTRONICS, VOL. IE-33, NO. 1, FEBRUARY 1986
and the actual load inertia is 0.3 ft-lbs-s2 and the actual load [3] B. W. Johnson, "Microcomputer-based adaptive control for an electric
damping is 0.3 ft-lbs-s. wheelchair guidance system," Doctoral dissertation, Department of
Electrical Engineering, University of Virginia, Charlottesville, VA,
VII. CONCLUSIONS Jan. 1983.
[41 James L. Melsa and Donald G. Schultz, Linear Control Systems.
A key consideration during the design of the adaptive New York: McGraw-Hill, 1969.
controller has been computational requirements. Almost all [51 H. Kwakernaak and R. Sivan, Linear Optimal Control Systems.
New York: Wiley, 1972.
design decisions were made in an attempt to minimize the time [6] S. Marsili-Libelli, "Optimal design of PID regulators," Int. J. of
required to execute the controller in a small (possibly single- Control, vol. 33, no. 4, pp. 601-616, Apr. 1981.
chip) microcomputer. A preliminary analysis has been per- [7] J. S. Meditch, Stochastic Optimal Linear Estimation and Con-
trol. New York: McGraw-Hill, 1969.
formed to estimate the computation time required in an Intel [81 R. E. Kalman, Y-C. Ho, and K. S. Narendra, Contributions to
8048 single-chip microcomputer. Addition, multiplication, Differential Equations, vol. I. New York: Interscience, 1963.
and division routines were written in assembly language, and [91 R. F. Stengel, J. R. Broussard, and P. W. Berry, "The design of
digital-adaptive controllers for VTOL aircraft," NASA Rep. CR-
it is estimated that the complete algorithm could execute in 144912, Mar. 1976.
approximately 10.2 ms on an Intel 8048 with a 1.9-,ss cycle [10] R. E. Kalman and J. E. Betram, "Control system analysis and design
via the second method of Liapunov: Part II-discrete-time systems,"
time and approximately 7.5 ms on the 1.4-,as version of the Trans. of the ASME, Journal of Basic Engineering, June 1960.
8048. All instructions on these processors execute in either [11] C. S. Berger, "A numerical solution of the matrix equation A TPA - P
one or two cycles. These calculations assumed that appropriate = Q," IEEE Trans. Automat. Contr., vol. AC-16, pp. 381-382,
scaling could be performed such that integer arithmetic could Aug. 1971.
[12] A. H. Levis, R. A. Schlueter, and M. Athans, "On the behavior of
be used. Consequently, the controller is feasible to implement optimal linear sampled-data regulators," Int. Journal of Control, vol.
and offers substantial performance improvements over non- 13, no. 2, pp. 343-361, Feb. 1971.
adaptive controllers. The controller is currently being applied [13] S. D. Conte and C. De Boor, Elementary NumericalAnalysis. New
York: McGraw-Hill, 1965.
to the velocity control of an electric wheelchair [17]. [14] J. T. Tou and R. C. Gonzalez, Pattern Recognition Principles.
Ontario, Canada: Addison-Wesley, 1974.
REFERENCES [15] R. D. Duda and P. E. Hart, Pattern Classification and Scene
Analysis. New York: Wiley, 1973.
[11 R. L. Ramey, J. H. Aylor, and R. D. Williams, "Microcomputer-aided [161 W. L. Brogan, Modern Control Theory. New York: Quantum,
eating for the severely handicapped," Computer, vol. 12, no. 1, pp. 1974.
54-61, Jan. 1979. [17] J. H. Aylor, R. M. Inigo, B. W. Johnson, and 0. Morad, "Microcom-
[21 J. H. Aylor and B. W. Johnson, "A microcomputer based wheelchair puter implemented adaptive controller for electric wheelchairs,"Proc.
controller," in Proc. of the 4th Annual Conf. on Rehabilitation of the Second Int. Conf. on Rehabilitation Engineering, Ottawa,
Engineering, Washington, D.C., pp. 87-90, Sept. 1981. Canada, 1984.

Potrebbero piacerti anche