授業

Advanced Automation

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

%-- 9/3/2015 2:09 PM --%
s = tf('s')
Ptf = 1/(s+1)
pole(Ptf)
impulse(Ptf)
Pss = ss(Ptf)
initial(Pss, 1)
initial(Pss, 2)

fileex0902.m

[lecture #2] 2015.9.10 review of classical and modern control theory (2/3) with introduction of Matlab/Simulink

  1. introduction of Matlab and Simulink filetext_fixed.pdf Basic usage of MATLAB and Simulink used for 情報処理演習及び考究II/Consideration and Practice of Information Processing II: Advanced Course of MATLAB
    • interactive system (no compilation, no variable difinition)
    • m file
  2. system representation: Transfer Function(TF) / State-Space Representation (SSR)
    • example: mass-spring-damper system
    • difinition of SSR
    • from SSR to TF
    • from TF to SSR: controllable canonical form
  3. open-loop characteristic
    • open-loop stability: poles and eigenvalues
    • Bode plot and frequency response fileex0910_1.m filemod0910_1.mdl
      • cut off frequency; DC gain; -40dB/dec; variation of c
      • relation between P(jw) and steady-state response
  4. closed-loop stability
    • Nyquist stability criterion (for L(s):stable)
    • Nyquist plot fileex0910_2.m filemod0910_2.mdl
      • Gain Margin(GM); Phase Margin(PM)
%-- 9/10/2015 1:55 PM --%
ex0910_1
P
P.den
P.den{:}
P.num{:}
ex0910_1
ex0910_2

[] 2015.9.17 cancelled

[] 2015.9.25 no lecture (lectures for Monday are given)

[lecture #3] 2015.10.1 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
    • ARE and quadratic equation
    • closed loop stability ... Lyapunov criterion
    • Jmin filelqr.pdffileproof4.pdf (from B3「動的システムの解析と制御」)
  3. example filemod1001.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);
    eig(P) % should be positive
    F = R\B'*P;
    x0'*P*x0
%-- 10/1/2015 2:08 PM --%
mod1001
A = [1, 2; 0, -1]; % unstable plant
B = [0; 1];
Uc = ctrb(A,B);
A
B
Uc
det(Uc)
C = eye(2); % dummy
D = zeros(2,1); % dummy
F = [0, 0]; % without control
x0 = [1; 1]; % initial state
Q = eye(2);
R = 1;
F
P = are(A, B/R*B', Q);
P
eig(P)
F = R\B'*P;
F
J
x0
x0'*P*x0
A-B*F
eig(A-B*F)

... I'm sorry but all of equations are in the pdf file.

[lecture #4] 2015.10.8 relation between LQR and H infinity control problem (1/2)

  1. an equivalent problem
  2. a simple example of state-feedback H infinity control problem
  3. definition of H infinity norm (SISO)
    s = tf('s');
    P1 = 1/(s+1);
    bode(P1);
    norm(P1, 'inf')
    P2 = 1/(s^2 + 0.1*s + 1);
    bode(P2);
    norm(P2, 'inf')
  4. definition of H infinity norm (SIMO)
  5. solve the problem by hand
  6. solve the problem by tool(hinfsyn) fileex1008.m
%-- 10/8/2015 1:48 PM --%
s = tf('s');
P1 = 1/(s+1);
bode(P1);
norm(P1, 'inf')
P2 = 1/(s^2 + 0.1*s + 1);
bode(P2);
norm(P2, 'inf')
ex1008

[lecture #5] 2015.10.15 relation between LQR and H infinity control problem (2/2)

  1. complete the table in simple example
  2. behavior of hinfsyn in fileex1008.m
  3. confirm the cost function J for both controllers by simulation filemod1015.mdl
  4. confirm the closed-loop H infinity norm for both controllers by simulation (common mdl file is available)
    • review: steady-state response (see photo 8 @ lec. #2)
    • how to construct the worst-case disturbance w(t) which maximizes L2 norm of z(t) ?
    • what is the worst-case disturbance in the simple example ?
  5. general case: filehinf.pdf includes the simple example as a special case
    • LQR filelqr.pdf is included as a special case where gamma -> infinity, non-zero x(0), and B2 -> B
%-- 10/15/2015 1:14 PM --%
ex1008
K
dcgain(K)
gopt
ex1008
mod1015
f
f = 1
x0 = 0
h = 0.1
zz
zz(end)
h = 1e-6
zz(end)
f = -1+sqrt(2)
h
zz(end)
x0 = 1
zz(end)
f
h
h = 10
zz(end)/ww(end)
x0
x0 = 0
zz(end)/ww(end)
sqrt(zz(end)/ww(end))
h
h = 100
sqrt(zz(end)/ww(end))

[lecture #6] 2015.10.22 Mixed sensitivity problem 1/3

  1. review filemap_v1.0_intro1.pdf and outline
  2. H infinity control problem (general form)
  3. reference tracking problem
  4. weighting function for sensitivity function
  5. design example fileex1022_1.m fileex1022_2.m
  6. the small gain theorem
    • proof: Nyquist stability criterion
  7. from performance optimization to robust stabilization
%-- 10/22/2015 2:06 PM --%
ex1022_1
eig(P)
ex1022_2

[lecture #7] 2015.10.29 Mixed sensitivity problem 2/3

  1. review filemap_v1.0_intro2.pdf and outline
  2. an equivalent problem of robust stabilization for reference tracking problem
  3. uncertainty model and normalized uncertainty Delta
  4. robust stabilization problem and an equivalent problem
  5. practical example of plant with perturbation fileex1029_1.m
  6. how to determine the model fileex1029_2.m
  7. design example and simulation fileex1029_3.m filemod1029.mdl
%-- 10/29/2015 1:52 PM --%
ex1029_1
ex1029_2
ex1029_3
mod1029
c
c = 0.8

[lecture #8] 2015.11.5 Mixed sensitivity problem 3/3

  1. review : (1)robust stabilization and (2)performance optimization
  2. mixed sensitivity problem : a sufficient condition for (1) and (2)
    • proof by definition of H infinity norm
  3. construction of the generalized plant
  4. design example fileex1105_1.m
  5. gamma iteration by bisection method fileex1105_2.m
  6. a problem of the mixed sensitivity problem: nominal performance and robust performance fileex1105_3.m
  7. introduction of robust performance problem
%-- 11/5/2015 1:37 PM --%
ex1105_1
ex1105_2
gam
ex1105_2
WT
ex1105_2
ex1105_3
ex1105_2
ex1105_3

[lecture #9] 2015.11.12 robust performance problem 1/3

  1. review: robust performance problem
  2. an equivalent robust stability problem
  3. definition of H infinity norm for general case (MIMO)
  4. definition of (maximum) singular value
    M = [j, 0; -j, 1]
    M'
    eig(M'*M)
    svd(M)
  5. mini report #1 filereport1.pdf
    • write by hand
    • due date and place of submission -> see schedule2015
    • check if your answer is correct or not before submission by using Matlab
    • You will have a mini exam #1 related to this report
  6. SVD: singular value decomposition
    • definition
      [U,S,V] = svd(M)
      M = [j, 0; -j, 1; 2, 3]
    • unitary matrix and 2 norm of vectors
    • a property of SVD: input-output interpretation
    • illustrative example: rotation matrix fileex1112_1.m
  7. H infinity norm of Delta hat
%-- 11/12/2015 1:01 PM --%
M = [j, 0; -j, 1]
M'
eig(M'*M)
svd(M)
M = [j, 0; -j, 1]
M'
eig(M'*M)
svd(M)
(3+sqrt(5))/2
sqrt((3+sqrt(5))/2)
help svd
[U,S,V] = svd(M)
U'*U
M = [j, 0; -j, 1; 2, 3]
[U,S,V] = svd(M)
V'*V
ex1112_1

[lecture #10] 2015.11.19 Robust performance problem (2/3)

  1. return of mini report #1
  2. review and outline: robust stability problem for Delta hat and its equivalent problem(?)
  3. signal vector's size is not restricted in H infinity control problem and small gain theorem
  4. H infinity norm of Delta hat
  5. design example: robust performance is achieved fileex1119_1.m
  6. non structured uncertainty is considered ... the design problem is too conservative
%-- 11/19/2015 1:23 PM --%
doc hinfsyn
ex1105_2
ex1105_3
gam_opt
ex1119_1
gam_opt
svd([1/sqrt(2), 0; 1/sqrt(2), 0])

[lecture #11] 2015.11.26 Robust performance problem (3/3)

  1. review
    • robust performance problem with Delta hat and conservative design problem with Delta tilde
    • inclusion relation between two uncertain sets
  2. introduction of the scaled H infinity control problem
  3. how to determine structure of scaling matrix
  4. design example moved to next lecture
    % less conservative design 
    ex1105_2
    ex1105_3
    ex1119_1
    gam_opt0 = gam_opt;
    K_opt0 = K_opt;
  5. effect of scaling matrix moved to next lecture
  6. mini exam #1

[lecture #12] 2015.12.3 Robust performance problem (3/3) (cont.), Control system design for practical system (1/3)

  1. return of mini exam #1; schedule of mini report #2 and exam #2
  2. review of the scaled H infinity control problem
  3. comments on mu-synthesis prolem
  4. design example (moved from the previous lecture)
    % less conservative design 
    ex1105_2
    ex1105_3
    ex1119_1
    gam_opt0 = gam_opt;
    K_opt0 = K_opt;
  5. effect of scaling matrix (moved from the previous lecture)
  6. mini report #2 filereport2.pdf
    • write by hand
    • due date and place of submission -> see schedule2015
    • check if your answer is correct or not before submission by using Matlab
    • You will have a mini exam #2 related to this report
  7. controller design for practical system: active noise control in duct
    • introduction of experimental setup
    • objective of control system: to drive control loudspeaker by generating proper driving signal u using reference microphone output y such that the error microphone's output z is attenuated against the disturbance input w
    • frequency response experiment
%-- 12/3/2015 1:27 PM --%
ex1105_2
ex1105_3
ex1119_1
gam_opt0 = gam_opt;
K_opt0 = K_opt;
who
gam_opt0
ex1126_1
gam_opt
d_opt
ex1126_2
ex1203_1

[lecture #13] 2015.12.10 Control system design for practical system (2/3)

  1. return of mini report #2
  2. review of the experimental apparatus and frequency response experiment
  3. design example
    • determination of plant model(nominal plant and additive uncertainty weight)
      filenominal.m
      filesubspace.m ... replacement of n4sid in System Identification Toolbox (not provided in IPC)
      fileweight.m
    • configuration of generalized plant and controller design by scaled H infinity control problem using one-dimensional search on the scaling d
      filecont.m
    • comparison of closed-loop gain characteristics with and without control
      filecompare.m
    • result of control experiment
      fileresult.dat
      filecompare_result.m
  4. room 157 @ Dept. Mech. Bldg.2
ex1203_1
ctrlpref
ex1203_1
346/3.6
ex1203_1
nominal
weight
cont
nominal
compare
compare_result

[lecture #14] 2015.12.17 Control system design for practical system (3/3)

  1. final report
    1. design your controller(s) so that the system performance is improved compared with the design example introduced in the previous lecture
    2. Draw the following figures and explain the difference between two control systems (your controller and the design example):
      1. bode diagram of controllers
      2. gain characteristic of closed-loop system from w to z
      3. time response and frequency spectrum (PSD) of control experiment
    3. Why is the performance of your system improved(or unfortunately deteriorated)?
  2. how to improve the performance ?
    • order of the nominal plant
    • weighting for robust stability
  3. detailed explanation of m-files in the previous lecture
  4. specifications of the experimental system
    1. experimental equipments
    • loudspeakers: AURA SOUND NSW2-326-8A (2inch, 15W)
    • pressure sensors: NAGANO KEIKI KP15
    • A/D, D/A converters: CONTEC AD12-16(PCI), DA12-4(PCI)
    • PC: Dell Dimension 1100
    • OS: Linux kernel 2.4.22 / Real Time Linux 3.2-pre3
    1. program sources for frequency response experiment
    • freqresp.h
    • freqresp_module.c
    • freqresp_app.c
    • format of spk1.dat (u is used instead of w for spk2.dat)
      • 1st column ... frequency (Hz)
      • 2nd column ... gain from w(V) to y(V) (signal's unit is voltage (V))
      • 3rd column ... phase from w to y
      • 4th column ... gain from w to z
      • 5th column ... phase from w to z
    1. program sources for control experiment
    • hinf.h
    • hinf_module.c
    • hinf_app.c
    • format of result.dat
      • 1st column: time (s)
      • 2nd column: z (V)
      • 3rd column: y (V)
      • 4th column: u (V)
      • 5th column: w (V)
    1. configuration of control experiment
    • disturbance signal w is specified as described in hinf.h and hinf_module.c:
      #define AMP 3.0 // amplitude for disturbance
      #define DIST_INTERVAL 5 // interval step for updating w
      
      count_dist++;
      if(count_dist >= DIST_INTERVAL){
        w = AMP * (2. * rand() / (RAND_MAX + 1.) - 1.); // uniform random number in [-AMP, AMP]
        count_dist = 0;
      }
      
      da_conv(V_OFFSET + w, 0); // D/A output to noise source
      w is updated with 1ms period (sampling period 0.2ms times DIST_INTERVAL 5)
    • control signal u is limited to [-4, 4] as specified in hinf.h and hinf_module.c:
      #define U_MAX 4.00
      
      if(u > U_MAX) u = U_MAX;
      if(u < -U_MAX) u = -U_MAX;
      u is set to 0 for t < 10(s). (controller is operated for 10 <= t < 15.)
    • a high pass filter with cut-off frequency are used to cut DC components in z and y as described in hinf.h and hinf_module.c
      // HPF(1 rad/s) to cut DC in z and y
      #define AF 9.9980001999866674e-01  
      #define BF 1.9998000133326669e-04
      #define CF -1.0000000000000000e+00
      #define DF 1.0000000000000000e+00
      
      ad_conv(&yz); // A/D input
      
      // HPFs
      yf = CF*xf_y + DF*yz[0];
      xf_y = AF*xf_y + BF*yz[0];
      zf = CF*xf_z + DF*yz[1];
      xf_z = AF*xf_z + BF*yz[1];
      experiment directory
  5. mini exam #2
%-- 12/17/2015 1:36 PM --%
help bodemag

[lecture #15] 2015.12.24 Control system design for practical system (cont.)

%-- 12/24/2015 1:11 PM --%
compare

添付ファイル: file2015.12.24-1.jpg 615件 [詳細] file2015.12.17-1.jpg 570件 [詳細] file2015.12.10-1.jpg 635件 [詳細] file2015.12.10-2.jpg 599件 [詳細] filesubspace.m 472件 [詳細] fileresult.dat 462件 [詳細] filecompare.m 424件 [詳細] filecompare_result.m 446件 [詳細] filecont.m 460件 [詳細] fileweight.m 480件 [詳細] filenominal.m 532件 [詳細] file2015.12.03-1.jpg 786件 [詳細] file2015.12.03-2.jpg 675件 [詳細] file2015.12.03-3.jpg 689件 [詳細] filespk1.dat 486件 [詳細] filespk2.dat 486件 [詳細] fileex1203_1.m 449件 [詳細] fileexp_apparatus1.jpg 902件 [詳細] fileexp_apparatus2.jpg 811件 [詳細] filereport2.pdf 715件 [詳細] file2015.11.26-1.jpg 610件 [詳細] file2015.11.26-2.jpg 605件 [詳細] fileex1126_1.m 445件 [詳細] fileex1126_2.m 437件 [詳細] file2015.11.19-1.jpg 632件 [詳細] file2015.11.19-2.jpg 643件 [詳細] fileex1119_1.m 429件 [詳細] file2015.11.12-1.jpg 808件 [詳細] file2015.11.12-2.jpg 667件 [詳細] file2015.11.12-3.jpg 654件 [詳細] file2015.11.12-4.jpg 646件 [詳細] filereport1.pdf 692件 [詳細] fileex1112_1.m 437件 [詳細] file2015.11.05-1.jpg 599件 [詳細] file2015.11.05-2.jpg 570件 [詳細] file2015.11.05-3.jpg 570件 [詳細] fileex1105_1.m 435件 [詳細] fileex1105_2.m 440件 [詳細] fileex1105_3.m 436件 [詳細] file2015.10.29-1.jpg 637件 [詳細] file2015.10.29-2.jpg 611件 [詳細] file2015.10.29-3.jpg 639件 [詳細] fileex1029_1.m 460件 [詳細] fileex1029_2.m 466件 [詳細] fileex1029_3.m 440件 [詳細] filemod1029.mdl 460件 [詳細] filemap_v1.0_intro2.pdf 815件 [詳細] file2015.10.22-1.jpg 663件 [詳細] file2015.10.22-2.jpg 729件 [詳細] file2015.10.22-3.jpg 615件 [詳細] filemap_v1.0_intro1.pdf 1019件 [詳細] fileex1022_1.m 460件 [詳細] fileex1022_2.m 452件 [詳細] file2015.10.15-1.jpg 650件 [詳細] file2015.10.15-2.jpg 695件 [詳細] filemod1015.mdl 508件 [詳細] filehinf.pdf 1161件 [詳細] file2015.10.08-1.jpg 753件 [詳細] file2015.10.08-2.jpg 717件 [詳細] file2015.10.08-3.jpg 636件 [詳細] file2015.10.08-4.jpg 721件 [詳細] file2015.10.08-5.jpg 645件 [詳細] fileex1008.m 523件 [詳細] file2015.10.01-2.jpg 686件 [詳細] file2015.10.01-1.jpg 685件 [詳細] file2015.10.01-3.jpg 703件 [詳細] file2015.10.01-4.jpg 681件 [詳細] file2015.10.01-5.jpg 685件 [詳細] filemod1001.mdl 523件 [詳細] filelqr.pdf 1294件 [詳細] fileproof4.pdf 966件 [詳細] filefoo.jpg 265件 [詳細] file2015.09.10-1.jpg 701件 [詳細] file2015.09.10-2.jpg 701件 [詳細] file2015.09.10-3.jpg 728件 [詳細] file2015.09.10-4.jpg 704件 [詳細] filemod0910_2.mdl 538件 [詳細] fileex0910_2.m 473件 [詳細] fileex0910_1.m 487件 [詳細] filemod0910_1.mdl 492件 [詳細] filetext_fixed.pdf 5302件 [詳細] file2015.09.03-1.jpg 735件 [詳細] file2015.09.03-2.jpg 720件 [詳細] file2015.09.03-3.jpg 715件 [詳細] file2015.09.03-4.jpg 735件 [詳細] fileex0902.m 512件 [詳細] filemap_v1.0_review.pdf 906件 [詳細]

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2015-12-25 (金) 23:42:30