《数字信号处理》实验指导书

2026/4/28 23:04:53

实验一 离散信号产生和基本运算

一、 实验目的

(1) 掌握MATLAB最基本的矩阵运算语句。 (2) 掌握对常用离散信号的理解和运算实现。

二、实验原理

1. 向量的生成

a. 利用冒号“:”运算生成向量,其语句格式有两种:

A=m:n B=m:p:n

第一种格式用于生成不长为1的均匀等分向量,m和n分别代表向量的起始值和终止值,n>m 。第二种格式用于生成步长为p的均匀等分的向量。 b. 利用函数linspace()生成向量,linspace()的调用格式为:

A=linspace(m,n) B=linspace(m,n,s)

第一种格式生成从起始值m开始到终止值n之间的线性等分的100元素的行向量。第二种格式生成从起始值m开始到终止值n之间的s个线性等分点的行向量。 2. 矩阵的算术运算 a. 加法和减法 对于同维矩阵指令的 A+B A-B

对于矩阵和标量(一个数)的加减运算,指令为: A+3 A-9

b.乘法和除法运算

A*B 是数学中的矩阵乘法,遵循矩阵乘法规则 A.*B 是同维矩阵对应位置元素做乘法 B=inv(A)是求矩阵的逆

A/B 是数学中的矩阵除法,遵循矩阵除法规则 A./B 是同维矩阵对应位置元素相除 另A 表示矩阵的转置运算 3. 数组函数

下面列举一些基本函数,他们的用法和格式都相同。 sin(A),cos(A),exp(A),log(A)(相当于ln)

'

sqrt(A)开平方 abs(A)求模 real(A)求实部 imag(A)求虚部 式中A可以是标量也可以是矩阵 例: 利用等差向量产生一个正弦值向量 t=0:0.1:10 A=sin(t) plot(A)

这时候即可看到一个绘有正弦曲线的窗口弹出 另:每条语句后面加“;”表示不要显示当前语句的执行结果 不加“;”表示要显示当前语句的执行结果。 4. 二维曲线的绘制plot()函数

plot()函数是将各个数据点通过连折线的方式来绘制二维图形的,其命令格式有以下几种:

c. plot(y)当y为向量时,以y的序号作为X轴,按向量y的值绘制曲线。 d. plot(x,y)x,y均为向量时,以x向量作为X轴,向量y作为Y轴绘制曲线。

e. plot(x,y1,’option1’,x,y2,’option2’,……)以公共的x向量作为X轴,分别以向量y1,y2……

的数据绘制多条曲线,每条曲线的属性由相应的‘option’来确定。Option选项可以是表示曲线颜色的字符、表示线型格式的符号和表示数据点的标记,各个选项有的可以连在一起使用。

f. plot(x1,y1,’option1’,x2,y2,’option2’,……)分别以向量x1,x2,……作为X轴,以y1,

y2,……的数据绘制多条曲线,每条曲线的属性由相应的选项‘option’来确定。

表1plot函数中option选项的取值和含义

符号 ‘b’ ‘g’ ‘m’ ‘c’ ‘k’ ‘r’ ‘y’ 颜色 蓝色 绿色 品红 青色 黑色 红色 黄色 符号 ‘-’ ‘:’ -. ‘--’ ‘none’ 线型 实线 虚线 点画线 双画线 无线 符号 ‘.’ ‘o’ ‘x’ ‘+’ ‘*’ ‘s’ 标记 点 圆圈 叉号 加号 星号 □ 符号 ‘d’ ‘ˇ’ ‘^’ ‘<’ ‘>’ ‘p’ ‘h’ 标记 ◇ ▽ △ 左三角 右三角 五角星 六角星 5.常用离散信号的MATLAB实现函数 1).单位抽样序列?(n)??

?1?0x?zeros(1,N);n?0在MATLAB中利用zeros()函数实现

x(1)?1;n?0如果?(n)在时间轴上延迟了k个单位,得到?(n?k)即:?(n?k)??

?1?0n?k n?02).单位阶跃序列u(n)?

?1?0n?0在MATLAB中可以利用ones()函数实现。x?ones(1,N); n?0

3).正弦序列x(n)?Asin(2?fn/Fs??),在MATLAB

n?0:N?1

x?A*sin(2*pi*f*n/Fs?fai)4).复指数序列x(n)?r?ej?nn?0:N?1,在MATLAB中,

x?r?exp(j*w*n)5).指数序列x(n)?a,在MATLAB中,

nn?0:N?1

x?a.^n三、实验内容

(1)熟悉MATLAB的使用环境和方法;

(2)练习使用基本的向量生成、矩阵运算、绘图等语句;

A) 利用冒号(:)生成向量 X1=[1 2 3 4 5]

X2=[1.000 1.500 2.000 2.500] X3=[5 4 3 2 1] B) C)

分别生成3*3,3*4的全0矩阵,全1矩阵和随机矩阵 分别输入矩阵

123 A?41.01.12.13.11.22. 23.256 B?2.07893.0D) 分别计算A+B,A-B,A+3,A-4,A*B,A.*B,C=inv(A),A/B,A./B E)

分别计算sin(x1),cos(x1),exp(x1),log(x2),sqrt(x2)

(3)生成以上五种基本离散信号函数; (4)绘出信号x(n)?ezn,当z??(1/12)?j?6、z?(1/12)?j?6时、z?112、

z?2?j?6、z?j?6时的信号实部和虚部图;

(5)绘出信号x(n)?1.5sin(2?*0.1n)的频率是多少?周期是多少?产生一个数字

频率为0.9的正弦序列,并显示该信号,说明其周期?

四、实验预习要求

(1)预习实验原理。

(2)熟悉实验程序。

(3)思考课程设计实验部分程序的编写。

五、实验报告要求

(1)简述实验目的和步骤

(2)写出各步输入语句和输出结果

六、思考题

(1)矩阵的乘法和除法有几种,它们有什么区别? (2)离散正弦序列的性质。

实验二 基于MATLAB的离散系统时域分析

一、实验目的

(1)学习MATLAB语言的编程和调试技巧; (2)掌握离散卷积方法和MATLAB语言实现。

二、实验原理

时域中,离散时间系统对输入信号或延迟信号进行运算处理,生成具有所需特性的输出信号。本实验通过MATLAB仿真一些简单的离散时间信号和系统,并研究其时域特性。涉及到离散时间信号、离散时间系统、系统性质及线性卷积等知识点。

一个离散时间系统,输入信号为x(n),输出信号为y(n),运算关系用T[﹒]表示,则输入和输出的关系可表示为y(n)=T[x(n)]。

(1)线性时不变系统的输入输出关系可通过单位脉冲响应h(n)表示:

y(n)?x(n)?h(n)?

m????x(m)h(n?m)?

式中*表示卷积运算。 (2)线性时不变系统的实现:

可物理实现的线性时不变系统是稳定的、因果的。这种系统的单位脉冲响应是因果的(单边)且绝对可和的,即:h(n)?0:,n?0;

n?-??h(n)??。在MATLAB语言中采用conv

?实现卷积运算即:y=conv(x,h),它默认从n=0开始。

三、实验内容

(1)编制程序求解下列两个系统的单位冲激响应和阶跃响应,并绘出其图形。要求分别用

filter、conv、impz三种函数完成。

y[n]?0.75y[n?1]?0.125y[n?2]?x[n]?x[n?1] y[n]?0.25{x[n?1]?x[n?2]?x[n?3]?x[n?4]}

给出理论计算结果和程序计算结果并讨论。

四、实验预习要求

(1)预习实验原理。 (2)熟悉实验程序。

(3)思考程序设计实验部分程序的编写。


《数字信号处理》实验指导书.doc 将本文的Word文档下载到电脑
搜索更多关于: 《数字信号处理》实验指导书 的文档
相关推荐
相关阅读
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 10

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219