阶变系统的开环传递函数 下载本文

内容发布更新时间 : 2024/5/18 5:07:25星期一 下面是文章的全部内容请认真阅读。

阶变系统的开环传递函数

clear all; Ap=1.68e-2; In=0.03; ps=4e6; pL=2*ps/3; Ki=188.6; Vt=2.873e-3; Kf=1; bate=6900e5; m=35000;

Wh=sqrt(4*bate*Ap^2/(m*Vt)) zuni1=0.3;

sys1=tf(1/Ap,[1/Wh^2 2*zuni1/Wh 1 0]) Wsv=157; zuni2=0.7; Ksv=1.96e-3;

sys2=tf(Ksv,[1/Wsv^2 2*zuni1/Wsv 1]) %系统的开环传递函数

sys_open=Ki*sys1*sys2 sysclose=feedback(sys_open,1); figure; %绘制nyquist曲线 subplot(121);pzmap(sys_open); grid on;

xlabel('实轴');ylabel('虚轴');title('零极点图'); subplot(122); nyquist(sys_open); grid on;

xlabel('实轴');ylabel('虚轴');title('Nyquist图'); figure; %时域分析 subplot(121);step(sysclose); grid on;

xlabel('时间');ylabel('振幅');title('阶跃响应'); subplot(122);impulse(sysclose); grid on;

xlabel('时间');ylabel('振幅');title('脉冲图响应'); figure; %绘制Bode图及其参数求解 w=logspace(-1,2); grid on;

margin(sys_open);

xlabel('频率');title('Bode图');

[mag,phase,W]=bode(sysclose,w); [l,c]=size(mag); mag1=zeros(c,l); for i=1:c

mag1(i)=10*log10(mag(1,1,i)); end

disp('-3dB频率:');

W_3dB=abs(interp1(mag1,W,-3,'spline')); grid on; Kv=Ki*Ksv/Ap; ef=0.02*0.003/Ki*Kf; vm=2.2e-2; er=vm/Kv; e=ef+er; [W_3dB e]