连续和离散系统分析
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(s 1)(s 2)
试求系统的冲激响应和阶跃响应。
..w..
.
..
.
2、编制程序求解下列两个系统的单位冲激响应和阶跃响应,并绘出其图形。要
求分别用 filter、conv、impz 三种函数完成。给出理论计算结果和程序计算结
果并讨论。 (I) y[n] 0.75y[n 1] 0.125y[n 2] x[n] x[n 1]
y=impulse(sys,t) 连续时间系统阶跃响应可用 step 函数直接求出,其调用形式为:
y=step(sys,t) t 表示计算系统响应的抽样点向量, sys 是 LTI 系统模型.
2) matlab 中用于离散系统求解的命令有哪些?各基于什么求解方法?
答:①y=filter(p,d,x)用来实现差分方程,d 表示差分方程输出 y 的系数,p 表示输入 x 的系
0.25
0.25
0
单位阶跃响应:
N
0
1
2
3
4
5
y(n)
0
0.25
0.5
0.75
1
1
程序计算结果:
A:单位冲激响应 (1)用 filter 函数
(2)用 Conv 函数
(3)用 Impz 函数
..w..
.
B:单位阶跃响应 (1)用 filter 函数
..
.
(2)用 Conv 函数
Leabharlann Baidu
(3)用 Impz 函数
数,而 x 表示输入序列。输出结果长度数等于 x 的长度;
②y=conv(x,h)是用来实现卷积的,对 x 序列和 h 序列进行卷积,输出的结果个数等于 x
的长度与 h 的长度之和减去 1;
③y=impz(p,d,N)是用来实现冲击响应的,d 和 p 的定义同 filter,N 表示冲击响应输出的
序列个数。
..w..
..w..
.
..
.
4 计算上述系统在输入为 x(t) etu(t) 时的零状态响应。
程序:
ts=0;te=10;dt=0.01;
sys=tf([2 8],[1 5 6]);
t=ts:dt:te;
f=exp(-t);
y=lsim(sys,f,t);
plot(t,y)
xlabel('time(sec)')
ylabel('y(t)')
5 已知系统函数 H (z)
1 2z 1
,求
1 0.4z 1 0.12 z 2
1)离散系统的单位冲激响应 h(n);
2) 输入为 x(n) u(n) ,求系统的零状态响应。
程序:
num=[1 2];den=[1 0.4 0.12];
% system model
y1=impz(num,den,20);
..w..
.
..
.
五、思考题
1)连续系统响应的计算机求解可以分为哪些方法?各是什么原理?
答:①连续时间系统零状态响应的求解 y lsim(sys,f,t)
t 表示计算系统响应的抽样点向量,f 是系统输入信号向量 sys 是 LTI 系统模型,借助 tf 函数获得。
②连续系统冲激响应和阶跃响应的求解 连续时间系统冲激响应可用 impulse 函数直接求出,其调用形式为:
..w..
.
..
.
B:单位阶跃响应 (1)用 Filter 函数
(2)用 Conv 函数
(3)用 Impz 函数
..w..
.
..
.
(II) y[n] 0.25{x[n 1] x[n 2] x[n 3] x[n 4]}
理论计算结果:
单位冲激响应:
n
0
h(n)
0
1
2
3
4
5
0.25
0.25
.
..
.
实验一 连续和离散系统分析
一、实验目的 学习连续系统和离散系统响应的 matlab 求解方法;
二、实验主要仪器设备和材料 计算机
三、实验方法、步骤及结果测试 实验方法:编程,上机调试,分析实验结果; 步骤: 编程实现上述各实验容
四、实验结果 1、某系统的传递函数为:Y (s) / X (x) 1
3 已知描述某连续系统的微分方程为
y '' (t) 5y ' (t) 6 y(t) 2x' (t) 8x(t)
..w..
.
..
.
求该系统的单位冲激响应。
程序: b=[2 8];a=[1 5 6]; sys=tf(b,a); t=0:0.1:10; y=impulse(sys,t); plot(t,y); xlabel(‘时间(t)’);ylabel(‘y(t)’);tltle(‘单位冲激响应’);
..w..
.
..
.
6
已知某离散因果系统的系统函数
H
(
z)
1
1 z 1 z 1 0.5z
2
,试分析该系统的幅频特
性。
程序: num=[1 1]; den=[1 -1 0.5]; sys=tf(num,den); w=-10:0.001:10; H=freqs(num,den,w); subplot(2,1,1);plot(w,abs(H));title ('幅频特性'); subplot(2,1,2);plot(w,angle(H));tit le('相频特性');
subplot(121); stem(y1); title('impulse response');
n=0:20; x2=ones(1,21); y1filter=filter(num,den,x2); subplot(122); stem(n,y1filter); title('filter_step'); xlabel('x'); ylabel('y');
理论计算结果:
单位冲激响应:
n
0
h(n)
1
1
2
-1.75
1.19
3 -0.67
4 0.355
5 -0.18
单位阶跃响应:
n
0
y(n)
1
1
2
-0.75
0.44
3
4
-0.234
0.12
5 -0.06
程序计算结果:
A:单位冲激响应 (1)用 Filter 函数
(2)用 Conv 函数
(3)用 impz 函数
结论: y=filter(p,d,x)用来实现差分方程,d 表示差分方程输出 y 的系数,p 表示输入 x 的系数,而 x 表示输
入序列。输出结果长度数等于 x 的长度; 而 y=conv(x,h)是用来实现卷积的,对 x 序列和 h 序列进行卷积,输出的结果个数等于 x 的长度与 h
的长度之和减去 1; y=impz(p,d,N)是用来实现冲击响应的,d 和 p 的定义同 filter,N 表示冲击响应输出的序列个数。
试求系统的冲激响应和阶跃响应。
..w..
.
..
.
2、编制程序求解下列两个系统的单位冲激响应和阶跃响应,并绘出其图形。要
求分别用 filter、conv、impz 三种函数完成。给出理论计算结果和程序计算结
果并讨论。 (I) y[n] 0.75y[n 1] 0.125y[n 2] x[n] x[n 1]
y=impulse(sys,t) 连续时间系统阶跃响应可用 step 函数直接求出,其调用形式为:
y=step(sys,t) t 表示计算系统响应的抽样点向量, sys 是 LTI 系统模型.
2) matlab 中用于离散系统求解的命令有哪些?各基于什么求解方法?
答:①y=filter(p,d,x)用来实现差分方程,d 表示差分方程输出 y 的系数,p 表示输入 x 的系
0.25
0.25
0
单位阶跃响应:
N
0
1
2
3
4
5
y(n)
0
0.25
0.5
0.75
1
1
程序计算结果:
A:单位冲激响应 (1)用 filter 函数
(2)用 Conv 函数
(3)用 Impz 函数
..w..
.
B:单位阶跃响应 (1)用 filter 函数
..
.
(2)用 Conv 函数
Leabharlann Baidu
(3)用 Impz 函数
数,而 x 表示输入序列。输出结果长度数等于 x 的长度;
②y=conv(x,h)是用来实现卷积的,对 x 序列和 h 序列进行卷积,输出的结果个数等于 x
的长度与 h 的长度之和减去 1;
③y=impz(p,d,N)是用来实现冲击响应的,d 和 p 的定义同 filter,N 表示冲击响应输出的
序列个数。
..w..
..w..
.
..
.
4 计算上述系统在输入为 x(t) etu(t) 时的零状态响应。
程序:
ts=0;te=10;dt=0.01;
sys=tf([2 8],[1 5 6]);
t=ts:dt:te;
f=exp(-t);
y=lsim(sys,f,t);
plot(t,y)
xlabel('time(sec)')
ylabel('y(t)')
5 已知系统函数 H (z)
1 2z 1
,求
1 0.4z 1 0.12 z 2
1)离散系统的单位冲激响应 h(n);
2) 输入为 x(n) u(n) ,求系统的零状态响应。
程序:
num=[1 2];den=[1 0.4 0.12];
% system model
y1=impz(num,den,20);
..w..
.
..
.
五、思考题
1)连续系统响应的计算机求解可以分为哪些方法?各是什么原理?
答:①连续时间系统零状态响应的求解 y lsim(sys,f,t)
t 表示计算系统响应的抽样点向量,f 是系统输入信号向量 sys 是 LTI 系统模型,借助 tf 函数获得。
②连续系统冲激响应和阶跃响应的求解 连续时间系统冲激响应可用 impulse 函数直接求出,其调用形式为:
..w..
.
..
.
B:单位阶跃响应 (1)用 Filter 函数
(2)用 Conv 函数
(3)用 Impz 函数
..w..
.
..
.
(II) y[n] 0.25{x[n 1] x[n 2] x[n 3] x[n 4]}
理论计算结果:
单位冲激响应:
n
0
h(n)
0
1
2
3
4
5
0.25
0.25
.
..
.
实验一 连续和离散系统分析
一、实验目的 学习连续系统和离散系统响应的 matlab 求解方法;
二、实验主要仪器设备和材料 计算机
三、实验方法、步骤及结果测试 实验方法:编程,上机调试,分析实验结果; 步骤: 编程实现上述各实验容
四、实验结果 1、某系统的传递函数为:Y (s) / X (x) 1
3 已知描述某连续系统的微分方程为
y '' (t) 5y ' (t) 6 y(t) 2x' (t) 8x(t)
..w..
.
..
.
求该系统的单位冲激响应。
程序: b=[2 8];a=[1 5 6]; sys=tf(b,a); t=0:0.1:10; y=impulse(sys,t); plot(t,y); xlabel(‘时间(t)’);ylabel(‘y(t)’);tltle(‘单位冲激响应’);
..w..
.
..
.
6
已知某离散因果系统的系统函数
H
(
z)
1
1 z 1 z 1 0.5z
2
,试分析该系统的幅频特
性。
程序: num=[1 1]; den=[1 -1 0.5]; sys=tf(num,den); w=-10:0.001:10; H=freqs(num,den,w); subplot(2,1,1);plot(w,abs(H));title ('幅频特性'); subplot(2,1,2);plot(w,angle(H));tit le('相频特性');
subplot(121); stem(y1); title('impulse response');
n=0:20; x2=ones(1,21); y1filter=filter(num,den,x2); subplot(122); stem(n,y1filter); title('filter_step'); xlabel('x'); ylabel('y');
理论计算结果:
单位冲激响应:
n
0
h(n)
1
1
2
-1.75
1.19
3 -0.67
4 0.355
5 -0.18
单位阶跃响应:
n
0
y(n)
1
1
2
-0.75
0.44
3
4
-0.234
0.12
5 -0.06
程序计算结果:
A:单位冲激响应 (1)用 Filter 函数
(2)用 Conv 函数
(3)用 impz 函数
结论: y=filter(p,d,x)用来实现差分方程,d 表示差分方程输出 y 的系数,p 表示输入 x 的系数,而 x 表示输
入序列。输出结果长度数等于 x 的长度; 而 y=conv(x,h)是用来实现卷积的,对 x 序列和 h 序列进行卷积,输出的结果个数等于 x 的长度与 h
的长度之和减去 1; y=impz(p,d,N)是用来实现冲击响应的,d 和 p 的定义同 filter,N 表示冲击响应输出的序列个数。