matlab求冲激响应和阶跃响应
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、 已知微分方程:
()7()10()()6'()4()y t y t y t e t e t e t '''''++=++
1、使用M 语言编辑求解其冲激响应、阶跃响应,绘制图形,并求对应的时域连续解。
◆ 分析建模
对微分方程进行Laplace 变换,就可得到系统函数即传递函数:
2264()710
s s h s s s ++=++ 计算系统冲激响应
冲激函数的Laplace 变换为u(s)=1,则系统对冲激函数的响应的Laplace 变换
为y(s)=h(s)u(s),冲激响应就是h(s)的拉普拉斯反变换,可以把h(s)展开为极点留数式,由于分母多项式没有重根,故有k p t e ∑n
k k=1h(t)=r
计算系统阶跃响应
阶跃函数的Laplace 变换为u(s)=1/s ,则系统对阶跃函数的响应的Laplace 变
换为y(s)=h(s)u(s),阶跃响应就是h(s)/s 的拉普拉斯反变换。
◆ 源程序
function hipeer01
clear;clc;
a=[1,7,10];b=[1,6,4];
sys=tf(b,a);
t=0:0.1:10;
h=impulse(sys,t );%求冲激响应
plot( h );grid on;
title('冲激响应');xlabel('t');ylabel('h(t)');%画冲激响应图
end
function hipeer02
clear;clc;
a=[1,7,10];b=[1,6,4];
sys=tf(b,a);
t=0:0.1:10;
g=step( sys,t ) %求阶跃响应
plot( g );grid on;
title('阶跃响应');xlabel('t');ylabel('g(t)');%画阶跃响应图
end
◆ 结果
冲激响应的时域解:2541()()()()33
t t h t t e e u t δ--=+-+
阶跃响应的时域解:25212()()()3155
t t g t e e u t --=-+
2、 使用sinnlink 工具箱,求其在幅值为1,周期为1s , 5s ,10s 的方波信号使用下的响应,要求在同一图形窗口中绘制激励和响应波形。
◆ 分析建模
由1的分析可知系统的传递函数为
2264()710
s s h s s s ++=++ 波形发生器参数设置,选择方波信号,周期为分别1s , 5s ,10s ,用示波器显示经过传递函数处理后的输出波形,由于激励和响应波形要在同一窗口中显示,因此在输出端加一个mux 模块,将激励和响应同时由示波器输出。
◆ 模型文件建立方框图
◆ 输出波形图
周期为1s的方波激励输出波形
周期为5s的方波激励输出波形
周期为10s的方波激励输出波形
二、使用MATLAB做一个东西,或者实现一个东西。
◆在MATLAB环境下仿真巴特沃斯低通滤波器
已知某滤波器的技术指标为:通带截止频率,通带允许最大衰减,阻带下限频率,阻带允许最小衰减,设计满足各个条件的巴特沃斯低通滤波器,
并设计仿真程序检验所设计的滤波器,通带截止频率fp=9kHz ,通带允许最
大衰减1dB,阻带下限频率fs=15kHz,阻带允许最小衰减70dB
wp=5000*2*pi;
ws=15000*2*pi;
ap=1;
as=70;
Fs=15000;
Fp=9000;
[N,Wc]=buttord (wp,ws,ap,as,'s'); %选择滤波器的最小阶数
[Z,P,K]=buttap(N); %创建Butterworth低通滤波器原型
[A,B,C,D]=zp2ss(Z,P,K); %零极点增益模型转换为状态空间模型
[AT,BT,CT,DT]=lp2lp(A,B,C,D,Wc); %实现低通向低通的转变
[num1,den1]=ss2tf(AT,BT,CT,DT); %状态空间模型转换为传递函数模型
%运用双线性变换法把模拟滤波器转换成数字滤波器
[num2,den2]=bilinear(num1,den1,35000);
[H,W]=freqz(num2,den2); %求频率响应
plot(W*Fs/(2*pi),abs(H));grid; %绘出频率响应曲线xlabel('频率/Hz');ylabel('幅值');
仿真波形