clear; clc
m500;
L25;
Iy1300;
Xudot130;
Xu94;
Zwdot110;
Zw4.7e2;
Zqdot120;
Zq9.5e2;
Mqdot120300;
Mq1.1e3;
Mwdot140300;
Mw320;
Xs13;
Xb13;
Umax3e6;
N6;
M3;
P3;
A0 1 0 0 0 0; 0 XumXudot 0 0 0 0; 0 0 0 1 0 0; 0 0 0 ZwIyMqZqdotMw
B0 0 0; 1mXudot 0 0; 0 0 0; 0 IyMqZqdotXsmZwdotIyMqZqdotMwdot
C1 0 0 0 0 0; 0 0 1 0 0 0; 0 0 0 0 1 0;
D0;
sysssA,B,C,D
sysA
x1 x2 x3 x4 x5 x6 x1 0 1 0 0 0 0 x2 00.188 0 0 0 0 x3 0 0 0 1 0 0 x4 0 0 0 0.9398 0 1.9 x5 0 0 0 0 0 1 x6 0 0 00.2909 0 1
B
u1 u2 u3
x1000
x20.00200
x3000
x400.0020.002
x5000
x60 0.0003030.000303
C
x1 x2 x3 x4 x5 x6
y1 1 0 0 0 0 0
y2 0 0 1 0 0 0
y3 0 0 0 0 1 0
D
u1 u2 u3
y1 0 0 0
y2 0 0 0
y3 0 0 0
1
Continuoustime statespace model.
sysrminrealsys;
Determine by Comparing Rank of A
if ranksys.Aranksysr.A
dispThe statespace model is a mininmum realization
else
dispThe statespace model is Not a minimum realization
end
The statespace model is a mininmum realization
This openloop system is completely controllable
for i1:M
for ji:M
sysisys:,i,j;
if rankctrbsysi.A, sysi.BN
if ij
fprintfThe subset i is completely controllablen, i
else
fprintfThe subset i, i is completely controllablen, i, j
end
else
if ij
if rankctrbsys.A,sys.BN
dispThis openloop system is completely controllable
else
dispThis openloop system is Not completely controllable
end
fprintfThe subset i is Not completely controllablen, i
else
fprintfThe subset i, i is Not completely controllablen, i, j
end
end end
end
The subset 1 is Not completely controllable
The subset 1, 2 is Not completely controllable
The subset 1, 3 is Not completely controllable
The subset 2 is Not completely controllable
The subset 2, 3 is Not completely controllable
The subset 3 is Not completely controllable
poleseigA;
wnabspoles2pi;
zetacosanglepoles;
openLooptablepoles,wn,zeta,VariableNames,Pole,Frequency,Damping;
dispopenLoop
2
PoleFrequencyDamping
0 0 1
0 0 1
1.7139 0.272771
0.225920.0359561
0 0 1
0.187990.0299191
X050; 100; 350; 300; 45; 0;
y,tinitialsys,X0;
plott,y:,1,t,y:,2,t,y:,3,Linewidth,2;
legendInterpreter, LaTeX,FontSize,14;
xlabelTime s;
ylabelDistance m;
titleOpen Loop Initial Value Response;
axis0 tend 500 700;
setgca,FontSize,12,Linewidth,2;
setgcf, PaperUnits, centimeters;
setgcf, PaperSize, 32 16;
grid on
s1lsiminfoy:,1,t,SettlingTimeThreshold,0.05
s1struct with fields: SettlingTime: 15.8175
Min: 50
3
MinTime: 0
Max: 581.3202
MaxTime: 35.8448
designCase5
switch designCase
case 1all three control signal torque exceed maximum, however, the settling time is
p211i;
p322i;
p422i;
p533i;
p633i;
case 2all control signal met the requirement, however, output 13 settling time ex
p20.10.1i;
p30.20.2i;
p40.20.2i;
p50.30.3i;
p60.30.3i;
case 3Both performance requirements are met
p10.20.2i;
p20.20.2i;
p30.30.3i;
p40.30.3i;
p50.40.4i;
p60.40.4i;
case 4Both performance requirements are met
p10.30.3i;
p20.30.3i;
p30.40.4i;
p40.40.4i;
p50.50.5i;
p60.50.5i;
case 5Both performance requirements are met
p10.40.4i;
p20.40.4i;
p30.50.5i;
p40.50.5i;
p50.60.6i;
p60.60.6i;
end
GplaceA,B,p1 p2 p3 p4 p5 p6;
uG50; 100; 350; 300; 45; 0;
sysGssABG,B,C,D;
TsstepinfosysG,SettlingTimeThreshold,0.05;
TsTs1,1.SettlingTime,Ts2,2.SettlingTime,Ts3,3.SettlingTime;
if maxTs1maxabsu3e6
dispBoth performance requirements are met
elseif maxabsu3e6maxTs1
dispEthier performance requirement is met
elseif maxTs1
dispOne of the settling time is more than 10 seconds
4
designCase5
else
dispOne of the control torque is greater than 2100 Nm
end
One of the settling time is more than 10 seconds
animateauvt,y:,1,y:,2,y:,3
5
Reviews
There are no reviews yet.