数字信号处理实验
更新时间:2024-05-14 03:12:01 阅读量: 综合文库 文档下载
实验一 MATLAB仿真软件的基本操作命令和使用方法
实验内容
1、帮助命令
使用 help 命令,查找 sqrt(开方)函数的使用方法;
2、MATLAB命令窗口
(1)在MATLAB命令窗口直接输入命令行计算y1?2sin(0.5?)1?3的值;
(2)求多项式 p(x) = x3 + 2x+ 4的根;
3、矩阵运算 (1)矩阵的乘法
已知 A=[1 2;3 4], B=[5 5;7 8],求 A^2*B
(2)矩阵的行列式
已知 A=[1 2 3;4 5 6;7 8 9], 求A
(3)矩阵的转置及共轭转置 已知A=[1 2 3;4 5 6;7 8 9],求A'
已知 B=[5+i,2-i,1;6*i,4,9-i], 求 B.' , B'
(4)特征值、特征向量、特征多项式
已知 A=[1.2 3 5 0.9;5 1.7 5 6;3 9 0 1;1 2 3 4] ,求矩阵 A的特征值、特征向量、特征多项式;
(5)使用冒号选出指定元素
已知: A=[1 2 3;4 5 6;7 8 9];求 A 中第 3 列前 2 个元素;A 中所有列第 2,3 行的元素;
4、Matlab 基本编程方法
(1) 编写命令文件:计算 1+2+…+n<2000 时的最大 n 值;
(2) 编写函数文件:分别用 for 和 while 循环结构编写程序,求 2 的 0 到 15 次幂的和。
5、MATLAB基本绘图命令
(1) 绘制余弦曲线 y=cos(t),t∈[0,2π]
2) 在同一坐标系中绘制余弦曲线 y=cos(t-0.25)和正弦曲线 y=sin(t-0.5),,2π]
∈
( t[0
(3)绘制[0,4π]区间上的 x1=10sint 曲线,并要求: (a)线形为点划线、颜色为红色、数据点标记为加号; (b)坐标轴控制:显示范围、刻度线、比例、网络线 (c)标注控制:坐标轴名称、标题、相应文本; >> clear;
t=0:pi/10:4*pi; y=10*sin(t); plot(t,y); plot(t,y,'-+r'); grid
>> xlabel('X'),ylabel('Y'); >> title('Plot:y=10*sin(t)');
>> text(14,10,'完整图形');
实验二 常见离散信号的MATLAB产生和图形显示
实验内容与步骤
1. 写出延迟了np个单位的单位脉冲函数impseq,单位阶跃函数stepseq, n=ns:nf
function [x,n]=impseq[np,ns,nf]; function [x,n]=stepseq[np,ns,nf];
2. 产生一个单位样本序列x1(n),起点为ns= -10, 终点为nf=20, 在n0=0时有一单位脉冲
并显示它。修改程序,以产生带有延时11个样本的延迟单位样本序列x2(n)= x1(n-11),并显示它。 >> clear;
>> ns=-10;nf=20;n0=0;
>> [x1,n1]=impseq(n0,ns,nf);
>> subplot(1,2,1),stem(n1,x1);title('n0=0时的单位脉冲') >> np=11;
>> [x2,n2]=impseq(np,ns,nf);
>> subplot(1,2,2),stem(n2,x2);title('延迟11个样本后')
3. 产生一个序列X(n)= n(u(n)-u(n-8)), 0<=n<=20,并显示。 >> clear >> n=[0:20];
>> x=n.*(stepseq(0,0,20)-stepseq(8,0,20)); >> stem(n,x);
4.编写序列相加,相乘,以及序列翻转、移位的函数文件 function [y,ny] = seqadd(x1,n1,x2,n2);
function [y,ny] = seqmult(x1,n1,x2,n2);
function [y,ny] = seqfold(x,nx);
function [y,ny] = seqshift(x,nx,k);
5.已知序列x=[0,1,2,3,4,3,2,1,0],n= -5:3, 产生一个序列y(n) =2*x(n+3)+x(-n);并显示它。
>> x=[0,1,2,3,4,3,2,1,0]; >> n=[-5:3];
>> y=2*seqshift(x,n,3)+seqfold(x,n);stem(x,y) >> stem(n,y)
6.复杂信号的产生:复杂的信号可以通过在简单信号上执行基本的运算来产生 试产生一个振幅调制信号 ,并显示出来。
y(n)?(1?m?cos(2?fLn))?cos(2?fHn)?(1?0.4?cos(2??0.01n))?cos(2??0.1n)
n=0:100
>> n=[0:100];
>> y=(1+0.4*cos(2*pi*0.01*n)).*cos(2*pi*0.1*n); >> stem(n,y)
实验三 离散时间系统的时域分析
实验内容与步骤
1. 假定一因果系统为
y(n)-0.4y(n-1)+0.75y(n-2)=2.2403x(n)+2.4908x(n-1)+2.2403x(n-2) 用MATLAB程序仿真该系统,输入三个不同的输入序列:
2(??0.1n),x2(n)?cos(2??0.4n),x?2x1(n)?3x2(n) x1(n)?cos计算并并显示相应的输出y1(n), y2(n)和y(n)。
>> 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];
y1=filter(num,den,x1); %计算出y1(n) y2=filter(num,den,x2); %计算出y2(n) y=filter(num,den,x); %计算出y(n) stem(y1);
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];
y1=filter(num,den,x1); %计算出y1(n) y2=filter(num,den,x2); %计算出y2(n) y=filter(num,den,x); %计算出y(n) stem(y1);
>> stem(y2);
>> stem(y);
2. 用MATLAB程序仿真步骤1给出的系统,对两个不同的输入序列x(n)和x(n-10),计算并显示相应的输出序列y3(n)和y4(n)。
n=0:40; x1=2*n;
num=[2.2403, 2.4908,2.2403]; den=[1,-0.4,0.75];
ic=[0 0]; %设置零初始条件
y3=filter(num,den,x1,ic); %计算输入为x1(n)时的输出y1(n) [y,ny]=seqshift(x1,n,10) y4=filter(num,den,y,ic); subplot(2,1,1) stem(n,y3); ylabel('振幅'); title('y3(n)'); subplot(2,1,2) stem(ny,y4); ylabel('振幅'); title('y4(n)');
3.用MATLAB程序仿真计算下列两个有限长序列的卷积和并显示图形。
x1(n)??(n)?3?(n?1)?2?(n?2) x2(n)?u(n)?u(n?3)
function[y,ny]=convwthn(x,nx,h,nh) nys=nx(1)+nh(1);nyf=nx(end)+nh(end); y=conv(x,h);ny=[nys:nyf];
n=0:20;
x1=impseq(0,0,20)+3*impseq(1,0,20)+2*impseq(2,0,20) x2=stepseq(0,0,20)-stepseq(3,0,20) subplot(3,1,1) stem(n,x1); subplot(3,1,2) stem(n,x2);
[y,ny]=convwthn(x1,n,x2,n); subplot(3,1,3) stem(ny,y);
实验四 离散时间信号的DTFT
一、实验目的
1. 运用MATLAB计算离散时间系统的频率响应。 2. 运用MATLAB验证离散时间傅立叶变换的性质。
二、实验原理
(一)、计算离散时间系统的DTFT 已知一个离散时间系统
NN?ak?0k可以用MATLAB函数frequz非y(n?k)??bkx(n?k),
k?0常方便地在给定的L个离散频率点???l处进行计算。由于H(ej?)是ω的连续函数,需要尽可能大地选取L的值(因为严格说,在MATLAB中不使用symbolic工具箱是不能分析模拟信号的,但是当采样时间间隔充分小的时候,可产生平滑的图形),以使得命令plot产生的图形和真实离散时间傅立叶变换的图形尽可能一致。在MATLAB中,freqz计算出序列{b0,b1,?,bM}和{a0,a1,?,aN}的L点离散傅立叶变换,然后对其离散傅立叶变换值相除得到H(e者512。
例3.1 运用MATLAB画出以下系统的频率响应。 y(n)-0.6y(n-1)=2x(n)+x(n-1) 程序:
j?l),l?1,2,?,L。为了更加方便快速地运算,应将L的值选为2的幂,如256或
clf;
w=-4*pi:8*pi/511:4*pi; num=[2 1];den=[1 -0.6]; h=freqz(num,den,w); subplot(2,1,1)
plot(w/pi,real(h));grid
title(‘H(e^{j\\omega}的实部’)) xlabel(‘\\omega/ \\pi’); ylabel(‘振幅’);
subplot(2,1,1)
plot(w/pi,imag(h));grid
title(‘H(e^{j\\omega}的虚部’)) xlabel(‘\\omega/ \\pi’); ylabel(‘振幅’);
(二)、离散时间傅立叶变换DTFT的性质。 1.时移与频移
设 X(ej?)?FT[x(n)], 那么
?j?n0j?FT[x(n?n)]?eX(e) (2.2.6) 0
FT[ej?0nx(n)]?X(ej(???0)) (2.2.7)
2.时域卷积定理
如果 y(n)?x(n)?h(n), 那么
Y(ej?)?X(ej?)?H(ej?)
三、实验内容与步骤
1. 已知因果线性时不变离散时间系统
y(n)-0.4y(n-1)+0.75y(n-2)=2.2403x(n)+2.4908x(n-1)+2.2403x(n-2) 运用MATLAB画出该系统的频率响应。
clf;
w=-4*pi:8*pi/511:4*pi;
num=[2.2403 2.4908 2.2403];den=[1 -0.4 0.75]; h=freqz(num,den,w); subplot(2,1,1) plot(w/pi,real(h)); grid
title('H(e^{j\\omega}的实部)'); xlabel('\\omega/ \\pi'); ylabel('振幅'); subplot(2,1,2)
plot(w/pi,imag(h));
grid
title('H(e^{j\\omega}的虚部)'); xlabel('\\omega/ \\pi'); ylabel('振幅');
运行结果:
2.运行下面程序并显示它,验证离散时间傅立叶变换DTFT的时移性。
clf;
w=-pi:2*pi/255: pi;wo=0.4*pi;D=10; num=[1 2 3 4 5 6 7 8 9]; h1=freqz(num,1,w);
h2=freqz([zeros(1,D) num],1,w); subplot(2,2,1)
plot(w/pi,abs(h1));grid title(‘原序列的幅度谱’) subplot(2,2,2)
plot(w/pi,abs(h2));grid
title(‘时移后序列的幅度谱’) subplot(2,2,3)
plot(w/pi,angle (h1));grid title(‘原序列的相位谱’) subplot(2,2,4)
plot(w/pi, angle (h2));grid title(‘时移后序列的相位谱’)
运行结果:
3. 运行下面程序并显示它,验证离散时间傅立叶变换DTFT的频移性。
clf;
w=-pi:2*pi/255: pi;wo=0.4*pi;D=10;
num1=[1 3 5 7 9 11 13 15 17];L=length(num1); h1=freqz(num1,1,w);n=0:L-1; num2=exp(wo*i*n).*num1; h2=freqz(num2,1,w); subplot(2,2,1)
plot(w/pi,abs(h1));grid title(‘原序列的幅度谱’) subplot(2,2,2)
plot(w/pi,abs(h2));grid
title(‘频移后序列的幅度谱’) subplot(2,2,3)
plot(w/pi,angle (h1));grid title(‘原序列的相位谱’) subplot(2,2,4)
plot(w/pi, angle (h2));grid title(‘频移后序列的相位谱’)
运行结果:
4.运行下面程序并显示它,验证离散时间傅立叶变换时域卷积性质。
clf;
w=-pi:2*pi/255: pi;
x1=[1 3 5 7 9 11 13 15 17]; x2=[1 -2 3 -2 1]; y=conv(x1,x2); h1=freqz(x1,1,w); h2=freqz(x2,1,w); hp=hi.*h2;
h3=freqz(y,1,w); subplot(2,2,1)
plot(w/pi,abs (hp));grid title(‘幅度谱的乘积’) subplot(2,2,2)
plot(w/pi,abs (h3));grid
title(‘卷积后序列的幅度谱’) subplot(2,2,3)
plot(w/pi,angle (hp));grid
title(‘相位谱的和’) subplot(2,2,4)
plot(w/pi,angle (h3));grid title(‘卷积后序列的相位谱’)
运行结果:
四、实验仪器设备
计算机,MATLAB软件
五、实验注意事项
课前预先阅读并理解实验程序;
六、思考题
1.讨论实验程序1中的离散时间系统的频率响应是离散的还是连续的,是否是周期的?周期为多少?
2.讨论实验程序2中h1和h2的关系是什么?哪个参数控制时移量?
3. 讨论实验程序3中h1和h2的关系是什么?哪个参数控制频移量?
4. 讨论实验程序4中y与x1和x2的关系是什么?h1和h2与x1和x2的关系是什么?h1和hp相等吗?
正在阅读:
数字信号处理实验05-14
梳棉机的任务和工艺流程01-01
国内发达地区产学研合作经验对重庆市的启示05-26
2014年普通高等学校招生全国统一考试押题卷数学卷(全国新课标.文)含详解05-24
洛阳市律师及相关法律服务行业企业名录2018版108家06-28
中国电影院线和电影院运营管理及投资风险分析报告2018年版(目录)06-09
有机化学实训手册10-22
乡镇2020年度全面工作情况汇报范文08-23
静海县农业综合执法工作存在的问题及对策12-15
- 冀教版版五年级科学下册复习资料
- 微生物学复习提纲
- 2013—2014学年小学第二学期教研组工作总结
- 国有土地转让委托服务合同协议范本模板
- 我的固废说明书
- 企业管理诊断报告格式
- 东鼎雅苑施工组织设计
- 谈谈如何做好基层党支部书记工作
- 浮梁县环保局市级文明单位创建工作汇报
- 管理学基础知识
- 大学物理实验报告23 - PN结温度传感器特性1
- 计算机网络实践
- 酒桌上这四种情况下要坐牢,千万别不当回事……
- 国家康居示范工程建设技术要点
- 中国贴布行业市场调查研究报告(目录) - 图文
- 新课标下如何在高中物理教学中培养学生的创新能力初探
- 营养师冬季养生食谱每日一练(7月4日)
- 关注江西2017年第3期药品质量公告
- 建设海绵城市专题习题汇总
- 10万吨年环保净水剂建设项目报告书(2).pdf - 图文
- 信号处理
- 实验
- 数字
- 南财统计学活页答案要点
- 2017 - 2018学年度第二学期七年级生物期末水平测试试卷
- 基于PLC的太阳能自动上水控制系统的设计
- 部编版《短诗五首》教学设计一等奖获奖
- 朝阳村站~南部卧城站区间联络通道说明
- 标杆房企(万科、万达)最新组织架构及变革特性
- 案例10:五粮液IPO定价采用市盈率法_证券投资学
- 特殊恶劣天气应急预案
- 新目标英语九年级Unit - 14 - 单元测试题
- 熔模铸造浇注系统设计探讨
- 一校一品 诗情 解说词1
- 咖啡创业计划书
- 卫生事业管理-医院管理试题及答案
- 小学安全疏散演练方案
- 财务管理复习题
- 财政总预算会计练习题
- 夜间天窗内维修作业质量与安全控制杨科长
- 清远清新区石潭镇突发环境事件应急预案
- 中小企业内部控制+开题报告
- 关于土地出让综合价金的构成情况说明