急急急!~帮忙解决Matlab的传递函数问题

哪为好心人能帮我做下题,小弟初学MATLAB,请帮我做下程序~
已知单位负反馈系统被控制对象的开环传递函数为:G(s)=K/S^2(0.2S+1),设计超前滞后校正环节G=KC*ATS+1/TS+1.
要求使其校正后系统单位斜坡响应可KA=10rad/S^2;开环系统剪切频率W>=20rad/s

给你我的一个我曾经编的超前校正的程序,可能有用:
对于函数功能不懂的,可以使用help命令:
function Gc=blead(G,kc,dPm)
dPm=50; %相位裕度/角度(包含5度的安全裕量);
kc=1; %设定开环增益;
G=tf([48e-3 48],[1e-9 1e-6 2e-3 1]); %生成待校正系统传递函数
[mag,phase,w]=bode(G*kc); %生成波特图矩阵形式(此处反馈系数设为1)
Mag=20*log10(mag); %生成开环幅值
[Gm,Pm.Wcg,Wcp]=margin(G*kc); %计算未校正系统的相角裕度;

phi=(dPm-getfield(Pm,'Wcg'))*pi/180; %计算网络系数
alpha=(1+sin(phi))/(1-sin(phi));
phi
Mn=-10*log10(alpha);
Wcgn=spline(Mag,w,Mn);%确定校正后系统的剪切频率Wcgn;
T=1/Wcgn/sqrt(alpha);
Tz=alpha*T; %确定校正器的交接频率(1/T和1/alpha*T)

Gc=tf([Tz 1],[T 1]); %得到校正器传函;
bode(G*Gc); %画出bode图
hold on;
bode(G);
温馨提示:内容为网友见解,仅供参考
第1个回答  2019-06-09
G(s)=k(S+1)/S^2(S+2)(S+4)

一个比例环节,当W等于1时,对应的增益为对K/2*4取对数再乘以20,等于0;
两个积分环节,即开始斜率是每十倍频程下降40分贝;
一个一阶微分环节,转折频率为1,斜率变为每十倍频程下降20分贝;
两个惯性环节,转折频率为2和4,斜率分别变为每十倍频程下降40分贝,和每十倍频程下降60分贝。
相角因为刚开始有两个积分环节,初始相角为-180;
然后,因为出现一阶微分环节,相角变为-90度
再然后,因为出现两个惯性环节,相角变为-270度,即最终的度数

急急急!~帮忙解决Matlab的传递函数问题
function Gc=blead(G,kc,dPm)dPm=50; %相位裕度\/角度(包含5度的安全裕量);kc=1; %设定开环增益;G=tf([48e-3 48],[1e-9 1e-6 2e-3 1]); %生成待校正系统传递函数 [mag,phase,w]=bode(G*kc); %生成波特图矩阵形式(此处反馈系数设为1)Mag=20*log10(mag); %...

matlab 传递函数问题
G=0.5\/(s^2+2*s+1); %传递函数表达式 U=50\/s; %输入 G1=G*U; %输出 F=ilaplace(G1);ezplot(2*F,[0 20]),grid on;

几种在matlab命令行求传递函数的方法
首先,定义符号变量,包括半通带宽度(Wc)、中心频率(W0)、带通增益系数(Kr)和s域符号(s)。同时,定义离散周期Ts和z域符号(z)。接着,定义准PR控制器的传递函数G1,表达式为 (2 xKr x Wc x s)\/(s^2+2 x Wc x s +W0^2)。这里的s域符号在MATLAB中用*代替。使用双线性法进行...

matlab中simulink传递函数的建模问题
先打开simulink,新建模型文件,然后从模块库里拖出传递函数模块,双击,设置传递函数的表达式,你这种最好用零极点模型,然后在拖出来一个延迟模块,双击设置延迟时间tao。接着把这两个模块串联起来。然后拖出一个step信号源和一个比较点,把他们之间连起来,再接一个负反馈到比较点,就完成了(如果这个直...

急求!怎样用MATLAB输入一个传递函数
1、将输入输出数据保存存到MATLAB的工作空间中;2、在MATLAB主界面的左下角,选择出系统辨识工具箱,具体操作如下图;3、下图是我们打开的系统辨识工具箱。4、载入数据,如图,选中要载入数据的类型。5、会跳出一个数据配置界面,在相应的位置填入输入输出数据的名字(在工作空间中的变量名);值得一提的...

如何使用Matlab绘制传递函数?
1、第一步,打开Matlab软件的Simulink库,见下图,转到下面的步骤。2、第二步,执行完上面的操作之后,依次单击“File”-->“New”-->“Model”选项,创建一个新的模型界面,见下图,转到下面的步骤。3、第三步,执行完上面的操作之后,绘制传递函数,使用Inport和Outport,见下图,转到下面的步骤。4...

matlab 传递函数
s=tf('s'); % 拉氏算子 wn=10;zeta=0.7; % 阻尼比 G=wn^2\/(s^2+2*zeta*wn*s+wn^2)

MATLAB问题 告诉了你一个传递函数,怎么用matlab画出图来呢?
1.在simulink里面搭建模型。拖入传递函数模块,激励模块以及scope等等,然后点击仿真,scope输出结果。2.在matlab的编程环境里编程,利用step ,impulse等函数画出响应图像。比如多输入多输出传递函数的阶跃响应编程如下:参考matlab help“step”a = [-0.5572 -0.7814;0.7814 0];b = [1 -1;0 ...

怎样用MATLAB计算一个传递函数的幅值和相角?
楼主你好,我们讲频域法,常用s域中的传递函数,令s=jw来求得A(w)=|G(jw)|,fai(w)=fai(G(jw))具体到本题,将s用jw代换,有G(jw)=(1+jw)\/(2+jw),这是一个复数 由复数乘积(商)的幅值等于各因子幅值的乘积(商),那么|G(jw)|=|1+jw|\/|2+jw| 一个复数的模值M=√(Re^2+Im^2)...

用Matlab解决,已知传递函数求其因式形式
功能的Cmax,TP,TS] = myfun(A) BR \/>粗略计算参数变化的阶跃响应峰值,峰值时间,调整时间 定义一个数组,如a = 1:0.1:5;N =长度(a)为I = 1:N %建立传递函数 数= [1];书房= [1 2(I)1];SYS0,= TF(NUM,DEN);Y0,T0 =步骤(SYS0);%计算 TP峰的Cmax,峰值时间...

相似回答
大家正在搜