授業/制御工学特論2014
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[授業]]
*Advanced Automation [#we2e9bed]
** &color(green){[]}; 2014.9.4 cancelled [#n7818221]
** &color(green){[lecture #1]}; 2014.9.11 outline of the ...
- outline of this lecture
-- syllabus
-- evaluation
--- mini report #1 ... 10%
--- mini exam #1 ... 10%
--- mini report #2 ... 10%
--- mini exam #2 ... 10%
--- final report ... 60%
-- map
#ref(map_v1.0_review.pdf);
- review
-- equation of motion
-- transfer function
-- state space representation
-- eigenvalue and pole
#ref(2014.09.11-1.jpg,left,noimg,whiteboard #1);
#ref(2014.09.11-2.jpg,left,noimg,whiteboard #2);
#ref(2014.09.11-3.jpg,left,noimg,whiteboard #3);
#ref(2014.09.11-4.jpg,left,noimg,whiteboard #4);
#ref(2014.09.11-5.jpg,left,noimg,whiteboard #5);
#ref(2014.09.11-6.jpg,left,noimg,whiteboard #6);
** &color(green){[lecture #2]}; 2014.9.18 CACSD introduct...
+ introduction of Matlab and Simulink
&ref(text_fixed.pdf); Basic usage of MATLAB and Simulink ...
//
+ How to define open-loop system
//
++ &color(black,cyan){TF};
s = tf('s');
T1 = 1 / (s+1);
T2 = 1 / (s^2 + 0.1*s + 1);
++ &color(black,lightgreen){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;
//
+ open-loop stability can be checked by
//
++ &color(black,cyan){poles of TF};
roots(T2.den{:})
++ &color(black,lightgreen){eigenvalues of A-matrix in SS...
eig(S3.a)
++ also by simulation
#ref(mod0918_1.mdl);
//
+ 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
//
++ graphical test by &color(black,yellow){Nyquist stabili...
nyquist(L)
//
bode(L)
++ numerical test by closed-loop system
clp_den = L.den{:} + L.num{:};
roots(clp_den)
++ simulation
#ref(mod0918_2.mdl);
%-- 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
#ref(2014.09.18-1.jpg,left,noimg,whiteboard #1);
#ref(2014.09.18-2.jpg,left,noimg,whiteboard #2);
** &color(green){[lecture #3]}; 2014.9.25 CACSD introduct...
+ LQR problem
-- controllability
-- cost function J >= 0
-- (semi)-positive definiteness
+ solution of LQR problem
-- ARE and quadratic equation
-- closed loop stability ... Lyapunov criterion
-- Jmin
&ref(proof4.pdf); (from B%%4%%3「動的システムの解析と制御...
+ example
&ref(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
&ref(2014.09.25-1.jpg,left,noimg,whiteboard #1); ... sorr...
\[ U_c := \left[\begin{array}{ccccc} B & AB & A^2 B & \cd...
#ref(2014.09.25-2.jpg,left,noimg,whiteboard #2);
#ref(2014.09.25-3.jpg,left,noimg,whiteboard #3);
#ref(2014.09.25-4.jpg,left,noimg,whiteboard #4);
** &color(green){[lecture #4]}; 2014.10.2 Intro. to robus...
+ review &ref(map_v1.0_intro1.pdf);
++ advantage and disadvantage of the modern control theory
++ explicit consideration of plant uncertainty ---> robus...
//
+ Typical design problems of H infinity control theory
++ robust stabilization
++ &color(black,yellow){performance optimization};
++ robust performance problem (robust stability and perfo...
//
+ H infinity norm
-- definition
-- example
//
+ H infinity control problem
-- definition
//
+ performance optimization example : reference tracking p...
-- relation to the sensitivity function S(s) (S(s) -> 0 i...
-- given control system
&ref(ex1002_1.m);
-- controller design with H infinity control theory
&ref(ex1002_2.m);
%-- 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)
#ref(2014.10.02-1.jpg,left,noimg,whiteboard #1);
#ref(2014.10.02-2.jpg,left,noimg,whiteboard #2);
#ref(2014.10.02-3.jpg,left,noimg,whiteboard #3);
#ref(2014.10.02-4.jpg,left,noimg,whiteboard #4);
** &color(green){[lecture #5]}; 2014.10.09 Intro. to Robu...
- review &ref(map_v1.0_intro2.pdf);
- schedule of mini report and exam #1
+ Typical design problems
++ &color(black,yellow){robust stabilization};
++ performance optimization
++ robust performance problem (robust stability and perfo...
//
+ connection between [H infinity control problem] and [ro...
-- small gain theorem
-- normalized uncertainty \Delta
-- sketch proof ... Nyquist stability criterion
+ How to design robust stabilizing controller with H infi...
-- practical example : unstable plant with perturbation
#ref(ex1009_1.m)
-- how to use uncertainty model (multiplicative uncertain...
#ref(ex1009_2.m)
-- how to set generalized plant G ?
#ref(ex1009_3.m)
-- simulation
#ref(mod1009.mdl)
%-- 10/9/2014 1:01 PM --%
ex1009_1
ex1009_2
ex1009_3
mod1009
c
#ref(2014.10.09-1.jpg,left,noimg,whiteboard #1);
#ref(2014.10.09-2.jpg,left,noimg,whiteboard #2);
#ref(2014.10.09-3.jpg,left,noimg,whiteboard #3);
#ref(2014.10.09-4.jpg,left,noimg,whiteboard #4);
** &color(green){[lecture #6]}; 2014.10.16 Intro. to robu...
+ review
-- robust stabilization ... (1) ||WT T||_inf < 1 (for mul...
-- performance optimization ... (2) ||WS S||_inf < gamma ...
-- &color(black,yellow){mixed sensitivity problem}; ... s...
+ a sufficient condition for (1) and (2) ... (*) property...
+ definition of singular value
+ 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 submissi...
-- You will have a mini exam #1 related to this report on...
+ meaning of singular value ... singular value decomposit...
+ proof of (*)
+ example
#ref(ex1016.m);
%-- 10/16/2014 1:00 PM --%
M = [j, 0; -j, 1]
M
svd(M)
sqrt((3+sqrt(5))/2)
M'
M'*M
ex1016
#ref(2014.10.16-1.jpg,left,noimg,whiteboard #1);
#ref(2014.10.16-2.jpg,left,noimg,whiteboard #2);
#ref(2014.10.16-3.jpg,left,noimg,whiteboard #3);
#ref(2014.10.16-4.jpg,left,noimg,whiteboard #4);
#ref(2014.10.16-5.jpg,left,noimg,whiteboard #5);
#ref(2014.10.16-6.jpg,left,noimg,whiteboard #6);
** &color(green){[lecture #7]}; 2014.10.23 review of SVD,...
- submission of mini report #1
- review of SVD : graphical image and rotation matrix for...
#ref(ex1023_1.m);
- motivation of robust performance : nominal performance ...
#ref(ex1023_2.m);
#ref(ex1023_3.m);
%-- 10/23/2014 12:58 PM --%
ex1023_1
A
S
V
V'*V
V'*V(:,1)
ex1009_1
ex1009_2
ex1023_2
ex1023_3
#ref(2014.10.23-1.jpg,left,noimg,whiteboard #1);
#ref(2014.10.23-2.jpg,left,noimg,whiteboard #2);
#ref(2014.10.23-3.jpg,left,noimg,whiteboard #3);
-Q1: Is H infinity control theory available for discrete-...
-A1: The answer is yes. You can use the same tool hinfsyn...
** &color(green){[lecture #8]}; 2014.10.30 Robust perform...
+ return of mini report #1
+ review of the limitation of mixed sensitivity problem
+ diffinition of robust performance (R.P.) problem (cf. n...
+ review of robust stability (R.S.) problem on white boar...
+ equivalent R.P. problem with structured uncertainty Del...
+ a conservative problem to R.P. with 2-by-2 unstructured...
-- example based on the one given in the last lecture
#ref(ex1030_1.m);
-- a check of the conservativeness
#ref(ex1030_2.m);
+ Delta_tilde is larger set than Delta_hat ... conservati...
+ mini exam #1
&ref(exam1.pdf);
%-- 10/30/2014 1:10 PM --%
ex1023_2
ex1023_3
gam_opt
ex1030_1
gam_opt
#ref(2014.10.30-1.jpg,left,noimg,whiteboard #1);
#ref(2014.10.30-2.jpg,left,noimg,whiteboard #2);
#ref(2014.10.30-3.jpg,left,noimg,whiteboard #3);
#ref(2014.10.30-4.jpg,left,noimg,whiteboard #4);
** &color(green){[lecture #9]}; 2014.11.13 Robust perform...
- return of mini exam #1
- review
- inclusion relation of two uncertain set (structured and...
- scaled H infinity control problem
- effect of scaling matrix
- how to determine structure of scaling matrix
- example
#ref(ex1113_1.m);
#ref(ex1113_2.m);
- %%mini report #2%%
%-- 11/13/2014 12:58 PM --%
ex1023_2
gam_opt
ex1023_3
ex1030_1
gam_opt
ex1113
ex1113_1
gam_opt
ex1113_2
#ref(2014.11.13-1.jpg,left,noimg,whiteboard #1);
#ref(2014.11.13-2.jpg,left,noimg,whiteboard #2);
#ref(2014.11.13-3.jpg,left,noimg,whiteboard #3);
#ref(2014.11.13-4.jpg,left,noimg,whiteboard #4);
** &color(green){[lecture #10]}; 2014.11.20 Robust perfor...
- 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 submissi...
-- You will have a mini exam #2 related to this report on...
- 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
#ref(2014.11.20-1.jpg,left,noimg,whiteboard #1);
#ref(2014.11.20-2.jpg,left,noimg,whiteboard #2);
#ref(2014.11.20-3.jpg,left,noimg,whiteboard #3);
#ref(2014.11.20-4.jpg,left,noimg,whiteboard #4);
** &color(green){[lecture #11]}; 2014.11.27 relation betw...
- mini report #2 submit
- outline
-- state-feedback H infinity control and LQR
-- output-feedback H infinity control and LQG
- simple example
- find controller by hand <---> ans. by hinfsyn
&ref(ex1127.m);
- relation to LQR
- H infinity norm = L2 induced norm
- how to construct the worst case input ?
&ref(mod1127.mdl);
- general case
&ref(J_hinf.pdf);
%-- 11/27/2014 1:51 PM --%
ex1127
1/sqrt(2)
ex1127
2*(sqrt(2)-1)
mod1127
x0 = 0
h = 1
f = 1
zz
ww
#ref(2014.11.27-1.jpg,left,noimg,whiteboard #1);
#ref(2014.11.27-2.jpg,left,noimg,whiteboard #2);
#ref(2014.11.27-3.jpg,left,noimg,whiteboard #3);
-Q: \[ \dot x, z \] の導出過程(ホワイトボード◯2)がわか...
-A: \[ \left[ \begin{array}{c} w \\ u \end{array} \right]...
\[ \dot x = A x + B \left[ \begin{array}{c} w \\ u \end{a...
\[ \left[ \begin{array}{c} z \\ y \end{array} \right] = C...
ただし、x は G の状態で、
\[
A = a = -1, \quad
B = \left[ \begin{array}{cc} 1 & b \end{array} \right] = ...
C = \left[ \begin{array}{c} \sqrt{q} \\ 0 \\ 1 \end{array...
= \left[ \begin{array}{c} 1 \\ 0 \\ 1 \end{array} \right]...
D = \left[ \begin{array}{cc} 0 & 0 \\ 0 & \sqrt{r} \\ 0 &...
= \left[ \begin{array}{cc} 0 & 0 \\ 0 & 1 \\ 0 & 0 \end{a...
\]
です。状態空間表現の表記によります。これと、u = -f x より...
** &color(green){[lecture #12]}; 2014.12.4 relation betwe...
- return of mini report #2
- contents for the last lecture
- %%speed control of two inertia system with servo motor%...
%%&ref(setup.pdf);%%
- %%frequency response experiment and physical model of s...
%%&ref(ex1204_1.m);%%&br;
%%&ref(ex1204_2.dat);%%
- mini exam #2
%-- 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
#ref(2014.12.4-1.jpg,left,noimg,whiteboard #1);
#ref(2014.12.4-2.jpg,left,noimg,whiteboard #2);
** &color(green){[lecture #13]}; 2014.12.11 Robust contro...
- return of mini exam #2
- introduction of experimental setup
#ref(setup.pdf);
#ref(photo1.jpg,left,noimg);
- objective of control system
++ to reduce the tracking error of the driving motor agai...
++ robust stabilization against plant variation due to ag...
- frequency response experiment and physical model of spe...
#ref(ex1211_1.m);
#ref(ex1211_2.dat);
#ref(ex1211_3.dat);
#ref(ex1211_4.dat);
- %%determination of nominal plant%%&br;
%%&ref(ex1211_5.m);%%
- %%determination of weighting function%%&br;
%%&ref(ex1211_6.m);%%
%-- 12/11/2014 1:24 PM --%
ex1211_1
frdata
frdata(:,1)
P1_jw
P1_g
ex1211_1
#ref(2014.12.11-1.jpg,left,noimg,whiteboard #1);
-Q: What is the inertia moment of the load disk ?
-A: It is about 0.0002 (kg m^2) (60mm in diameter, 16mm i...
-Q: 周波数応答実験について、定常応答になるのにどのくらい...
-A: 待ち時間は3秒です。音の発生源はよくわかりませんし、騒...
** &color(green){[lecture #14]}; 2014.12.18 Robust contro...
- design example
//-- modeling based on frequency response experiment
//- design example 1 : PI control
//-- control experiment
//#ref(cont_PI.dat,,,`cont.dat' file for P control);
//#ref(cont_P_order.dat,,,`cont_order.dat' file for P con...
//#ref(result_P.dat);
//#ref(result_openloop.dat);
//#ref(openloop.mp4);
//#ref(ex1.mp4);
//- design example 2 : H infinity control
-- m-files
#ref(freqresp.m);
#ref(nominal.m);
#ref(weight.m);
#ref(cont.m);
#ref(perf.m);
>> freqresp
>> nominal
>> weight
>> cont
>> perf
-- control experiment ... see [[participant list2014]]
- report
+design your controller(s) so that the system performance...
+Draw the following figures and explain the difference be...
++bode diagram of controllers
++gain characteristic of sensitivity function
++time response of control experiment
+Why is the performance of your system improved(or unfort...
--&size(30){&color(red){due date: 9th(Fri) Jan 17:00};};
--submit your report(pdf or doc) by e-mail to kobayasi@na...
--You can use Japanese
--maximum controller order is 20
--submit your &size(25){&color(red){cont.dat, cont_order....
- program sources for frequency response experiment
#ref(freqresp.h)
#ref(freqresp_module.c)
#ref(freqresp_app.c)
-- format of datafile
--- 1st column ... frequency (Hz)
--- 2nd column ... gain from T_M to omega_M
--- 3rd column ... phase from T_M to omega_M
--- 4th column ... gain from T_M to omega_L
--- 5th column ... phase from T_M to omega_L
- program sources for control experiment
#ref(hinf.h)
#ref(hinf_module.c)
#ref(hinf_app.c)
-- format of result.dat file
--- 1st column: time (s)
--- 2nd column: omega_M (rad/s)
--- 3rd column: T_M (Nm)
--- 4th column: reference speed (rad/s)
--- 5th column: T_L (Nm)
- configuration of control experiment
-- reference signal is generated as described in hinf_mod...
if((t > 1)&&(t < 4)){
r = 20.0;
}else{
r = 10;
}
-- disturbance torque is specified as described in hinf_m...
if((t > 2)&&(t < 3)){
d = -0.1;
}else{
d = 0;
}
- calculation of rotational speed
The rotational speed is approximately calculated by using...
theta_rad = (double)read_theta(0) / (double)Pn212 * 2 * ...
speed_rad = (theta_rad - theta_rad_before) / msg->sampli...
theta_rad_before = theta_rad
where the sampling period is given as 0.25 ms.
[[participant list2014]]
%-- 12/18/2014 1:01 PM --%
freqresp
nominal
help fitfrd
weight
cont
help c2d
perf
#ref(2014.12.18-1.jpg,left,noimg,whiteboard #1);
#ref(2014.12.18-2.jpg,left,noimg,whiteboard #2);
//■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
//&color(black,red){&size(20){!!! the remaining page is u...
** &color(green){[lecture #15]}; 2014.12.25 Robust contro...
-preparation of your own controller(s)
%-- 12/25/2014 12:58 PM --%
load cont.mat
who
K_opt
who
Kd
who
Ghat
load result.dat
plot(result(:,1), result(:,2))
plot(result(:,1), result(:,3))
who
bode(K_opt)
bode(Kd)
Kd1 = Kd
K_opt1 = K_opt
load cont.mat
bode(K_opt1, 'b', K_opt, 'r')
bode(Kd1, 'b', Kd, 'r')
Kd_tmp = c2d(K_opt1, 0.000001);
bode(Kd1, 'b', Kd, 'r', Kd_tmp, 'm')
clear all
load cont.mat
who
bode(K_opt)
K_example = K_opt;
load cont.mat
bode(K_example, 'b', K_opt, 'r')
#ref(2014.12.25-1.jpg,left,noimg,whiteboard #1);
#ref(2014.12.25-2.jpg,left,noimg,whiteboard #2);
//**related links [#g1a68a2b]
//-東ティモール工学部復興支援/support of rehabilitation f...
//--[[How to control objects>/:~kobayasi/easttimor/2009/i...
//--[[Prof. Kimura's page>http://sessyu.nagaokaut.ac.jp/~...
終了行:
[[授業]]
*Advanced Automation [#we2e9bed]
** &color(green){[]}; 2014.9.4 cancelled [#n7818221]
** &color(green){[lecture #1]}; 2014.9.11 outline of the ...
- outline of this lecture
-- syllabus
-- evaluation
--- mini report #1 ... 10%
--- mini exam #1 ... 10%
--- mini report #2 ... 10%
--- mini exam #2 ... 10%
--- final report ... 60%
-- map
#ref(map_v1.0_review.pdf);
- review
-- equation of motion
-- transfer function
-- state space representation
-- eigenvalue and pole
#ref(2014.09.11-1.jpg,left,noimg,whiteboard #1);
#ref(2014.09.11-2.jpg,left,noimg,whiteboard #2);
#ref(2014.09.11-3.jpg,left,noimg,whiteboard #3);
#ref(2014.09.11-4.jpg,left,noimg,whiteboard #4);
#ref(2014.09.11-5.jpg,left,noimg,whiteboard #5);
#ref(2014.09.11-6.jpg,left,noimg,whiteboard #6);
** &color(green){[lecture #2]}; 2014.9.18 CACSD introduct...
+ introduction of Matlab and Simulink
&ref(text_fixed.pdf); Basic usage of MATLAB and Simulink ...
//
+ How to define open-loop system
//
++ &color(black,cyan){TF};
s = tf('s');
T1 = 1 / (s+1);
T2 = 1 / (s^2 + 0.1*s + 1);
++ &color(black,lightgreen){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;
//
+ open-loop stability can be checked by
//
++ &color(black,cyan){poles of TF};
roots(T2.den{:})
++ &color(black,lightgreen){eigenvalues of A-matrix in SS...
eig(S3.a)
++ also by simulation
#ref(mod0918_1.mdl);
//
+ 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
//
++ graphical test by &color(black,yellow){Nyquist stabili...
nyquist(L)
//
bode(L)
++ numerical test by closed-loop system
clp_den = L.den{:} + L.num{:};
roots(clp_den)
++ simulation
#ref(mod0918_2.mdl);
%-- 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
#ref(2014.09.18-1.jpg,left,noimg,whiteboard #1);
#ref(2014.09.18-2.jpg,left,noimg,whiteboard #2);
** &color(green){[lecture #3]}; 2014.9.25 CACSD introduct...
+ LQR problem
-- controllability
-- cost function J >= 0
-- (semi)-positive definiteness
+ solution of LQR problem
-- ARE and quadratic equation
-- closed loop stability ... Lyapunov criterion
-- Jmin
&ref(proof4.pdf); (from B%%4%%3「動的システムの解析と制御...
+ example
&ref(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
&ref(2014.09.25-1.jpg,left,noimg,whiteboard #1); ... sorr...
\[ U_c := \left[\begin{array}{ccccc} B & AB & A^2 B & \cd...
#ref(2014.09.25-2.jpg,left,noimg,whiteboard #2);
#ref(2014.09.25-3.jpg,left,noimg,whiteboard #3);
#ref(2014.09.25-4.jpg,left,noimg,whiteboard #4);
** &color(green){[lecture #4]}; 2014.10.2 Intro. to robus...
+ review &ref(map_v1.0_intro1.pdf);
++ advantage and disadvantage of the modern control theory
++ explicit consideration of plant uncertainty ---> robus...
//
+ Typical design problems of H infinity control theory
++ robust stabilization
++ &color(black,yellow){performance optimization};
++ robust performance problem (robust stability and perfo...
//
+ H infinity norm
-- definition
-- example
//
+ H infinity control problem
-- definition
//
+ performance optimization example : reference tracking p...
-- relation to the sensitivity function S(s) (S(s) -> 0 i...
-- given control system
&ref(ex1002_1.m);
-- controller design with H infinity control theory
&ref(ex1002_2.m);
%-- 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)
#ref(2014.10.02-1.jpg,left,noimg,whiteboard #1);
#ref(2014.10.02-2.jpg,left,noimg,whiteboard #2);
#ref(2014.10.02-3.jpg,left,noimg,whiteboard #3);
#ref(2014.10.02-4.jpg,left,noimg,whiteboard #4);
** &color(green){[lecture #5]}; 2014.10.09 Intro. to Robu...
- review &ref(map_v1.0_intro2.pdf);
- schedule of mini report and exam #1
+ Typical design problems
++ &color(black,yellow){robust stabilization};
++ performance optimization
++ robust performance problem (robust stability and perfo...
//
+ connection between [H infinity control problem] and [ro...
-- small gain theorem
-- normalized uncertainty \Delta
-- sketch proof ... Nyquist stability criterion
+ How to design robust stabilizing controller with H infi...
-- practical example : unstable plant with perturbation
#ref(ex1009_1.m)
-- how to use uncertainty model (multiplicative uncertain...
#ref(ex1009_2.m)
-- how to set generalized plant G ?
#ref(ex1009_3.m)
-- simulation
#ref(mod1009.mdl)
%-- 10/9/2014 1:01 PM --%
ex1009_1
ex1009_2
ex1009_3
mod1009
c
#ref(2014.10.09-1.jpg,left,noimg,whiteboard #1);
#ref(2014.10.09-2.jpg,left,noimg,whiteboard #2);
#ref(2014.10.09-3.jpg,left,noimg,whiteboard #3);
#ref(2014.10.09-4.jpg,left,noimg,whiteboard #4);
** &color(green){[lecture #6]}; 2014.10.16 Intro. to robu...
+ review
-- robust stabilization ... (1) ||WT T||_inf < 1 (for mul...
-- performance optimization ... (2) ||WS S||_inf < gamma ...
-- &color(black,yellow){mixed sensitivity problem}; ... s...
+ a sufficient condition for (1) and (2) ... (*) property...
+ definition of singular value
+ 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 submissi...
-- You will have a mini exam #1 related to this report on...
+ meaning of singular value ... singular value decomposit...
+ proof of (*)
+ example
#ref(ex1016.m);
%-- 10/16/2014 1:00 PM --%
M = [j, 0; -j, 1]
M
svd(M)
sqrt((3+sqrt(5))/2)
M'
M'*M
ex1016
#ref(2014.10.16-1.jpg,left,noimg,whiteboard #1);
#ref(2014.10.16-2.jpg,left,noimg,whiteboard #2);
#ref(2014.10.16-3.jpg,left,noimg,whiteboard #3);
#ref(2014.10.16-4.jpg,left,noimg,whiteboard #4);
#ref(2014.10.16-5.jpg,left,noimg,whiteboard #5);
#ref(2014.10.16-6.jpg,left,noimg,whiteboard #6);
** &color(green){[lecture #7]}; 2014.10.23 review of SVD,...
- submission of mini report #1
- review of SVD : graphical image and rotation matrix for...
#ref(ex1023_1.m);
- motivation of robust performance : nominal performance ...
#ref(ex1023_2.m);
#ref(ex1023_3.m);
%-- 10/23/2014 12:58 PM --%
ex1023_1
A
S
V
V'*V
V'*V(:,1)
ex1009_1
ex1009_2
ex1023_2
ex1023_3
#ref(2014.10.23-1.jpg,left,noimg,whiteboard #1);
#ref(2014.10.23-2.jpg,left,noimg,whiteboard #2);
#ref(2014.10.23-3.jpg,left,noimg,whiteboard #3);
-Q1: Is H infinity control theory available for discrete-...
-A1: The answer is yes. You can use the same tool hinfsyn...
** &color(green){[lecture #8]}; 2014.10.30 Robust perform...
+ return of mini report #1
+ review of the limitation of mixed sensitivity problem
+ diffinition of robust performance (R.P.) problem (cf. n...
+ review of robust stability (R.S.) problem on white boar...
+ equivalent R.P. problem with structured uncertainty Del...
+ a conservative problem to R.P. with 2-by-2 unstructured...
-- example based on the one given in the last lecture
#ref(ex1030_1.m);
-- a check of the conservativeness
#ref(ex1030_2.m);
+ Delta_tilde is larger set than Delta_hat ... conservati...
+ mini exam #1
&ref(exam1.pdf);
%-- 10/30/2014 1:10 PM --%
ex1023_2
ex1023_3
gam_opt
ex1030_1
gam_opt
#ref(2014.10.30-1.jpg,left,noimg,whiteboard #1);
#ref(2014.10.30-2.jpg,left,noimg,whiteboard #2);
#ref(2014.10.30-3.jpg,left,noimg,whiteboard #3);
#ref(2014.10.30-4.jpg,left,noimg,whiteboard #4);
** &color(green){[lecture #9]}; 2014.11.13 Robust perform...
- return of mini exam #1
- review
- inclusion relation of two uncertain set (structured and...
- scaled H infinity control problem
- effect of scaling matrix
- how to determine structure of scaling matrix
- example
#ref(ex1113_1.m);
#ref(ex1113_2.m);
- %%mini report #2%%
%-- 11/13/2014 12:58 PM --%
ex1023_2
gam_opt
ex1023_3
ex1030_1
gam_opt
ex1113
ex1113_1
gam_opt
ex1113_2
#ref(2014.11.13-1.jpg,left,noimg,whiteboard #1);
#ref(2014.11.13-2.jpg,left,noimg,whiteboard #2);
#ref(2014.11.13-3.jpg,left,noimg,whiteboard #3);
#ref(2014.11.13-4.jpg,left,noimg,whiteboard #4);
** &color(green){[lecture #10]}; 2014.11.20 Robust perfor...
- 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 submissi...
-- You will have a mini exam #2 related to this report on...
- 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
#ref(2014.11.20-1.jpg,left,noimg,whiteboard #1);
#ref(2014.11.20-2.jpg,left,noimg,whiteboard #2);
#ref(2014.11.20-3.jpg,left,noimg,whiteboard #3);
#ref(2014.11.20-4.jpg,left,noimg,whiteboard #4);
** &color(green){[lecture #11]}; 2014.11.27 relation betw...
- mini report #2 submit
- outline
-- state-feedback H infinity control and LQR
-- output-feedback H infinity control and LQG
- simple example
- find controller by hand <---> ans. by hinfsyn
&ref(ex1127.m);
- relation to LQR
- H infinity norm = L2 induced norm
- how to construct the worst case input ?
&ref(mod1127.mdl);
- general case
&ref(J_hinf.pdf);
%-- 11/27/2014 1:51 PM --%
ex1127
1/sqrt(2)
ex1127
2*(sqrt(2)-1)
mod1127
x0 = 0
h = 1
f = 1
zz
ww
#ref(2014.11.27-1.jpg,left,noimg,whiteboard #1);
#ref(2014.11.27-2.jpg,left,noimg,whiteboard #2);
#ref(2014.11.27-3.jpg,left,noimg,whiteboard #3);
-Q: \[ \dot x, z \] の導出過程(ホワイトボード◯2)がわか...
-A: \[ \left[ \begin{array}{c} w \\ u \end{array} \right]...
\[ \dot x = A x + B \left[ \begin{array}{c} w \\ u \end{a...
\[ \left[ \begin{array}{c} z \\ y \end{array} \right] = C...
ただし、x は G の状態で、
\[
A = a = -1, \quad
B = \left[ \begin{array}{cc} 1 & b \end{array} \right] = ...
C = \left[ \begin{array}{c} \sqrt{q} \\ 0 \\ 1 \end{array...
= \left[ \begin{array}{c} 1 \\ 0 \\ 1 \end{array} \right]...
D = \left[ \begin{array}{cc} 0 & 0 \\ 0 & \sqrt{r} \\ 0 &...
= \left[ \begin{array}{cc} 0 & 0 \\ 0 & 1 \\ 0 & 0 \end{a...
\]
です。状態空間表現の表記によります。これと、u = -f x より...
** &color(green){[lecture #12]}; 2014.12.4 relation betwe...
- return of mini report #2
- contents for the last lecture
- %%speed control of two inertia system with servo motor%...
%%&ref(setup.pdf);%%
- %%frequency response experiment and physical model of s...
%%&ref(ex1204_1.m);%%&br;
%%&ref(ex1204_2.dat);%%
- mini exam #2
%-- 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
#ref(2014.12.4-1.jpg,left,noimg,whiteboard #1);
#ref(2014.12.4-2.jpg,left,noimg,whiteboard #2);
** &color(green){[lecture #13]}; 2014.12.11 Robust contro...
- return of mini exam #2
- introduction of experimental setup
#ref(setup.pdf);
#ref(photo1.jpg,left,noimg);
- objective of control system
++ to reduce the tracking error of the driving motor agai...
++ robust stabilization against plant variation due to ag...
- frequency response experiment and physical model of spe...
#ref(ex1211_1.m);
#ref(ex1211_2.dat);
#ref(ex1211_3.dat);
#ref(ex1211_4.dat);
- %%determination of nominal plant%%&br;
%%&ref(ex1211_5.m);%%
- %%determination of weighting function%%&br;
%%&ref(ex1211_6.m);%%
%-- 12/11/2014 1:24 PM --%
ex1211_1
frdata
frdata(:,1)
P1_jw
P1_g
ex1211_1
#ref(2014.12.11-1.jpg,left,noimg,whiteboard #1);
-Q: What is the inertia moment of the load disk ?
-A: It is about 0.0002 (kg m^2) (60mm in diameter, 16mm i...
-Q: 周波数応答実験について、定常応答になるのにどのくらい...
-A: 待ち時間は3秒です。音の発生源はよくわかりませんし、騒...
** &color(green){[lecture #14]}; 2014.12.18 Robust contro...
- design example
//-- modeling based on frequency response experiment
//- design example 1 : PI control
//-- control experiment
//#ref(cont_PI.dat,,,`cont.dat' file for P control);
//#ref(cont_P_order.dat,,,`cont_order.dat' file for P con...
//#ref(result_P.dat);
//#ref(result_openloop.dat);
//#ref(openloop.mp4);
//#ref(ex1.mp4);
//- design example 2 : H infinity control
-- m-files
#ref(freqresp.m);
#ref(nominal.m);
#ref(weight.m);
#ref(cont.m);
#ref(perf.m);
>> freqresp
>> nominal
>> weight
>> cont
>> perf
-- control experiment ... see [[participant list2014]]
- report
+design your controller(s) so that the system performance...
+Draw the following figures and explain the difference be...
++bode diagram of controllers
++gain characteristic of sensitivity function
++time response of control experiment
+Why is the performance of your system improved(or unfort...
--&size(30){&color(red){due date: 9th(Fri) Jan 17:00};};
--submit your report(pdf or doc) by e-mail to kobayasi@na...
--You can use Japanese
--maximum controller order is 20
--submit your &size(25){&color(red){cont.dat, cont_order....
- program sources for frequency response experiment
#ref(freqresp.h)
#ref(freqresp_module.c)
#ref(freqresp_app.c)
-- format of datafile
--- 1st column ... frequency (Hz)
--- 2nd column ... gain from T_M to omega_M
--- 3rd column ... phase from T_M to omega_M
--- 4th column ... gain from T_M to omega_L
--- 5th column ... phase from T_M to omega_L
- program sources for control experiment
#ref(hinf.h)
#ref(hinf_module.c)
#ref(hinf_app.c)
-- format of result.dat file
--- 1st column: time (s)
--- 2nd column: omega_M (rad/s)
--- 3rd column: T_M (Nm)
--- 4th column: reference speed (rad/s)
--- 5th column: T_L (Nm)
- configuration of control experiment
-- reference signal is generated as described in hinf_mod...
if((t > 1)&&(t < 4)){
r = 20.0;
}else{
r = 10;
}
-- disturbance torque is specified as described in hinf_m...
if((t > 2)&&(t < 3)){
d = -0.1;
}else{
d = 0;
}
- calculation of rotational speed
The rotational speed is approximately calculated by using...
theta_rad = (double)read_theta(0) / (double)Pn212 * 2 * ...
speed_rad = (theta_rad - theta_rad_before) / msg->sampli...
theta_rad_before = theta_rad
where the sampling period is given as 0.25 ms.
[[participant list2014]]
%-- 12/18/2014 1:01 PM --%
freqresp
nominal
help fitfrd
weight
cont
help c2d
perf
#ref(2014.12.18-1.jpg,left,noimg,whiteboard #1);
#ref(2014.12.18-2.jpg,left,noimg,whiteboard #2);
//■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
//&color(black,red){&size(20){!!! the remaining page is u...
** &color(green){[lecture #15]}; 2014.12.25 Robust contro...
-preparation of your own controller(s)
%-- 12/25/2014 12:58 PM --%
load cont.mat
who
K_opt
who
Kd
who
Ghat
load result.dat
plot(result(:,1), result(:,2))
plot(result(:,1), result(:,3))
who
bode(K_opt)
bode(Kd)
Kd1 = Kd
K_opt1 = K_opt
load cont.mat
bode(K_opt1, 'b', K_opt, 'r')
bode(Kd1, 'b', Kd, 'r')
Kd_tmp = c2d(K_opt1, 0.000001);
bode(Kd1, 'b', Kd, 'r', Kd_tmp, 'm')
clear all
load cont.mat
who
bode(K_opt)
K_example = K_opt;
load cont.mat
bode(K_example, 'b', K_opt, 'r')
#ref(2014.12.25-1.jpg,left,noimg,whiteboard #1);
#ref(2014.12.25-2.jpg,left,noimg,whiteboard #2);
//**related links [#g1a68a2b]
//-東ティモール工学部復興支援/support of rehabilitation f...
//--[[How to control objects>/:~kobayasi/easttimor/2009/i...
//--[[Prof. Kimura's page>http://sessyu.nagaokaut.ac.jp/~...
ページ名: