实验二 离散时间信号的时域分析(附思考题程序)
实验二 离散时间信号的时域分析

实验二 离散时间信号的时域分析1.实验目的(1)学习MA TLAB 软件及其在信号处理中的应用,加深对常用离散时间信号的理解。
(2)利用MA TLAB 产生常见离散时间信号及其图形的显示,进行简单运算。
(3)熟悉MA TLAB 对离散信号的处理及其应用。
2.实验原理离散时间信号是时间为离散变量的信号。
其函数值在时间上是不连续的“序列”。
(1)单位抽样序列⎩⎨⎧=01)(n δ 00≠=n n 如果序列在时间轴上面有K 个单位的延迟,则可以得到)(k n -δ,即:1,()0,n k n k n kd ì=ïï-=íï¹ïî 该序列可以用MA TLAB 中的zeros 函数来实现。
(2)正弦序列)/2sin()(ϕπ+=Fs fn A n x可以利用sin 函数来产生。
(3)指数序列()(),n x n a n a R e =在MA TLAB 中通过:0:1;n N =-和.^;x a n =来实现。
3.实验内容及其步骤(1)复习有关离散时间信号的有关内容。
(2)通过程序实现上述几种信号的产生,并进行简单的运算操作。
单位抽样序列⎩⎨⎧=01)(n δ 00≠=n n 参考:% Generation of a Unit Sample Sequenceclf;% Generate a vector from -10 to 20n = -10:20;% Generate the unit sample sequenceu = [zeros(1,10) 1 zeros(1,20)];% Plot the unit sample sequencestem(n,u);xlabel('Time index n');ylabel('Amplitude');title('Unit Sample Sequence');axis([-10 20 0 1.2]);如果序列在时间轴上面有K 个单位的延迟,则可以得到)(k n -δ,即:1,()0,n k n k n kd ì=ïï-=íï¹ïî ,通过程序来实现如下所示结果。
离散时间系统时域特性分析实验总结报告(信号及系统)

南昌大学实验报告(信号与系统)学生姓名:学号:专业班级:通信实验类型:□验证□综合□设计□创新实验日期:2012.5.17 实验成绩:离散时间系统的时域特性分析一、实验项目名称: 离散时间系统的时域特性分析二、实验目的:线性时不变离散时间系统在时域中可以通过常系数线性差分方程来描述,冲激响应序列可以刻画其时域特性。
本实验通过使用MATLAB函数研究离散时间系统的时域特性,以加深对离散时间系统的差分方程、冲激响应系统的线性和时不变特性的理解。
三、实验基本原理一个离散时间系统是将输入序列变换成输出序列的一种运算。
若以T[·]表示这种运算,则一个离散时间系统可由图1-1来表示,即x(n) T[·] y(n)图1-1离散时间系统离散时间系统最重要的,最常用的是“线性时不变系统”。
1.线性系统4. 实验用matlab语言工具函数简介(1)产生N个元素矢量函数x=zeros(1,N)(2)计算系统的单位冲激响应h(n)的两种函数y=impz(b,a,N)功能:计算系统的激励响应序列的前N个取样点y=filter(b,a,x)功能:系统对输入进行滤波,如果输入为单位冲激序列δ(n),则输出y即为系统的单位冲激响应h(n).四、实验说明例1.1产生一个N=100的单位冲激序列。
>> N=100;>> u=[1 zeros(1,N-1)];>> Stem(0:N-1,u)>>例1.2产生一个长度为N=-100的单位阶跃响应>> N=100;>> s=[ones(1,N)];>> Stem(0:99,s);>> axis([0 100 0 2])例1.3产生一个正弦序列>> n=0:40;>> f=0.1;>> phase=0;>> A=1.5;>> arg=2*pi*f*n-phase; >> x=A*cos(arg);>> stem(n,x);>> axis([0 40 -2 2]); >> grid例1.4产生一个复指数序列>> c=-(1/12)+(pi/6)*i; >> k=2;>> n=0:40;>> x=k*exp(c*n);>> subplot(2,1,1);>> stem(n,imag(x)); >> subplot(2,1,2);>> stem(n,imag(x)); >> xlabel('时间序列n'); >> ylabel('信号幅度'); >> title('虚部');例1.5假设系统为y(n)-0.4y(n-1)+0.75y(n-2)=2.2403x(n)+2.4908x(n-1)+2.2403x(n-2),输入三个不同的序列x1(n),x2(n)和x9n)=ax1(n)+bx2(n),求y1(n),y2(n)和y(n),并判断此系统是否为线性系统。
实验二离散系统时域分析(2学时)

数字信号处理实验指导书山东大学控制学院生物医学工程专业刘忠国2015-2-10数字信号处理实验目录实验一离散时间信号与系统分析 (3)实验二离散时间信号与系统的Z变换分析 (7)实验三IIR滤波器的设计与信号滤波 (13)实验四用窗函数法设计FIR数字滤波器 (15)实验五用FFT作谱分析 (17)实验六综合实验 (19)附录:各实验参考程序 (20)实验一 离散时间信号与系统分析一、实验目的1.掌握离散时间信号与系统的时域分析方法。
2.掌握序列傅氏变换的计算机实现方法,利用序列的傅氏变换对离散信号、系统及系统响应进行频域分析。
3.熟悉理想采样的性质,了解信号采样前后的频谱变化,加深对采样定理的理解。
二、实验原理1.离散时间系统一个离散时间系统是将输入序列变换成输出序列的一种运算。
若以][⋅T 来表示这种运算,则一个离散时间系统可由下图来表示:图 离散时间系统输出与输入之间关系用下式表示)]([)(n x T n y = (1)离散时间系统中最重要、最常用的是线性时不变系统。
2.离散时间系统的单位脉冲响应设系统输入)()(n n x δ=,系统输出)(n y 的初始状态为零,这时系统输出用)(n h 表示,即)]([)(n T n h δ=,则称)(n h 为系统的单位脉冲响应。
可得到:)()()()()(n h n x m n h m x n y m *=-=∑∞-∞= (2) 该式说明线性时不变系统的响应等于输入序列与单位脉冲序列的卷积。
3.连续时间信号的采样采样是从连续信号到离散时间信号的过渡桥梁,对采样过程的研究不仅可以了解采样前后信号时域和频域特性发生的变化以及信号内容不丢失的条件,而且有助于加深对拉氏变换、傅氏变换、Z 变换和序列傅氏变换之间关系的理解。
对一个连续时间信号进行理想采样的过程可以表示为信号与一个周期冲激脉冲的乘积,即:)()()(ˆt t x t xT δ= (3)其中,)(ˆt xa 是连续信号)(t x a 的理想采样,)(t T δ是周期冲激脉冲 ∑∞-∞=-=m T mT t t )()(δδ 设模拟信号)(t x ,冲激函数序列)(t T δ以及抽样信号)(ˆt x的傅立叶变换分别为)(Ωj X 、)(Ωj M 和)(ˆΩj X,即 )]([)(t x F j X a a =Ω)]([)(t F j M T δ=Ω)](ˆ[)(ˆt x F j X=Ω 根据连续时间信号与系统中的频域卷积定理,式(3)表示的时域相乘,变换到频域为卷积运算,即)]()([21)(ˆΩ*Ω=Ωj X j M j X π其中⎰∞∞-Ω-==Ωdt e t x t x F j X t j )()]([)( 由此可以推导出∑∞-∞=Ω-Ω=Ωk s jk j X T j X )(1)(ˆ 由上式可知,信号理想采样后的频谱是原来信号频谱的周期延拓,其延拓周期等于采样频率。
实验二 离散时间信号与系统的时域分析

离散信号的表示离散信号的表示p124p124一个离散信号需要用两个向量来表示一个离散信号需要用两个向量来表示离散信号的幅值离散信号的幅值离散信号的位置信息离散信号的位置信息用用matlabmatlab实现离散信号的可视化实现离散信号的可视化不能利用符号运算来表示不能利用符号运算来表示绘制离散信号一般采用绘制离散信号一般采用stemstem命令
一些常用的离散信号(P134) 一些常用的离散信号(P134)
单位阶跃序列的表示:[x,n]=stepseq(n1,n2,n0)(自己 单位阶跃序列的表示:[x,n]=stepseq(n1,n2,n0)(自己 编写,参考P134,函数jyxl) 编写,参考P134,函数jyxl) function [x,n] = stepseq(n1,n2,n0) 1 n ≥ n0 u (n − n0 ) = n = [n1:n2]; 0 n < n0 x = [(n-n0) >= 0]; [(n例3:在 −5 ≤ k ≤ 5区间,画出u (k − 2)的波形
实验四-离散时间系统的频域分析(附思考题程序)

实验四 离散时间系统的频域分析1.实验目的(1)理解和加深傅里叶变换的概念及其性质。
(2)离散时间傅里叶变换(DTFT)的计算和基本性质。
(3)离散傅里叶变换(DFT)的计算和基本性质。
2.实验原理对离散时间信号进行频域分析, 首先要对其进行傅里叶变换, 通过得到的频谱函数进行分析。
离散时间傅里叶变换(DTFT, Discrete-time Fourier Transform)是傅立叶变换的一种。
它将以离散时间nT (其中 , T 为采样间隔)作为变量的函数(离散时间信号)f(nT)变换到连续的频域, 即产生这个离散时间信号的连续频谱 , 其频谱是连续周期的。
211200)()|()()DTFT kw N knTN N i iwT iwnT N n n F e f nT e f nT e 长度为N 的有限长信号x(n), 其N 点离散傅里叶变换为:10()[()]()kn N N n X k DFT x n x n W 。
X(k)的离散傅里叶逆变换为: 。
DTFT 是对任意序列的傅里叶分析, 它的频谱是一个连续函数;而DFT 是把有限长序列作为周期序列的一个周期, 对有限长序列的傅里叶分析, DFT 的特点是无论在时域还是频域都是有限长序列。
3.实验内容及其步骤(1)复习傅里叶变换的定义及其性质, 加深理解。
(2)熟悉离散时间傅里叶变换的概念及其性质。
参考一: 计算离散时间傅里叶变换, 并绘制图形。
已知有限长序列x(n)={1,2,3,4,5}。
n=-1:3;x=1:5;k=0:500;w=(pi/500)*k;X=x*(exp(-j*2*pi/500)).^(n'*k);magX=abs(X);angX=angle(X);realX=real(X);imagX=imag(X);subplot(2,2,1);plot(w/pi,magX);grid;xlabel('');ylabel('模值 ');title('模值部分');subplot(2,2,2);plot(w/pi,angX);grid;xlabel('pi 为单位');ylabel('弧度');title('相角部分');subplot(2,2,3);plot(w/pi,realX);grid;xlabel('');ylabel('实部');title('实部部分');subplot(2,2,4);plot(w/pi,imagX);grid;xlabel('pi为单位');ylabel('虚部');title('虚部部分');参考二: 计算离散时间傅里叶变换。
时域离散信号实验报告(3篇)

第1篇一、实验目的1. 理解时域离散信号的基本概念和特性。
2. 掌握时域离散信号的表示方法。
3. 熟悉常用时域离散信号的产生方法。
4. 掌握时域离散信号的基本运算方法。
5. 通过MATLAB软件进行时域离散信号的仿真分析。
二、实验原理时域离散信号是指在时间轴上取离散值的一类信号。
这类信号在时间上不连续,但在数值上可以取到任意值。
时域离散信号在数字信号处理领域有着广泛的应用,如通信、图像处理、语音处理等。
时域离散信号的基本表示方法有:1. 序列表示法:用数学符号表示离散信号,如 \( x[n] \) 表示离散时间信号。
2. 图形表示法:用图形表示离散信号,如用折线图表示序列。
3. 时域波形图表示法:用波形图表示离散信号,如用MATLAB软件生成的波形图。
常用时域离散信号的产生方法包括:1. 单位阶跃信号:表示信号在某个时刻发生突变。
2. 单位冲激信号:表示信号在某个时刻发生瞬时脉冲。
3. 正弦信号:表示信号在时间上呈现正弦波形。
4. 矩形脉冲信号:表示信号在时间上呈现矩形波形。
时域离散信号的基本运算方法包括:1. 加法:将两个离散信号相加。
2. 乘法:将两个离散信号相乘。
3. 卷积:将一个离散信号与另一个离散信号的移位序列进行乘法运算。
4. 反褶:将离散信号沿时间轴翻转。
三、实验内容1. 实验一:时域离散信号的表示方法(1)使用序列表示法表示以下信号:- 单位阶跃信号:\( u[n] \)- 单位冲激信号:\( \delta[n] \)- 正弦信号:\( \sin(2\pi f_0 n) \)- 矩形脉冲信号:\( \text{rect}(n) \)(2)使用图形表示法绘制以上信号。
2. 实验二:时域离散信号的产生方法(1)使用MATLAB软件生成以下信号:- 单位阶跃信号- 单位冲激信号- 正弦信号(频率为1Hz)- 矩形脉冲信号(宽度为2)(2)观察并分析信号的波形。
3. 实验三:时域离散信号的基本运算(1)使用MATLAB软件对以下信号进行加法运算:- \( u[n] \)- \( \sin(2\pi f_0 n) \)(2)使用MATLAB软件对以下信号进行乘法运算:- \( u[n] \)- \( \sin(2\pi f_0 n) \)(3)使用MATLAB软件对以下信号进行卷积运算:- \( u[n] \)- \( \sin(2\pi f_0 n) \)(4)使用MATLAB软件对以下信号进行反褶运算:- \( u[n] \)4. 实验四:时域离散信号的仿真分析(1)使用MATLAB软件对以下系统进行时域分析:- 系统函数:\( H(z) = \frac{1}{1 - 0.5z^{-1}} \)(2)观察并分析系统的单位冲激响应。
(完整版)数字信号处理实验二

y = filter(num,den,x,ic);
yt = a*y1 + b*y2;
d = y - yt;
subplot(3,1,1)
stem(n,y);
ylabel('振幅');
title('加权输入: a \cdot x_{1}[n] + b \cdot x_{2}[n]的输出');
subplot(3,1,2)
%扫频信号通过2.1系统:
clf;
n = 0:100;
s1 = cos(2*pi*0.05*n);
s2 = cos(2*pi*0.47*n);
a = pi/2/100;
b = 0;
arg = a*n.*n + b*n;
x = cos(arg);
M = input('滤波器所需的长度=');
num = ones(1,M);
三、实验器材及软件
1.微型计算机1台
2. MATLAB 7.0软件
四、实验原理
1.三点平滑滤波器是一个线性时不变的有限冲激响应系统,将输出延时一个抽样周期,可得到三点平滑滤波器的因果表达式,生成的滤波器表示为
归纳上式可得
此式表示了一个因果M点平滑FIR滤波器。
2.对线性离散时间系统,若y1[n]和y2[n]分别是输入序列x1[n]和x2[n]的响应,则输入
plot(n, y);
axis([0, 100, -2, 2]);
xlabel('时间序号 n'); ylabel('振幅');
离散时间信号与系统的时域分析实验报告

离散时间信号与系统的时域分析实验报告报告⼆:⼀、设计题⽬1.绘制信号)()(1k k f δ=和)2()(2-=k k f δ的波形2.绘制直流信号)()(1k k f ε=和)2(2-=k f ε的波形3绘制信号)()(6k G k f =的波形⼆实验⽬的1.掌握⽤MATLAB 绘制离散时间信号(序列)波形图的基本原理。
2.掌握⽤MATLAB 绘制典型的离散时间信号(序列)。
3.通过对离散信号波形的绘制与观察,加深理解离散信号的基本特性。
三、设计原理离散时间信号(也称为离放序列)是指在时间上的取值是离散的,只在⼀些离放的瞬间才有定义的,⽽在其他时间没有定义,简称离放信号(也称为离散序列) 序列的离散时间间隔是等间隔(均匀)的,取时间间隔为T.以f(kT)表⽰该离散序列,k 为整数(k=0,±1.±2,...)。
为了简便,取T=1.则f(kT)简记为f(k), k 表⽰各函数值在序列中出现的序号。
序列f(k)的数学表达式可以写成闭合形式,也可逐⼀列出f(k)的值。
通常,把对应某序号K0的序列值称为序列的第K0个样点的“样点值”。
四、设计的过程及仿真1clear all; close all; clc;k1=-4;k2=4;k=k1:k2;n1=0;n2=2;f1=[(k-n1)==0];f2=[(k-n2)==0];subplot(1,2,1)stem(k,f1,'fill','-k','linewidth',2);xlabel('k');ylabel('f_1(k)');title('δ(k)')axis([k1,k2,-0.1,1.1]);subplot(1,2,2)stem(k,f2,'filled','-k','linewidth',2);ylabel('f_2(k)');title('δ(k-2)')axis([k1,k2,-0.1,1.1]);程序运⾏后,仿真绘制的结果如图所⽰:2c lear all; close all; clc;k1=-2;k2=8;k=k1:k2;n1=0;n2=2; %阶跃序列开始出现的位置f1=[(k-n1)>=0]; f2=[(k-n2)>=0];subplot(1,2,1)stem(k,f1,'fill','-k','linewidth',2);xlabel('k');ylabel('f_1(k)');title('ε(k)')axis([k1,k2+0.2,-0.1,1.1])subplot(1,2,2)stem(k,f2,'filled','-k','linewidth',2);xlabel('k');ylabel('f_2(k)');title('ε(k-2)')axis([k1,k2+0.2,-0.1,1.1]);程序运⾏后,仿真绘制的结果如图所⽰:3clear all; close all; clc;k1=-2;k2=7;k=k1:k2; %建⽴时间序列n1=0;n2=6; f1=[(k-n1)>=0];f2=[(k-n2)>=0];f=f1-f2;stem(k,f,'fill','-k','linewidth',2);xlabel('k');ylabel('f(k)');title('G_6(k)')axis([k1,k2,-0.1,1.1]);程序运⾏后,仿真绘制的结果如图所⽰:五、设计的结论及收获实现了⽤matlab绘制离散时间信号, 通过对离散信号波形的绘制与观察,加深理解离散信号的基本特性。
离散时间信号的时域分析实验报告

离散时间信号的时域分析实验报告实验名称:离散时间信号的时域分析⼀、实验⽬的1.学会⽤MATLAB在时域中产⽣⼀些基本的离散时间信号,并对这些信号进⾏⼀些基本的运算。
2.熟悉MATLAB中产⽣信号和绘制信号的基本命令。
⼆、实验内容1.在载波信号xH[n]和调制信号xL[n]采⽤不同频率、不同调制指数m的情况下,运⾏程序P1.6,以产⽣振幅调制信号y[n]。
2.编写matlab程序,以产⽣图1.1和图1.2所⽰的⽅波和锯齿波序列,并将序列绘制出来。
三、主要算法与程序1.n=0:100;m=0.6;fH=0.2;fL=0.02;xH=sin(2*pi*fH*n);xL=sin(2*pi*fL*n);y=(1+m*xL).*xH;stem(n,y);grid;xlabel('时间序列');ylabel('振幅');通过改变m,fH和fL来产⽣不同情况下的振幅调制信号。
2.画出图⼆:n=0:1:30;y=3*square(n*pi/5,60);stem(n,y),grid onaxis([0,30,-4,4]);xlabel('时间序号n');ylabel('振幅');为画出图三,将占空⽐由图⼆的60改为30。
画出图四:n=0:1:50;y=2*sawtooth(n*pi/10,1);stem(n,y),grid onaxis([0,50,-2,2]);xlabel('时间序号n');ylabel('振幅');为画出图五,将图四中从-1到1的范围由1改为0.5。
四、实验结果与分析图⼀确定了数值:m=0.6,fH=0.2,fL=0.02,绘出图像。
图⼆图三图四图五五、实验⼩结通过这次实验,我熟悉MATLAB中产⽣信号和绘制信号的基本命令,学会⽤MATLAB在时域中产⽣⼀些基本的离散时间信号,并对这些信号进⾏⼀些基本的运算。
离散时间信号的时域分析实验报告讲解

subplot(121)
zplane(b7,a7)
title('极点在单位圆外的共轭复数')
subplot(122)
impz(b7,a7,30);gridon;
(2)实验结果
1、
1)
2)
3)
4)
6)
2、
3、
4、
5、
6、
7、
8、
9、
1)
2)
3)
4)
5)
6)
7)
三、教师评价
xlabel('n'),title('x(n)')
axis([-4 16 0 3])
subplot(312)
stem(nh,h,'fill'),gridon
xlabel('n'),title('h(n)')
subplot(313)
stem(ny,y,'fill'),gridon
xlabel('n'),title('y(n)=x(n)*h(n)')
Z=sym('(8*z-19)/(z^2-5*z+6)');
x=iztrans(Z);
simplify(x)
Z=sym('z*(2*z^2-11*z+12)/(z-1)/(z-2)^3');
x=iztrans(Z);
simplify(x)
6、对变换
B=[18];
A=[18,3,-4,-1];
[R,P,K]=residuez(B,A)
subplot(122)
实验二 离散时间系统分析

实验二离散时间系统分析
一、实验目的
1、掌握离散时间信号与系统的时域分析方法和频率分析方法。
2、掌握利用卷积方法观察分析系统的时域特性,掌握利用序列的傅里叶变换对连续信号、离散信号及系统响应进行频域分析。
二、实验设备
微型计算机、Matlab7.0教学版
三、实验原理
一个离散时间系统是将输入序列变换成输出序列的一种运算。
若以][⋅
T来表示这种运算,则一个离散时间系统可由下图来表示:Array
图离散时间系统
输出与输入之间关系用下式表示
T
n
y=
x
[
)]
(
)
(n
离散时间系统中最重要、最常用的是线性时不变系统。
四、实验内容
1、用Matlab编制时域分析的程序;
2、用Matlab编制频率分析的程序;
3、用Matlab软件画出时域波形、频率响应;
4、对结果进行分析;
五、实验结果
1、N取20个点时
程序框图
运算后图形
2、N取15个点时程序框图
运算后图形
六、实验总结
通过这次实验,我掌握了离散时间信号与系统的时域分析方法和频率分析方法,也更加熟悉了Matlab7.0这个软件。
本次实验也让我对离散时间信号有了新的认识,系统不仅是实物,也可以是一些通过编程来实现的功能的集合。
一个离散时间系统是将输入序列变换成输出序列的一种运算,而离散时间系统中最重要、最常用的是线性时不变系统。
实验二 离散时间信号的时域分析

实验二离散时间信号的时域分析周旺电子信息工程20112121097一、实验目的:学习使用MATLAB命令产生滑动平均滤波器;学习使用MATLAB命令产生一个简单的非线性离散时间系统;学习使用MATLAB命令产生线性与非线性系统;学习使用MATLAB命令产生时不变系统和时变系统;学习使用MATLAB命令产生线性时不变系统的冲激响应;学习使用MATLAB命令产生线性时不变系统的级联;学习使用MATLAB命令产生有限冲击响应系统的输出序列;学习使用MATLAB命令产生线性时不变系统的冲击响应的绝对值之和;学习使用MATLAB命令产生两个离散时间系统;二、实验原理简述:运用运算符和特殊符号,基本矩阵和矩阵控制,基本函数,数据分析,二维图形,通用图形函数,信号处理工具箱等命令,产生离散时间系统等。
三、实验内容与实验结果1、产生并绘制一个滑动平均滤波器运行程序clf;n=0:100;s1=cos(2*pi*0.05*n);s2=cos(2*pi*0.47*n);x=s1+s2;M=input('滤波器所需的长度=');num=ones(1,M);y=filter(num,1,x)/M;subplot(2,2,1);plot(n,s1);axis([0,100,-2,2]);xlabel('时间序号n');ylabel('振幅');title('信号#1');subplot(2,2,2);plot(n,s2);axis([0,100,-2,2]);xlabel('时间序号n');ylabel('振幅');title('信号#2');subplot(2,2,3);plot(n,x);axis([0,100,-2,2]);xlabel('时间序号n');ylabel('振幅');title('输入信号');subplot(2,2,4);plot(n,y);axis([0,100,-2,2]);xlabel('时间序号n');ylabel('振幅'); title('输出信号'); axis ;滤波器所需的长度=2 实验结果如图1所示 ans =0 100 -2 250100-2-1012时间序号n 振幅信号#150100-2-1012时间序号n 振幅信号#250100-2-1012时间序号n振幅输入信号50100-2-1012时间序号n振幅输出信号图12、生成一个简单的非线性离散时间系统: 运行程序: clf;n=0:200;x=sin(2*pi*0.05*n)+1; x1=[x 0 0]; x2=[0 x 0]; x3=[0 0 x];y=x2.*x2-x1.*x3; y=y(2:202); subplot(2,1,1) plot(n,x)xlabel('时间序号n');ylabel('振幅'); title('输入信号') subplot(2,1,2) plot(n,y)xlabel('时间序号n');ylabel('振幅'); title('输出信号'); 实验结果如图2所示0204060801001201401601802000.511.52时间序号n 振幅输入信号020406080100120140160180200-0.50.51时间序号n振幅输出信号图23.生成一个产生线性与非线性系统: 运行程序: clf; n=0:40; a=2;b=-3;x1=cos(2*pi*0.1*n); x2=cos(2*pi*0.4*n); x=a*x1+b*x2;num=[2.2403 2.4908 2.2403]; den=[1 -0.4 0.75]; ic=[0 0];y1=filter(num,den,x1,ic); y2=filter(num,den,x2,ic); y=filter(num,den,x,ic); yt=a*y1+b*y2; d=y-yt;subplot(3,1,1) stem(n,y);ylabel('振幅');title('加权输入:a\cdot x_{1}[n]+b\cdot x_{2}[n]的输出'); subplot(3,1,2) stem(n,y);ylabel('振幅');title('加权输出t:a\cdot y_{1}[n]+b\cdot y_{2}[n]'); subplot(3,1,3) stem(n,d);xlabel('时间序号n');ylabel('振幅'); title('差信号'); 实验结果如图3所示510152025303540-40-20020振幅加权输入:a ⋅ x 1[n]+b ⋅ x 2[n]的输出0510152025303540-50050振幅加权输出t:a ⋅ y 1[n]+b ⋅ y 2[n]0510152025303540-505x 10-15时间序号n振幅差信号图34、产生一个时不变系统和时变系统: 运行程序: clf;n=0:40;D=10;a=3.0;b=-2;x=a*cos(2*pi*0.1*n)+b*cos(2*pi*0.4*n); xd=[zeros(1,D) x];num=[2.2403 2.4908 2.2403]; den=[1 -0.4 0.75]; ic=[0,0];y=filter(num,den,x,ic);yd=filter(num,den,xd,ic); d=y-yd(1+D:41+D); subplot(3,1,1) stem(n,y);ylabel('振幅');title('输出y[n]');grid; subplot(3,1,2) stem(n,yd(1:41)); ylabel('振幅');title(['由于延时输入x[n',num2str(D),']的输出']);grid; subplot(3,1,3) stem(n,d);xlabel('时间序号n');ylabel('振幅'); title('差值信号');grid; 实验结果如图4所示510152025303540-40-20020振幅输出y[n]0510152025303540-50050振幅由于延时输入x[n10]的输出0510152025303540-101时间序号n振幅差值信号图45、产生线性时不变系统的冲激响应: 运行程序: clf; N=40;num=[2.2403 2.4908 2.2403]; den=[1 -0.4 0.75]; y=impz(num,den,N); stem(y);xlabel('时间序号n');ylabel('振幅'); title('冲激响应');grid; 实验结果如图5所示:510152025303540-3-2-101234时间序号n振幅冲激响应图56、编写程序得到线性时不变系统的级联: 运行程序: clf;x=[1 zeros(1,40)]; n=0:40;den=[1 1.6 2.28 1.325 0.68];num=[0.06 -0.19 0.27 -0.26 0.12]; y=filter(num,den,x);num1=[0.3 -0.2 0.4];den1=[1 0.9 0.8]; num2=[0.2 -0.5 0.3];den2=[1 0.7 0.85]; y1=filter(num1,den1,x); y2=filter(num2,den2,y1); d=y-y2;subplot(3,1,1); stem(n,y);ylabel('振幅');title('四阶实现的输出');grid subplot(3,1,2); stem(n,y2);ylabel('振幅');title('级联实现的输出');grid subplot(3,1,3); stem(n,d);xlabel('时间序号n');ylabel('振幅'); title('差值信号');grid ; 实验结果如图6所示:0510152025303540-101振幅四阶实现的输出0510152025303540-101振幅级联实现的输出510152025303540-0.500.5x 10-14时间序号n振幅差值信号图67、产生一个振幅调制信号: 运行程序: clf;h=[3 2 1 -2 1 0 -4 0 3]; x=[1 -2 3 -4 3 2 1]; y=conv(h,x); n=0:14;subplot(2,1,1); stem(n,y);xlabel('时间序号n');ylabel('振幅'); title('用卷积得到的输出');grid; x1=[x zeros(1,8)]; y1=filter(h,1,x1); subplot(2,1,2); stem(n,y1);xlabel('时间序号n');ylabel('振幅');title('由滤波生成的输出');grid;实验结果如图7所示:02468101214-20-1001020时间序号n 振幅用卷积得到的输出2468101214-20-1001020时间序号n振幅由滤波生成的输出图78、产生线性时不变系统的冲击响应的绝对值之和:运行程序: clf;num=[1 -0.8];den=[1 1.5 0.9]; N=200;h=impz(num,den,N+1); parsum=0; for k=1:N+1;parsum=parsum+abs(h(k));if abs(h(k))<10^(-6),break,end end n=0:N; stem(n,h)xlabel('时间序号n');ylabel('振幅'); disp('值=');disp(abs(h(k))); 结果得 值=1.6761e-005实验结果如图8所示:020406080100120140160180200-3-2-1123时间序号n振幅图89、产生两个离散时间系统:运行程序: clf;n=0:299;x1=cos(2*pi*10*n/256); x2=cos(2*pi*100*n/256); x=x1+x2;num1=[0.5 0.27 0.77]; y1=filter(num1,1,x); den2=[1 -0.53 0.46]; num2=[0.45 0.5 0.45]; y2=filter(num2,den2,x); subplot(2,1,1);plot(n,y1);axis([0 300 -2 2]); ylabel('振幅');title('系统#1的输出'); grid;subplot(2,1,2);plot(n,y2);axis([0 300 -2 2]);xlabel('时间序号n');ylabel('振幅'); title('系统#2的输出'); grid;实验结果如图9所示:050100150200250300-2-1012振幅系统#1的输出050100150200250300-2-1012时间序号n振幅图9四、实验分析:针对实验1 产生滑动平均滤波器;s1=cos(2*pi*0.05*n);即产生一个低频正弦信号; s2=cos(2*pi*0.47*n);即产生一个高频正弦信号; x=s1+s2;即滑动平均滤波器的实现;M=input('滤波器所需的长度=');即定义输入; num=ones(1,M);y=filter(num,1,x)/M;即定义滑动平均滤波器;此程序是通过从若干个正弦信号之和所组成的信号中滤出高频分量,来实现滑动平均滤波器。
实验二离散时间系统的时域分析实验

数字信号处理——实验二武汉工程大学电气信息学院通信工程红烧大白兔一、实验目的1、在时域中仿真离散时间系统,进而理解离散时间系统对输入信号或延时信号进行简单运算处理,生成具有所需特性的输出信号的方法。
2、仿真并理解线性与非线性、时变与时不变等离散时间系统。
3、掌握线性时不变系统的冲激响应的计算并用计算机仿真实现。
4、仿真并理解线性时不变系统的级联、验证线性时不变系统的稳定特性。
二、实验设备计算机,MATLAB语言环境三、实验根底理论1、系统的线性线性性质表现为系统满足线性叠加原理:假设某一输入是由N个信号的加权和组成的,输出就是由系统对这N个信号中每一个的响应的相应加权和组成的。
设x1〔n〕和〔n〕分别作为系统的输入序列,其输出分别用y1(n)和y2(n)表示,即Y1(n)=T[x1(n)],y2(n)=T[x2(n)]假设满足T[a1x1(n)+a2x2(n)]=a1y1(n)+a2y2(n)x2那么那么该系统服从线性叠加原理,或者称为该系统为线性系统。
2、系统的时不变特性假设系统的变换关系不随时间变化而变化,或者说系统的输出随输入的移位而相应移位但形状不变,那么称该系统为时不变系统。
对于时不变系统,假设y(n)=T[x(n)]那么T[x(n-m)]=y(n-m)3、系统的因果性系统的因果性既系统的可实现性。
如果系统n时刻的输出取决于n时刻及n时刻以前的输入,而和以后的输入无关,那么该系统是可实现的,是因果系统。
系统具有因果性的充分必要条件是h(n)=0,n<04、系统的稳定性稳定系统是指有界输入产生有界输出〔BIBO)的系统。
如果对于输入序列x(n),存在一个不变的正有限值M,对于所有n值满足|x(n)|≤M<∞那么称该输入序列是有界的。
稳定性要求对于每个有界输入存在一个不变的正有限值K,对于所有n值,输出序列y(n)满足|y(n)|≤K<∞系统稳定的充分必要条件是系统的单位取样响应绝对可和,用公式表示为|h(n)|n5、系统的冲激响应设系统输入x(n)=δ(n),系统输出y(n)的初始状态为零,这时系统输出用即h(n)=T[δ(n)]那么称h(n)为系统的单位脉冲响应。
武汉工程大学matlab实验二离散时间信号的分析实验【范本模板】

武汉工程大学数字信号处理实验报告二专业班级:14级通信03班学生姓名:秦重双学号:1404201114实验时间:2017年5月3日实验地点:4B315指导老师: 杨述斌实验一离散时间信号的分析实验一、实验目的①认识常用的各种信号,理解其数学表达式和波形表示。
②掌握在计算机中生成及绘制数值信号波形的方法。
③掌握序列的简单运算及计算机实现与作用。
④理解离散时间傅里叶变换、Z变换及它们的性质和信号的频域特性。
二、实验设备计算机,MATLAB语言环境。
三、实验基础理论1、序列的相关概念离散时间信号用一个称为样本的数字序列来表示。
一般用{x[n]}表示,其中自变量n的取值范围是﹣∞到﹢∞之间的整数。
为了表示方便,序列通常直接用x[n]表示。
离散时间信号可以是一个有限长序列,也可以是一个无限长序列。
有限长(也称为有限时宽)序列仅定义在有限的时间间隔中:﹣∞≤N1 ≤N2 ≤+∝。
有限长序列的长度或时宽为N=N1 -N2+1。
满足x[n+kN]=x[n](对于所有n)的序列称为周期为N的周期序列,其中N取任意正整数;k取任意整数;2、常见序列常见序列有单位取样值信号、单位阶跃序列、矩形序列、斜变序列、单边指数序列、正弦序列、复指数序列等。
3、序列的基本运算序列的基本运算有加法、乘法、倒置(反转)、移位、尺度变换、卷积等。
4、离散傅里叶变换的相关概念5、Z变换的相关概念四.实验内容与步骤1、知识准备认真复习以上基础理论,理解本实验所用到的实验原理。
2、离散时间信号(序列)的产生利用MATLAB语言编程和绘制单位样值信号、单位阶跃序列、指数序列、正弦序列及随机离散信号的波形,以加深对离散信号时域表示的理解。
①单位取样值信号Matlab程序x=0;y=1;stem(x,y);title('单位样值’);axis([—2,2,0,1]);②单位阶跃序列Matlab程序n0=0;n1=—5;n2=5;n=[n1:n2];x=[(n—n0)>=0];stem(n,x);xlabel('n');ylabel(’x(n)’);title(’单位阶跃序列’);③指数序列、正弦序列Matlab程序n=[0:10];x=(1/3)。
实验二 离散信号与系统的时域分析

实验二 离散信号与系统的时域分析一、实验目的1.学会用MA TLAB 表示常用离散信号的方法;2.学会用MA TLAB 实现离散信号卷积的方法;3. 学会用MATLAB 求解离散系统的单位响应;4. 学会用MATLAB 求解离散系统的零状态响应;二、实验原理1.离散信号的MA TLAB 表示表示离散时间信号f(k)需要两个行向量,一个是表示序号k=[ ],一个是表示相应函数值f=[ ],画图命令是stem 。
例2-1正弦序列信号 正弦序列信号可直接调用MATLAB 函数cos ,例)cos(ϕω+k ,当ωπ/2是整数或分数时,才是周期信号。
画)8/cos(ϕπ+k ,)2cos(k 波形程序是: k=0:40;subplot(2,1,1)stem(k,cos(k*pi/8),'filled')title('cos(k*pi/8)')subplot(2,1,2)stem(k,cos(2*k),'filled')title('cos(2*k)')例2-2 单位序列信号 ⎩⎨⎧≠==0001)(k k k δ 本题先建立一个画单位序列)(0k k +δ的M 函数文件,画图时调用。
M 文件建立方法:file / new / m-file 在文件编辑窗输入程序,保存文件名用函数名。
function dwxulie(k1,k2,k0) % k1 , k2 是画图时间范围,k0是脉冲位置k=k1:k2;n=length(k);f=zeros(1,n);f(1,-k0-k1+1)=1;stem(k,f,'filled')axis([k1,k2,0,1.5])title('单位序列δ(k)')保存文件名dwxulie.m画图时在命令窗口调用,例:dwxulie(-5,5,0)例2-3 单位阶跃序列信号 ⎩⎨⎧<≥=0001)(k k k ε本题也可先建立一个画单位阶跃序列)(0k k +ε的M 函数文件,画图时调用。
离散时间信号的时域分析(西工大版)

实验7 离散时间信号的时域分析一.实验目的1.掌握离散时间信号时域运算的基本实现方法。
2.熟悉相关函数的调用格式及作用。
3.掌握离散信号的基本运算。
4.掌握信号的分解,会将任意离散信号分解为单位脉冲信号的线性组合。
二.实验原理离散时间信号的运算包括信号的相加和相乘。
信号的时域变换包括信号的平移、翻转、倒相以及尺度变换。
三.涉及的MA TLAB函数fliplr 函数功能:实现矩阵行元素的左右翻转调用格式:B=fliplr(A) 其中A指要翻转的矩阵四.实验内容与方法1.验证性实验1)序列的加法clear all;x1=-2:2;k1=-2:2;x2=[1,-1,1];k2=-1:1;k=min([k1,k2]):max([k1,k2]);f1=zeros(1,length(k));f2=zeros(1,length(k));f1(find((k>=min(k1))&(k<=max(k1))==1))=x1;f2(find((k>=min(k2))&(k<=max(k2))==1))=x2;f=f1+f2;stem(k,f,'filled');axis([min(k)-1,max(k)+1,min(f)-0.5,max(f)+0.5]);实验结果:序列的加法2)序列的乘法clear all;x1=-2:2;k1=-2:2;x2=[1,-1,1];k2=-1:1;k=min([k1,k2]):max([k1,k2]);f1=zeros(1,length(k));f2=zeros(1,length(k));f1(find((k>=min(k1))&(k<=max(k1))==1))=x1;f2(find((k>=min(k2))&(k<=max(k2))==1))=x2;f=f1.*f2;stem(k,f,'filled');axis([min(k)-1,max(k)+1,min(f)-0.5,max(f)+0.5]);实验结果:序列的乘法-3-2-101233)序列的倒相clear all;x1=-2:2;k1=-2:2;k=k1;f=-x1;stem(k,f,'filled');axis([min(k)-1,max(k)+1,min(f)-0.5,max(f)+0.5]);实验结果:序列的倒相-3-2-101234)序列的翻转clear all;x1=-2:2;k1=-2:2;k=-fliplr(k1);f=fliplr(x1);stem(k,f,'filled');axis([min(k)-1,max(k)+1,min(f)-0.5,max(f)+0.5]);实验结果:序列的翻转5)序列的平移clear all;x1=-2:2;k1=-2:2;k0=2;k=k1+k0;f=x1;stem(k,f,'filled');axis([min(k)-1,max(k)+1,min(f)-0.5,max(f)+0.5]);实验结果:序列的平移2.程序设计实验已知序列f(k)={2,3,1,2,3,4,3,1},对应的k值为-3=<k=<4,分别绘出下列信号的图形:f1(k)=f(k-2),f2(k)=f(-k),f3(k)=f(k-1)U(k),f4(k)=f(-k+2),f5(k)=f(k+1),f6(k)=f(k-2)U(k),f7(k)=f(k+2)U(k)五.实验结果(程序设计实验源程序和结果)1)f1(k)=f(k-2)clear all;x1=[2,3,1,2,3,4,3,1];k1=-3:4;k0=2;k=k1+k0;f=x1;stem(k,f,'filled');axis([min(k)-1,max(k)+1,min(f)-0.5,max(f)+0.5]);实验结果:f1(k)=f(k-2)2)f2(k)=f(-k)clear all;x1=[2,3,1,2,3,4,3,1];k1=-3:4;k=-k1;f=x1;stem(k,f,'filled');axis([min(k)-1,max(k)+1,min(f)-0.5,max(f)+0.5]);实验结果:f2(k)=f(-k)3)f3(k)=f(k-1)U(k)clear all;x1=[2,3,1,2,3,4,3,1];u=[zeros(1,3),ones(1,5)];k1=-3:4;k0=1;k=k1+k0;f=x1.*u;stem(k,f,'filled');axis([min(k)-1,max(k)+1,min(f)-0.5,max(f)+0.5]); 实验结果:f3(k)=f(k-1)U(k)4)f4(k)=f(-k+2)clear all;x1=[2,3,1,2,3,4,3,1];k1=-3:4;k0=2;k=-k1+k0;f=x1;stem(k,f,'filled');axis([min(k)-1,max(k)+1,min(f)-0.5,max(f)+0.5]); 实验结果:f4(k)=f(-k+2)clear all;x1=[2,3,1,2,3,4,3,1];k1=-3:4;k0=-1;k=k1+k0;f=x1;stem(k,f,'filled');axis([min(k)-1,max(k)+1,min(f)-0.5,max(f)+0.5]); 实验结果:f5(k)=f(k+1)6)f6(k)=f(k-2)U(k)clear all;x1=[2,3,1,2,3,4,3,1];u=[zeros(1,1),ones(1,7)];k1=-3:4;k0=2;k=k1+k0;f=x1.*u;stem(k,f,'filled');axis([min(k)-1,max(k)+1,min(f)-0.5,max(f)+0.5]); 实验结果:-2-101234567f6(k)=f(k-2)U(k)clear all;x1=[2,3,1,2,3,4,3,1];u=[zeros(1,5),ones(1,3)];k1=-3:4;k0=-2;k=k1+k0;f=x1.*u;stem(k,f,'filled');axis([min(k)-1,max(k)+1,min(f)-0.5,max(f)+0.5]); 实验结果:f7(k)=f(k+2)U(k)。
实验2 离散信号和系统的时域分析

实验二 离散信号和系统的时域分析1. 实验目的(1) 学习MA TLAB 在信号分析和系统分析中的应用;(2) 掌握MA TLAB 表示离散序列的方法、序列运算的MA TLAB 实现;(3) 利用MA TLAB 分析离散系统。
2. 实验原理(1) 离散信号的表示:在MA TLAB 中,可以用向量(数组)来表示有限长序列,不过这样的向量并没有包含样本位置的信息,因此,需要用两个向量(数组)来表示一个有限长序列,其中一个向量表示序列的值,称为样本向量;另一个向量表示样本的位置(即序列的序号),称为位置向量。
比如序列(){}22,1,1,1,5,2f n -=-在MA TLAB 中需要用以下两个向量来表示:n = [-2,-1,0,1,2,3]; x = [2,1,-1,5,2]; 其中 向量n 表示序号,向量x 表示序列的值。
当不需要样本位置信息或者序列从n = 0 开始时,可以只用样本向量表示。
另外由于内存的限制,MA TLAB 无法表示无限长序列。
(2) 离散信号的基本运算○1 信号相加:序列相加是对应样本相加,如果两序列长度不等或者位置向量不同,则不能用算数运算符“+”直接实现相加,必须对位置向量和长度统一处理后再相加。
以下M 函数可以实现任意两序列的相加运算:function [y, n] = sigadd(f1,n1,f2,n2)% [y n] = sigadd(f1,n1,f2,n2),Add two sequences.% Inputs:% f1 ---- the first sequence% n1 ---- index vector of f1% f2 ---- the second sequence% n2 ---- index vector of f2% Outputs:% y ---- the output sequence% n ---- index vector of yn = min(n1(1),n2(1)):max(n1(end),n2(end)); % index vector of y(n) y1 = zeros(1,length(n)); y2 = y1; % initialization y1(n >= n1(1) & n <= n1(end)) = f1;y2(n >= n2(1) & n <= n2(end)) = f2;y = y1 + y2;○2 序列的移位:序列移位后,样本向量没有变化,只是位置向量变了。
信号与线性系统--实验二时域离散时间信号的描述及计算

职教学院电子Z111班覃春苗 201102203001实验二 时域离散时间信号的描述及计算【实验目的】通过利用MATLAB 语言软件实现离散信号的描述和运算练习,熟悉掌握实现基本离散信号时域运算的方法。
对常见离散时间信号的描述及运算内容进行验证性操作练习,掌握用于实现正弦序列、周期方波序列、单位脉冲序列、单位阶跃序列、指数序列等常见信号的程序方法,熟悉和掌握对离散时间信号进行离散卷积、自相关函数、移位、翻转、尺度变换等时域运算的程序方法。
【实验原理】表示离散时间信号f(k)需要两个行向量,一个是表示序号k=[ ],一个是表示相应函数值f=[ ],画图命令是stem 。
【实验内容】1.实验中用于实现正弦序列、周期方波序列、单位脉冲序列、单位阶跃序列、指数序列等常见信号基本命令。
(1)正弦序列A*cos(w0*n+phi) 产生一个频率为w0,相位为phi 的余弦信号)cos()(0φω+=n A t x 。
A*sin(w0*n+phi) 产生一个频率为w0,相位为phi 的正弦信号)sin()(0φω+=n A t x 。
(2)周期方波序列数字角频率omega 、占空比duty 。
(3)单位脉冲序列既可用ones(1,n)和zeros(1,n)命令,也可用逻辑判断命令生成脉冲序列。
(4)单位阶跃序列单位阶跃信号的定义为:10()00t t t ε>⎧=⎨<⎩ ,单位阶跃信号是信号分析的基本信号之一,在信号与系统分析中有着非常重要的作用,通常,我们用它来表示信号的定义域,简化信号的时域表示形式。
例如:可以用两个不同延时的单位阶跃信号来表示一个矩形门信号,即:2()(1)(1)G t t t εε=+--。
既可用ones(1,n)和zeros(1,n)命令,也可用逻辑判断命令生成阶跃序列。
(5)指数序列实指数序列信号 kca k f =)( ,c 、 a 是实数。
2.实验中用于实现离散卷积、自相关函数、移位、翻转等时域运算的程序方法基本命令。
离散时间信号的时域分析

实验二离散时间信号的时域分析1.实验目的(1)学习MATLAB软件及其在信号处理中的应用,加深对常用离散时间信号的理解。
(2)利用MATLAB产生常见离散时间信号及其图形的显示,进行简单运算。
(3)熟悉MATLAB对离散信号的处理及其应用。
2.实验原理离散时间信号是时间为离散变量的信号。
其函数值在时间上是不连续的“序列”。
(1)单位抽样序列如果序列在时间轴上面有K个单位的延迟,则可以得到,即:该序列可以用MATLAB中的zeros函数来实现。
(2)正弦序列可以利用sin函数来产生。
(3)指数序列在MATLAB中通过:和来实现。
3.实验内容及其步骤(1)复习有关离散时间信号的有关内容。
(2)通过程序实现上述几种信号的产生,并进行简单的运算操作。
单位抽样序列参考:% Generation of a Unit Sample Sequenceclf;% Generate a vector from -10 to 20n = -10:20;% Generate the unit sample sequenceu = [zeros(1,10) 1 zeros(1,20)];% Plot the unit sample sequencestem(n,u);xlabel('Time index n');ylabel('Amplitude');title('Unit Sample Sequence');axis([-10 20 0 1.2]);如果序列在时间轴上面有K个单位的延迟,则可以得到,即:,通过程序来实现如下所示结果。
正弦序列参考:% Generation of a sinusoidal sequencen = 0:40; f = 0.1;phase = 0; A = 1.5;arg = 2*pi*f*n - phase; x = A*cos(arg);clf; % Clear old graphstem(n,x); % Plot the generated sequenceaxis([0 40 -2 2]); grid;title('Sinusoidal Sequence'); xlabel('Time index n');ylabel('Amplitude'); axis;指数序列参考:% Generation of a real exponential sequenceclf; n = 0:35; a = 1.2; K = 0.2;x = K*a.^n; stem(n,x);xlabel('Time index n'); ylabel('Amplitude');(3)加深对离散时间信号及其特性的理解,对于离散信号能进行基本的运算(例如信号加、乘、延迟等等),并且绘出其图形。
离散时间信号的时域分析实验报告剖析

x (n ) = ⎡2n -1- (-2) ⎤ u (n )Z - 5Z + 6Z (2Z -11Z + 12)(Z -1)(Z - 2) 18+3Z -4Z -2 -Z -3 进行部分分式展开,并求出其反变换。
⎛ 1 ⎫ x (n ) = ⎪ u (n ),,1 (s ) =ZZ,, 5 (s ) = H 6 (s ) = Z Z一、 实验目的:1、学会运用 MATLAB 表示常用的离散时间信号及基本运算;2、学会运用 MATLAB 实现离散时间信号的变换和反变换;n -1 ⎣ ⎦5、求下列信号的 Z 反变换(iztrans)。
3、学会运用 MATLAB 分析离散时间信号的零极点分布与其时域特性的关系;4、学会运用 MATLAB 求解离散时间信号的零状态响应。
X (Z ) = 8Z -19 2X (Z ) =2 3二、 实验内容:(请将实验的题目内容、实验及过程代码、实验结果(必要时可以进行拷屏)、6、对函数(residuez)X (Z ) = 18-1实验体会等填写到此处。
页面空间不够,可另附页或另附文件。
1、试用 MA TLAB 的绘出单位取样序列、单位阶跃序列、矩形序列、单边指数序列、正弦序列、负指数序列的波形图。
7、已知一离散因果 L TI 系统的系统函数为 H (Z ) =Z +0.32 Z 2+ Z + 0.16 求出该系统的零极点。
(tf2zp)2、已知某 LTI 系统的差分方程为3 y (n ) -4 y (n - 1) + 2 y (n - 2) = x (n ) + 2 x (n - 1) 试用2MATLAB 命令绘出当激励信号为⎝ 2 ⎭时,该系统的零状态响应。
8、已知一离散因果 L TI 系统的系统函数为(zplane)。
H (Z ) = Z 2-0.36Z 2-1.52Z +0.68 绘出该命令的零极点分布图。
3、已知某系统的单位取样响应为h (n ) = 0.8n[u (n ) - u (n - 8)] 试用 MATLAB 求9、画出下列函数的零极点分布图以及对应的时域单位取样响应 形的影响。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验二 离散时间信号的时域分析
1.实验目的
(1)学习MA TLAB 软件及其在信号处理中的应用,加深对常用离散时间信号的理解。
(2)利用MA TLAB 产生常见离散时间信号及其图形的显示,进行简单运算。
(3)熟悉MA TLAB 对离散信号的处理及其应用。
2.实验原理
离散时间信号是时间为离散变量的信号。
其函数值在时间上是不连续的“序列”。
(1)单位抽样序列
⎩⎨⎧=01
)(n δ 00≠=n n
如果序列在时间轴上面有K 个单位的延迟,则可以得到)(k n -δ,即:
1,()0,n
k n k n k
该序列可以用MA TLAB 中的zeros 函数来实现。
(2)正弦序列
)/2sin()(ϕπ+=Fs fn A n x
可以利用sin 函数来产生。
(3)指数序列
()(),n x n a n a R
在MA TLAB 中通过:0:1;n N 和.^;x a n 来实现。
3.实验内容及其步骤
(1)复习有关离散时间信号的有关内容。
(2)通过程序实现上述几种信号的产生,并进行简单的运算操作。
单位抽样序列
⎩⎨⎧=01
)(n δ 00≠=n n
参考:% Generation of a Unit Sample Sequence
clf;
% Generate a vector from -10 to 20
n = -10:20;
% Generate the unit sample sequence
u = [zeros(1,10) 1 zeros(1,20)];
% Plot the unit sample sequence
stem(n,u);
xlabel('Time index n');ylabel('Amplitude');
title('Unit Sample Sequence');
axis([-10 20 0 1.2]);
如果序列在时间轴上面有K 个单位的延迟,则可以得到)(k n -δ,即:
1,()0,n
k n k n k ,通过程序来实现如下所示结果。
正弦序列
)/2sin()(ϕπ+=Fs fn A n x
参考:% Generation of a sinusoidal sequence
n = 0:40; f = 0.1;
phase = 0; A = 1.5;
arg = 2*pi*f*n - phase; x = A*cos(arg);
clf; % Clear old graph
stem(n,x);
% Plot the generated sequence axis([0 40 -2 2]); grid;
title('Sinusoidal Sequence'); xlabel('Time index n');
ylabel('Amplitude'); axis;
指数序列
()(),n x n a n a R
参考:% Generation of a real exponential sequence
clf; n = 0:35; a = 1.2; K = 0.2;
x = K*a.^n; stem(n,x);
xlabel('Time index n'); ylabel('Amplitude');
(3)加深对离散时间信号及其特性的理解,对于离散信号能进行基本的运算(例如信号加、乘、延迟等等),并且绘出其图形。
参考:信号加。
信号x1和x2应该具有相同的长度,位置对应才可以进行相加运算,否则须先通过zeros函数左右补零后方可运算。
n1=1:5; x10=[1 0.7 0.4 0.1 0];
n2=3:8; x20=[0.1 0.3 0.5 0.7 0.9 1];
n=1:8;
x1=[x10 zeros(1,8-length(n1))];%右边补3个零
x2=[zeros(1,8-length(n2)) x20];%左面补2个零
x=x1+x2;
subplot(3,1,1);stem(n,x1);
subplot(3,1,2);stem(n,x2);
subplot(3,1,3);stem(n,x);
(4)通过实际的操作应用,实现对一段语音信号的简单处理。
对于一段语音信号,从中截取数秒以“.wav”形式进行保存,并且对语音信号进行读入、波形显示等操作。
参考:对于一段存放在“C:\MATLAB6p5\work\speech\”语音信号” f3.wav”,进行操作:
x=('C:\MATLAB6p5\work\speech\f3.wav');y=wavread(x);plot(y); sound(y,16000)
4. 实验用MATLAB函数介绍
其中在实验过程中常用到的MA TLAB指令(函数名)有:clf, zeros, ones, length, wavread, sound命令等,具体调用格式参看“help”或者查阅相关书籍。
另外,在具体的实验过程中也可以根据实际需要自己定义函数。
5.思考题
(1)离散时间信号在时域上有何特点。
(2)总结实验过程中所得到的结论,并能进行分析处理。
(3)对实验过程中所涉及的问题进行分析,对于信号经过时延之后,试编写和修改相应的程序,得出最终正确的结果和波形图,并对实验报告进行整理分析。
(4)对于离散时间信号进行计算。
6.实验报告要求:
(1)明确实验目的以及实验的原理。
(2)通过实验内容分析离散时间信号的性质。
(3)完成思考题的内容,对实验结果及其波形图进行分析对比,总结主要结论。
实验内容:
1.产生单位阶跃信号(用ones 函数)
>> n = -10:20;
>> u = [zeros(1,10) ones(1,21)];
>> stem(n,u);
2.产生指数序列x(n)等于2乘以-1的n次方
>> n = 0:20;
>> x=2*(-1).^n;
>> stem(n,x);
3.产生一个周期正弦函数>> n=0:0.2:4*pi;
>> y=sin(n);
>> stem(n,y);
4.已知:x[n]={-4 5 1 -2 -3 0 2}, -4<n<4;
y[n]={6 -3 -1 0 8 7 -2}; -2<n<6;
编程计算x[n-1]和y[-n]的内积
>> x=[-4 5 1 -2 -3 0 2];n1=-3:3;
>> y=[6 -3 -1 0 8 7 -2];n2=-1:5;
>> n=n1+1; y1=fliplr(y);
>> x10=[zeros(1,10-length(n)) x1];
>> y10=[y1 zeros(1,10-length(n2))];
>> c=x10.*y10;
>> subplot(5,1,1);stem(n1,x);legend('x[n]');
>> subplot(5,1,2);stem(-2:4,x);legend('x[n-1]');
>> subplot(5,1,3);stem(n2,y);legend('y[n]');
>> subplot(5,1,4);stem(-5:1,y1);legend('y[-n]');
>> subplot(5,1,5);stem(-5:4,c);legend('x[n-1].*y[-n]');
5. 求y[n]=a[n]*b[n] 用编程实现两个因果离散信号的卷积function y=myconv(a,b)
a=input('a=');
b=input('b=');
N1=length(a);
N2=length(b);
L=N1+N2-1;
for(n=1:L)
y(n)=0;
for(m=1:N2)
k=n-m+1;
if(k>=1&k<=N1)
y(n)=y(n)+b(m)*a(k);
end
end
end
ny=0:L-1;
stem(ny,y,'.k');xlabel('n');ylabel('y(n)'); title('线性卷积')。