Professional Documents
Culture Documents
e
K E = (2)
Ki T b J
m
= = + u u
(3)
u
K V Ri
dt
di
L = +
(4)
where
R : Armature resistance [O].
L : Armature inductance [H].
Discrete Time Optimal Tracking Control of BLDC Motor
www.ijeijournal.com Page | 26
K : Electromotive force constant [Nm/A].
K
t
: Torque constant [Nm/A].
K
e
: Voltage constant [Vs/rad].
V : Source voltage [V].
u
| |
m
m
m
m
m
m
x
C
B
x
A
x
(
(
(
=
(
(
(
(
+
(
(
(
(
(
(
(
(
=
(
(
(
u
u
u
u
u
u
u
u
u
0 0 1
0
0
0
1 0 0
0 1 0
2
m
y
V
LJ
K
LJ
RJ Lb
LJ
K Rb
(6)
where
m
y is rotational angle of the rotor of the BLDC motor.
The discrete time system equations of the BLDC motor can be obtained as
( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) k T k y
k V T k T k
m m m
m m m m
x C
x x
=
+ = +1
(7)
where
( )
1 3
9 e k
m
x is state vector of the BLDC motor at the k
th
sample time,
( ) 9 e k y
m
is rotational angle of the rotor of the BLDC motor at the k
th
sample time,
( )
3 3 3 2
! 3
1
! 2
1
9 e + + + + = = T T T e T
T 3 2
m 3
A
m
m m
m
A A A I
,
( ) ( )
1 3
0
9 e =
}
t t d T T
T
B
m m
, and ( )
3 1
9 e =
m m
C C T .
III. CONTROLLER DESIGN
III.1 Discrete Time Full-Order State Observer Design
To implement the discrete time optimal tracking controller, the information of all state variables of the
system is needed. However, all state variables are not accessible in practical systems [3]. Furthermore, in the
system that all state variables are accessible, the hardware configuration of the system becomes complex and the
cost to implement this system is very high because sensors to measure all states are needed. Because of these
reasons, a discrete time observer is needed to estimate the information of all states of the system. In the case that
the output of the system is measurable and the system is full-observable, a discrete time full-order state observer
can be designed to observe information of all state variables of the system.
It is assumed that the system (7) is full-observable. The system equations of the discrete time closed
loop observer are proposed as follows:
( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) k T k y
k y k y k V T k T k
m
m m
m m
m m m m
x C
L x x
1
=
+ = +
(8)
where ( )
1 3
9 e k
m
x is state vector of the observer at the k
th
sample time, ( ) 9 e k y
m
is the rotational
angle of rotor of the observer at the k
th
sample time, and
1 3
L
9 e is the feedback gain matrix.
( ) ( ) ( ) k k k
m m m
x x x
~
= is defined as the estimated error state vector between the motor and the
observer. Subtracting Eq. (8) from Eq. (7), the error state equation can be obtained as
( ) ( ) ( ) | | ( ) ( ) k k T T k
m cd m m m m
x A x LC x
~ ~
1
~
= = + (9)
The design objective of the observer is to obtain a feedback gain matrix L such that the estimated error
states approach to zero as fast as possible. That is, the feedback gain matrix L must be designed such that
Discrete Time Optimal Tracking Control of BLDC Motor
www.ijeijournal.com Page | 27
eigenvalues of A
cd
exist in unit circle for the system (9) to be stable. By pole assignment method using
Ackermann formulation with observability matrix O
m
, the feedback gain matrix L is obtained as follows [3]:
( ) ( )
(
(
(
(
(
(
A = A =
1
0
0
' '
1
2
m m
m m
m
m
T
3
1
m m
C
C
C
e O L
(10)
where ( )
m
' A is desired characteristic equation of the observer, | |
T
2
m m m m m m
C C C O = is
observability matrix, and | | 1 0 0 =
3
e is unit vector.
Block diagram of this observer is shown in Fig. 1.
Figure 1 Block diagram of the system with observer.
III.2 Discrete time optimal controller design based on discrete time full-order state observer
The discrete time state variables equation of the BLDC motor can be rewritten as follows:
( ) | | ( ) ( )
( ) ( ) k k
k k k
x C y
u B x A x
d
d d
=
+ = +1
(11)
where x(k) e 9
31
is state vector, y(k) e 9 is output, u(k) e 9
is control input, and A
d
e 9
33
,
B
d
e 9
31
, C
d
e 9
13
are matrices with corresponding dimensions.
An error signal e(k) e 9 is defined as the difference between the reference input r(k) e 9
and the
output of the system y(k) as follows:
( ) ( ) ( ) k k k y r e = (12)
It is denoted that the incremental control input is ( ) ( ) ( ) 1 = A k k k u u u and the incremental state is
( ) ( ) ( ) 1 = A k k k x x x . If the system (11) is controllable and observable, it can be rewritten in the increment as
follows:
( ) | | ( ) ( )
( ) ( ) k k
k k k
x C y
u B x A x
d
d d
=
A + A = + A 1
(13)
The error at the k+1
th
sample time can be obtained from Eq. (12) as
( ) ( ) ( ) 1 1 1 + + = + k k k y r e . (14)
Subtracting Eq. (12) from Eq. (14) yields
( ) ( ) ( ) ( ) ( ) ( ) k k k k k k y y r r e e + + + = + 1 1 1 (15)
Substituting Eq. (13) into Eq. (15) can be reduced as
( ) ( ) ( ) ( ) ( ) k k k k k u B C x A C r e e
d d d d
A A + A + = + 1 1 (16)
where ( ) ( ) ( ) k k k r r r + = + A 1 1 e 9
It is assumed that future values of the reference input ( ) ( ) , , 2 , 1 + + k k r r cannot be utilized. The
future values of the reference input beyond the k
th
sample time are approximated as ( ) k r . It means that the
following is satisfied.
( ) , 2 , 1 for 0 = = + A i i k r (17)
From the first row of Eq. (13) and Eq. (16), the error system can be obtained as
( )
( )
( )
( )
( )
( )
( ) k
k
k
k
k
k k
u
B
B C
x
e
A 0
A C 1
x
e
G
d
d d
X A
d 3x1
d d
X
E
A
(
+
(
A
(
=
(
+ A
+
+
1
1
1
(18)
Discrete Time Optimal Tracking Control of BLDC Motor
www.ijeijournal.com Page | 28
where ( )
1 4
9 e k X ,
4 4
9 e
E
A , and
1 4
9 e G .
A scalar cost function of the quadratic form is chosen as
( ) ( ) ( ) ( ) | |
=
+ =
0 k
k k k k J u R u X Q X
T T
(19)
where
4 4
3
9 e
(
=
3 1 3
3 1 e
0 0
0 Q
Q is semi-positive definite matrix, 9 e
e
Q , and 9 e R are positive
scalar.
The optimal control signal ( ) k u A that minimizes the cost function (19) of the system (18) can be
obtained as [3]
( ) | | ( ) k k X A P G G P G R u
E 1
T
1
1
T
+ = A (20)
where P is semi-positive definite matrix. It is solution of the following algebraic Ricatti equation [3].
| |
E
T
1
T T
E E
T
E
PA G PG G PG A PA A Q P
+ + = R (21)
where
4 4
Q
9 e is semi-positive definite matrix, and 9 e R is positive scalar.
By taking the initial values as zero and integrating both side of Eq. (20), the control law ( ) k u can be
obtained as
( ) ( ) ( ) k k e
z
z
K k u
e m 1x
x K +
=
1
1
(22)
where | | | |
4 1
9 e + = =
E 1
T
1
1
T
1x 1e 1
A P G G P G R K K K
Based on the proposed observer (9) and the controller (22), the discrete time optimal controller design
based on discrete time full-order state observer can be given as follows:
( ) ( ) ( ) k k e
z
z
K k V
e m 1x
x K
1
1
+
= (23)
The discrete time optimal tracking control system of the BLDC motor (7) designed based on the
information of states of the system obtained from discrete time closed loop observer (9) is shown in Fig. 2.
Figure 2 Block diagram of the optimal control of the BLDC motor.
IV. NUMERICAL AND EXPERIMENTAL RESULTS
The specification of BLDC motor is shown in Table 1.
The effectiveness of the controller (23) as shown in Fig. 2 is verified by the simulation and
experimental results.
The BLDC motor is controlled by the optimal tracking controller (23) which is obtained by choosing 1 = R and
(
(
(
(
=
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 2 . 0
Q . The poles of the system (9) are chosen as | | j0.32 - 0.375 j0.32 + 0.375 5 . 0 = for fast
response. The feedback gain matrix | |
T
00000012 . 0 00009 . 0 153 . 0 = L is obtained from (10). The
Discrete Time Optimal Tracking Control of BLDC Motor
www.ijeijournal.com Page | 29
simulation results of the observer are shown in Figs. 3~5. And the simulation results of the designed discrete
time optimal tracking controller of BLDC motor designed based on the discrete time full-order state observer
are shown in Figs. 6~9.
Figs. 3~6 show that even with different initial conditions between observer and system, all states and
the output of the designed observer converge to those of system after about 0.01 second.
Fig. 7 shows that discrete time optimal tracking controller of the BLDC motor designed based on the
discrete time full-order state observer has good performance. The output of the system converges to the
reference input after about 0.08 second, and its overshoot is about 4.5%. The tracking error of the system is
shown in Fig. 8. The control signal input is shown in Fig. 9.
Figs. 10~15 show the simulation results of the tracking angle of the BLDC motor control system using
the PID controller with two cases: unbounded control signal and bounded control signal. The proposed PID
controller is designed based on the flat criterion. When control signal V is unbounded, the overshoot of the
output is about 11.5% as shown in Fig. 10, and tracking error converges to zero after about 0.07 second as
shown in Fig. 11. However, the control signal V changes from -2000 to 4100 as shown in Fig. 12, it is too big
value to be implemented for the real system. When the control signal V is bounded as shown in Fig. 15,
overshoot of the output is about 40% as shown in Fig. 13, and tracking error converges to zero after about 0.08
second as shown in Fig. 14.
In comparing the simulation results of the designed discrete time optimal tracking controller designed
based on discrete time full-order state observer with those of the proposed PID controller, it is shown that the
designed discrete time optimal tracking controller has better performance than the proposed PID controller.
Table 1 Specification of BLDC motor
Parameters Values and units
R 21.2
K
e
0.1433 V s/rad
D 1x10
-4
kg-m s/rad
L 0.052H
K
t
0.1433 kg-m/A
J 1x10
-5
kg-m s
2
/rad
0 0.02 0.04 0.06 0.08 0.1
0
2
4
6
8
10
12
Time [sec]
S
t
a
t
e
x
1
o
f
p
l
a
n
t
a
n
d
o
b
s
e
r
v
e
r
[
d
e
g
]
State of plant
State of observer
Figure 3 State
of plant.
u
u
Discrete Time Optimal Tracking Control of BLDC Motor
www.ijeijournal.com Page | 30
0 0.02 0.04 0.06 0.08 0.1
-4
-3.5
-3
-2.5
-2
-1.5
-1
-0.5
0
0.5
1
x 10
5
Time [sec]
S
t
a
t
e
x
3
o
f
p
l
a
n
t
a
n
d
o
b
s
e
r
v
e
r
State of plant
State of observer
Figure 5 State