Matlab实验(四)
1.设定一个系统,并化简计算其传递函数并提取其分子分母的系数矩阵。
s=tf('s');%定义一个算子
sys1=1;
sys2=tf([31 2.9],[1 0]);
sys3=(0.035*s+0.022)/s;
sys4=tf([1],[1 0]);
sys5=1;
sys6=1;
output=tf([1],[1]);
input=tf([1],[1]);
sys=append(sys1,sys2,sys3,sys4,sys5,sys6,input,output);
Q=[1,7,0;
2,-6,7;
3,2,5;
4,-1,3;
5,3,1;
6,4,0;
7,0,0;
8,4,0];
sys=connect(sys,Q,7,8);%7为虚拟输入,8为虚拟输出。
sys=tf(sys)
[n,d]=tfdata(sys,'v')
sys =
0.1606 s^2 + 0.8575 s + 0.06611
------------------------------------
s^3 + 1.102 s^2 + 0.8119 s + 0.06611
Continuous-time transfer function.
n =
0 0.1606 0.8575 0.0661
d =
1.0000 1.1016 0.8119 0.0661
2. 用三种方法给出一下系统的x1波形和x2波形。
|
(1)方法一:simulink
(2)方法二:S函数
function [sys,x0]=trials4_2(t,x,u,flag)
if flag==1
sys=[x(2);9.81*sin(x(1))-2*x(2)+u];
elseif flag==3
sys=[x(1);x(2)];
elseif flag==0
sys=[2;0;2;1;0;0];
x0=[0;0];
else
sys=[];
end
end
(3)方法三:DEE工具箱
以上三种方法结果都是如下图所示: