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

• review

... missed (derivation of G(s) = 1/(ms^2+cs+k) by Laplace transformation from given equation of motion)

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

1. introduction of Matlab and Simulink
2. How to define open-loop system
1. TF
s = tf('s');
G1 = 1 / (s+1);
G2 = 1 / (s^2 + 0.1*s + 1);
2. SSR
A = [-0.3, -1; 1, 0];
B = [1; 0];
C = [0, 1];
D = 0;
G3 = ss(A, B, C, D);
• Bode plot
bode(G1, 'b-', G2, 'g', G3, 'r--');
grid on;
3. open-loop stability can be checked by
1. poles of TF
roots(G2.den{:})
2. eigenvalues of A-matrix in SSR
eig(G3.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
a = 1
ver
t = [1 2 3]
pwd
ls
foo
pwd
bar
s = tf('s')
G1 = 1 / (s+1);
G2 = 1 / (s^2 + 0.1*s + 1);
G1
G2
A = [-0.3, -1; 1, 0];
B = [1; 0];
C = [0, 1];
D = 0;
G3 = ss(A, B, C, D);
G3
bode(G1, 'b-', G2, 'g', G3, 'r--');
grid on;
G2
G2.den
G2.den{:}
roots(G2.den{:})
G3.a
eig(G3.a)
mod0912_1
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
nyquist(L)
nyquist(L*1.25)
nyquist(L)
clp_den = L.den{:} + L.num{:};
roots(clp_den)
ex0912_2
mod0912_2
L = 1.5*L

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

1. LQR problem
2. ARE and quadratic equation
3. (semi)-positive definiteness
4. example
mod0919
A = [1, 2, 3; 4, 5, 6; 7, 8, 9]
eig(A)
B = [1; 1; 1]
Uc = ctrb(A, B)
det(Uc)
B = [1; 0; 0]
Uc = ctrb(A, B)
det(Uc)
help are
P = are(A, B/R*B', Q)
Q = eye(3)
R = 1
P = are(A, B/R*B', Q)
P = are(A, B*inv(R)*B', Q)
P - P'
eig(P)
x(0)
x0 = [1; 1; 1]
x0'*P*x0
F = R\B'*P
C = eye(3)
D = [0; 0; 0]
J

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

1. Typical design problems
1. robust stabilization
2. performance optimization
3. robust performance problem (robust stability and performance optimization are simultaneously considered)
2. H infinity norm
• definition
• example
3. H infinity control problem
s = tf('s')
G = 1/(s+1)
norm(G, 'inf')
G = s/(s+1)
norm(G, 'inf')
G = 1/(s^2+0.1*s+1)
bodemag(G)
norm(G, 'inf')
bodemag(G, 'b', ss(10.0125), 'r--')
G = 1/(s^2+0.5*s+1)
norm(G, 'inf')
bodemag(G, 'b', ss(2.0656), 'r--')
ex0926_1
ex0926_2
eig(K_hinf)

[lecture #5] 2013.10.10 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 ?
ex1010_1
ex1010_2
WT]
WT
P0
P0_jw
ex1010_3
mod1010

[lecture #6] 2013.10.17 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
5. meaning of singular value ... singular value decomposition (SVD)
6. proof of (*)
7. example
j
A = [1, j; 0, 2]
A'
eig(A'*A)
sqrt(ans)
3+sqrt(5)
sqrt(3+sqrt(5))
sqrt(3-sqrt(5))
A
[U,S,V] = svd(A)
U'*U
U*U'
help svd
ex1017

... sorry for missing to take photo ... mini report #1: write by hand; submit at the beginning of the next lecture; You will have a mini exam #1 related to this report on 31st Oct.

ex1024_1
ex1024_2
ex1024_3
ex1024_4

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

1. review of mini report #1
2. review of the limitation of mixed sensitivity problem
3. a solution of conservative design
4. mini exam #1
%-- 10/31/2013 1:02 PM --%
A = [j, 0; -j, 0]
A = [j, 0; -j, 1]
svd(A)
sqrt((3+sqrt(5))/2)
sqrt((3-sqrt(5))/2)
ex1024_2
ex1024_3
ex1024_4
ex1031_1

ex1024_2
ex1024_3
ex1024_4
ex1024_5
ex1031_1
gam
ex1024_3
gam
ex1031_2
help lft
ex1031_2
ex1031_1
ex1031_2

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

• effect of scaling
• mini report #2
• practical design procedure
• derivation of generalized plant in SSR for mixed sensitivity problem
ex1024_2
ex1024_3
gam
ex1024_4
ex1031_1
gam
ex1031_2
ex1114_1
gam

[lecture #12] 2013.12.5 Robust control design for a practical system : Active vibration control of a pendulum using linear motor (1/3) †

• review of report #2
• introduction of experimental setup
• linear motor : Oriental motor EZC4D005M-A / stepping motor, 0.01mm = 1pulse, stroke 50mm (= 5000 pulse), thrust 70N, speed(max)600mm/s (but used as 400mm/s max with pulse_module.c which generates a pulse every 25us)
• Potentio meter : Midori Precisions Model QP-2H / input:5V, output:0-4.17V for 90 deg (experimentally measured)
• PC : Dell PowerEdge840 (RTAI3.6.1/Linux kernel 2.6.20.21)
• Parallel input and output board : CONTEC PIO-32/32T(PCI) / 32bit 200ns (connected to linear motor)
• A/D : CONTEC AD12-16 (PCI) 12bit, 10us
• Objective of control system
1. to attenuate vibration due to pendulum oscillation
2. robust stability against modelling error due to plant variation and non-linear dynamics etc.

[lecture #13] 2013.12.12 Robust control design for a practical system : Active vibration control of a pendulum using linear motor (2/3) †

• control objective
• design example 1 : proportional control
• design example 2 : H infinity control (nominal performance, physical model is used as nominal plant)
• design example 3 : H infinity control (nominal performance, nominal plant is derived from freq. resp. exp.)
• design example 4 : H infinity control (robust performance)
• report
1. design your controller(s) so that the system performance is improved compared with the design example 3 (ex3) example 2 (ex2)
2. Draw the following figures and explain the difference between two control systems (your controller and ex3 ex2):
1. bode diagram of controllers
2. gain characteristic of closed-loop systems
3. time response of control experiment
3. Why is the performance of your system improved(or unfortunately decreased)?
• due date: 31th(Tue) Dec 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(Thu) Dec

[lecture #14] 2013.12.19 Robust control design for a practical system : Active vibration control of a pendulum using linear motor (3/3) †

• review of the design examples

[IMPORTANT] Due to unavailability of n4sid in IPC which is used in cont_ex3.m, please compare your controller and example 2 (not 3) in your report. The explanation of the report has been modified due to this change. See above.

• preparation of your own controller(s)

participant list2013

freqresp_fixed
frdata
check_pcont
weight_ex2
freqresp_fixed
weight_ex2
cont_ex2
nominal_ex3
weight_ex4
cont_ex4
compare

[lecture #15] 2013.12.26 Robust control design for a practical system : Active vibration control of a pendulum using linear motor (cont.) †

• preparation of your own controller(s)

Last-modified: 2013-12-25 (水) 09:03:07 (2122d)