当前位置:文档之家› 基于MATLAB的OQPSK调制解调实现课程设计

基于MATLAB的OQPSK调制解调实现课程设计

基于MATLAB的OQPSK调制解调实现课程设计
基于MATLAB的OQPSK调制解调实现课程设计

基于MATLAB的OQPSK调制解调实现课程设计

第2页共22页

基于MATLAB的OQPSK调制解调实现

摘要本课程设计的目标在于深切理解OQPSK调制与解调的基本原理,学会使用MATALB软件中的M文件来实现OQPSK的调制与解调以及分析加入不同噪声时对信号的影响程度。首先产生一个数字基带信号,接下来调用MATLAB中的相应函数对这个基带信号进行调制,然后分析调制后的波形:,记录结果后对调制后的信号进行解调,观察解调结果并做好记录,最后在信号中加入噪声并观察其时频图的变化,分析信噪比的噪声对调制结果的影响。本课程设计的实验开发/运行平台为windowsXP/windows7,程序设计使用MATLAB语言。通过调试运行,基本完成设计目标,达到调制与解调的目的。

关键词:MATLAB;M文件;OQPSK;调制与解调;噪声

1 引言

数字调制与解调技术在数字通信中占有非常重要的地位,数字通信技术与MATLAB 的结合是现代通信系统发展的一个必然趋势。在数字信号通信过程中,噪声的影响往往比较大,同时我们都希望有较高的频带利用率和功率利用率,而OQPSK也是一种恒包络调制技术,其频谱特性好,既保留着2PSK的高抗噪声性能、高频带利用率和高功率利用率,又有效地减弱了2PSK的“反相工作”缺陷,在通信研究中有着非常重要的意义,特别是在卫星通信和移动通信的领域有着广泛的应用。MATLAB作为当前国际控制界最流行的面向工程与科学计算的高级语言,在控制系统的分析、仿真与

第3页共22页

设计方面得到了非常广泛的应用,随着其信号处理专业函数和专业工具箱的成熟,越来越受到通信领域人士的欢迎,其在通信领域的应用也将更加广泛。

1.1课程设计目的

熟悉OQPSK的基本原理,掌握MATLAB中M文件的使用及相关函数的调用方法,在此基础上通过编程实现OQPSK的调制与解调,并通过加入的噪声来判断所设计的系统性能。这次课程设计不仅让我对OQPSK有了更加深入的了解,而且学会了如何利用MATLAB中的M文件来实现通信系统方面的应用,最重要的是,自己能够独立完成一个小项目了,有了这方面的经验,我在以后的学习中就会有更充足的信心和动力。

1.2课程设计要求

熟悉MATLAB中M文件的使用方法,并在深切理解OQPSK调制解调原理的基础上,编写出OQPSK调制解调程序。绘制出OQPSK信号解调前后在时域和频域中的波形,并观察解调前后频谱有何变化以加深对OQPSK信号解调原理的理解。分别对信号叠加不同噪声,并进行解调,绘制出解调前后信号的时频波形,分析不同噪声对信号传输造成的影响大小。

1.3课程设计步骤

先产生随机信号,然后对信号进行调制和解调,在调制和解调过程中加入高斯白噪声,观察现象。

1、产生四进制数字作为数字基带信号,对其进行调制;

2、将函数调制信号改为相应的时域波形调制信号;

3、在函数调制信号中加入高斯白噪声,生成加入噪声后的时域波形调制信号;

第4页共22页

4、分别生成没加或加了噪声的调制信号波形图和频谱图;

5、分别对没加或加了噪声的调制信号进行解调;

6、计算误码率。

2 OQPSK调制解调原理

2.1 OQPSK调制原理

OQPSK,即Offset Quadrature Phase Shift Keying的缩写,中文意思为偏置正交相移键控,是QPSK(正交相移键控,又有4PSK之称)的改进,有关QPSK的资料请参考《通信原理(第六版)》[1],这里就不多赘述了。OQPSK与QPSK相同的是相位关系,即:把输入信号分为两路,然后正交调制。所不同的是,OQPSK把同相和正交两支路的码流在时间上错开了半个码元周期。因为两支路码元上偏移了半个周期,每次只能有一路可能发生极性翻转。所以,OQPSK信号能跳变的相位只能是0o、+90o、-90o,不会发生180o的跳变,OQPSK与QPSK相比,信号的包络波动幅度有限,经过限幅放大后的频带范围也要小,所以性能也更加优良。其星座映射图如下(图2-1)所示:

图2-1 OQPSK星座映射图

OQPSK的产生原理方框图如下(图2-2)所示:输入的数据信号是二进制不归零双极性码元,它被“串/并变换”电路变成两路码元a和b后,其每个码元的持续时间

第5页共22页

是输入码元的2倍,且b路码元在产生后马上增加了一个Ts/2(半个周期)的延时电路。由a路码元和经延时后的b路码元相加的信号即为OQPSK调制信号。

图2-2 OQPSK的产生原理框图

2.2 OQPSK解调原理

OQPSK信号的解调原理图如下(图2-3)所示,OQPSK信号可以看作是两个正交信号2PSK信号a和b,且b路信号在时间上延迟了半个周期Ts/2后再与a路信号的叠加,所以用两路正交的相干载波和一个Ts/2延时器就可以分离这两路延迟正交的2PSK 信号,且b路信号应该先延时Ts/2再进行抽样判决。这样产生的两路并行信号a和b,经过“并/串变换”后,成为串行数据输出,即解调信号。

图2-3 OQPSK的解调原理框图

第6页共22页

3 仿真实现过程

3.1 OQPSK调制信号的产生

首先利用函数x = randint(a,1,[0 3])产生一串四进制数字基带信号,其中a,1表示生成一个含a个元素的行向量,在这里可以直接表示为生成a个数字基带信号码元。[0 3]表示产生的随机数的范围是0~3。基带信号产生后可以利用fft(x,1024)对其进行傅里叶变换,得到基带信号的频谱图。再利用函数oqpskmod(x)对基带信号进行调制,由于MATLAB中的oqpskmod(x)函数功能有限,此时的调制信号还不能用波形图表示出来,需要自己编写部分代码(见附录),所以使用调制信号的星座图代替调制信号图,使用函数scatter(y)可生成星座图。代码编写完成后即可得到相应的OQPSK调制波形图,同样使用fft(n,1024)函数来产生波形信号的频谱图,其中n为调制信号,即在调制信号中取1024个点进行傅里叶变换。调制波形图出来以后进行加噪声处理,此处利用的是awgn(n,snr)函数,snr为信噪比的值,先设定snr为1。随后产生加入噪声后的调制信号频谱图。下面先介绍几个关键变量及重要函数,然后将展示出调制过程中出现的比较重要的图形。在这里为了更清晰地看出调制后信号的波形图、频谱图,及方便解调时对比加入噪声后出现的错码位置,只选取8个基带信号。

a=8; %基带信号码元个数

x = randint(a,1,[0 3]); % 随机产生a个四进制数

y =oqpskmod(x);% 进行oqpsk调制

scatterplot(y) %解调信号的星座图

fc=100; %载波频率

fs=1600; %抽样频率

b=0; %设置初始相位为0

s=0; %调制信号的波形图纵坐标初始化

n=0; %调制信号波形图二维初始化

基带信号(如图3-1):

第7页共22页

图3-1 基带信号

基带信号的频谱图如下(图3-2 ):

r=fft(x,1024); %取1024个点对基带信号进行傅里叶变换fr=(0:length(r)-1)*fs/length(r)-fs/2; %横坐标为频域

plot(fr,abs(r)); % OQPSK基带信号频谱图

图3-2基带信号频谱图

函数调制信号的星座图如下(图3-3)所示:

scatterplot(y) %产生调制信号的星座图

第8页共22页

图3-3调制信号星座图

函数调制信号的星座图会随输入基带信号初值的变化而改变,即不同的第一个信号码元对应不同的星座图。因为OQPSK信号是由两路原本相互正交、但其中一路比另一路早半个周期的信号组成,这就使得第一路信号刚进去时和第二路信号最后进去时系统中都只有一路信号,此时会出现纯实数或纯虚数,即会出现上面调制信号星座图中非角落的点。

调制信号波形图如下(图3-4)所示:

m=(2*pi*fc*k)/fs+b; %合相位

s=sin(m); %生成波形图

n=[n sin(m)]; %将一维转化为二维

g=1:length(n); % g为调制波形图的横坐标

plot(g,n) %调制信号波形图

图3-4 调制信号波形图

加了噪声之后的调制信号波形图如下(图3-5)所示:

snr=0.01; %信噪比

noi=n +awgn(n,snr);%加入噪声后的调制信号

第9页共22页

图3-5 加噪声后的调制信号

调制信号频谱图如下(图3-6)所示:

s1=fft(n,1024); %去1024个点对调制信号进行傅里叶变化

fs1=(0:length(s1)-1)*fs/length(s1)-fs/2; %横坐标为频域

plot(fs1,abs(s1)); %OQPSK调制信号频谱图

图3-6调制信号频谱图

调制信号加噪声后的频谱图如下(图3-7)所示:

s2=fft(noi,1024); %取1024个点对加噪声后的调制信号进行傅里叶变换fs2=(0:length(s2)-1)*fs/length(s2)-fs/2; %横坐标为频域

第10页共22页

plot(fs2,abs(s2)) %加入噪声后OQPSK调制信号的频谱图

图3-7调制信号加入噪声后的频谱图

3.2 OQPSK解调实现

此步建立在已经进行完OQPSK调制的基础之上。在OQPSK的解调过程中,我们使用的是oqpskdemod(y)这个函数,与函数oqpskmod(x)一样,这个函数的功能也非常有限,仅是oqpskmod(x)的逆过程,即oqpskdemod(y)的输入信号必须是oqpskmod(x)的输出信号,否则系统就会报错。在没有加噪声之前,仅依靠简单的oqpskdemod(y)函数就可以将调制后的信号解调出来。

k=oqpskdemod(y); %解调信号

解调信号如下(图3-8)所示:

第11页共22页

图3-8解调信号

解调信号的频谱图如下(图3-9)所示:

jtpp=fft(k,1024); %解调信号的傅里叶变换

fj=(0:length(jtpp)-1)*fs/length(jtpp)-fs/2; %横坐标为频域

plot(fj,abs(jtpp)) %解调信号的频谱图

图3-9解调信号的频谱图

与上一小节(3.1)中的调制信号进行对比,可以看出时域已经由不规则正弦信号还原成数字信号;且调制信号的频域变化非常快,两个最高峰都超过了50,这样有利于信号在信道中进行传输,而解调信号的频域变化比较缓慢,最高峰也都低于15,已经恢复到基带信号的频域特征了。与上一小节中的基带信号进行对比,可以看出,解调后信号的值和频谱图与原基带信号完全一致,即OQPSK信号经调制后再解调,前后没有发生任何变化,实现了调制与解调的功能。把调制信号当做在信道中传输的信号,此时的信道可以看成绝对理想信道,即信号在信道中的传输过程中没有受到任何干扰。然

第12页共22页

而实际通信信道中,噪声是不可避免的一个影响信道性能的重要因素,在下一小节中将讨论加入噪声后的解调情况。

3.3叠加噪声的OQPSK解调

噪声在通信系统中是一个不可忽视的元素,即使没有传输信号,通信系统中也有噪声,噪声永远存在于通信系统中,因此叠加了噪声的模拟OQPSK调制与解调结果会更加具有真实性、更有实用意义。依然在前面的基础上进行下面的步骤,将没加噪声的解调结果和加入信噪比为0.01的噪声后的解调结果作一个对比。

加入噪声后的解调信号如下(图3-10)所示:

xx=awgn(y,snr); %对调制信号加入噪声

jjt=oqpskdemod(xx);%对加入噪声的调制信号进行解调

图3-10加入噪声后的解调信号

加人噪声后的解调频谱图如下(图3-11)所示:

第13页共22页

图3-11加人噪声后的解调频谱图

此处使用了函数[num,ratio]=symerr(x,jjt)来计算错码数和误码率,其中num为错码个数,ratio为误码率,x为原基带信号,jjt为加了噪声后的解调信号。

程序运行后得到num=2,ratio=0.25。因为基带信号的码元个数在开始设定为8个(a=8),而错码为2个,2/8=0.25,即为误码率的计算。

对比上面3.2节中的解调信号,也可以很明显地看出,加入噪声后,解调结果中刚好有2个码元不同(由上一小节中没加噪声的解调结果已经知道,一般情况下,可以认为没加噪声时的解调信号和基带信号是完全一样的,所以在这里,加了噪声后的解调结果与没加噪声时的解调结果的不同之处即可认为是错码处)。对比3.2节中的解调信号频谱图,可见加了噪声之后解调频谱图的峰值个数都变少了两个,所以噪声对OQPSK的解调在时域和频域都有一定的影响。此时加入的噪声信噪比非常小,只有0.01,系统的误码率较高,不能解调出正确的原始信号。

由于误码率是一个统计量,同时希望能比较清晰地看出加噪声前后解调信号的不同之处,所以下面将数字基带信号的码元个数设为100,信噪比设定为0.01,对比加噪声前后的解调信号图,运行结果如下:

没加噪声解调信号如下(图3-12)所示:

第14页共22页

图3-12没加噪声解调信号

加了噪声的解调信号(图16)所示:

图3-13加了噪声的解调信号

此时得num=14,ratio=0.14,即错码数为14,误码率为0.14,而对比上面两幅图也可以看出明显的不同。

现在保持其他量不变,将信噪比设定为1,对比加噪声前后的解调信号图,运行结果如下:

没加噪声解调信号如下(图3-14)所示:

图3-14没加噪声解调信号

第15页共22页

加了噪声的解调信号(图3-15)所示:

图3-15加了噪声的解调信号

此时得num=8,ratio=0.08,即错码数为8,误码率为0.08,可以看出,此时比信噪比为0.01时的误码率要小。现在在上面的基础上将信噪比改为5,对比加噪声前后的解调信号图,运行结果如下:

没加噪声解调信号如下(图3-16)所示:

图3-16没加噪声解调信号

加了噪声的解调信号(图3-17)所示:

第16页共22页

图3-17加了噪声的解调信号

此时得num=3,ratio=0.03,即错码数为3,误码率为0.03,可以看出,比信噪比为1时的误码率要小。由上面三次对比可以得到一个结论:当信噪比增大时,错码数目和误码率会明显减少。可见添加噪声的信噪比能够体现出噪声对信号传输的影响程度,并且信噪比越小,影响程度越大。

下面设定a=10000,信噪比从0.01到9.01每次增加1,运行后可得错码数、误码率的结果对应为:

snr=[0.01:9.01]; %信噪比

ratio=[0.1518 0.1148 0.0765 0.0420 0.0244 0.0120 0.004 0.002 0.0005 0.0001];%误码率由上面的结果绘制出误码率与信噪比的关系图(横坐标为信噪比,纵坐标为误码率)如下(图3-18)所示:

第17页共22页

图3-18误码率与信噪比的关系图

可以看出,当信噪比小于1时,误码率随信噪比的变化很平缓,即使信噪比只有1,误码率也低于0.12,在信噪比大于1小于6时,误码率随信噪比的增大减少得比较快,当信噪比大于6时,误码率已经低于百分之一。

从前面的测试以及后面误码率与信噪比的关系图可以看出,当信噪比足够大时,使用OQPSK调制的整体误码率较低,当信噪比大于等于10时,误码率约为0,在基带信号数目较多的情况下,错码个数可以忽略。综上所述,OQPSK的调制与解调在通信系统中是一种抗干扰性比较理想的实现方法。

4 遇到的问题及解决办法

在刚看到任务书时我真的懵了,什么是OQPSK,似乎见都没见过,于是马上上网搜,结果实在让我失望,其他各种调制都能找到一大堆,唯独OQPSK却是寥寥无几,而且就在这些极少的资料中也没有多少有用的信息。我索性打开教材翻看,原来教材上是有这个内容,但对于它的介绍却只有小小的一个段落,而且只是在介绍完QPSK后稍微提了一下,心里顿时更紧张了。只好跑到图书馆查找通信类的书,希望能找到多一些有用的信息,可是结果还是无功而返。最后没办法了,我就把教材上的内容反复地看,反复地理解,所谓“书读百遍,其义自见”,最终把OQPSK的调制原理弄明白了。遇到的第二个问题就是MATLAB中的oqpskmod(x)函数功能非常有限,不仅不能产生调制波形图,甚至结果都不能直接用图表示出来。请教了老师后,我先把调制后的星座图找出来,然后根据星座图上的点所属的象限去确定一个周期的波形图的起始位置,最终产生了调制波形图。遇到的第三个问题是oqpskdemod(y)函数的输入问题,开始我一直都用自己设定的那个可以产生波形图的变量作为oqpskdemod(y)的输入,因为我认为解调的输入应该是这种波形图才对,可是运行程序时却一直报错。问了老师后才知道,oqpskdemod(y)函数与oqpskmod(x)函数是一对,所以oqpskdemod(y)的输入必须是oqpskmod(x)的输出,修改输入后程序正常运行并得到了解调后的信号。第四个问题是求解调信号频谱时函数fft(x,1024)的输入问题,鉴于第三个问题,我把使用函数

第18页共22页

oqpskmod(x)后所得的结果y直接作为fft(x,1024)的输入,即用的是fft(y,1024),发现所得的频谱图根本就不对,试了多次后均是一样的结果,我决定把输入改为产生波形图的那个变量,试后发现结果对了。最后一个问题是如何计算错码个数和误码率,开始我自己编了一个程序段,发现结果要么是0,要么是1,我知道程序肯定是错了,但自己又没有检查出来。后来老师告诉我,有一个直接计算错码个数和误码率的函数,于是问题迎刃而解。

5 结束语

这次课程设计让我感触多多,首先是自己所学知识的缺陷问题,感觉现在的学习很大程度上都是应付考试,老师说可能会考到的地方就会认真去看一下,否则可能翻都不会翻,非常被动,这就造成了对教材不熟悉、知识点缺失严重的现象,以致遇到教材上有的内容都是一副一筹莫展的样子。对此我深感惭愧,在以后的学习中一定要更加自主、自觉,以学到知识为目的,至少能做到绝对熟悉教材。对于这次课程设计,从产生基带信号到调制结果出来,再到将调制结果转换为波形信号,查看波形图及其频谱图,对调制信号进行解调,调制信号添加噪声,对比添加噪声前的波形图及频谱图,查看没加噪声前解调信号的阶梯图及频谱图,对比加入噪声后解调信号的阶梯图及频谱图,到最后对错码个数及误码率的计算,感觉每一步走过来都不是那么容易,所以,也说明了每一步都有不少收获。这次课程设计,让我很好地将教材知识消化后付诸于实际操作,增强了我的动手能力,最重要的是无形中增加了我在学习中的自主性及明白了适度的寻求帮助会让事情进展得更好更快。在整个过程中,我真心要感谢我的指导老师吴老师,感谢她一步步无怨言的指导,感谢她的耐心,让我从最初对这个设计题目的惧怕转化为后来的自信;同时我要感谢一个和我的设计内容比较接近的同学,多亏了她,使得我的设计过程走得更加顺畅和准确!

第19页共22页

参考文献

[1] 樊昌信, 曹丽娜, 通信原理. 北京: 国防工业出版社, 2006

[2] 黄文梅, 熊桂林, 杨勇.信号分析与处理—MATLAB语言及应用. 长沙: 国防科技大学出版社, 2000

[3] 唐向宏, 岳恒立, 郑雪峰. MATLAB及在电子信息类课程中的应用.北京: 电子工业出版社, 2006, 8

[4] 邓华. MATLAB通信仿真及应用实例详解. 人民邮电出版社, 2003

第20页共22页

附录1:OQPSK调制与解调程序清单

%程序1名称:oqpsk.m

%程序1功能:产生四进制数字基带信号,实现OQPSK调制、产生调制后波形图及频谱图、对调制信号添加不同信噪比的噪声、实现OQPSK解调、查看错码个数和误码率。%程序1作者:周翌

matlab课程教学设计(简单计算器的设计)

matlab课程设计报告 题目简易计算器的设计 学院电子信息工程学院 专业电子信息 学生姓名和学号 指导教师

一、选题目的及意义 GUI的广泛应用是当今计算机发展的重大成就之一,它极大地方便了非专业用户的使用。人们从此不再需要死记硬背大量的命令,取而代之的是可以通过窗口、菜单、按键等方式来方便地进行操作,而在matlab有很简单的gui设计工具,我们可以通过这个工具轻松地构建我们想要的程序,从而实现与用户的信息交互。本次课程设计是使用了matlab中的guide生成了简单的计算器程序。 二、源代码 function varargout = Calculator(varargin) %Simple Calculator %@Anhui University % Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @Calculator_OpeningFcn, ... 'gui_OutputFcn', @Calculator_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []); if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else

matlab课程设计题目

课题一: 连续时间信号和系统时域分析及MATLAB实现 课题要求: 深入研究连续时间信号和系统时域分析的理论知识。利用MATLAB强大的图形处理功能、符号运算功能以及数值计算功能,实现连续时间信号和系统时域分析的仿真波形。 课题内容: 一、用MATLAB实现常用连续时间信号的时域波形(通过改变参数,分析其时域特性)。 1、单位阶跃信号, 2、单位冲激信号, 3、正弦信号, 4、实指数信号, 5、虚指数信号, 6、复指数信号。 二、用MATLAB实现信号的时域运算 1、相加, 2、相乘, 3、数乘, 4、微分, 5、积分 三、用MATLAB实现信号的时域变换(参数变化,分析波形变化) 1、反转, 2、使移(超时,延时), 3、展缩, 4、倒相, 5、综合变化 四、用MATLAB实现信号简单的时域分解 1、信号的交直流分解, 2、信号的奇偶分解 五、用MATLAB实现连续时间系统的卷积积分的仿真波形 给出几个典型例子,对每个例子,要求画出对应波形。 六、用MATLAB实现连续时间系统的冲激响应、阶跃响应的仿真波形。 给出几个典型例子,四种调用格式。 七、利用MATLAB实现连续时间系统对正弦信号、实指数信号的零状态响应的仿真波形。 给出几个典型例子,要求可以改变激励的参数,分析波形的变化。 课题二: 离散时间信号和系统时域分析及MATLAB实现。 课题要求: 深入研究离散时间信号和系统时域分析的理论知识。利用MATLAB强大的图

形处理功能、符号运算功能以及数值计算功能,实现离散时间信号和系统时域分析的仿真波形。 课题内容: 一、用MATLAB绘制常用信号的时域波形(通过改变参数分析其时域特性) 1、单位序列, 2、单位阶跃序列, 3、正弦序列, 4、离散时间实指数序列, 5、离散时间虚指数序列, 6、离散时间复指数序列。 二、用MATLAB实现信号的时域运算 1、相加, 2、相乘, 3、数乘。 三、用MATLAB实现信号的时域变换(参数变化,分析波形的变化) 1、反转, 2、时移(超时,延时), 3、展缩, 4、倒相。 四、用MATLAB实现离散时间系统卷积和仿真波形 给出几个典型例子,对每个例子要求画出e(k),h(k),e(i),h(i),h(-i),Rzs(k)波形。 五、用MATLAB实现离散时间系统的单位响应,阶跃响应的仿真波形 给出几个典型例子,四中调用格式。 六、用MATLAB实现离散时间系统对实指数序列信号的零状态响应的仿真波形 给出几个典型例子,要求可以改变激励的参数,分析波形的变化。 课题三: 连续时间信号傅里叶级数分析及MATLAB实现。 课题要求: 深入研究连续时间信号傅里叶级数分析的理论知识,利用MATLAB强大的图形处理功能,符号运算功能以及数值计算功能,实现连续时间周期信号频域分析的仿真波形。 课题内容: 一、用MATLAB实现周期信号的傅里叶级数分解与综合 以周期矩形波信号为例,绘出包含不同谐波次数的合成波形,观察合成波形与原矩形 波形之间的关系及吉布斯现象。

MATLAB课程设计报告 基于MATLAB GUI 的滤波器设计软件

MATLAB课程设计报告 基于MATLAB GUI的“滤波器设计软件”设计

摘要 面对庞杂繁多的原始信号, 如何提取所需信号、抑制不需要的信号这就需要使用滤波器。滤波器的作用主要是选择所需频带的信号内容而抑制不需要的其他频带的信号内容。数字滤波器因其精度高、可靠性好、灵活性大等优点, 在语音信号处理、信号频谱估计、信号去噪、无线通信中的数字变频以及图像处理等工程实际应用中都很广泛。根据其冲击响应函数的时域特性可将数字滤波器分为IIR(有限长冲击响应)和FIR(无限长冲击响应)。作为强大的计算软件, MATLAB 提供了编写图形用户界面的功能。所谓图形用户界面, 简称为GUI, 是由各种图形对象, 如图形窗口菜单按钮、文本框等构建的用户界面。 MATALB 可以创建图形用户界面GUI ( GraphicalUser Interface) ,它是用户和计算机之间交流的工具。MATLAB 将所有GUl 支持的用户控件都集成在这个环境中并提供界面外观、属性和行为响应方式的设置方法,随着版本的提高,这种能力还会不断加强。而且具有强大的绘图功能,可以轻松的获得更高质量的曲线图。 关键词:MATLAB GUI IIR滤波器FIR滤波器

目录 1设计任务 (1) 2 MATLAB GUI的简介 (2) 3 滤波器设计原理 (3) 3.1滤波器概述 (3) 3.2 IIR数字滤波器 (4) 3.2.1 IIR数字滤波器设计原理 (4) 3.2.2 IIR滤波器设计思想 (5) 3.2.3 IIR滤波器设计编程实现 (6) 3.3 FIR数字滤波器 (8) 3.3.1 FIR数字滤波器设计原理 (8) 3.3.2 FIR滤波器设计思想 (9) 4 基于Matlab GUI的数字滤波器设计思路及实现 (12) 4. 1 GUI界面设计概述 (12) 4.2 “滤波器设计软件”设计所实现任务 (14) 4.3 基于Matlab GUI的数字滤波器设计实现 (16) 4.3.1 “滤波器设计软件”GUI界面设计 (16) 4.3.2 “滤波器设计软件”回调函数编写 (17) 4.3.3AutoChoose.m程序的编写 (22) 4.4 运行和结果显示 (28) 5 设计总结和心得 (33) 5.1 设计总结 (33) 5.2 设计心得 (34) Abstract (35) 参考文献 (36) 附录

matlab滤波器设计

长安大学 数字信号处理综合设 计 专业_______电子信息工程_______ 班级__24030602___________ 姓名_______张舒_______ 学号2403060203 指导教师陈玲 日期_______2008-12-27________

一、课程设计目的: 1. 进一步理解数字信号处理的基本概念、基本理论和基本方法; 2.熟悉在Windows环境下语音信号采集的方法; 3.学会用MATLAB软件对信号进行分析和处理; 4.综合运用数字信号处理理论知识,掌握用MATLAB软件设计FIR和IIR数字滤波器的方法; 5. 提高依据所学知识及查阅的课外资料来分析问题解决问题的能力。 二、课程设计内容: 1.语音信号的采集 利用windows下的录音机录制一段自己的话音,时间控制在1秒左右;并对语音信号进行采样,理解采样频率、采样位数等概念。 2.语音信号的频谱分析 利用函数fft对采样后语音信号进行快速傅里叶变换,得到信号的频谱特性。 3.设计数字滤波器 采用窗函数法和双线性变换法设计下列要求的三种滤波器,根据语音信号的特点给出有关滤波器的性能指标: 1)低通滤波器性能指标,fp=1000Hz,fc=1200Hz, As=100dB,Ap=1dB; 2)高通滤波器性能指标,fc=4800Hz,fp=5000Hz ,As=100dB,Ap=1dB; 3)带通滤波器性能指标,fp1=1200Hz,fp2=3000Hz,fc1=1000Hz,fc2=3200Hz,As=100dB,Ap=1dB。 4.对语音信号进行滤波 比较用两种方法设计的各滤波器的性能,然后用性能好的滤波器分别对采集的语音信号进行滤波;并比较滤波前后语音信号的波形及频谱,分析信号的变化。 5.回放语音信号,感觉滤波前后的声音变化。 三、实验原理 (一)基于双线性Z变换法的IIR数字滤波器设计 由于的频率映射关系是根据推导的,所以使jΩ轴每隔2π/Ts便映射到单位圆上一周,利用冲激响应不变法设计数字滤波器时可能会导致上述的频域混叠现象。为了克服这一问题,需要找到由s平面到z平面的另外的映射关系,这种关系应保证: 1) s平面的整个jΩ轴仅映射为z平面单位圆上的一周; 2) 若G(s)是稳定的,由G(s)映射得到的H(z)也应该是稳定的; 3) 这种映射是可逆的,既能由G(s)得到H(z),也能由H(z)得到G(s); 4) 如果G(j0)=1,那么。 双线性Z变换满足以上4个条件的映射关系,其变换公式为

MATLAB课程设计报告

华东交通大学MATLAB程序设计报告书 课题名称:基于MATLAB的粒子群优化算法的实现 姓名: 学号:20160280800014 专业:控制科学与工程 2016年 11月 20日

基于MATLAB的粒子群优化算法的实现 一、课程选题目的 本次课程设计的课题为《基于MATLAB的粒子群优化算法的实现》,主要为学会运用MATLAB对实际算法编程,加深对粒子群优化算法的理解,并为今后熟练使用MA TLAB进行系统的分析仿真和设计奠定基础。数值计算分析可以帮助更深入地理解理论知识,并为将来使用MA TLAB进行各领域数值分析分析和实际应用打下基础。 此次课程主要是为了进一步熟悉对MATLAB软件的使用,以及学会利用MA TLAB对数值运算这种实际问题进行处理,将理论应用于实际,加深对它的理解。 二、粒子群优化算法原理 优化是科学研究、工程技术和经济管理等领域的重要研究工具。它所研究的问题是讨论在众多的方案中寻找最优方案。例如,工程设计中怎样选择设计参数,使设计方案既满足设计要求又能降低成本;资源分配中,怎样分配有限资源,使分配方案既能满足各方面的基本要求,又能获得好的经济效益。在人类活动的各个领域中,诸如此类,不胜枚举。优化这一技术,正是为这些问题的解决,提供理论基础和求解方法,它是一门应用广泛、实用性很强的科学。近十余年来,粒子群优化算法作为群体智能算法的一个重要分支得到了广泛深入的研究,在路径规划等许多领域都有应用。 2.1 粒子群优化算法的起源 粒子群优化(PSO)算法是由Kennedy和Eberhart于1995年用计算机模拟鸟群觅食这一简单的社会行为时,受到启发,简化之后而提出的。 设想这样一个场景:一群鸟随机的分布在一个区域中,在这个区域里只有一块食物。所有的鸟都不知道食物在哪里。但是他们知道当前的位置离食物还有多远。那么找到食物的最优策略是什么呢。最简单有效的方法就是追寻自己视野中目前离食物最近的鸟。如果把食物当作最优点,而把鸟离食物的距离当作函数的适应度,那么鸟寻觅食物的过程就可以当作一个函数寻优的过程。鱼群和鸟群的社会行为一直引起科学家的兴趣。他们以特殊的方式移动、同步,不会相互碰撞,整体行为看上去非常优美。生物学家CargiReynolds提出了一个非常有影响的鸟群聚集模型。在他的模拟模型boids中,每一个个体遵循:避免与邻域个体相冲撞、匹配邻域个体的速度、试图飞向感知到的鸟群中心这三条规则形成简单的非集中控制算法驱动鸟群的聚集,在一系列模拟实验中突现出了非常接近现实鸟群聚集行为的现象。该结果显示了在空中回旋的鸟组成轮廓清晰的群体,以及遇到障碍物时鸟群的分裂和再度汇合过程。由此受到启发,经过简化提出了粒子群优化算法。 2.2粒子群优化算法的原理 在粒子群优化算法中,每个优化问题的潜在解都是搜索空间中的一只鸟,称之为“粒子”。所有的粒子都有一个由被优化的函数决定的适应值,每个粒子还有一个速度决定他们飞翔的方向和距离。然后粒子们就追随当前的最优粒子在解空间中搜索。优化开始时先初始化为一群随机粒子(随机解)。然后通过迭代找到最优解。在每一次迭代中,粒子通过跟踪两个极值来更新自己。第一个极值就是整个种群目前找到的最优解。这个极值是全局极值。另外也可以不用整个种群而只是用其中一部分作为粒子的邻居,那么在所有邻居中的极值就是局部极值。第二个极值是粒子本身所找到的最优解,称为个体极值。这是因为粒子仅仅通过跟踪全局极值或者局部极值来更新位置,不可能总是获得较好的解。这样在优化过程中,粒子在追随全局极值或局部极值的同时追随个体极值则圆满的解决了这个问题。这就是粒子群优化

MATLAB课设报告

课程设计任务书 学生姓名:董航专业班级:电信1006班 指导教师:阙大顺,李景松工作单位:信息工程学院 课程设计名称:Matlab应用课程设计 课程设计题目:Matlab运算与应用设计5 初始条件: 1.Matlab6.5以上版本软件; 2.课程设计辅导资料:“Matlab语言基础及使用入门”、“Matlab及在电子信息课程中的应 用”、线性代数及相关书籍等; 3.先修课程:高等数学、线性代数、电路、Matlab应用实践及信号处理类相关课程等。 要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) 1.课程设计内容:根据指导老师给定的7套题目,按规定选择其中1套完成; 2.本课程设计统一技术要求:研读辅导资料对应章节,对选定的设计题目进行理论分析, 针对具体设计部分的原理分析、建模、必要的推导和可行性分析,画出程序设计框图,编写程序代码(含注释),上机调试运行程序,记录实验结果(含计算结果和图表),并对实验结果进行分析和总结。具体设计要求包括: ①初步了解Matlab、熟悉Matlab界面、进行简单操作; ②MATLAB的数值计算:创建矩阵矩阵运算、多项式运算、线性方程组、数值统计; ③基本绘图函数:plot, plot3, mesh, surf等,要求掌握以上绘图函数的用法、简单图形 标注、简单颜色设定等; ④使用文本编辑器编辑m文件,函数调用; ⑤能进行简单的信号处理Matlab编程; ⑥按要求参加课程设计实验演示和答辩等。 3.课程设计说明书按学校“课程设计工作规范”中的“统一书写格式”撰写,具体包括: ①目录; ②与设计题目相关的理论分析、归纳和总结; ③与设计内容相关的原理分析、建模、推导、可行性分析; ④程序设计框图、程序代码(含注释)、程序运行结果和图表、实验结果分析和总结; ⑤课程设计的心得体会(至少500字); ⑥参考文献(不少于5篇); ⑦其它必要内容等。 时间安排:1.5周(分散进行) 参考文献: [1](美)穆尔,高会生,刘童娜,李聪聪.MA TLAB实用教程(第二版) . 电子工业出版社,2010. [2]王正林,刘明.精通MATLAB(升级版) .电子工业出版社,2011. [3]陈杰. MA TLAB宝典(第3版) . 电子工业出版社,2011. [4]刘保柱,苏彦华,张宏林. MATLAB 7.0从入门到精通(修订版) . 人民邮电出版社,2010. 指导教师签名:年月日 系主任(或责任教师)签名:年月日

基于matlab的数字滤波器设计

淮北煤炭师范学院 2009届学士学位论文 基于MA TLAB的数字滤波器设计 学院、专业物理与电子信息学院 电子信息科学与技术 研究方向基于MATLAB的数字滤波器设计 学生姓名耿博 学号200513432024 指导教师姓名邹锋 指导教师职称讲师 2009 年4 月18

基于MATLAB的数字滤波器设计 耿博 (淮北煤炭师范学院物理与电子信息学院235000) 摘要随着信息时代和数字世界的到来,数字信号处理已成为今一门极其重要的学科和技术领域。数字信号处理在通信、语音、图像、自动控制、雷达、军事、航空航天、医疗和家用电器等众多领域得到了广泛的应用。在数字信号处理应用中,数字滤波器十分重要并已获得广泛应用。 数字滤波是数字信号处理的重要内容,数字滤波器可分为IIR和FIR两大类。对于IIR数字滤波器的设计,需要借助模拟原型滤波器,再将模拟滤波器转化为数字滤波器,文中采用的设计方法是脉冲响应不变法、双向性变换法和完全函数设计法;对于FIR数字滤波器的设计,可以根据所给定的频率特性直接设计,文中采用的设计方法是窗函数法。本文根据IIR滤波器和FIR滤波器的特点,在MATLAB坏境下分别用双线性变换法设计IIR和用窗函数设计FIR数字滤波器,并对采集的语音信号进行分析,最后给出了IIR和FIR对语音滤波的效果。 关键词数字滤波器;IIR ;FIR ;MATLAB

The Design of Digital Filter based on MATLAB Geng Bo School of Physics and Electronics Information, Huaibei Coal Industry Teachers? College, 235000 ABSTRACT Along with the information age and the digital world arrival, the digital signal processing has become a now extremely important discipline and the area of technology.The digital signal processing in the correspondence, the multitudinous domains the pronunciation such as the image, the automatic control, the radar, the military, the aerospace, the medical service and the domestic electric appliances and so on have obtained the widespread application.In the digital signal processing application, the digital filter are extremely important and have obtained the widespread application. The digital filter are the digital signal processing important content, the digital filter may divide into IIR and the FIR two main kinds. As for the IIR digital filter design, we need the help of analog prototype filter, and then transform analog filter into digital filter. In the paper we use the design of the pulse response invariable method, the bilinear method and full function design; as for the FIR filter, we can design it directly based on the giving frequency, in the paper it uses the design of the window function.This article according to the IIR filter and the FIR filter characteristic, uses the bilinearity method of transformation under the MATLAB bad boundary to design IIR and to design the FIR numeral filter separately with the window box number, and carries on the analysis to the gathering pronunciation signal, and finally gives IIR and FIR to the pronunciation filter effect. Keywords Digtial Filter;IIR;FIR;MATLAB

Matlab课程设计报告

自控系统仿真软件课程设计报告 MATLAB 设计题目:牛顿摆球 姓名: 学号: 院系: 班级:1203 指导教师: 2014年12月20日

一.课程设计目的 1、熟悉课程设计的基本流程; 2、掌握MATLAB语法结构及调试方法; 3、熟悉MATLAB函数调用,熟练二维画图; 4、掌握MATLAB语言在控制方面的运用; 5、学会用MATLAB进行基本仿真; 6、掌握MATLAB编程技巧,提高编程水平。 二.系统分析 1.题目的描述: (1)牛顿摆球原理描述 五个质量相同的球体由吊绳固定,彼此紧密排列。当摆动最右侧的球并在回摆时碰撞紧密排列的另外四个球,最左边的球将被弹出,并仅有最左边的球被弹出。当然此过程也是可逆的,当摆动最左侧的球撞击其它球时,最右侧的球会被弹出。当最右侧的两个球同时摆动并撞击其他球时,最左侧的两个球会被弹出。同理相反方向同样可行,并适用于更多的球。 为了更接近现实,在这里我将考虑重力及空气阻力的影响,摆球将不会永无止境的运动下去,由于外界因素的影响,摆球运动一段时间后将回归静止状态。(2)通过MATLAB动画程序制作软件,实现下述过程 当运行程序时,把最右边的小球拉到一定的高度放下,让其碰撞其余四个小球,仅让最左边的小球被弹出,当最左边小球回摆碰撞其它球时,最右边小球又被弹出,如此循环。由于是非理想条件下,摆球的摆动幅度会随摆动次数的增加越来越小,直到静止。 时间停顿两秒,把右边两小球一起拉到一定高度放下,让其碰撞其余三个球,同样仅让左边两球被弹出,当球回摆再次碰撞时,最右边两球又被同时弹出,如此循环,因为外界因素的影响,最终五个球都会静止下来。 (3)整个实验看似简单,但要在MATLAB上完成这样一个动画过程,还是需要下点功夫,克服困难的。经过自己的努力,终于实现了整个过程,这也是一种不小的收获。 2.设计要求: (1)能够实现有阻尼摆动,即摆幅随摆动次数增加越来越小,直到静止。(2)能够让摆球弧线摆动。 三.系统设计 1.系统设计过程 (1)通过函数axis建立坐标系 (2)在坐标系范围内通过函数line画各个支架 (3)通过函数title添加标题“动量守恒实验”、函数text添加标注“牛顿摆球” (4)通过函数line画出五个球,并设定其初始位置,颜色,大小,线条的擦拭方式

数字滤波器的MATLAB设计与DSP上的实现

数字滤波器的MAT LAB设计与 DSP上的实现 数字滤波器的MATLAB 设计与DSP上的实现 公文易文秘资源网佚名2007-11-15 11:56:42我要投稿添加到百度搜藏 摘要:以窗函数法设计线性相位FIR数字滤波器为例,介绍用MATLAB工具软件设计数字滤波器的方法和在定点DSP上的实现。实现时,先在CCS5000仿真开发,然后将程序加载到TMS320VC5409评估板上实时运行,结果实现了目标要求。文中还讨论了定标、误差、循环寻址等在DSP上实现的关键问题。关键词 摘要:以窗函数法设计线性相位 FIR数字滤波器为例,介绍用 MATLAB工具软件设计数字滤波器的方法和在定点DSP上的实现。实现时,先在 CCS5000仿真开发,然后将程序加载到 TMS320VC5 409评估板上实时运行,结果实现了目标要求。文中还讨论了定标、误差、循环寻址等在DSP上实 现的关键问题。 关键词:数字滤波器MATLAB DSP 引言 随着信息时代和数字世界的到来,数字信号处理已成为今一门极其重要的学科和技术领域。数字信号处理在通信、语音、图像、自动控制、雷达、军事、航空航天、医疗和家用电器等众多领域得到了广泛的应

用。在数字信号处理应用中,数字滤波器十分重要并已获得广泛应用。 1数字滤波器的设计 1.1数字滤波器设计的基本步骤 数字滤波器根据其冲激响应函数的时域特性,可分为两种,即无限长冲激响应(IIR )滤波器和有限长冲激响应(FIR )滤波器。IIR滤波器的特征是,具有无限持续时间冲激响应。种滤波器一般需要用递归模型来实现,因而有时也称之为递归滤波器。FIR滤波器的冲激响应只能延续一定时间, 在工程实际中可以采用递归的方式实现,也可以采用非递归的方式实现。数字滤波器的设计方法有多种,如双线性变换法、窗函数设计法、插值逼近法和Chebyshev逼近法等等。随着 MATLAB软件尤 其是MATLAB的信号处理工作箱的不断完善,不仅数字滤波器的计算机辅助设计有了可能,而且还可以使设计达到最优化。 数字滤波器设计的基本步骤如下: (1确定指标 在设计一个滤波器之前,必须首先根据工程实际的需要确定滤波器的技术指标。在很多实际应用中,数字滤波器常常被用来实现选频操作。因此,指标的形式一般在频域中给岀幅度和相位响应。幅度指标主要以两种方式给岀。第一种是绝对指标。它提供对幅度响应函数的要求,一般应用于FI R滤波器的设计。第二种指标是相对指标。它以分贝值的形式给岀要求。在工程实际中,这种指标最受欢迎。对于相位响应指标形式,通常希望系统在通频带中人有线性相位。运用线性相位响应指标进行滤波器设计具有如下优点:①只包含实数算法,不涉及复数运算;②不存在延迟失真,只有固定数量的延迟;③长度为N的滤波器(阶数为N-1),计算量为N/2数量级。因此,本文中滤波器的设计就以线性相位FIR滤波器的设计为例。 (2)逼近

matlab课程设计题目全

Matalab课后作业 学院:电气信息工程及其自动化 班级: 学号: 姓名: 完成日期: 2012年12月23日

1、 matlab 软件主要功能是什么?电气工程及其自动化专业本科生主要用到哪 些工具箱,各有什么功能? 答:(1)主要功能:工业研究与开发; 数学教学,特别是线性代数;数值分析和科学计算方面的教学与研究;电子学、控制理论和物理学等工程和科学学科方面的教学与研究; 经济学、化学和生物学等计算问题的所有其他领域中的教学与研究;符号计算功能;优化工具;数据分析和可视化功能;“活”笔记本功能;工具箱;非线性动态系统建模和仿真功能。 (2)常用工具箱: (a ) MATLAB 主工具箱:扩充matlab 的数值计算、符号运算功能、图形建模仿真功能、文字处理功能以及与硬件实时交互功能。 (b )符号数学工具箱:符号表达式、符号矩阵的创建;符号可变精度求解;因式分解、展开和简化;符号代数方程求解;符号微积分;符号微分方程。 (c ) SIMULINK 仿真工具箱: Simulink 是用于动态系统和嵌入式系统的多领域仿真和基于模型的设计工具。对各种时变系统,包括通讯、控制、信号处理、视频处理和图像处理系统,Simulink 提供了交互式图形化环境和可定制模块库来对其进行设计、仿真、执行和测试。 (d )信号处理工具箱:数字和模拟滤波器设计、应用及仿真;谱分析和估计;FFT 、DCT 等 变换;参数化模型。 (e )控制系统工具箱:连续系统设计和离散系统设计;状态空间和传递函数以及模型转换;时域响应(脉冲响应、阶跃响应、斜坡响应);频域响应(Bode 图、Nyquist 图);根轨迹、极点配置。 2、设y=23e t 4-sin(43t+3 ),要求以0.01秒为间隔,求出y 的151个点,并求出其导数的值和曲线。 程序如下: clc clear x=0:0.01:1.5; y=sqrt(3)/2*exp(-4*x).*sin(4*sqrt(3)*x+pi/3); y1=diff(y); subplot(2,1,1) plot(x,y) subplot(2,1,2) plot(x(1:150),y1) 曲线如下图所示:

matlab课程设计拟定题目

第一类:单位转换 1.长度单位换算的设计与实现 2.面积单位换算的设计与实现 3.体积单位换算的设计与实现 4.容积单位换算的设计与实现 5.质量单位换算的设计与实现 6.时间单位换算的设计与实现 7.温度单位换算的设计与实现 7.压强单位换算的设计与实现 8.角度单位换算的设计与实现 8.功率单位换算的设计与实现 第二类:曲线绘制 1.直线的自动绘制和相关计算 2.椭圆的自动绘制和相关计算 3.双曲线的自动绘制和相关计算 4.抛物线的自动绘制和相关计算 5.心脏线的自动绘制和相关计算 6.渐开线的自动绘制和相关计算 7.滚圆线的自动绘制和相关计算 8.三叶玫瑰线的自动绘制和相关计算9.四叶玫瑰线的自动绘制和相关计 10.阿基米德螺线的自动绘制和相关计算第三类:曲面绘制 1.球面的自动绘制和相关计算 2.椭球面的自动绘制和相关计算 3.单叶双曲面的自动绘制和相关计算 4.双叶双曲面的自动绘制和相关计算 5.抛物面的自动绘制和相关计算 6.双曲抛物面的自动绘制和相关计算 7.双曲柱面的自动绘制和相关计算 8.椭圆柱面的自动绘制和相关计算 9.抛物柱面的自动绘制和相关计算 10.圆锥面的自动绘制和相关计算 第四类:线性回归 1.男士身高体重相关计算经验公式 2.女士身高体重相关计算经验公式 3.男士胖瘦等级的确定 4.女士胖瘦等级的确定 5.男士身高脚长相关计算经验公式 6.女士身高脚长相关计算经验公式 7.父子身高相关性研究 8.母子身高相关性研究 9.父女身高相关性研究 10.母女身高相关性研究 第五类:学习成绩 1.期末总评自动计算的设计与实现 2.成绩等级自动评定的设计与实现 3.成绩分段自动统计的设计与实现 4.成绩分布折线自动绘制的设计与实现 5.成绩自动统计分析的设计与实现 6.试卷分布自动分析的设计与实现 7.试卷难度自动分析的设计与实现 8.考试成绩名次自动生成的设计与实现

MATLAB程序设计课程设计

Matlab课程设计 题目: 二、利用混合空间法增强锐化图像仿真 将原始图像增强,最终增强为如下类似图像 。 可参考如下过程

源程序: clc clear all %读取图像 J=imread('E:\工作台\MATLAB\2016课程设计\仿真2附件 \Fig0343(a)(skeleton_orig).tif'); %拉普拉斯变换得到M1 [m,n]=size(J); I=im2double(J); h1=[0,-1,0;-1,4,-1;0,-1,0]; M1=imfilter(I,h1); %与原图相加得到M2,锐化原图 M2=M1+I; %sobel算子运算结果得到M3,保留边缘去除噪声 h2=[1,0,-1;2,0,-2;1,0,-1]; h3=[-1,-2,-1;0,0,0;1,2,1]; Sx=imfilter(I,h2); Sy=imfilter(I,h3); for i=1:m for j=1:n M3(i,j)=sqrt((Sx(i,j))^2+(Sy(i,j))^2); end end %作3*3模板的均值平滑 M4=zeros(m,n); for x=2:m-1 for y=2:n-1 for a=-1:1 for b=-1:1 M4(x,y)=(M4(x,y)+M3(x+a,y+b))/9; end end end end for c=1:m for d=1:n M4(c,1)=M3(c,1); M4(1,d)=M3(1,d); end end %作幂次变换,提升亮度2倍,提升对比度 for e=1:m for f=1:n

M5(e,f)=M2(e,f)*M4(e,f); end end M6=I+M5; for g=1:m for h=1:n M7(g,h)=2*(M6(g,h))^1.15; end end subplot(241);imshow(I); subplot(242);imshow(M1); subplot(243);imshow(M2); subplot(244);imshow(M3); subplot(245);imshow(M4); subplot(246);imshow(M5); subplot(247);imshow(M6); subplot(248);imshow(M7); 分析: 1.读取图像 2.利用 Laplacian 变换得到M1,在与原图相处理得到锐化的图像 3.用 Sobel 算子运算,保留边缘去除噪声 4.用3*3的模板均值平滑化图像 5.用幂律定理,提高图像亮度,提高对比度

MATLAB课程设计报告图像处理

一.课程设计相关知识综述...................................................................... 1.1 研究目的及意义 (3) 1.2 数字图像处理研究的内容........................................................... 1.3 MATLAB 软件的介绍.................................................................. 1.3.1 MATLAB 语言的特点......................................................... 1.3.2 MATLAB 图像文件格式.................................................... 1.3.3 MATLAB 图像处理工具箱简介........................................ 1.3.4 MATLAB 中的图像类型.................................................... 1.3.5 MATLAB 的主要应用........................................................ 1.4 函数介绍........................................................................................ 二.课程设计内容和要求........................................................................... 2.1 主要研究内容................................................................................ 2.2 具体要求....................................................................................... 2.3 预期达到的目标........................................................................... 三.设计过程............................................................................................... 3.1 设计方案及步骤............................................................................ 3.2 程序清单及注释........................................................................... 3.3 实验结果........................................................................................ 四.团队情况................................................................................................ 五.总结....................................................................................................... 六.参考文献............................................................................................... 一.课程设计相关知识综述. 1.1研究目的及意义

MATLAB仿真课程设计

电气工程工具软件课程设计-MATLAB 学号:3100501044 班级:电气1002 姓名:王辉军 指导老师:乔薇 2014年1月16日

课程设计任务:构建一个含有PID控制器的系统,观察 K(比例系数)、 p K(积分系数)、d K(微分系数)不同值时系统的变化。 i (Continuous模块库中的Zero-Pole模块)输入为阶跃函数 一.建立含有pid子系统的系统模型 (1)选用器件搭建电路 图1-1 图1-2 (2)构建PID控制器 图1-3

(3)上述结构图封装成PID控制器 ①创建子系统。选中上述结构图后再选择模型窗口菜单“Edit/Creat Subsystem” ②封装。选中上述子系统模块,再选择模型窗口菜单“Edit/Mask Subsystem” ③根据需要,在封装编辑器对话框中进行一些封装设置,包括设置封装文本、对话框、图标等。本次试验主要需进行以下几项设置:Icon(图标)项:“Drawing commands”编辑框中输入“disp(‘PID’)”,如下 左图示:Parameters(参数)项:创建Kp,Ki,Kd三个参数,如下右图示 图1-4 图1-5

(4)搭建单一回路系统结构框图如下图 图1-6 所需模块及设置:Sources模块库中Step模块;Sinks模块库中的Scope 模块;Commonly UsedBlocks模块库中的Mux模块;Continuous模块库中的Zero-Pole模块。Step模块和Zero-Pole模块设置如下: 图1-7 图1-8

二.比较以下参数的结果:(把各个仿真波形图截图标注) 图2-1 如上图可更改Kp,Ki,Kd的值以实现以下要求: (1)Kp=8.5,Ki=5.3,Kd=3.4 图2-2 (2)Kp=6.7,Ki=2,Kd=2.5

matlab数字滤波器设计程序

%要求设计一butterworth低通数字滤波器,wp=30hz,ws=40hz,rp=0.5,rs=40,fs=100hz。>>wp=30;ws=40;rp=0.5;rs=40;fs=100; >>wp=30*2*pi;ws=40*2*pi; >> [n,wn]=buttord(wp,ws,rp,rs,'s'); >> [z,p,k]=buttap(n); >> [num,den]=zp2tf(z,p,k); >> [num1,den1]=impinvar(num,den); Warning: The output is not correct/robust. Coeffs of B(s)/A(s) are real, but B(z)/A(z) has complex coeffs. Probable cause is rooting of high-order repeated poles in A(s). > In impinvar at 124 >> [num2,den2]=bilinear(num,den,100); >> [h,w]=freqz(num1,den1); >> [h1,w1]=freqz(num2,den2); >>subplot(1,2,1); >>plot(w*fs/(2*pi),abs(h)); >>subplot(1,2,2); >>plot(w1*fs/(2*pi),abs(h1)); >>figure(1); >>subplot(1,2,1); >>zplane(num1,den1); >>subplot(1,2,2); >>zplane(num2,den2);

高级数字滤波器设计及Matlab实现

高级数字滤波器设计及Matlab 实现 利用Parks-McClellan 算法设计线性相位FIR 滤波器 一、 算法原理 长度为2n+1的线性相位数字滤波器的传输函数为:20 ()n k k k G z h Z -== ∑。当 Z=exp(j T ω)=exp(2j F π)时,可得到频率响应: ()exp(2)cos 2n k k G F j nF d k F ππ==-∑ exp(2)()j F H F π=- 其中2n k k d h -=,k=0,……,n-1,0n d h = max ()()()W F D F H F - 对于一个理想的低通滤波器上式中的H(F)可以表示为: 误差加权函数: 允许设计者自己给定通带和阻带内的误差范围。令p s B B A = ,设计长度为2n+1的线性相位低通滤波器只要找到k d 并使得m a x ()()()W F D F H F -最小。 设空间A 是[0,1/2]的封闭子空间,为了使0 ()cos 2n k k H F d kF π== ∑是D(F) 在A 上唯一的最佳逼近,加权误差方程()()[()()]E F W F D F H F =-在A 上至少要有n+2个交错点。因此1()()i i E F E F E -=-=±,011,n i F F F F A +<∈ ,

max ()E E F =。算法的流程如图1所示。 对于给定的n+2个频率点,需要计算n+2个方程: ()(()())(1)k k k k W F H F D F ρ-=-- 写成矩阵的形式就是: 图 1.

0000001 1 1 1 1011 1 1 1 11 1cos 2cos 4cos 2()()11cos 2cos 4cos 2()()()(1)1cos 2cos 4cos 2()n n n n n n n F F nF W F d D F d F F nF D F W F d D F F F nF W F ππππππρπππ++++++?? ???? ?? ?? ??-????????????=??????????????????-?? ????? ? 通过该方程组可得: 其中: 利用拉格朗日插值公式可得: 这里 利用求得的H(F)求出误差函数E(F)。如果对所有的频率都有()E F ρ≤,说明ρ是纹波极值,交错频率点121,n F F F + 是交错频率点。若存在某些频率使得()E F ρ>,说明初始交错点组中的某些点需要交换。 对于上次确定的121,n F F F + 中每一点,都检查其附近是否存在某一频率 ()E F ρ>,如果有再在该点附近找出局部极值点,并用该,点代替原来的

相关主题
文本预览
相关文档 最新文档