You are on page 1of 8

NCTU Department of Electrical and Computer Engineering 2015 Spring Course

<Dynamic System Simulation and Implementationon> by Prof. Yon-Ping Chen

2. Modeling of DC Motor
pendulum
The most common device used as an

actuator in mechanical control is the DC


arm
motor. For example, the control of a rotary

inverted pendulum requires a DC motor to


DC motor
drive the arm and the pendulum as shown in
Figure 2-1
Figure 2-1.

Ra La

ia(t) +
vs(t)
+ vb(t) TL(t)

TM(t)

Figure2-2

The system structure of a DC motor is depicted in Figure2-2, including the

armature resistance Ra and winding leakage inductance La. According to the

Kirchhoffs voltage law, the electrical equation of the DC motor is described as


dia t
Ra ia t La vb t v s t (2-1)
dt
where ia(t) is the armature current, vb(t) is the back emf voltage and vs(t) is the voltage

source. The back emf voltage vb(t) is proportional to the angular velocity (t) of the

rotor in the motor, expressed as

vb t k b t (2-2)

where k b is the back emf constant. In addition, the motor generates a torque TM

proportional to the armature current, given as

2-1
NCTU Department of Electrical and Computer Engineering 2015 Spring Course
<Dynamic System Simulation and Implementationon> by Prof. Yon-Ping Chen

TM t kT ia t (2-3)

where k T is the torque constant.

If the input voltage vs(t)=Vs is a constant, the resulted armature current ia(t)=Ia,

angular velocity (t)= and torque TM(t)=T are also constant in the steady state. From

(2-1) to (2-3), we have

Ra I a k b Vs (2-4)

T kT I a (2-5)

Under the conservation of power, we know that the input power IaVs is equal to the

external power T and the power Ra I a2 consumed in the resistance, i.e.,

Vs I a T Ra I a2 (2-6)

Substituting vs in (2-4) into (2-6) yields

T kb I a (2-7)

From (2-5) and (2-7), we know that both kT and k b are the same. From (2-2), we can

rewrite (2-1) and (2-3) as


dia t
Ra ia t La k t v s t (2-8)
dt
TM t kia t (2-9)

where k kT k b . Besides, if the DC motor is used to drive an external torque TL(t)

of payload then its mechanical behavior is described as


d t
JM t BM t TM t TL t (2-10)
dt
where JM is the rotor moment of inertia and BM is the frictional coefficient.

Based on (2-8), (2-9) and (2-10), the dynamic equation of the DC motor can be

expressed as
dia t
La Ra ia t k t v s t (2-11)
dt

2-2
NCTU Department of Electrical and Computer Engineering 2015 Spring Course
<Dynamic System Simulation and Implementationon> by Prof. Yon-Ping Chen

d t
JM t BM t kia t TL t (2-12)
dt
Note that the electrical time constant La/Ra is often neglected since it is at least one

order in magnitude smaller than the mechanical time constant JM/BM. In other words,
dia t
by neglecting the term , (2-11) becomes
dt

ia t v s t t
1 k
(2-13)
Ra Ra

Substituting it into (2-12), we have

d t BM k2
t t
1
TL t
k
v s t (2-14)
dt J M J M Ra JM J M Ra

Clearly, the motor will encounter two external sources, the input voltage vs(t) to drive

the motor and the torque TL(t) reacted from the payload.

Now, based on the above analysis, lets discuss the model of a DC motor in

state-space description and input-output description.

First, lets consider the case which requires the DC motor to move in a constant

speed. Then, the angular velocity is selected as the output, expressed as

y(t)=(t) (2-15)

From (2-11) and (2-12) and choosing the state variables as x1(t)=ia(t) and x2(t)=(t),

we have

Ra x1 t La x1 t kx2 t vs t (2-16)

J M x 2 t BM x2 t kx1 t TL t (2-17)

Further rearranging (2-15) to (2-17) yields the state equations


Ra
x1 t x1 t x2 t v s t
k 1
(2-18)
La La La
B
x 2 t x1 t M x2 t TL t
k 1
(2-19)
JM JM JM
and the output equation

2-3
NCTU Department of Electrical and Computer Engineering 2015 Spring Course
<Dynamic System Simulation and Implementationon> by Prof. Yon-Ping Chen

y(t)= x2(t) (2-20)

Hence, the state-space description is given as

State equation: x t Axt But (2-21)

Output equation: yt cx t (2-22)

x t v t
where the state vector is x t 1 , the input vector is ut s , and the
x 2 t TL t

Ra k 1
L L 0
and c 0 1 . Note
La
system matrices are A a , B a
k BM 0 1

J M JM J M

that the state equation (2-21) can be rearranged as

x t Axt b1u1 t b2 u 2 t (2-23)

1 L 0
where u1(t)=vs(t), u2(t)=TL(t), b1 a and b2 . If the motor is
0 1 J M

operated without any payload TL(t), i.e., u2(t)=TL(t)=0, then the state equation (2-23)

can be rewritten as

x t Axt but (2-24)


1 L
where the input is u(t)= vs(t) and the input matrix is b a .
0

If the goal of control is to drive the DC motor to a desired angle, not a speed,

then the output should be set as the angular position yt t d . To


t

include the angulr possition, we often change the integral form t d into
t

the differential form as below:

t t (2-25)

and choose the new state variable x3(t)=(t). As a result, the total system is changed

into the state equations

2-4
NCTU Department of Electrical and Computer Engineering 2015 Spring Course
<Dynamic System Simulation and Implementationon> by Prof. Yon-Ping Chen

Ra
x1 t x1 t x2 t v s t
k 1
(2-26)
La La La
B
x 2 t x1 t M x2 t TL t
k 1
(2-27)
JM JM JM
x3 t x2 t (2-28)

and the output equation

y(t)= x3(t) (2-29)

In matrix form, we have

State equation: x t Axt But (2-30)

Output equation: yt cx t (2-31)

where

x1 t
v t
x t x 2 t , ut s ,
x3 t TL t

R a La k La 0 1 La 0
A k J M BM J M 0 , B 0 1 J M , c 0 0 1 .
0 1 0 0 0

Similarly, without any payload TL(t), the state equation (2-30) can be expressed as

x t Axt but (2-32)

T
1
where the input is u(t)= vs(t) and the input matrix is b 0 0 .
La

Now lets consider the following numerical example of a DC motor with

parameters Ra=0.5, La=1.510 H, JM=2.510 N-m/(rad/s2), kT=0.05 N-m/A,

kb=0.05 V/(rad/s) and BM=1.010 N-m/(rad/s). Without any payload TL(t), the motor

is described by (2-32) and listed as below:

2-5
NCTU Department of Electrical and Computer Engineering 2015 Spring Course
<Dynamic System Simulation and Implementationon> by Prof. Yon-Ping Chen

x1 t 333.33 33.33 0 x1 t 666.67


x t 200 0.40 0 x 2 t 0 u t (2-33)
2
x 3 t 0 0 x3 t 0

1

x t A x t b

where x1(t)=ia(t), x2(t)=(t), x3(t)=(t) and u(t)=vs(t). If the output is x3(t)=(t), then

x1 t
y t 0 0 1 x 2 t (2-34)

c x3 t

Based on (2-33) and (2-34), lets find the input-output description of the DC motor.

First, lets determine the characteristic polynomial of the DC motor from (2-33),

which is obtained as

s 333.33 33.33 0
sI A 200 s 0.40 0 s 3 333.73s 2 6799.33s (2-35)
0 1 s

According to the Cayley-Hamilton theory, we know that

A3 333.73 A2 6799.33 A 0 (2-36)

After calculating the following terms


yt 333.73 yt 6799.33 y t

(2-37)
c A3 333.73 A 2 6799.33 A x cA 2 bu t
we have the input-output description as below:

yt 333.73yt 6799.33 y t 133334ut (2-38)

where cA 2 b 133334 . It is obvious that the transfer function is


Y s
H s
133334
3 (2-39)
U s s 333.73s 2 6799.33s
Moreover, it can be further decomposed as

H s
133334
(2-40)
ss 21.80s 311.93

which implies the pole at s311.93 can be omitted since it is much faster than the

pole at s21.80. In other words, the transfer function H(s) can be approximated by a
2-6
NCTU Department of Electrical and Computer Engineering 2015 Spring Course
<Dynamic System Simulation and Implementationon> by Prof. Yon-Ping Chen

second order transfer function Ha(s) expressed as



H a s (2-41)
ss s s
2

where is near to 21.80. There are several methods to obtain the approximate transfer

function Ha(s). One of the simplest one is to determine Ha(s) under the condition that

H j
1, for 0 (2-42)
H a j

which leads to

H j H s H s
2

1, for 0 (2-43)
H a j
2
H a s H a s s j

To adopt the condition, lets rewrite the transfer function as

H s
19.610

(2-44)
s 1 0.0491s 0.0001471s 2

and choose the approximate transfer function as

H a s
19.610
(2-45)
s1 s
Hecnce, we have

H s H s
H a s H a s


1 s 1 s
1 0.0491s 0.0001471s 1 0.0491s 0.0001471s
2 2
(2-46)
1 2s2

1 0.0021s 2 2.1638 10 -8 s 4

1

2 0.0021 s 2 2.1638 10 -8 s 4
1 0.0021s 2 2.1638 10 -8 s 4
H s H s
Clearly, between and 1, there exists an error
H a s H a s

E s

2 0.0021 s 2 2.1638 10 -8 s 4
(2-47)
1 0.0021s 2 2.1638 10 -8 s 4
which is minimized when 2 0.0021 0 or 0.0458 . From (2-45), the

approximate transfer function is then obtained as

2-7
NCTU Department of Electrical and Computer Engineering 2015 Spring Course
<Dynamic System Simulation and Implementationon> by Prof. Yon-Ping Chen

H a s
19.610 428.17
(2-48)
s1 0.0458s ss 21.83
which implies =21.83 near to 21.80 and =428.17 as shown in (2-41).

The other one is just neglect the state variable x1(t)=ia(t) since the convergence

rate of ia(t) is much faster than that of angular velocity x2(t)=(t). From (2-33), we

assume that x1 t 0 and then

0 333.33 33.33 0 x1 t 666.67


x t 200 0.40 0 x 2 t 0 u t (2-49)
2
x 3 t 0 1 0 x3 t 0

or

333.33x1 t 33.33x2 t 666.67ut 0 (2-50)

x 2 t 200 x1 t 0.40 x2 t (2-51)

x3 t x2 t (2-52)

From (2-50), we have

x1 t 0.1x2 t 2ut (2-53)

and substituting it into (2-51) becomes

x 2 t 20.4 x2 t 400ut (2-54)

Hence, differentiating (2-52) yields

x3 t x 2 t 20.4 x2 t 400ut 20.4 x3 t 400ut (2-55)

Since y(t)=x3(t), we obtain

yt 20.4 y t 400ut (2-56)

and the approximate transfer function is


Y s
H a s
400
(2-57)
U s ss 20.4
which is approximate to the one derived in (2-48).

2-8