28.01.2015 Views

controller structure & nonsmooth programming - Pierre Apkarian - Free

controller structure & nonsmooth programming - Pierre Apkarian - Free

controller structure & nonsmooth programming - Pierre Apkarian - Free

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

challenges <strong>nonsmooth</strong> opt. MATLAB tools The End<br />

workflow 1<br />

• specify tunable blocks in Simulink model<br />

ST = slTunable(’passenger_jet’,{’Ki’,’Kp’,’Kq’,’Kf’,’RollOff’});<br />

• initialize roll-off filter<br />

wn = realp(’wn’, 3); zeta = realp(’zeta’,0.8);<br />

Fro = tf(wn^2,[1 2*zeta*wn wn^2]);<br />

ST.setBlockParam(’RollOff’,Fro)<br />

• define spec. channels<br />

T1=ST.getIOTransfer(’Nzc’,’e’); % tracking<br />

T2=ST.getIOTransfer(’n’,’delta_m’); % roll-off<br />

T3=ST.getIOTransfer(’w’,’delta_m’); % margins<br />

• add weighting filters for each spec.<br />

H0 = blkdiag( W1*T1, W2*T2, W3*T3)<br />

Magnitude (dB)<br />

80<br />

60<br />

40<br />

20<br />

0<br />

−20<br />

−40<br />

−60<br />

W1 (tracking)<br />

W2 (roll−off)<br />

W3 (margins)<br />

Bode Diagram<br />

no cross terms here!<br />

−80<br />

−100<br />

−120<br />

10 −3 10 −2 10 −1 10 0 10 1 10 2 10 3 10 4 10 5<br />

Frequency (rad/s)<br />

<strong>controller</strong> <strong>structure</strong> & <strong>nonsmooth</strong> <strong>programming</strong> - http://pierre.apkarian.free.fr<br />

<br />

26 / 28

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!