3 - Control Strategies For Servo Drives - Rev 30-03-2021

Download as pdf or txt
Download as pdf or txt
You are on page 1of 10

SOME CONTROL STRATEGIES FOR LOW-POWER DC-DRIVES

Sergio Junco
Departamento de Control, Escuela de Ingeniería Electrónica.
Facultad de Ciencias Exactas, Ingeniería y Agrimensura
Universidad Nacional de Rosario
[email protected]

1. Open–Loop Speed–Trajectory Planning for Permanent–Magnet DC Motor

For a given system, the (open-loop) trajectory planning problem (TPP) consists in forcing its output y(t) being

identical to a (sufficiently smooth) reference trajectory y*(t). Suppose that u(t) = S (y(t)) is the inverse
−1

model of the dynamic I-O relationship y(t) = S(u(t)). Then, TPP is simply solved specifying the control input

to be u ≡ u* = S −1
(y*), provided that the system is at rest and that no disturbance enters it (this will be

referred to as Assumption A1).

Considering the PM-DCM, the inverse model u = S − 1(y) is given by Eq. (1), where the notation is as follows:

uc = Ua is the control input; y = ω is the output variable; and up = τc is the disturbance input; 𝐾𝐾𝑁𝑁 is the

electromagnetic-mechanical coupling coefficient.

𝐿𝐿𝑎𝑎 𝐽𝐽 𝑅𝑅𝑎𝑎 𝐽𝐽 + 𝐿𝐿𝑎𝑎 𝑏𝑏 𝑅𝑅𝑎𝑎 𝑏𝑏 + 𝐾𝐾𝑁𝑁 2 𝑅𝑅 𝐿𝐿


𝑢𝑢𝑐𝑐 = 𝐾𝐾𝑁𝑁
𝑦𝑦̈ + 𝐾𝐾𝑁𝑁
𝑦𝑦̇ + 𝐾𝐾𝑁𝑁
𝑦𝑦 + 𝐾𝐾𝑎𝑎 𝑢𝑢𝑝𝑝 + 𝐾𝐾𝑎𝑎 𝑢𝑢̇ 𝑝𝑝 (1)
𝑁𝑁 𝑁𝑁

Remark 1. The inverse model(1) u = S − 1(y) is nothing but the re-ordered differential equation governing the

motor speed dynamics, which is given in Eq. (2) and has been normalized in Eq. (3). Eq. (4) reflects the

correspondences among the mathematical and the physical parameters. Note the presence of the load torque, i.e.,

the disturbance input, in the model.

𝑅𝑅 𝑏𝑏 𝑅𝑅𝑎𝑎 𝑏𝑏 + 𝐾𝐾𝑁𝑁 2 𝐾𝐾 𝑅𝑅 1
𝑦𝑦̈ + � 𝐿𝐿𝑎𝑎 + 𝐽𝐽 � 𝑦𝑦̇ + 𝐿𝐿𝑎𝑎 𝐽𝐽
𝑦𝑦 = 𝐿𝐿 𝑁𝑁𝐽𝐽 𝑢𝑢𝑐𝑐 − 𝐿𝐿 𝑎𝑎𝐽𝐽 𝑢𝑢𝑝𝑝 − 𝐽𝐽 𝑢𝑢̇ 𝑝𝑝 (2)
𝑎𝑎 𝑎𝑎 𝑎𝑎

𝑦𝑦̈ (𝑡𝑡) + 𝑎𝑎1 𝑦𝑦̇ (𝑡𝑡) + 𝑎𝑎2 𝑦𝑦(𝑡𝑡) = 𝑏𝑏0𝑢𝑢𝑐𝑐 (𝑡𝑡) − 𝑐𝑐𝑜𝑜 𝑢𝑢𝑝𝑝 (𝑡𝑡) − 𝑐𝑐1 𝑢𝑢̇ 𝑝𝑝 (𝑡𝑡) (3)

𝑅𝑅𝑎𝑎 𝑏𝑏 𝑅𝑅𝑎𝑎 𝑏𝑏 + 𝐾𝐾𝑁𝑁 2 𝐾𝐾𝑁𝑁 𝑅𝑅𝑎𝑎 1


𝑎𝑎1 = � + 𝐽𝐽 � ; 𝑎𝑎2 = ; 𝑏𝑏0 = ; 𝑐𝑐0 = ; 𝑐𝑐1 = (4)
𝐿𝐿𝑎𝑎 𝐿𝐿𝑎𝑎 𝐽𝐽 𝐿𝐿𝑎𝑎 𝐽𝐽 𝐿𝐿𝑎𝑎 𝐽𝐽 𝐽𝐽

Now, computing the input as specified in Eq. (5), the planned trajectory y*(t) will be impressed to the system

output y(t), i.e., y (t ) ≡ y * (t ) will yield, if A1 is satisfied.

(1)
This means that the above-mentioned I-O relationship y = S(u) is an integral model, for
instance the usual DCM block-diagram in integral causality.
𝐿𝐿𝑎𝑎 𝐽𝐽 𝑅𝑅𝑎𝑎 𝐽𝐽 + 𝐿𝐿𝑎𝑎 𝑏𝑏 𝑅𝑅𝑎𝑎 𝑏𝑏 + 𝐾𝐾𝑁𝑁 2
𝑢𝑢𝑐𝑐 (𝑡𝑡) = 𝑢𝑢𝑐𝑐∗ (𝑡𝑡) = 𝐾𝐾𝑁𝑁
𝑦𝑦̈ ∗ (𝑡𝑡) + 𝐾𝐾𝑁𝑁
𝑦𝑦̇ ∗ (𝑡𝑡) + 𝑦𝑦 ∗ (𝑡𝑡) (5)
𝐾𝐾𝑁𝑁

Remark 2. Note that the first two derivatives of the reference signal are needed. This is not a problem, since the
reference can be built as a sufficiently smooth time-function (for instance, using polynomials). Another
(approximate) solution is reached via injecting the reference to an arbitrarily fast PT2–system. It will yield its
output and its first two derivatives arbitrarily close to the reference, thus allowing using them instead of the
original signals.

Remark 3. In order to ensure y (t ) ≡ y * (t ) even in the presence of a disturbance torque, the open-loop control
law of Eq. (5) should be modified as indicated in Eq. (6).This implies the knowledge of the torque and its first
derivative. As this is usually not the case, a feedback loop is needed to reject the disturbance. Only an asymptotic
rejection can be reached. For instance, as it is well known, implementing an integral feedback-loop would allow
to reject a constant disturbance. This will be explicited when solving the next problem (ATP) in these notes.
Other solutions would require estimating the disturbance signal.

𝐿𝐿𝑎𝑎 𝐽𝐽 𝑅𝑅𝑎𝑎 𝐽𝐽 + 𝐿𝐿𝑎𝑎 𝑏𝑏 𝑅𝑅𝑎𝑎 𝑏𝑏 + 𝐾𝐾𝑁𝑁 2 𝑅𝑅 𝐿𝐿


𝑢𝑢𝑐𝑐 (𝑡𝑡) = 𝑢𝑢𝑐𝑐∗ (𝑡𝑡) = 𝐾𝐾𝑁𝑁
𝑦𝑦̈ ∗ (𝑡𝑡) + 𝐾𝐾𝑁𝑁
𝑦𝑦̇ ∗ (𝑡𝑡) + 𝐾𝐾𝑁𝑁
𝑦𝑦 ∗ (𝑡𝑡) + 𝐾𝐾𝑎𝑎 𝑢𝑢𝑝𝑝 + 𝐾𝐾𝑎𝑎 𝑢𝑢̇ 𝑝𝑝 (6)
𝑁𝑁 𝑁𝑁

Remark 4. Non-zero initial conditions will yield an error signal e(t) = y (t ) − y * (t ) , which will asymptotically
vanish with the open-loop dynamics of the machine.

N.B.: The above mentioned asymptotic vanishing of the error is not a general property, it only holds for stable,
minimum phase (MPh) (control) input-output relationship y(t) = S(u(t)) (this is the case in this motor model).
It does not hold if the plant model is either unstable or non-minimum phase (NMPh) or both. In the first case
the source of instability is the unstable dynamics of the plant (the unstable poles in a LTI system), in the second
case the instability is due to the plant right-half plane zeros, which appear as poles between the reference and
the control input when inverting the model.

Summarizing, with this open-loop control technique the output can be forced to follow a planned trajectory
only if the disturbances are measured and exactly cancelled and the plant is MPh and stable. But even in this
case the error dynamics cannot be chosen, it remains equal to the open-loop system dynamics. To be able to cope
with these problems feedback control is necessary.

2. Asymptotic Tracking

2.1 ATP − Asymptotic Tracking Problem. Given the output signal y(t) and the n−differentiable

reference signal y*(t), solving the problem of asymptotic tracking consists in finding an input signal

uc(t) such that the tracking error signal e(t) = y(t) − y*(t) asymptotically tends to zero when time goes

to infinity. For y(t) satisfying Eq. (3), where n = 2, forcing the error dynamics to satisfy Eq. (7) –with

arbitrarily positive constants k1 and k2– will solve the problem.

𝑒𝑒̈ (𝑡𝑡) + 𝑘𝑘1 𝑒𝑒̇ + 𝑘𝑘2 𝑒𝑒 = 0 (7)


Solution to ATP. Assume the control signal decomposed as follows:

uc(t) = uc1(t) + uc2(t) + uc3(t) (8)

As it can be easily verified, the problem can be solved in the following three steps:

AT1. Exact disturbance compensation. This can be achieved through the following control action uc1(t) (a

feedforward injection of the measured disturbance):


1
𝑢𝑢𝑐𝑐1 (𝑡𝑡) = 𝑏𝑏0
�𝑐𝑐0 𝑢𝑢𝑝𝑝 (𝑡𝑡) + 𝑐𝑐1 𝑢𝑢̇ 𝑝𝑝 (𝑡𝑡)� (9)

or, equivalently, in terms of the machine parameters:


𝑅𝑅𝑎𝑎 𝐿𝐿
𝑢𝑢𝑐𝑐1 (𝑡𝑡) = 𝐾𝐾𝑁𝑁
𝜏𝜏𝑐𝑐 (𝑡𝑡) + 𝐾𝐾𝑎𝑎 𝜏𝜏̇𝑐𝑐 (𝑡𝑡) (10)
𝑁𝑁

This yields the conversion of Eq. (3) into Eq. (11)

𝑦𝑦̈ (𝑡𝑡) + 𝑎𝑎1 𝑦𝑦̇ (𝑡𝑡) + 𝑎𝑎2 𝑦𝑦(𝑡𝑡) = 𝑏𝑏0 𝑢𝑢𝑐𝑐2 (𝑡𝑡) + 𝑏𝑏𝑜𝑜 𝑢𝑢𝑐𝑐3(𝑡𝑡) (11)

Remark 5. Now only the control input acts on the plant. Noticing that the transfer function is of PT2-type it
can immediately be concluded that the system is not able to asymptotically follow arbitrarily variable inputs
(just think of sinusoidal inputs and the Bode amplitude and phase diagrams of the transfer function).

AT2. Forcing the free output dynamics being equal to the error dynamics. This will yield the output

dynamics as in Eq. (12).

𝑦𝑦̈ (𝑡𝑡) + 𝑘𝑘1 𝑦𝑦̇ (𝑡𝑡) + 𝑘𝑘2 𝑦𝑦(𝑡𝑡) = 𝑏𝑏𝑜𝑜 𝑢𝑢𝑐𝑐3(𝑡𝑡) (12)

The necessary control action uc2(t) is the feedback law


𝑘𝑘1 −𝑎𝑎1 𝑘𝑘2 −𝑎𝑎2
𝑢𝑢𝑐𝑐2 (𝑡𝑡) = − 𝑏𝑏0
𝑦𝑦̇ (𝑡𝑡) − 𝑏𝑏0
𝑦𝑦(𝑡𝑡) (13)

or, equivalently, in terms of the machine parameters:

𝐿𝐿𝑎𝑎 𝐽𝐽𝑘𝑘1 −𝑅𝑅𝑎𝑎 𝐽𝐽−𝑏𝑏𝐿𝐿𝑎𝑎 𝐿𝐿𝑎𝑎 𝐽𝐽𝑘𝑘2 −𝑅𝑅𝑎𝑎 𝑏𝑏−𝐾𝐾𝑁𝑁 2


𝑢𝑢𝑐𝑐2 (𝑡𝑡) = − 𝑦𝑦̇ (𝑡𝑡) − 𝑦𝑦(𝑡𝑡) (14)
𝐾𝐾𝑁𝑁 𝐾𝐾𝑁𝑁

AT3. Feedforwarding the reference signal. This will yield Eq. (7), the desired dynamics for the error signal

e(t).

The necessary control action uc3(t) is

1
𝑢𝑢𝑐𝑐3 (𝑡𝑡) = 𝑏𝑏0
[𝑦𝑦̈ ∗ (𝑡𝑡) + 𝑘𝑘1 𝑦𝑦̇ ∗ (𝑡𝑡) + 𝑘𝑘2 𝑦𝑦 ∗ (𝑡𝑡)] (15)
Remark 6. The previous three-step procedure can be generalized to many n-order dynamic models. For

nonlinear systems this could involve the exact compensation of nonlinearities, and checking the stability of

possibly arising zero dynamics.

Remark 7. In order to implement step AT1, the instantaneous knowledge (measurement/exact prediction) of

the disturbance signal and its first (in general, its n − rp) derivative is unavoidable. If this is not the case, then

this solution cannot be implemented: the error dynamics will be driven by a disturbance term, as shown in Eq.

(16). The well-known solution to the complementary task of asymptotically rejecting a constant disturbance

will be implemented next.

𝑅𝑅 1
𝑒𝑒̈ (𝑡𝑡) + 𝑘𝑘1 𝑒𝑒̇ + 𝑘𝑘2 𝑒𝑒 = − 𝐿𝐿 𝑎𝑎𝐽𝐽 𝜏𝜏𝑐𝑐 (𝑡𝑡) − 𝐽𝐽 𝜏𝜏̇𝑐𝑐 (𝑡𝑡) (16)
𝑎𝑎

Figure 1: Graphic representation of the speed tracking control law under ideal conditions.

As can be seen in Figure 1 above, the step AT3 is equivalent to connect in cascade the inverse model of the

plant without disturbances and the open-loop dynamics modified by the feedback loops according to uc2(t).
2.2 ATP_DR − Asymptotic Tracking Problem with Disturbance Rejection. A constant disturbance

can be asymptotically rejected via the substitution (into the previous solution of ATP) of the integral

output-feedback loop given by Eq. (18) below in place of the term uc1(t), which will render the control

law of Eq. (17). The coefficient should be chosen in order to ensure asymptotic stability with a

satisfactory convergence rate of the error.

uc(t) = uc2(t) + uc3(t) + uDR(t) (17)

where

u DR (t ) = k I ∫ [ y * (t ) − y (t )] dt (18)

3. Practical considerations (controller implementation)

To implement any of the previous control laws the knowledge of all the machine parameters and of some

machine variables is necessary.

3.1 Knowledge of the machine parameters.

Even if this requirement is generally satisfied, it should be noticed that this knowledge is only an

approximated one. Indeed, there is always a parameter variation, usually fast due to operating conditions

(variation of electric resistance due to thermal effects, for instance), and rather slow due –for instance– to

component aging. This means that rated (nominal) or estimated values of the parameters are entered in the

control laws, which will degrade the asymptotic property of the tracking error. This can be investigated by (i)

replacing in the control law the value of any true parameter, say 𝑃𝑃, by its estimated valued 𝑃𝑃� (be it the rated

value 𝑃𝑃𝑅𝑅 , i.e., 𝑃𝑃� = 𝑃𝑃𝑅𝑅 , or any adjustable one obtained by an online estimation algorithm), then (ii) writing 𝑃𝑃�

in terms of the estimation error 𝑒𝑒𝑃𝑃 ≔ 𝑃𝑃 − 𝑃𝑃�, i.e., writing 𝑃𝑃� ≔ 𝑃𝑃 − 𝑒𝑒𝑃𝑃 and, finally (iii) obtaining and

analyzing the new error dynamics, which will no longer satisfy the homogeneous equation (7) but will be

driven by the estimation error.

3.2 Knowledge of the machine (and disturbance) variables.

To implement the full-knowledge controller (8), further specified in (10), (14) and (15), the evolution of the

following variables are needed: (i) the load torque 𝜏𝜏𝑐𝑐 , (ii) the machine rotational speed

𝑦𝑦 = 𝜔𝜔 and acceleration 𝑦𝑦̇ = 𝛼𝛼, respectively, and, (iii) the speed reference 𝑦𝑦 ∗ = 𝜔𝜔∗ and its time derivatives.

The solution to the latter requirement has already been suggested in Remark 2.
The load torque 𝜏𝜏𝑐𝑐 is usually not measured. If it is known to be approximately (piece-wise) constant, then the

controller (17) is implemented. Otherwise, a torque estimator is needed.

The speed is usually measured (notice that there are so-called speed-sensorless controllers, which use

estimates of this variable!) but the acceleration is not. This requires reconstructing or estimating the

acceleration.

3.2.1 Reconstructing / estimating the acceleration.


• In the hypothetical case of having a measurement 𝜏𝜏𝑐𝑐 or an estimation 𝜏𝜏�𝑐𝑐 of the load torque, the
acceleration can be obtained from the torque balance in the machine axis as (see Fig. 2 below):
1
𝛼𝛼 = 𝐽𝐽 [𝐾𝐾𝑁𝑁 𝐼𝐼𝑎𝑎 − 𝑏𝑏 𝜔𝜔 − 𝜏𝜏𝑐𝑐 ] (19)
or
1
𝛼𝛼� = 𝐽𝐽 [𝐾𝐾𝑁𝑁 𝐼𝐼𝑎𝑎 − 𝑏𝑏 𝜔𝜔 − �]
𝜏𝜏𝑐𝑐 (20)

Notice that instead of the acceleration the armature current 𝐼𝐼𝑎𝑎 is measured in this case, which is easy to

perform and also necessary in order to add a current limitation capability to the controller (see § “Limitación

de Corriente de Armadura en Esquemas de Control de Velocidad de MCC sin Lazo Subordinado de

Corriente” in the document “MCC-IP_Control_Directo_Velocidad”).

Figure 2: Block diagram of MCC mechanical subsystem

• If neither 𝜏𝜏𝑐𝑐 nor an estimation 𝜏𝜏�𝑐𝑐 are known, the first attempt to obtain the acceleration would be to

implement the time derivative of the measured rotational speed, as 𝛼𝛼(𝑡𝑡) = 𝜔𝜔̇ (𝑡𝑡). But this is not a

good idea as it would possibly bring unacceptable numerical errors in the case of a digital

implementation and is not physically realizable in an analog context (because of the negative relative

degree of the relationship between 𝜔𝜔 and 𝛼𝛼). The solution in this line of thinking is to implement an

approximation to the time derivative as given by the following I/O relationship:


𝑠𝑠
𝛼𝛼�(𝑠𝑠) = 1+𝛵𝛵1 𝑠𝑠
𝛺𝛺(𝑠𝑠) (21)
𝑠𝑠
where the DT1–transfer function approximately executes the differentiation of the speed 𝜔𝜔.
1+𝛵𝛵1 𝑠𝑠
This transfer function avoids performing a pure differentiation (thus avoiding numerical errors if

implementing it digitally) and is physically realizable in the case of preferring an analog

implementation. All of this can be verified in the following block diagram realization of the DT1–

transfer function.

This realization can be easily obtained


performing the polynomial division
𝑁𝑁 𝑠𝑠 𝑁𝑁 𝑅𝑅
𝐷𝐷
= 1+𝛵𝛵 as follows: 𝐷𝐷 = 𝑄𝑄 + 𝐷𝐷, which
1

yields
1�
𝑠𝑠 1 𝛵𝛵1
Figure 3: Block diagram of a DT1 = − (22)
1+𝛵𝛵1 𝛵𝛵1 1+𝛵𝛵1 𝑠𝑠

The choice of the time constant 𝛵𝛵1 results from a trade-off between capturing the expected range of

speed variations (1/𝛵𝛵1 as high as necessary) and suppressing the (usually high-frequency) noise

signals contained in the speed measurement (1/𝛵𝛵1 as low as necessary). Draw the Bode diagram of

the DT1–transfer function to see this.

3.2.2 Reconstructing the load torque from the estimated acceleration.

It is easy to verify by inspection of the block diagram of Figure 2 or equation (20) that, once the acceleration

estimated, the load torque can be obtained as given in (23). This implies that only the speed and the armature

current are to be measured.


𝜏𝜏𝑐𝑐 = 𝐾𝐾𝑁𝑁 𝐼𝐼𝑎𝑎 − 𝑏𝑏𝑏𝑏 − 𝐽𝐽𝛼𝛼� (23)

Figure 4 shows an implementation of this case, where DT1–transfer functions are used to approximate the time

derivatives of speed and load torque. Further, the derivatives of the reference signal are obtained by injecting

it into a fast PT2-system, as suggested in Remark 2. The PT2-system parameters 𝛽𝛽1 and 𝛽𝛽2 have to be chosen

so that the filtered speed reference 𝜔𝜔


�∗ (𝑡𝑡) and its derivatives are sufficiently similar to the original references.
Figure 4: Implementation of the speed tracking control law assuming: speed and current measurement,
approximate reconstruction 𝛼𝛼� of acceleration 𝛼𝛼 and 𝜏𝜏̂𝐶𝐶 of load torque 𝜏𝜏𝐶𝐶 , and knowledge of nominal values
of the plant parameters (𝑎𝑎1𝑁𝑁 , 𝑎𝑎2𝑁𝑁 , 𝑏𝑏0𝑁𝑁, 𝑐𝑐0𝑁𝑁 , 𝑐𝑐1𝑁𝑁 ).
4. Appendix: On pole-zero cancellation through a PI-controller

Suppose a first order system driven by a control input and a perturbation, for instance as given in Eq. (24).

Further, suppose closing the control loop –Eq. (25)– with the PI-regulator of Eq. (26), which is tuned as to

cancel the pole of the plant, i.e., TI = T1.

𝑇𝑇1 𝑦𝑦̇ (𝑡𝑡) + 𝑦𝑦(𝑡𝑡) = 𝑏𝑏0 𝑢𝑢𝑐𝑐 (𝑡𝑡) − 𝑐𝑐0 𝑢𝑢𝑝𝑝 (𝑡𝑡) (24)

U C ( s ) = GPI ( s ) [Y ∗ ( s ) − Y ( s )] (25)

1 + TI s
GPI ( s ) = K PI (26)
TI s

Then, the closed-loop transfer function from the reference input to the output (the “complementary sensitivity

function”)(2) will be a PT1 , whose step response –having no overshoot– can be made arbitrarily fast choosing

arbitrarily high the coefficient KPI. (this is only mathematically valid, as the faster the response the higher the

values of the control input, a situation that have actuator limitations in real systems). The particular tuning TI

= T1 of the PI-regulator eliminates the dynamics of the plant from the control-I/O relationship, BUT NOT

from the disturbance-I/O relationship. This means that the disturbance rejection of the closed-loop will be

determined not by the tuning of KPI but from the (in comparison slow) denominator of the plant dynamics

(1 + 𝑇𝑇1 𝑠𝑠).

Draw a block diagram of the closed-loop explicitly showing the plant and the PI-regulator. Look at the

position of the latter with respect to both, the control and the disturbance inputs.

4.1 Exercises

 Check the correctness of the previous statement.

 Compute the resulting transfer function from the disturbance input to the output.

 Compare both transfer functions and discuss the consequences of the differences, for instance in

terms of their respective step responses.

 For different values of T1, perform the following simulation experiment: injection of a step reference

followed by a step disturbance, the latter being injected once the reference has been reached by the

output.

(2)
For the definition of this and other functions in feedback configurations, see for instance
“Seron, M; J. Braslavsky; and G. Goodwin, Fundamental Limitations in Filtering and Control,
Springer Verlag, London, 1997”.
4.2 Application to DC-Motor

4.2.1 Use the DCM-model with La = 0, whose transfer function is a PT1. Repeat the previous simulation
experiments. Always look at the values of the armature voltage and current. Set the gain KPI equal
to the highest value admitted by the armature current or voltage limitations. Use different values of
the mechanical time constant TM.

4.2.2 For the case where the dynamics of the disturbance rejection is not admissible (high TM), redesign
the PI-regulator. For instance, choose the gains KPI and TI as to “arbitrarily” allocate the closed-loop
transfer functions poles at will (observe the structural difference among the new and the old transfer
functions!). “Arbitrarily” is in fact restricted by the current or voltage limitations!

You might also like