### [lecture #1] 2014.9.11 outline of the lecture, review of classical and modern control theory (1/3) †

• review
• equation of motion
• transfer function
• state space representation
• eigenvalue and pole

### [lecture #2] 2014.9.18 CACSD introduction with review of classical and modern control theory (2/3) †

1. introduction of Matlab and Simulink text_fixed.pdf Basic usage of MATLAB and Simulink used for 情報処理演習及び考究II/Consideration and Practice of Information Processing II: Advanced Course of MATLAB
2. How to define open-loop system
1. TF
s = tf('s');
T1 = 1 / (s+1);
T2 = 1 / (s^2 + 0.1*s + 1);
2. SSR
A = [-0.3, -1; 1, 0];
B = [1; 0];
C = [0, 1];
D = 0;
S3 = ss(A, B, C, D);
• Bode plot
bode(T1, 'b-', T2, 'g', S3, 'r--');
grid on;
3. open-loop stability can be checked by
1. poles of TF
roots(T2.den{:})
2. eigenvalues of A-matrix in SSR
eig(S3.a)
3. also by simulation
4. closed-loop stability
L = 1/(s^3+1.5*s^2+1.5*s+1); % example of open-loop system
roots(L.den{:}) % confirm the open-loop system is stable 
1. graphical test by Nyquist stability criterion and Bode plot with GM(gain margin) and PM(phase margin)
nyquist(L)
bode(L)
2. numerical test by closed-loop system
clp_den = L.den{:} + L.num{:};
roots(clp_den)
3. simulation
%-- 9/18/2014 1:06 PM --%
t = [1 2 3]
u = [1;2;3]
V = [1 2 3; 4 5 6; 7 8 9]
t'
t'*t
who
k=0:0.1:10:
k=0:0.1:10;
y = sin(k);
whos
plot(x,y)
plot(k,y)
foo
print -djpeg sin.jpg
s = tf('s');
T1 = 1/(s+1)
T2 = 1/(s^2+0.1*s+1);
A = [-0.3, -1; 1, 0];
B = [1; 0];
C = [0, 1];
D = 0;
S3 = ss(A, B, C, D);
A
B
S3
bode(T1, 'b-', T2, 'g', S3, 'r--');
grid on;
T2
T3 = tf(S3);
T3
T2
T2.num
T2.num{:}
T2.den{:}
roots(T2.den{:})
S3
S3.a
eig(S3.a)
mod0918_1
bode(T1, 'b-', T2, 'g', S3, 'r--');
grid on;
roots(L.den{:})
L
L = 1/(s^3+1.5*s^2+1.5*s+1);
L
roots(L.den{:})
nyquist(L)
bode(L)
grid on
nyquist(L)
L
clp_den = L.den{:} + L.num{:};
clp_den
roots(clp_den)
mod0918_2

### [lecture #3] 2014.9.25 CACSD introduction with review of classical and modern control theory (3/3) †

1. LQR problem
• controllability
• cost function J >= 0
• (semi)-positive definiteness
2. solution of LQR problem
3. example mod0925.mdl
A = [1, 2; 0, -1]; % unstable plant
B = [0; 1];
Uc = ctrb(A,B);
det(Uc) % should be nonzero
C = eye(2); % dummy
D = zeros(2,1); % dummy
F = [0, 0]; % without control
x0 = [1; 1]; % initial state
Q = eye(2);
R = 1;
P = are(A, B/R*B', Q);
P-P' % should be zero
eig(P) % should be positive
F = R\B'*P;
%-- 9/25/2014 2:17 PM --%
A = [1, 2; 0, -1]; % unstable plant
B = [0; 1];
Uc = ctrb(A,B);
Uc
det(Uc)]
det(Uc)
C = eye(2); % dummy
D = zeros(2,1); % dummy
F = [0, 0]; % without control
x0 = [1; 1]; % initial state
mod0925
Q = eye(2);
R = 1;
P = are(A, B/R*B', Q);
P-P' % should be zero
eig(P) % should be positive
F = R\B'*P;
F
J
x0
x0'*P*x0 whiteboard #1 ... sorry for the mistake in Uc ! The correct one is $U_c := \left[\begin{array}{ccccc} B & AB & A^2 B & \cdots & A^{n-1} B \end{array}\right]$

### [lecture #4] 2014.10.2 Intro. to robust control theory (H infinity control theory) 1/3 †

1. review map_v1.0_intro1.pdf
2. explicit consideration of plant uncertainty ---> robust control theory
2. Typical design problems of H infinity control theory
1. robust stabilization
2. performance optimization
3. robust performance problem (robust stability and performance optimization are simultaneously considered)
3. H infinity norm
• definition
• example
4. H infinity control problem
• definition
5. performance optimization example : reference tracking problem
%-- 10/2/2014 12:57 PM --%
ex1002_1
ex1002_2
s = tf('s')
T1 = 1/(s+1)
norm(T1,inf)
T2 = s/(s+1)
norm(T2,inf)
bode(T1)
T3 = 10/(s+2)
bode(T3)
ex1002_1
ex1002_2
K
K_hinf
ex1002_2
eig(K_hinf.a)

### [lecture #5] 2014.10.09 Intro. to Robust Control Theory (H infinity control theory) 2/3 †

1. Typical design problems
1. robust stabilization
2. performance optimization
3. robust performance problem (robust stability and performance optimization are simultaneously considered)
2. connection between [H infinity control problem] and [robust stabilization problem]
• small gain theorem
• normalized uncertainty \Delta
• sketch proof ... Nyquist stability criterion
3. How to design robust stabilizing controller with H infinity control problem ?
%-- 10/9/2014 1:01 PM --%
ex1009_1
ex1009_2
ex1009_3
mod1009
c

### [lecture #6] 2014.10.16 Intro. to robust control theory (H infinity control theory) (3/3) †

1. review
• robust stabilization ... (1) ||WT T||_inf < 1 (for multiplicative uncertainty)
• performance optimization ... (2) ||WS S||_inf < gamma -> min
• mixed sensitivity problem ... simultaneous consideration of stability and performance
2. a sufficient condition for (1) and (2) ... (*) property of maximum singular value
3. definition of singular value
4. mini report #1
• write by hand
• submit at the beginning of next lecture on 23 Oct.
• check if your answer is correct or not before submission by using Matlab
• You will have a mini exam #1 related to this report on 30 Oct.
5. meaning of singular value ... singular value decomposition (SVD)
6. proof of (*)
7. example
%-- 10/16/2014 1:00 PM --%
M = [j, 0; -j, 1]
M
svd(M)
sqrt((3+sqrt(5))/2)
M'
M'*M
ex1016

### [lecture #7] 2014.10.23 review of SVD, robust performance problem 1/3 (motivation of robust performance) †

%-- 10/23/2014 12:58 PM --%
ex1023_1
A
S
V
V'*V
V'*V(:,1)
ex1009_1
ex1009_2
ex1023_2
ex1023_3
• Q1: Is H infinity control theory available for discrete-time system ?
• A1: The answer is yes. You can use the same tool hinfsyn in Matlab to design discrete-time controller. If the question is to ask how to implement digital (discrete-time) controller for given continuous-time plant, there are 3 ways to do this: (i) continuous-time H infinity control based design (continuous-time controller is designed, then it is discretized); (ii) discretized H infinity control design (continuous-time plant is discretized first, then discrete-time controller is designed); (iii) sampled-data H infinity control design (discrete-time controller is directly designed for continuous-time plant)

### [lecture #8] 2014.10.30 Robust performance problem (2/3) †

1. return of mini report #1
2. review of the limitation of mixed sensitivity problem
3. diffinition of robust performance (R.P.) problem (cf. nominal performance problem on white board #6 in photo #4 of lecture #4) ... S is changed to S
4. review of robust stability (R.S.) problem on white board #5 in photo #5 of lecture #3 ... robust stability against Delta <=> closed-loop system without Delta has less-than-or-equal-to-one H infinity norm (by small gain theorem)
5. equivalent R.P. problem with structured uncertainty Delta_hat
6. a conservative problem to R.P. with 2-by-2 unstructured uncertainty Delta_tilde
7. Delta_tilde is larger set than Delta_hat ... conservativeness
8. mini exam #1 exam1.pdf
%-- 10/30/2014 1:10 PM --%
ex1023_2
ex1023_3
gam_opt
ex1030_1
gam_opt

### [lecture #9] 2014.11.13 Robust performance problem (3/3) †

%-- 11/13/2014 12:58 PM --%
ex1023_2
gam_opt
ex1023_3
ex1030_1
gam_opt
ex1113
ex1113_1
gam_opt
ex1113_2

### [lecture #10] 2014.11.20 Robust performance problem (1/3) (cont.) †

• review - effect of scaling
• mini report #2
• write by hand
• submit at the beginning of next lecture on 27 Nov.
• check if your answer is correct or not before submission by using Matlab
• You will have a mini exam #2 related to this report on 4 Dec.
• how to obtain generalized plant by hand
• example: H infinity controller design by hand
%-- 11/20/2014 1:11 PM --%
ex1023_2
ex1023_3
ex1030_1
ex1030_2
k
ex1113_1
ex1113_2
k
Delta_hat

### [lecture #11] 2014.11.27 relation between H infinity control and modern control theory †

%-- 11/27/2014 1:51 PM --%
ex1127
1/sqrt(2)
ex1127
2*(sqrt(2)-1)
mod1127
x0 = 0
h = 1
f = 1
zz
ww
• Q: $\dot x, z$ の導出過程（ホワイトボード◯2）がわからなかった
• A: $\left[ \begin{array}{c} w \\ u \end{array} \right], \left[ \begin{array}{c} z \\ y \end{array} \right]$ をそれぞれ入力、出力とする一般化プラント $G = \left[ \begin{array}{c|c} A & B \\ \hline C & D \end{array} \right]$ に対して、次式が成り立ちます。 $\dot x = A x + B \left[ \begin{array}{c} w \\ u \end{array} \right]$ $\left[ \begin{array}{c} z \\ y \end{array} \right] = C x + D \left[ \begin{array}{c} w \\ u \end{array} \right]$ ただし、x は G の状態で、 $A = a = -1, \quad B = \left[ \begin{array}{cc} 1 & b \end{array} \right] = \left[ \begin{array}{cc} 1 & 1 \end{array} \right], \quad C = \left[ \begin{array}{c} \sqrt{q} \\ 0 \\ 1 \end{array} \right] = \left[ \begin{array}{c} 1 \\ 0 \\ 1 \end{array} \right], \quad D = \left[ \begin{array}{cc} 0 & 0 \\ 0 & \sqrt{r} \\ 0 & 0 \end{array} \right] = \left[ \begin{array}{cc} 0 & 0 \\ 0 & 1 \\ 0 & 0 \end{array} \right]$ です。状態空間表現の表記によります。これと、u = -f x より、導出されます。

### [lecture #12] 2014.12.4 relation between H infinity control and modern control theory (cont.); Speed control of two inertia system with servo motor (1/4)†

%-- 12/4/2014 1:28 PM --%
ex1127
mod1127
x0 = 0
h = 1
f = 1
ww
zz
h = 10
ww
zz
h = 50
zz
h
zz

### [lecture #13] 2014.12.11 Robust control design for a practical system : Speed control of two inertia system with servo motor (1/3) †

%-- 12/11/2014 1:24 PM --%
ex1211_1
frdata
frdata(:,1)
P1_jw
P1_g
ex1211_1
• Q: What is the inertia moment of the load disk ?
• A: It is about 0.0002 (kg m^2) (60mm in diameter, 16mm in inner diameter, 20mm in thick, made by SS400)
• Q: 周波数応答実験について、定常応答になるのにどのくらい待っているか？音が大きくなるのはゲインが高いから？周波数変化のきざみは？
• A: 待ち時間は3秒です。音の発生源はよくわかりませんし、騒音計などで計測したこともありませんが、大きな音が聞こえるのは共振周波数付近です。周波数変化の刻みは常用対数で0.01です。以下に掲載するプログラムソースの freqresp.h 中で指定しています。

### [lecture #14] 2014.12.18 Robust control design for a practical system : Speed control of two inertia system with servo motor (2/3) †

1. design your controller(s) so that the system performance is improved compared with the design example above
2. Draw the following figures and explain the difference between two control systems (your controller and the example above):
1. bode diagram of controllers
2. gain characteristic of sensitivity function
3. time response of control experiment
3. Why is the performance of your system improved(or unfortunately deteriorated)?
• due date: 9th(Fri) Jan 17:00
• submit your report(pdf or doc) by e-mail to kobayasi@nagaokaut.ac.jp
• You can use Japanese
• maximum controller order is 20
• submit your cont.dat, cont_order.dat, and cont.mat to kobayasi@nagaokaut.ac.jp not later than 26th(Fri) Dec

participant list2014

%-- 12/18/2014 1:01 PM --%
freqresp
nominal
help fitfrd
weight
cont
help c2d
perf

### [lecture #15] 2014.12.25 Robust control design for a practical system : Speed control of two inertia system with servo motor (3/3) †

• preparation of your own controller(s)
%-- 12/25/2014 12:58 PM --%
who
K_opt
who
Kd
who
Ghat
plot(result(:,1), result(:,2))
plot(result(:,1), result(:,3))
who
bode(K_opt)
bode(Kd)
Kd1 = Kd
K_opt1 = K_opt
bode(K_example, 'b', K_opt, 'r')