A Numerical Simulation Study of Data‑driven Pole Placement
著者 ピョン イ イ シュェ
著者別表示 Pyone Ei Ei Shwe journal or
publication title
博士論文本文Full 学位授与番号 13301甲第4624号
学位名 博士(工学)
学位授与年月日 2017‑09‑26
URL http://hdl.handle.net/2297/00054253
doi: 10.4236/ica.2017.83011
DISSERTATION
A Numerical Simulation Study of Data-driven Pole Placement
Division of Electrical Engineering and Computer Science Graduate School of Natural Science & Technology
Kanazawa University
Student Number: 1424042018
Pyone Ei Ei Shwe
Supervisor: Prof. Shigeru Yamamoto
Abstract
This dissertation is concerned with numerical simulation studies on the state-feedback data-driven pole placement method. The data-driven pole placement method can precisely identify the state space model and pole placement gain simultaneously from a set of measurement data of the linear time-invariant system under certain conditions. In this study, solutions of several di ffi culties of the method for practical applications are investigated by numerical simulations.
First, the data-driven pole placement method is applied to a self-balancing robot which is a nonlinear system. By numerical simulations with nonlinear di ff eren- tial equation of the self-balancing robot, it is shown that the linearized model can be identified for the noisy case where the measurement noise exists together with noiseless cases. In particular, it is revealed that the suitable linearized model and pole placement gain can be identified by using the data su ffi ciently near the equilib- rium.
Second, it is shown that the total least square and a prefilter are e ff ective to the data-driven pole placement method when the measurement data is contaminated by noise. It is also shown that the random exciting signal is more suitable than the chirp exciting signal.
Finally, the data-driven pole placement method is extended to online tuning,
real-time updating the closed loop system. Its capability is also investigated by
Contents
Abstract i
Contents iv
Acknowledgement v
1 Introduction 1
1.1 Data-driven control . . . . 1
1.2 Data-driven pole placement . . . . 2
1.3 Motivations and objectives . . . . 5
1.4 Contributions of this dissertation . . . . 6
1.5 Dissertation organization . . . . 7
2 An application to nonlinear system 9 2.1 Problem setup . . . . 9
2.2 Linearized model of self-balancing robot . . . . 10
2.3 Simulation results . . . . 14
2.4 Summary . . . . 14
3 An improvement for noisy measurement data 23
3.4 Summary . . . . 33
4 Real-time data-driven pole placement 35 4.1 Problem setup . . . . 35
4.2 Real-time update of the model and feedback gain . . . . 36
4.3 Simulation results . . . . 37
4.4 Summary . . . . 38
5 Conclusions 43 A Self-balancing robot and derivation of equation of motion 45 A.1 Self-balancing robot . . . . 45
A.2 Equation of motion in 3D (Part 1) . . . . 48
A.2.1 Case 1: the generalized coordinate ( θ
w, θ
b, ϕ ) . . . . 50
A.2.2 Case 2: the generalized coordinate ( θ
m, θ
b, ϕ ) . . . . 55
A.2.3 Case 3: the generalized coordinate ( θ
w, θ
b, ϕ ) in [9, 28] . . . 58
A.2.4 Case 4: the generalized coordinate ( θ
m, θ
b, ϕ ) in [9, 28] . . . 61
A.3 Equation of motion in 3D (Part 2) . . . . 64
A.3.1 Case 1: the generalized coordinate ( θ
w, θ
b, ϕ ) . . . . 66
A.4 Equation of motion in 2D . . . . 71
A.4.1 Case 1: the generalized coordinate ( θ
w, θ
b) . . . . 74
A.4.2 Case 2: the generalized coordinate ( θ
m, θ
b) . . . . 75
A.4.3 Case 3: the generalized coordinate ( θ
w, θ
b) in [9, 28], . . . . 77
A.4.4 Case 4: the generalized coordinate ( θ
m, θ
b) in [9, 28] . . . . 79
Publications 83
Bibliography 88
Acknowledgement
Firstly, I would like to express my sincere gratitude to my supervisor Prof. Shigeru Yamamoto, for support of three years Ph.D. study and related research, for his pa- tience, motivation, and giving knowledge. His guidance helped me in all the time of research and writing of this thesis. Supporting to attend conferences and to achieve my academic goal, all are thanks to my supervisor. I also would like to thanks to Associate Prof. Ichiro Jikuya for his friendly talks and for his suggestions and comments for this dissertation.
Besides my advisor, my sincere thanks to thesis committee, Prof. Masato Miyoshi, Prof. Satoshi Yamane and Prof. Akihiro Hirano.
To my life-coach, my father, Nyunt Shwe and, to my motivation, my mother, Pyone Pyone Kyi, my deepest thanks and loves. Special thanks to my elder sister May Thet Htar Shwe, my younger brother Thet Htoo Shwe, my dear Thu Htay Aung and my dear friend, Hnin Pwint Phyu for all of their loves, cares and encouragement every day.
A special gratitude goes out to all members of MoCCoS (an abbreviation of
Modeling and Control of Complex Systems) Laboratory for their friendships and
helps in any concerns in my first time studying abroad. Great thanks to my tutor
Mr. Shogo Takada for making easy in the daily life of my first year and, Mr. Yuji
Okano, Mr. Yuyoshi Inoue, Mr. Tomoya Kitajima for their knowledge sharing and
Chapter 1 Introduction
1.1 Data-driven control
Data-based or data-driven control method involves designing a controller when the plant model is not available. Data-driven control doesn’t base on the knowledge of a plant model and requires only the measured input-output data from the process to be controlled. It intends to determine the control input or the controller to obtain the desired closed loop performance in contrast to model-based control design which requires the knowledge of mathematical model of the system.
In the data-driven control framework, where no explicit mathematical plant model is used, a feedback controller must be derived that satisfies the prescribed closed-loop performance and fit to known experimental data. In contrast with tradi- tional model-based controller designs, techniques such as controller identification [24] or a combination of a plant model and controller identification must be applied [25, 26].
Researches on data-driven approaches have extensively been proposed such as
tended to a state feedback problem in [7]. Such FRIT methods can be applied to the data-driven pole placement problem by choosing a reference transfer function with the desired poles. However, it is not easy to specify the zeros of the reference transfer function from u to x because the zeros of the plant are unknown. In con- trast, the data-driven pole placement method presented in [5] requires only a state space representation of the closed-loop system to specify the prescribed closed-loop performance, as shown in Section 1.2. This avoids the zero assignment issue that arises in the transfer function approach used in [5].
1.2 Data-driven pole placement
Pole placement, also called pole assignment or eigenvalue assignment, is a standard controller synthesis method in which the locations of the closed-loop poles can be determined by setting a controller gain. The eigenvalues of the system correspond to the pole locations and they a ff ect the system response such as stability, convergence rate, disturbance rejection and noise immunity. For stability issue, the poles of the system should be inside the unit circle in the discrete time system or should be the left-half plane in the continuous time system. Pole placement method works on setting the desired pole location and then moving the poles of the system to these desired pole locations by using the feedback gain to specify the desired system response. For pole placement control design, all state variables are assumed to be measurable and available for feedback and, the system is assumed to be completely controllable. Various pole placement methods have broadly been developed.
In contrast to the standard pole placement approach that assumes the state-space
model is known and given, a di ff erent pole placement approach that does not use
such assumptions has recently been proposed. A salient feature of the approach is
that from a pair of state and input measurement we can simultaneously obtain the
well-known for a long time. In state feedback pole placement problem, the state feedback gain must be determined for a given system such that the closed-loop poles coincide with the desired locations. This is also a well-known problem, and various pole placement methods have been extensively discussed in many works of literature [1, 2, 3, 17].
In standard pole placement methods, a state space model is assumed to be given by a system identification technique using data from past experiments. Whereas the traditional approach combines the identification of the state space model with the standard pole placement method, an alternative approach called “data-driven pole placement” has recently been proposed [5]. In this approach, the state space model and pole placement feedback gain are identified simultaneously from the set of state measurements and control input sequences. The method proposed in [5]
is based on the data-driven control framework ([18] and references therein) such as unfalsified control [6], virtual reference feedback tuning (VRFT) [19, 20], or fictitious reference iterative tuning (FRIT) [8, 21, 22, 23].
Consider the discrete-time linear time-invariant system and a static state feed- back
x(k + 1) = Ax(k) + Bu(k) , (1.1)
u(k) = F x(k) + v (k) , (1.2)
where A ∈ R
n×n, B ∈ R
n×m, x ∈ R
nis the state vector, u ∈ R
mis the input vector, v ∈ R
mis the external input to the closed loop system, and F ∈ R
m×nis the feedback gain.
The data-driven pole placement problem was formulated in [5] as follows.
Problem 1 We assume that the order of the plant n is known, pair (A, B) is con-
trollable but the exact value is unknown, and B is of full rank. Let Λ = { p
1, . . . , p
n}
algorithms. In contrast, the data-driven pole placement method solves the two steps simultaneously. To achieve this, the method uses the equivalency between the closed-loop system
x(k + 1) = (A + BF)x(k) + B v (k) (1.3)
with the desired pole placement gain F and
x
d(k + 1) = A
dx
d(k) + B
dv (k) , (1.4)
x
d(k) = T x(k) , (1.5)
where (A
d, B
d) with λ
i(A
d) = p
iis an appropriate controllable pair. This equivalency requires the nonsingular matrix T to exist. We remove v from (1.4) by using (1.2), to obtain
x
d(k + 1) = A
dx
d(k) + B
du(k) − B
dF x(k) . (1.6) Then, using (1.5), we obtain
T x(k + 1) = A
dT x(k) + B
du(k) − B
dF x(k) . (1.7) If (x
0(k) , u
0(k)) (k = i , . . . , i + N) satisfies (1.7),
T X
0P
1= A
dT X
0P
2+ B
dU
0− B
dFX
0, (1.8) where
X
0= [
x
0(i) x
0(i + 2) · · · x
0(i + N )
] , (1.9)
U
0= [
u
0(i) u
0(i + 1) · · · u
0(i + N − 1)
] , (1.10)
P
1=
0
1×NI
N
, P
2=
I
N0
1×N
. (1.11)
In [5], (1.8) is cast into
and
F =
f
1...
f
m
∈ R
m×n, T =
t
1...
t
n
∈ R
n×n. (1.14)
The system (1.4) can be interpreted as a reference model within VRFT (e.g., [19, 20]) and FRIT (e.g., [8, 21, 22, 23]). The idea of eliminating v in (1.6) is also based on FRIT. In [8, 22, 23], a similar state feedback control problem has been discussed within the FRIT framework. To apply these FRIT techniques to the data-driven pole placement problem, the desired transfer function must be specified from u to x, rather than x
d. When precise values for (A , B) are not available, it becomes impossible to specify the zeros of the desired transfer function.
To obtain the datasets (1.9) by applying state feedback (1.2) to the system (1.1), the initial feedback gain F should be based on (A , B). Hence, in Problem 1, the exact value of (A , B) is assumed to be unknown.
When applying the property of Kronecker product vec(MDN) = (N
⊤⊗ M)vecD (see for example Th.2.13 in [29] ) to the transpose of (1.12) to solve (1.12) for F and T , a further linear equation is derived, as follows:
Xη = U, (1.15)
where η = [
t
1· · · t
nf
1· · · f
m]
⊤∈ R
(n+m)n(1.16)
X = S
1⊗ (X
0P
1)
⊤+ S
2⊗ (X
0P
2)
⊤∈ R
nN×(n+m)n, (1.17) U = (
B
d⊗ U
0T)
(vec I
m) ∈ R
nN. (1.18)
If T is nonsingular, the model coe ffi cients can be obtained
=
−1−
−1, =
−1.
such as the applicability to nonlinear systems, and / or noisy measurements. The data-driven pole placement method to handle noise remains an open issue, though in [5], the total least square (TLS) method [27] was claimed to be e ff ective. To resolve this issue, we introduced a prefiltering technique that reduces the e ff ect of measurement noise. More specifically, a finite impulse response (FIR) filter was used to prefilter the data, as this makes them easier to manipulate. In Section 3.3, we discuss the e ff ect of applying this prefiltering technique, together with the least square (LS) and TLS methods, to a self-balancing robot model. We then report the results for the pole placement error and identification error when two di ff erent exciting signals were applied. Finally, we investigated the ability of the data-driven pole placement method.
1.4 Contributions of this dissertation
This dissertation is concerned with exploring several applications based on data- driven pole placement method. To see the e ff ectiveness of the method and to im- plement this to practical applications, the contributions of this thesis are mainly discussed in Chapter 2 to 4. The results achieved in this dissertation can be summa- rized as follows.
• In [14], the data-driven pole placement method is applied to a 2D self-balancing
robot which is a nonlinear system with a single input. It is evaluated that a
more precise linearized model can be identified as the states approach to the
equilibrium when a random exciting signal is used in the data-driven pole
placement method. The ability of data-driven pole placement method is ex-
amined when there exist measurement noise. As measurement noise is an
important issue in practical applications, it is considered and investigated for
o ff -line tuning.
results of applying TLS and prefilter with data-driven pole placement method show good performance. Then, the results while applying TLS and prefilter are investigated when a di ff erent exciting signal, chirp signal is applied other than random exciting signal. By comparing the results in numerical values and simulation results, applying the random exciting signal on data-driven pole placement method shows good response than applying the chirp exciting signal.
• O ff -line tuning is extended to real-time updating (on-line tuning) in [16]. The convergence of the identification errors of plant model and feedback gain to small values can be seen while the data approaches equilibrium point in both noiseless and noisy cases. The data-driven pole placement method can stabilize the self-balancing robot in the real-time fashion.
1.5 Dissertation organization
This dissertation is organized as follows.
Chapter 2 explores the e ff ect of data-driven pole placement problem when it is applied to a non-linear system. A self-balancing robot (inverted pendulum) is used which has non-linearity. By considering as the single input case to this while applying the random exciting signal, an e ff ective region to linearized the model is explored and the plant model and feedback gain identifications are interrogated.
Both noiseless and noisy conditions are considered to see the response of data- driven pole placement method. These results were discussed in [14].
Chapter 3 discusses for dealing with measurement noise more e ff ectively. Two
single-input cases to self-balancing robot are considered and a FIR prefilter is de-
works as online tuning and it can update the plant model and pole placement feed- back gain. The results under noiseless and noisy conditions are also explored in [16].
Chapter 5 summarizes the final conclusions for this dissertation.
The derivation of equation of motion for self-balancing robot is shown in A.
Chapter 2
An application to nonlinear system
2.1 Problem setup
To apply the data-driven pole placement method proposed in [5] for nonlinear sys- tems, we consider a self-balancing robot which can be controlled as the inverted pendulum. We need to get the suitable measurement data sets for the proposed method other than the desired pole locations. So, we have to identify the linearized model. In this chapter, it is shown that we can theoretically derive an ideal linearized model of a self-balancing robot. The results show that a better-linearized model can be identified when the measurement data near the equilibrium point is available.
That is, the accuracy of the linearized model can be improved when the measure-
ment data exists in a small sphere centered the equilibrium point. That conclusion
is derived under the noiseless conclusion. To support the results under a noiseless
Figure 2.1: Self-balancing robot control system.
Figure 2.2: Coordinates of the 2D self-balancing robot.
2.2 Linearized model of self-balancing robot
We applied the data-driven pole placement method to control a 2D self-balancing robot [9, 28] (Fig. 2.1). We used θ
m(t), θ
b(t), ˙ θ
m(t), and ˙ θ
b(t) to construct the state vector of the self-balancing robot as
x =
θ
mθ
bθ ˙
mθ ˙
b
. (2.1)
linearization as
˙
x(t) = A
cx(t) + B
cu(t) , (2.2)
where A
c=
0
2×2I
2×2− J
−1K − J
−1D
, B
c=
0
2×1J
−1ζ
, (2.3)
J =
J
11J
12J
21J
22
, D =
c 0
0 0
, K = M
bl g
0 0
0 − 1
, ζ =
a 0
, (2.4)
J
11= J
11′, (2.5)
J
12= J
12′+ M
blr , (2.6)
J
21= J
21′+ M
blr , (2.7)
J
22= J
22′+ 2M
blr . (2.8)
Using parameters in [9],[28],
M
w= 0 . 071 [kg] , M
b= 0 . 5392 [kg] , J
b= 2 . 16 × 10
−3[kg · m
2] , J
w= 8 . 63 × 10
−6[kgm
2] , J
m= 1 . 3 × 10
−7[kg · m
2] ,
l = 0 . 1073 [m] , r = 0 . 0249 [m] ,
c = 1 × 10
−4[kg · m
2/ s] , g
r= 30 , a = 6 . 28 × 10
−7[Nm / A] ,
and discretizing A
cand B
cusing a sampling period of 0 . 01s gives the ideal discrete- time model
=
1 . 0057 0 0 . 01 0
− 0 . 0207 1 − 0 . 0001 0 . 01
, =
− 0 . 0023 0 . 0146
.
0 0.2 0.4 0.6 0.8 1 -10
0 10
θm[deg]
0 0.2 0.4 0.6 0.8 1
0 50 100 150
θb[deg]
0 0.2 0.4 0.6 0.8 1
-6 -4 -2 0 2
˙θm[rad/s]
0 0.2 0.4 0.6 0.8 1
-20 0 20 40
˙ ˙θ[rad/s]b
0 0.2 0.4 0.6 0.8 1
time [s]
0 5 10
u
Figure 2.3: Simulation results with state feedback gain F
0.
0 1 2 3 4 5
time [s]
-0.04 -0.02 0 0.02 0.04
v
Figure 2.4: Exciting signal v used in Fig. 2.3.
to allow the standard pole placement method to be used such that
λ (A
0+ B
0F
0) = 0 . 8 , 0 . 9 , 0 . 9 ± 0 . 05 j . (2.11) Fig. 2.3 shows the simulation results with the ideal state feedback gain F
0. In the simulation, we used a random sequence v (k) ∼ N (0 , 0 . 1
2), as shown in Fig. 2.4.
Using this sampled data, we derived the pole placement gain F and the state-space
interval for identifying the linearized model. We denote the obtained gain F and the identified A and B using the subscripts 10, 50, and 90. The obtained gains were as follows:
F
10= [
50 . 8656 3 . 1287 7 . 5746 0 . 9511
] , (2.12)
F
50= [
32 . 2760 1 . 7722 4 . 3100 0 . 5209
] , (2.13)
F
90= [
32 . 2757 1 . 7605 4 . 3147 0 . 5209
] . (2.14)
We further calculated the identification errors as
∥ A
10− A
0∥ = 3028 . 6 , ∥ B
10− B
0∥ = 58 . 2747 , (2.15)
∥ A
50− A
0∥ = 4 . 8651 , ∥ B
50− B
0∥ = 0 . 0168 , (2.16)
∥ A
90− A
0∥ = 1 . 8343 × 10
−4, ∥ B
90− B
0∥ = 1 . 3032 × 10
−6. (2.17)
To evaluate the modeling errors, we defined
∆ A : = ∥ A ˜ − A ∥, ∆ B : = ∥ B ˜ − B ∥. (2.18)
where ( ˜ A , B) is the obtained model and (A ˜ , B) is the linearized model.
For pole location errors, we defined the accuracy measurement which has the maximum absolute di ff erence between each eigenvalue of (A + B F) and the corre- ˜ sponding p
j∈ Λ
ias
δλ : = max {|λ
j(A + B F) ˜ − p
j| p
j∈ Λ}, (2.19) where
Λ = p
1, · · · , p
n, (2.20)
2.3 Simulation results
For noiseless case, we firstly simulate the closed-loop response by using the ideal model; ideal feedback gain (2.10) and the random sequence of exciting signal for (1.2) that are assigned as uniform distribution U( − 0 . 02 , 0 . 02) . The simulation result can be seen on Fig. 2.5.
As i of I
ibecomes large, F
iconverges to the ideal F
0and (A
i, B
i) to the ideal (A
0, B
0). In Fig. 2.6, we can see the simulation results of identification errors of A and B, ∥ F
i− F
0∥ and max {∥ x(k) ∥ | k ∈ I
i} with increasing values of i. According to these figures, the identified errors converge to small values when i becomes large and it is starting around i = 90. This suggests that the accuracy of the identified model increases when the measurement data used in the proposed method becomes concentrated in the vicinity of the equilibrium point.
Fig. 2.7 shows the pole location errors in noiseless case when ‘ + ’ indicates the desired poles obtained by ideal feedback gain and ‘ ◦ ’ indicates those obtained by the derived feedback gain by data-driven pole placement method. For noisy condition, we set the exciting signal v (k) as uniform distribution U( − 0 . 05 , 0 . 05) and the measurement noises as Gaussian distribution N(0 , σ
2) , σ = 0 . 4 × 10
−7for θ
mand θ
b. Fig. 2.8 shows the initial response by measurement noise. Fig. 2.9 shows that the modeling errors and the pole location errors converges to small values. We can see that the eigenvalues by derived feedback gain shows fluctuations along and it may be because of the noises.
In Fig. 2.10, the pole location errors in the noisy case are shown while ‘ + ’ represents the desired poles obtained by ideal feedback gain and ‘ ◦ ’ represents those obtained by the derived feedback gain by data-driven pole placement method.
2.4 Summary
from the measurement data. At the same time, it can identify a state space model
of the controlled system. Using numerical simulations of a self-balancing robot
representing a nonlinear system, we demonstrated the accuracy of the method. We
conclude that (i) to obtain a more precise linearized model, the measured data far
from the equilibrium state must be discarded; (ii) as the state approaches equilib-
rium using state feedback, a more precise linearized model is obtained. Then, we
examined the ability of the method when the measurement data are contaminated
by noise. The obtained results by numerical simulations show degradation of iden-
tification of the state space model by noise. In addition, they show that the ideal
feedback gain cannot be obtained in the noisy environment. Although stabiliza-
tion can be achieved, to reduce the influence of noise is a key of its application to
adaptive control [12].
0 0.2 0.4 0.6 0.8 1 -10
0 10
0 0.2 0.4 0.6 0.8 1
-100 0 100
0 0.2 0.4 0.6 0.8 1
-5 0 5
0 0.2 0.4 0.6 0.8 1
-50 0 50
0 0.2 0.4 0.6 0.8 1
-5 0 5
0 0.2 0.4 0.6 0.8 1
time [s]
-0.02 0 0.02
Figure 2.5: Response by ideal state feedback gain F
0in noiseless case.
0 100 200 300 400 10-10
100 1010
0 100 200 300 400
10-10 100 1010
0 100 200 300 400
10-2 100 102
0 100 200 300 400
0.95 1
Figure 2.6: Identified results in noiseless case.
0.78 0.8 0.82 0.84 0.86 0.88 0.9 0.92
Re -0.06
-0.04 -0.02 0 0.02 0.04 0.06
Im
Figure 2.7: Pole locations in noiseless case (‘ + ’ indicates the desired poles obtained
by ideal feedback gain, ‘ ◦ ’ those obtained by derived feedback gain).
0 0.2 0.4 0.6 0.8 1 -10
0 10
0 0.2 0.4 0.6 0.8 1
-100 0 100
0 0.2 0.4 0.6 0.8 1
-5 0 5
0 0.2 0.4 0.6 0.8 1
-50 0 50
0 0.2 0.4 0.6 0.8 1
-5 0 5
0 0.2 0.4 0.6 0.8 1
time [s]
-0.05 0 0.05
Figure 2.8: Response by ideal state feedback gain F
0in noisy case.
0 100 200 300 400 10-10
100 1010
0 100 200 300 400
10-10 100 1010
0 100 200 300 400
10-2 100 102
0 100 200 300 400
0.95 1
Figure 2.9: Identified results in noisy case.
0.78 0.8 0.82 0.84 0.86 0.88 0.9 0.92
Re -0.06
-0.04 -0.02 0 0.02 0.04 0.06
Im
Figure 2.10: Pole locationsin noisy case (‘ + ’ indicates the desired poles obtained
by ideal feedback gain, ‘o’ those obtained by derived feedback gain).
Chapter 3
An improvement for noisy measurement data
3.1 Problem setup
In previous chapters, we have shown the simulation results to see how noise takes
e ff ects on the performance of data-driven pole placement method. Although total
least square (TLS) method was declared as an e ff ective method in [5], we can see
that dealing with noise in that method is still open. As every measurement of any
physical quantity becomes uncertain because of it, we design FIR prefilter to deal
with it e ff ectively. Then, we apply the least square and total least square in order
to get the best fit data together with the random exciting signal. We compare the
results before and after applying the designed prefilter by numerical results and
simulations. Then, to evaluate the response when we apply the di ff erent exciting
signal, we also introduce the charp exciting signal and compare the results.
Then, (1.7) becomes
T (x
0(k + 1) − ε (k + 1)) = A
dT (x
0(k) − T ε (k)) + B
du
0(k)
− B
dF(x
0(k) − ε (k)) . (3.2)
Hence, if (x
0(k) , u
0(k)) (k = i , . . . , i + N) satisfies the above equation,
T (X
0− E)P
1= A
dT (X
0− E)P
2+ B
dU
0− B
dF(X
0− E)P
2, (3.3) where
E = [
ε (i) ε (i + 1) · · · ε (i + N)
] . (3.4)
Then, the resulting linear equation is given as
( X + ∆X ) η = U + ∆U, (3.5)
where the e ff ect of the noise is
∆X = − S
1⊗ (EP
1)
⊤− S
2⊗ (EP
2)
⊤, (3.6)
and ∆U is the equation error. Following [5], we can solve η ∈ R
(n+m)nto (3.5) as a TLS problem [27], by minimizing the Frobenius norm [
∆X ∆U ]
F. It is known that the TLS solution is given as
η = − 1
V
22V
12, (3.7)
based on the singular value decomposition [
X U ]
= [
U
1U
2]
Σ
10
0 Σ
2
V
11V
12V
21V
22
⊤
, (3.8)
where these matrices are partitioned into blocks corresponding to X and U . Here, we assume that there exists M > 0 such that
1 ∑
Mε + ≈ ,
for the matrix
Φ = 1 M
1 0 · · · 0 ... ... ... ...
1 ... 0
0 ... 1
... ... ... ...
0 · · · 0 1
∈ R
N×(N−M+1), (3.11)
where each column has M elements of 1. Therefore,
T X ˜
0P
1= A
dT X ˜
0P
2+ B
dU ˜
0− B
dF X ˜
0P
2(3.12) where
X ˜
0= X
0Φ, U ˜
0= U
0Φ. (3.13)
This multiplication by Φ represents the prefiltering of signals via a Mth order FIR filter.
When the systems (1.1) and (1.4) are driven by the exciting signal, we have
(X
0− E)P
1= A(X
0− E)P
2+ BU
0, (3.14)
U
0= F(X
0− E)P
2+ V , (3.15)
X
d= T (X
0− E)P
2, (3.16)
X
dP
1= A
dX
dP
2+ B
dV , (3.17)
where X
d= [
x
d(i) x
d(i + 1) · · · x
d(i + N )
] , (3.18)
V = [
v (i) x(i + 1) · · · v (i + N − 1)
] . (3.19)
By applying Φ to these systems, we obtain
Figure 3.1: Coordinates of the self-balancing robot.
Here, if V Φ ≈ 0, (3.12) cannot be satisfied. Hence, for all i, 1
M
∑
Mj=1
v (i + j) , 0 (3.24)
must be satisfied.
3.3 Numerical example: self-balancing robot
We applied the data-driven pole placement method to the model of a 3D self- balancing robot [9, 28] shown in Fig. A.1.
3.3.1 Linear model and feedback gain
By defining the state vector
x
1(t) =
x
a(t)
˙ x
a(t)
=
θ
w(t) θ
b(t) θ ˙
w(t) θ ˙
b(t)
, x
2(t) =
x
b(t)
˙ x
b(t)
=
ϕ (t) ϕ ˙ (t)
, (3.25)
where
A
c1=
0
2×2I
2− J
1−1K
1− J
1−1D
1
, B
c1=
0
2×1b
vJ
1−1
1
− 1
,
A
c2=
0 1
0 − J
2−1D
2
, B
c2=
0
b
vd r J
2−1
.
Then, the feedback can be independently designed as
u
1= F
1x
1+ v
1, u
2= F
2x
2+ v
2. (3.27)
Note that this can be more succinctly represented as
˙
x(t) = A
cx(t) + B
cu(t) , u(t) = F x(t) , x(t) =
x
1(t) x
2(t)
, (3.28)
A
c=
A
c10
4×20
2×4A
c2
, B
c=
B
c10
4×10
2×1B
c2
, F =
F
10
1×20
1×4F
2
. (3.29)
When the parameters
g = 9 . 81 [m / s
2] , M
b= 0 . 5 [kg] , M
w= 0 . 07 [kg] , r = 0 . 025 [m] , J
w= 8 . 75 × 10
−5[kg · m
2] , w = 2d = 0 . 12 [m] , l = 0 . 1073 [m] ,
J
b= 6 . 7 × 10
−3[kg · m
2] , J
ϕ= 6 × 10
−4[kg · m
2] ,
J
m= 1 . 3 × 10
−4[kg · m
2] , R
m= 0 . 035 [ Ω ] , K
e= 0 . 02 [V · s / rad] ,
K
t= K
e[N · m / A] , g
r= 30 , d
m= 0 . 0022 , d
w= 0 ,
where
A
1=
1 0 . 1719 0 . 0226 0 . 0830 0 1 . 1722 0 . 0113 0 . 0944 0 3 . 5363 0 . 1388 1 . 0332 0 3 . 5299 0 . 1386 1 . 0336
, B
1=
0 . 0641
− 0 . 0094 0 . 7131
− 0 . 1148
,
A
2=
1 0 . 0113
0 0 . 0001
, B
2=
0 . 0306
0 . 3450
. (3.31)
Here, we assume that the exact values of (3.31) are not available, but that uncertain values are available:
A
1=
1 0 . 1897 0 . 0218 0 . 0844 0 1 . 1900 0 . 0115 0 . 0947 0 3 . 9115 0 . 1408 1 . 0489 0 3 . 9151 0 . 1407 1 . 0492
, B
1=
0 . 0648
− 0 . 0095 0 . 7115
− 0 . 1165
,
A
2=
1 0 . 0103
0 0 . 0001
, B
2=
0 . 0310
0 . 3450
. (3.32)
The coe ffi cients can be derived from J
1, J
2, with an assumed uncertainty of 10%. By applying linear quadratic optimal control theory to (3.32), the desired closed-loop pole locations can be chosen as
λ (A
1+ B
1F
1) ∈ Λ
1= { 6 . 0355 × 10
−5, 0 . 5253 , 0 . 5745 , 0 . 7630 }, (3.33) λ (A
2+ B
2F
2) ∈ Λ
2= { 6 . 0426 × 10
−5, 0 . 7835 }, (3.34) and the initial feedback gains needed to obtain datasets for the data-driven pole placement as
F
1= [
1 . 5216 124 . 181 2 . 3915 18 . 3089
] , F
2= [
− 6 . 2764 − 0 . 0646
] .
(3.35)
-0.2 0 0.2
-0.02 0 0.02
0 10 20 30 40 50
time [s]
(a) -0.02
0 0.02
-0.2 0 0.2
-0.02 0 0.02
0 10 20 30 40 50
time [s]
(b) -0.02
0 0.02
Figure 3.2: (a) Measurement noise (b) Prefiltered measurement noise.
Measurement noise was prepared with the Gaussian distribution N (0 , σ
2), where σ
2= 1 . 0 × 10
−3, 1 . 0 × 10
−4, and 1 . 0 × 10
−4in θ
w, ˙ θ
b, and ϕ , respectively. This is shown in Fig. 3.2(a). We used the random exciting signal v shown in Fig. 3.3(a), with the uniform distribution v
1(k) ∼ U( − 0 . 5 , 0 . 5) and v
2(k) ∼ U( − 0 . 1 , 0 . 1), and the linear chirp signal v (k) shown in Fig. 3.3(b). We set the order of the prefilter Φ (3.11) as M = 6. After prefiltering, the measurement noise in θ
w, ˙ θ
b, and ϕ was reduced, as shown in Fig. 3.2(b). Fig. 3.3(b) and Fig. 3.3(d) show the prefiltered exciting signals. It can be seen that the exciting signals v were not eliminated by the prefilter Φ , but that the high-frequency elements were reduced.
Fig. 3.4 shows a closed-loop response by state feedback (3.27), with initial gain (3.35), in the presence of measurement noise. Fig. 3.4(a) and Fig. 3.4(b) show the response to the random exciting signal and the chirp exciting signal, respectively.
Of particular note is that the responses of θ
b, ˙ θ
w, and ˙ θ
bseen in Fig. 3.4(b) showed the high-pass filter like gain characteristics of the transfer function from v to x.
For comparison, the dataset for the data-driven pole placement was chosen as
-0.5 0 0.5
0 10 20 30 40 50
time [s]
(a) -0.1
0 0.1
-0.5 0 0.5
0 10 20 30 40 50
time [s]
(c) -0.1
0 0.1
-0.5 0 0.5
0 10 20 30 40 50
time [s]
(b) -0.1
0 0.1
-0.5 0 0.5
0 10 20 30 40 50
time [s]
(d) -0.1
0 0.1
Figure 3.3: Exciting signal v (a) random (b) chirp (c) prefiltered random (d) pre- filtered chirp.
To evaluate the obtained model ( ˜ A , B), the following identification errors were used: ˜
∆ A
i: = ∥ A ˜
i− A
i∥, ∆ B
i: = ∥ B ˜
i− B
i∥, (3.37) δλ (A
i) : = max {|λ
j(A
i) − λ
j( ˜ A
i) |}. (3.38) The eigenvalues λ
jwere sorted by magnitude using the MATLAB command “sort”.
This further sorts the elements of equal magnitude by the phase angle on the interval ( −π, π ]. The impulse response G(z) = (zI − A) ˜
−1B ˜ was used to evaluate the model obtained, as follows:
∆ G
i: =
v t
10∑
k=0
∥ x
A˜i,B˜i(k) − x
Ai,Bi(k) ∥
2, (3.39)
where x
A˜i,B˜iand x
Ai,Biare the impulse responses of G
i(z) : = (zI − A ˜
i)
−1B ˜
iand G(z) : = (zI − A)
−1B, respectively.
From the perspective of system control, smaller is better, particularly in the case
-20 0 20
-0.5 0 0.5
-50 0 50
-10 0 10
-1 0 1
-5 0 5
-2 0 2
0 10 20 30 40 50
time [s]
(a) -0.2
0 0.2
-20 0 20
-0.5 0 0.5
-50 0 50
-10 0 10
-1 0 1
-5 0 5
-2 0 2
0 10 20 30 40 50
time [s]
(b) -0.2
0 0.2
Figure 3.4: Closed-loop response by an initial state feedback via (a) random excit- ing signal v (b) chirp exciting signal v .
2. The results when using the LS method to solve linear equation (3.5) for noise-
less data are shown in Table 3.1(a). All errors were reasonably small, con-
firming that the data-driven method performs well when the measurement
data (x
0(k) , u
0(k)) are noiseless.
shown in Table 3.1(c). The errors were significantly smaller than those re- ported in [5], using the LS method.
5. The results when applying prefiltering (PF) and using the TLS method to solve linear equation (3.5) are shown in Table 3.1(d). The prefilter further reduced the errors, in particular, the pole placement error δλ (A
d1) and the impulse response error ∆ G
1.
6. The results when applying PF and using the TLS method to solve the linear equation (3.5), but with v as the chirp signal, are shown in Table 3.1(e).
No significant improvement in error rates was found with respect to A
2when using the chirp exciting signal. However, the errors with respect to A
1became significantly worse than when a random exciting signal was used. This was assumed to be because A
1has an unstable eigenvalue of 1 . 7838. We conclude that a random exciting signal is more appropriate than a chirp exciting signal when using data-driven methods.
We finally compared the pole locations obtained, as shown in Fig. 3.5. As can be seen, a better performance was achieved when using the random exciting signal.
-0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8
Re -0.2
0 0.2
Im
-0.1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
Re -0.1
0 0.1
Im
Table 3.1: Comparison of errors.
(initial) (a) (b) (c) (d) (e)
noise - noiseless noisy noisy noisy noisy
method - LS LS TLS TLS + PF TLS + PF
exciting sig. - Random Random Random Random Chirp δλ (A
d1) 0.2426 0.0007 0.4597 0.1367 0.0466 1.2530
∆ A
10.5317 0.0016 36.295 1.6678 1.8763 17.246
∆ B
10.0025 0.0000 0.3400 0.0481 0.0415 0.2932 δλ (A
1) 0.0511 0.0000 0.3920 0.0194 0.0177 0.4695
∆ G
142.333 0.0082 629.67 44.718 29.324 106.04 δλ (A
d2) 0.0029 0.0000 0.0092 0.0024 0.0007 0.0017
∆ A
20.0001 0.0000 0.0288 0.0064 0.0005 0.0007
∆ B
20.0004 0.0000 0.0031 0.0002 0.0002 0.0002 δλ (A
2) 0.0001 0.0000 0.0090 0.0012 0.0004 0.0001
∆ G
20.0036 0.0002 0.0525 0.0073 0.0019 0.0019
3.4 Summary
In this study, we evaluated di ff erent approaches to reducing the e ff ect of measure-
ment noise in data-driven pole placement methods for deriving a state space model
and pole placement state feedback. Using numerical simulations of a self-balancing
robot, which is a nonlinear system, we demonstrated the important role that pre-
filtering can play in reducing the interference caused by noise. Again using numer-
ical simulation, we compared the use of two exciting signals: a random signal and
a chirp signal. The use of a random exciting signal was found to be more e ff ective
with our proposed method. Further developments are needed in the methods used
Chapter 4
Real-time data-driven pole placement
4.1 Problem setup
As we saw in Chapter 2, the simulation results based on o ff -line tuning on data- driven pole placement method are given. Based on that results, we investigate the ability of real-time update of the linearized state-space model to use data-driven pole placement in this chapter. To a way to adaptive control, we extend from o ff - line tuning to on-line tuning approach.
The measured data have to be su ffi ciently rich to confirm the non-singularity of vector T , and it is essential that for an index i,
rank
X
0U
0
= rank
x
0(i) · · · x
0(i + n + m − 1) u
0(i) · · · u
0(i + n + m − 1)
= n + m . (4.1) Since the size of X is nN × (n + m)n, X will be square when N = n + m.
Therefore, we can calculate η uniquely when X is nonsingular. As an instance, for
the single input case (m = 1),
0 0.2 0.4 0.6 0.8 1 -10
0 10
0 0.2 0.4 0.6 0.8 1
-200 0 200
0 0.2 0.4 0.6 0.8 1
-5 0 5
0 0.2 0.4 0.6 0.8 1
-50 0 50
0 0.2 0.4 0.6 0.8 1
-10 0 10
0 0.2 0.4 0.6 0.8 1
time [s]
-0.05 0 0.05