- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
8、lsim()函数的用法
[y,t,x]=lsim(sys,u,t); [y,t,x]=lsim(sys,u,t,x0);
9、dlsim()函数的用法
dlsim(sys,u); [y,x]=dlsim(sys,u,x0);
eg8. 求下列系统的正弦响应。其中:周期2*pi,时间 t=30s,采样周期取0.1s.
程序:
a=[-0.5 -0.8;0.4 0.4];b=[1;-1]; c=[2 -5]; d=2; sys=ss(a,b,c,d) [u,t]=gensig(‘sin’, 2*pi, 30, 0.1) lsim(sys,u,t)
11、dcgain()函数的用法
k=dcgain(sys);
12、feedback()函数的用法
离散系统函数的调用格式为
dnyquist(a,b,c,d,Ts) dnyquist(a,b,c,d,Ts,iu) dnyquist(a,b,c,d,Ts,iu,w)
其中
TS和w分别为频率特性的取样时间和对应的频 率向量
例例5-16、5-17
例 绘制
G(s)
s2
10 1.2s
10
的nyquist图和bode图。
程序: [u1, t1]=gensig(‘sin’, 2*pi, 50, 0.01); [u2, t2]=gensig(‘square’, 2*pi, 50, 0.01); plot(t1,u1,t2,u2) axis([0 50 -1.2 1.2]) xlabel(‘time/s’) ylabel(‘c(t)’)
幅频
相频 bode(sys); bode(sys,w); [mag,phase,w]=bode(num,den) [mag,phase]=bode(num,den,w) [mag,phase,w]=bode(A,B,C,D) [mag,phase,w]=bode(A,B,C,D,iu)
式中num,den和A,B,C,D分别为系统的开环传 递函数和状态方程的参数, w为Bode图的频率 点。
>> [Gm,Pm,Wcg,Wcp]=margin(k*ng,dg)
Gm =
4.0000
Pm = 41.5340
相位裕量
Wcg =
1.4142
Wcp =
0.6118
>> G=20*log10(Gm)
G=
12.0412
幅值裕量
练习 已知二阶系统的开环传递函数为 试绘制系统的Bode图
k=10; z=[-4]; p=[0 -0.5 -50 -50]; [num,den]=zp2tf(z,p,k); Bode(num,den); title(‘Bode plot’); grid on
(二)时域响应常用的Matlab函数:
产生输入信号:gensig 求取系统单位阶跃响应:step 求取系统的冲激响应:impulse 连续系统的零输入响应: initial 连续系统对任意输入的响应: lsim 求系统稳态值:dcgain 求具有反馈结构的闭环传函:feedback
对于离散系统只需在连续系统对应函数前加d 就可以,如dstep,dimpulse,dinitial,dlsim 等。调用格式与step、impulse类似。
y=step(numc,denc,t);
plot(t,y)
title(‘Step response’)
xlabel(‘Time/s’)
dc=dcgain(numc,denc)
dc=1.
eg10. 给出如下系统的开环传递函数,试用MATLAB 求取其单位加速度响应。
Gs
3
s2 s
4
程序: num=[3];den=[1 4 3 0 0 0]; t=0:0.1:20; y=step(num,den,t); plot(t,y) title(‘Step response’) xlabel(‘Time/s’)
的调用格式为
[Gm,Pm,Wcg,Wcp]=margin(sys)
或
[Gm,Pm,Wcg,Wcp]=margin(sys)
式中 Gm和Pm分别为系统的幅值裕量和相 位裕量,而Wcg 和Wcp分别为幅值裕量和 相位裕量处相应的频率值。
例5-2 已知二阶系统的开环传递函数为 试绘制系统的开环频率特性曲线
2、step()函数的用法
时
step(sys);step(sys,t);
间
y=step(num,den,t);
向 量
[y,x,t]=step(num,den);
0
[y,x,t]=step(A,B,C,D,iu);
[ ,t]
输 状 自时 出 态 动间 矩 轨 生序 阵 迹 成列
eg2. 求下列系统在输入信号为r(t)=10*1(t)输入时,系统 在[0 20s]的响应曲线。
5、dimpulse()函数的用法
dimpulse(numz,denz); dimpulse (A,B,C,D); dimpulse (A,B,C,D,iu);
第 个 输 入
iu
eg5. 将下列连续系统离散化,并求其离散状态系统的冲 激响应曲线。
程序: 离散化: a=[-0.5 -0.8;0.4 0];b=[1;-1]; c=[2 5]; d=0; [G,H,Cd,Dd]=c2dm(a,b,c,d,0.1) 冲激响应: dimpulse(G,H,Cd,Dd)
式 中 numz,denz 和 A,B,C,D 分 别 为 系 统 的 开 环 传递函数和状态方程的参数,Ts为取样频率,w 为Bode图的频率点。
3. 显示绘制结果
可以利用下面的MATLAB命令
>>subplot(2,1,1);semilogx(w,20*log10(mag))
>>subplot(2,1,2);semilogx(w,phase)
y=impluse (num,den,t);
向 量
[y,x,t]=impluse (num,den);
0
[y,x,t]=impluse (A,B,C,D,iu);
[ ,t]
输 状 自时 出 态 动间 矩 轨 生序 阵 迹 成列
eg4. 求下列系统的脉冲响应曲线。
程序: K=1;Z=[-1];P=[-2 -3]; [num,den]=zp2tf(Z, P, K); sys=tf(num,den); t=0:0.2:20; impulse(sys,t) xlabel(‘time/s’) ylabel(‘c(t)’)
第 个 输 入
iu
eg3. 求下列系统的阶跃响应曲线。
程序: numz=[1 -1.2 0.4]; denz=[1.2 -1.5 0.9]; dstep(numz,denz) xlabel(‘time/s’) ylabel(‘c(t)’)
4、impluse()函数的用法
时
impluse(sys); impluse(sys,t); 间
离散系统的调用格式为: 相频
[mag,phase,w]=dbode(numz,denz,Ts) 幅频 [mag,phase]=dbode(numz,denz,Ts,w)
[mag,phase,w]=dbode(A,B,C,D,Ts,iu) [mag,phase,w]=dbode(A,B,C,D,Ts,iu,w)
(2) Nyquist图
连续系统函数的调用格式为
nyquist(sys) nyquist(sys,w) [Re,Im,w]=nyquist(num,den) [Re,Im,w]=nyquist(num,den,w) [Re,Im,w]=nyquist(A,B,C,D)
其中
返回值Re,Im和w分别为频率特性的实部向量、 虚部向量和对应的频率向量
6、initial()函数的用法
[y,t,x]=initial(sys,x0); [y,t,x]=initial(sys,x0,t);
7、dinitial()函数的用法
dinitial(sys,x0); [y,x,n]=dinitial(sys,x0,n);
eg6. 求下列系统在x0=[1;1]时,系统的零输入响应。
1、gensig()函数的用法
[u,t]= gensig(type,tau) [u,t]= gensig(type,tau,tf,ts)
信 号 序时 列间
序 列
信 信持采 号 号续样 类 周时时 型 期间间
eg1. 生成一个周期为2*pi,持续时间为50s,采样时间 为0.01s的正弦波和方波信号。
常用的作图方法:Bode图,奈奎斯特图
频域响应常用的Matlab函数:
画Bode图:bode 画奈奎斯特图:nyquist 画尼克尔斯图:nichols 绘制零极点位置:pzmap 计算增益和相位裕度: margin
对于离散系统只需在连续系统对应函数前加d 就可以,如dbode,dnyquist,dnichols。调用 格式类似。
程序: K=10;Z=[-1];P=[-2 -3]; [num,den]=zp2tf(Z, P, K); sys=tf(num,den); t=0:0.2:20; step(sys,t) xlabel(‘time/s’) ylabel(‘c(t)’)
3、dstep()函数的用法
dstep(numz,denz); dstep(A,B,C,D); dstep(A,B,C,D,iu);
(1)Bode图
1. 产生频率向量——横轴 频率向量可由logspace( )函数来构成。此
函数的调用格式为 ω=logspace(m,n,npts) 此命令可生成一个以10为底的指数向量
(10m∽10n ),点数由npts任意选定。
npts
10m