借助MATLAB分析系统稳定性

%% 

% 借助MATLAB分析系统稳定性

 

% 1.控制系统闭环传递函数为(3*s^4+2*s^3+s^2+4*s+2)/(3*s^5+5*s^4+s^3+2*s^2+2*s+1),分析其稳定性。

num=[3,2,1,4,2];

den=[3,5,1,2,2,1];

[z,p]=tf2zp(num,den) %[z,p,k]=tf2zp(b,a)从传递函数参数b和a中找到零点矩阵z,极点向量p,

% 以及相关的增益向量 k。该函数将多项式传递函数表示转换为零极点增益形式。

pzmap(num,den) %零极点图

ii=find(real(p)>0) %k=find(X)返回一个包含数组X中每个非零元素的线性索引的向量。极点向量实部大于0

n1=length(ii)

if(n1>0),disp("System is unstable,with'int2str(n1)'unstable poles");

else disp("System is stable");

end

disp("The unstable poles are:"),disp(p(ii))

% 2.系统开环传递函数为G(s)=40/(s*(0.1*s+1)*(0.05*s+1)),绘制其乃式图及伯德图,并求出系统的相角裕量和幅值裕量。

sys=tf([40],[0.005,0.15,1,0]) %使用 tf 创建实数值或复数值传递函数模型,或将动态系统模型转换为传递函数形式。

nyquist(sys)

bode(sys)

[Gm,Pm,Wcg,Wcp]=margin(sys) %求稳定裕量,Gm为增益裕量,Pm为相位裕量,Wcg为相位-180°处的频率,Wcp为剪切频率

%% 
% 借助MATLAB分析系统稳定性
% 1.控制系统闭环传递函数为(3*s^4+2*s^3+s^2+4*s+2)/(3*s^5+5*s^4+s^3+2*s^2+2*s+1),
% 分析其稳定性。
num=[3,2,1,4,2];
den=[3,5,1,2,2,1];
[z,p]=tf2zp(num,den)   %[z,p,k]=tf2zp(b,a)从传递函数参数b和a中找到零点矩阵z,极点向量p,
% 以及相关的增益向量 k。该函数将多项式传递函数表示转换为零极点增益形式。
pzmap(num,den)               %零极点图
ii=find(real(p)>0)   %k=find(X)返回一个包含数组X中每个非零元素的线性索引的向量。极点向量实部大于0
n1=length(ii)
if(n1>0),disp("System is unstable,with'int2str(n1)'unstable poles");
else disp("System is stable");
end
disp("The unstable poles are:"),disp(p(ii))
% 2.系统开环传递函数为G(s)=40/(s*(0.1*s+1)*(0.05*s+1)),绘制其乃式图及伯德图,并求出系统的相角裕量和幅值裕量。
sys=tf([40],[0.005,0.15,1,0])  %使用 tf 创建实数值或复数值传递函数模型,或将动态系统模型转换为传递函数形式。
nyquist(sys)
bode(sys)
[Gm,Pm,Wcg,Wcp]=margin(sys)   %求稳定裕量,Gm为增益裕量,Pm为相位裕量,Wcg为相位-180°处的频率,Wcp为剪切频率

  • 10
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值