📄 pretest.m
字号:
M = 1.32;
m1 = 0.033;
m2 = 0.109;
m3 = 0.208;
L1 = 0.077;
L2 = 0.25;
g = 9.8;
k12 = 3*g*(2*m1 + 4*m2 + 4*m3)/(2*(4*m1 + 3*m2 + 12*m3)*L1);
k22 = 2*g*(m1 + 2*(m2 + m3))/(4*m2*L2 - (16/9)*(m1 + 3*(m2 + m3))*L2);
k13 = -9*m2*g/(2*(4*m1 + 3*m2 +12*m3)*L1);
k23 = 4*g*(m1 +3*(m2 + m3))/(3*(4*m2*L2-(16/9)*(m1 + 3*m2 + m3)*L2));
k17 = 3*(2*m1 + m2 + 4*m3)/(2*(4*m1 + 3*m2 + 12*m3)*L1);
k27 = (2*(m1 + 2*(m2 + m3)) - (4/3)*(m1 + 3*(m2 + m3)))/(4*m2*L2 - (16/9)*(m1 + 3*(m2 + m3)*L2));
a=[0 0 0 1 0 0;
0 0 0 0 1 0;
0 0 0 0 0 1;
0 0 0 0 0 0;
0 k12 k13 0 0 0;
0 k22 k23 0 0 0];
b=[0;
0;
0;
1;
k17;
k27];
c=[1 0 0 0 0 0 ;
0 1 0 0 0 0;
0 0 1 0 0 0
0 0 0 1 0 0;
0 0 0 0 1 0;
0 0 0 0 0 1];
n=length(a);
q1=zeros(n);
q1(:,1)=b;
for i=2:n
q1(:,i)=a*q1(:,i-1);
end
m=rank(q1)
if m==n
disp('System is controllable.');
else
disp('System state variables cannot be totally controlled.');
end
q2=zeros(6*n);
q2=[c;
c*a;
c*a*a;
c*a*a*a;
c*a*a*a*a;
c*a*a*a*a*a];
s=rank(q2)
if s==n
disp('System is observable.');
else
disp('System state variables cannot be totally observed');
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -