数字信号处理课程设计。
选题规则:下列共20个小题目,每人做一题,以同学们的学号为准,末位与下列哪个题号个位相同,即完成哪题对应内容。如学号为100201005,学号末位为5,则应完成下列题5或题15的内容(二选一)。
一、课程设计目的及基本要求。
本课程是基于matlab程序语言提出课程设计的题目及要求,在做课程设计之前要求学生要尽快熟悉matlab语言,充分预习相关理论知识,独立编写程序,以便顺利完成课程设计。
通过课程设计,主要达到以下目的:
1、使学生进一步掌握数字信号处理课程的基本理论、基本方法和基本技术。
2、使学生增进对matlab的认识,利用matlab加深对理论知识的理解。
3、使学生了解和掌握使用matlab的应用过程和方法,为以后的设计打下良好基础。
4、通过课程设计,培养学生能根据设计要求,进行理论知识分析、设计方法总结、典型实例设计等方面的设计综合能力。
课程设计报告的封面一律按照规定的模版格式,课程设计报告的内容主要包括设计题目、设计要求、设计原理、设计方法、技术实现、设计结果、数据波形、收获与体会和参考文献等项目。这些项目多少与格式不作统一限制,但要求用a4纸打印。电子文档以学生的学号姓名为文件名(如:
12345678910张三),最后统一刻盘。课程设计的选题于本学期第16周之前完成,课程设计工作在第18周完成。递交课程设计报告的最后时间是18周星期五下午。
课程设计完成后,每位同学必须提交课程设计报告的纸质版材料和相应的电子版材料(即在matlab环境下保存的文件)。
注:请严格按照附件中的相关格式要求撰写设计报告,如发现抄袭、网络拷贝、雷同现象,本门课程成绩不及格。
二、数字信号处理课程设计题目
1、离散系统的时域分析及matlab实现。
2、离散系统的频域分析及matlab实现。
3、序列的z变换与dft的关系研究。
4、时域采样理论研究及matlab实现。
5、频域采样理论研究及matlab实现。
6、基于matlab的采样定理**实现。
7、卷积运算及算法实现。
8、离散系统的零极点对频率响应的影响分析。
9、直接dft运算的算法分析及matlab实现。
10、按时间抽取的dft快速算法分析及matlab实现。
11、按频率抽取的dft快速算法分析及matlab实现。
12、dft在信号频谱分析中的应用。
13、用fft对信号作频谱分析。
14、级联型数字滤波器的结构分析与实现。
15、并联型数字滤波器的结构分析与实现。
16、iir数字滤波器设计及matlab实现。
17、fir数字滤波器设计及matlab实现。
18、基于matlab的音频信号处理技术实现。
19、基于matlab的噪声抑制技术实现。
20、基于matlab的语音信号滤波处理。
附录一:matlab简介。
本课程设计是以matlab语言程序用法为基础,在matlab环境下完成各项设计内容。下面介绍matlab语言及其用法。
一)matlab语言概述。
1、matlab语言的发展。
matlab语言是由美国的clever moler博士于2024年开发的,设计者的初衷是为解决“线性代数”课程的矩阵运算问题,取名matlab即matrix laboratory矩阵实验室的意思。matlab已经不仅仅是一个“矩阵实验室”了,它集科学计算、图象处理;声音处理于一身,并提供了丰富的windows图形界面设计方法。matlab语言是功能强大的计算机高级语言,它以超群的风格与性能风靡全世界,成功地应用于各工程学科的研究领域。
matlab在美国已经作为大学工科学生必修的计算机语言之一(c、for- tran、assembler、matlab)。近年来,matlab语言已在我国推广使用,现在已应用于各学科研究部门和许多高等院校。
2、matlab能在各领域做什么。
工业研究与开发;数学教学,特别是线性代数;数值分析和科学计算方面的教学与研究;电子学、控制理论和物理学等工程和科学学科方面的教学与研究;经济学、化学和生物学等计算问题的所有其他领域中的教学与研究,等等。
3、matlab语言的功能。
强大的数值(矩阵)运算功能;广泛的符号运算功能;高级与低级兼备的图形功能(计算结果的可视化功能);可靠的容错功能;应用灵活的兼容与接口功能;信息量丰富的联机检索功能。
二)matlab的程序设计。
matlab语言称为***编程语言,程序简洁、可读性很强而且调试十分容易。
m文件简介:用户如想灵活应用matlab去解决实际问题,充分调用matlab的科学技术资源,就需要编辑m文件。包含matlab语言**的文件称为m文件,其扩展名为m。
编辑m文件可使用各种文本编辑器。
1、matlab的工作模式。
窗口+m文件窗口。
1)指令驱动模式。
通常matlab以指令驱动模式工作,即在matlab 窗口下当用户输入单行指令时,matlab立即处理这条指令,并显示结果,这就是matlab命令行方式。命令行操作时,matlab窗口只允许一次执行一行上的一个或几个语句。
2)m文件模式。
将matlab语句构成的程序存储成以m为扩展名的文件,然后再执行该程序文件,这种工作模式称为程序文件模式。
程序文件不能在指令窗口下建立,因为指令窗口只允许一次执行一行上的一个或几个语句。
2、m文件的创建。
m文件的类型是普通的文本文件,我们可以使用系统认可的文本文件编辑器来建立m文件。如dos下的edit,windows的记事本和word等。
3、matlab文件的类型。
1)数据文件(mat)
mat文件是matlab以标准二进制格式保存的数据文件,可将工作空间中有用的数据变量保存下来。 mat文件的生成和调用是由函数s**e和load完成的。
2)m文件。
m文件的语法类似于c语言,但又有其自身特点。它只是一个简单的ascii码文本文件,执行程序时逐行解释运行程序,matlab是解释性的编程语言。
m文件有两类独立的m文件:命令文件和函数文件。函数文件为可调用的m文件,即简单的m文件;命令文件实际上是一串指令的集合,与在命令窗口逐行执行文件中的所有指令,其结果是一样的。
没有输入输出参数。命令文件包括两部分:注释文件和程序文件。
3)matlab内置函数文件。
matlab自定义的函数文件称内置函数文件。调用内置函数的方法:使用函数名并给出相应的入口、出口参数即可。
4)函数m文件。
需要输入变量,返回输出变量。matlab用户可以根据需要编辑自己的m文件,它们可以像库函数一样方便的调用,从而极大地扩展了matlab 的能力。对于某一类特殊问题,如创建了许多m函数文件,则可形成新的工具箱。
这种用matlab语言创建定义新的matlab函数的功能,正体现了matlab语言强大的扩展功能。
函数m文件的格式:
function 返回变量=函数名(输入变量)
注释说明语句段。
程序语句段。
三)matlab矩阵运算。
1、矩阵的输入。
在命令窗口中输入。
a=1; b=2; c=3;
x=[5 b c; a*b a+c c/b]x=
语句生成。用线性等间距生成向量矩阵(start:step:end)
a=[1:2:10]a=
一些常用的特殊矩阵。
单位矩阵:eye(m,n); eye(m)
零矩阵:zeros(m,n); zeros(m)
一矩阵:ones(m,n); ones(m)
对角矩阵:对角元素向量 v=[a1,a2,…,an] a=diag(v)
随机矩阵:rand(m,n)产生一个m×n的均匀分别的随机矩阵。
2、矩阵的运算。
转置。对于实矩阵用(’)符号或(.’求转置结果是一样的;然而对于含复数的矩阵,则(’)将同时对复数进行共轭处理,而 (.则只是将其排列形式进行转置。
四则运算与幂运算。
逆矩阵与行列式计算。
求逆inv(a)。
求行列式det(a)。
四)绘图简介。
matlab提供了丰富的绘图功能:
help graph2d可得到所有画二维图形的命令。
help graph3d可得到所有画三维图形的命令。
下面介绍常用的二维图形命令。
1、基本的绘图命令。
plot(x1,y1,option1,x2,y2,option2,…)x1,y1给出的数据分别为x,y轴坐标值,option1为选项参数,以逐点连折线的方式绘制1个二维图形;同时类似地绘制第二个二维图形,……等。这是plot命令的完全格式,在实际应用中可以根据需要进行简化。比如:
plot(x,y);plot(x,y,option),选项参数option定义了图形曲线的颜色、线型及标示符号,它由一对单引号括起来。
2、选择图像。
figure(1);figure(2);…figure(n)。打开不同的图形窗口,以便绘制不同的图形。
3、画栅格。
grid on在所画出的图形坐标中加入栅格。grid off除去图形坐标中的栅格。
4、当前图形保持。
hold on:把当前图形保持在屏幕上不变,同时允许在这个坐标内绘制另外一个图形。hold off:使新图覆盖旧的图形。
5、设定轴的范围。
axis([xmin xmax ymin ymax]),axis(‘equal’):将x坐标轴和y坐标轴的单位刻度大小调整为一样。
6、文字标示。
text(x,y,’字符串’):在图形的指定坐标位置(x,y)处,标示单引号括起来的字符串。
gtext(‘字符串’):利用鼠标在图形的某一位置标示字符串。
title(‘字符串’):在所画图形的最上端显示说明该图形标题的字符串。
xlabel(‘字符串’),ylabel(‘字符串’):设置x,y坐标轴的名称。
输入特殊的文字需要用反斜杠(\)开头。
7、legend(‘字符串1’,‘字符串2’,…字符串n’)
在屏幕上开启一个小视窗,然后依据绘图命令的先后次序,用对应的字符串区分图形上的线。
8、subplot(m n k):分割图形显示窗口。
m:上下分割个数,n:左右分割个数,k:子图编号。
9、semilogx:
绘制以x轴为对数坐标(以10为底),y轴为线性坐标的半对数坐标图形。semilogy:绘制以y轴为对数坐标(以10为底),x轴为线性坐标的半对数坐标图形。
课程设计题目
2011年工厂供配电技术课程设计题目。某大型铸造工厂配电一次系统设计。任务书 广东水利电力职业技术学院电力工程系。2011年6月广州。1.原始资料。1.1全厂用电设备情况 1 负荷大小。全厂用电设备总安装容量 6630kw 10kv侧计算负荷总容量 有功功率4921kw 无功功率1512kvar各车...
课程设计题目
课程设计ii题目。指导教师 叶晓国。1目的与总体要求。课程设计的目的是对学生专业课所学知识的进一步巩固和提高。本课程设计主要为了巩固 计算机网络 课程知识,使学生加深对课内所学的有关计算机网络体系结构 网络协议,网络安全,网络管理等知识的理解,通过实际开发小型的计算机网络工程项目,提高网络协议分析和...
课程设计题目
滨州学院2011 2012学年第二学期。电气工程与自动化专业 本 2009级 单片机原理与应用 课程设计。一 数字秒表设计。设计一个数字秒表,具有如下功能 当用户按下开始键后开始计时,计时范围00 99s,每秒加1,超过99秒自动清零 当用户按下停止键后停止计时,显示不变 当用户按下复位键后,显示0...