基于simulink的DSB调制解调设计报告文档格式.docx
《基于simulink的DSB调制解调设计报告文档格式.docx》由会员分享,可在线阅读,更多相关《基于simulink的DSB调制解调设计报告文档格式.docx(8页珍藏版)》请在冰豆网上搜索。
(1)录制一段2s左右的语音信号,并对录制的信号进行8000Hz的采样,画出采样后语音信号的时域波形和频谱图;
(2)采用正弦信号和自行录制的语音信号(.wav文件)进行DSB调制与解调;
信道使用高斯白噪声;
画出相应的时域波形和频谱图。
2系统原理
2.1DSB调制原理
在消息信号m(t)上不加上直流分量,则输出的已调信号就是无载波分量的双边带调制信号,或称抑制载波双边带(DSB-SC)调制信号,简称双边带(DSB)信号。
DSB调制器模型如图2-1,可见DSB信号实质上就是基带信号与载波直接相乘。
图2-1DSB信号调制器模型
其时域和频域表示式分别如下
(式2-1)
(式2-2)
除不再含有载频分量离散谱外,DSB信号的频谱与AM信号的完全相同,仍由上下对称的两个边带组成。
故DSB信号是不带载波的双边带信号,它的带宽与AM信号相同,也为基带信号带宽的两倍,DSB信号的波形和频谱分别如图2-2:
?
图2-2DSB信号的波形与频谱
2.2DSB解调原理
因为不存在载波分量,DSB信号的调制效率是100%,即全部功率都用于信息传输。
但由于DSB信号的包络不再与m(t)成正比,故不能进行包络检波,需采用相干解调。
图2-3DSB信号相干解调模型
图2-3中SL(t)为本地载波,也叫相干载波,必须与发送端的载波完成同步。
即频率相同时域分析如下:
(式2-3)
Sp(t)经过低通滤波器LPF,滤掉高频成份,
为
(式2-4)
频域分析如下:
(式2-5)
式中的H(ω)为LPF的系统函数。
频域分析的过程如图2-4所示。
事实上
本地载波和发端载波完全一致的条件是是不易满足的,因此,需要讨论
有误差情况下对解调结果的影响。
图2-4DSB信号相干解调过程示意图
3设计方案
3.1仿真平台
近几年,在学术界和工业领域,Simulink已经成为在动态系统建模和仿真方面应用最广泛的软件包之一。
它的魅力在于强大的功能和使用方法。
确切的说,它是对动态系统进行建模、仿真和分析的一个软件包。
它支持线性和非线性系统、连续时间系统、离散时间系统等,而且系统可以是多进程的。
Simulink为用户提供了用方框图进行建模的图形接口,采用这种方法进行系统设计,就像你用笔和纸来画一样容易。
它与传统的仿真软件包用微分方程和差分方程建模相比,具有更直观、方便、灵活的优点。
用Simulink创建的模型可以具有递接层次结构,及允许用户建立自己的子系统。
在察看时,用户可以从最顶层开始,然后用鼠标双击其中的子系统模块,从而进入自信同模块进行察看,这样非常便于模型的条理化,从而帮助用户理解模型的整体结构以及各模块之间的关系。
Simulink是MATLAB为模拟动态系统而提供的一个面向用户的交互式程序,它采用鼠标驱动方式,允许用户在屏幕上绘制框图,模拟系统并能动态的控制该系统。
它还提供了两个应用程序扩展集,分别是SimulinkEXTENSION和BLOCKSET。
Simulik提供了一些按功能分类的基本的系统模块,用户只需要知道这些模块的输入输出及模块的功能,而不必考察模块内部是如何实现的,通过对这些基本模块的调用,再将它们连接起来就可以构成所需要的系统模型,进而进行仿真与分析。
基于这些特点,在本设计中使用Simulink软件作为仿真平台搭建系统模型。
对Simulink的使用步骤简要介绍如下。
(1)模型库
在MATLAB命令窗口输入“simulink”并回车,就可进入Simulink模型库,单击工具栏上的按钮也可进入。
Simulink模块库按功能进行分为以下8类子库:
Continuous(连续模块)Discrete(离散模块)Function&
Tables(函数和平台模块)Math(数学模块)Nonlinear(非线性模块)Signals&
Systems(信号和系统模块)Sinks(接收器模块)Sources(输入源模块)用户可以根据需要混合使用歌库中的模块来组合系统,也可以封装自己的模块,自定义模块库、从而实现全图形化仿真。
Simulink模型库中的仿真模块组织成三级树结构Simulink子模型库中包含了Continous、Discontinus等下一级模型库Continous模型库中又包含了若干模块,可直接加入仿真模型。
Simulink主界面如图3-1所示。
图3-1Simulink主界面
(2)设计仿真模型
在MATLAB子窗口或Simulink模型库的菜单栏依次选择“File”|“New”|“Model”,即可生成空白仿真模型窗口,如图3-2所示。
图3-2新建仿真模型窗口
(3)运行仿真
两种方式分别是菜单方式和命令行方式,菜单方式:
在菜单栏中依次选择"
Simulation"
|"
Start"
或在工具栏上单击。
命令行方式:
输入“sim”启动仿真进程
比较这两种不同的运行方式:
菜单方式的优点在于交互性,通过设置示波器或显示模块即可在仿真过程中观察输出信号。
命令行方式启动模型后,不能观察仿真进程,但仍可通过显示模块观察输出,适用于批处理方式。
3.2录音功能的实现
音频文件的录制和分析处理采用MatLab文本编程实现。
首先调用函数wavrecord()进行为时2s、采样率为8000Hz的录音,然后调用wavwrite()函数将音频信号保存为test.wav文件,保存完成后再调用wavread('
test.wav'
)来读取波形,并绘制其时域和频域波形图。
编写的脚本文件wav_process.m如下:
%--------------------录音并保存-------------------%
fs=8000;
%语音信号采样频率为8000
fprintf('
按任意键开始2秒录音...\n'
);
pause
录音中...\n'
wavwrite(wavrecord(2*fs,fs),fs,8,'
%以8000的采样率、8bit的位速录音,并保存录音为“test.wav”
录音保存完毕!
\n'
wave=wavread('
%读取保存的录音文件,将幅值赋给变量wave
录音读取完毕!
sound(wave,fs);
%以8000Hz的采样率播放语音信号
录音播放完毕!
%---------------------波形图----------------------%
绘制波形图...\n'
t=(0:
length(wave)-1)/fs;
%数组下标乘以采样周期,得出时间轴
figure
(1),plot(t,wave);
%做语音信号的时域波形图
title('
语音信号时域波形图'
xlabel('
时间'
),ylabel('
幅值'
%---------------------频谱图----------------------%
绘制频谱图...\n'
y1=fft(wave,2048);
%语音信号1024点FFT,得出幅值轴
f=fs*(0:
2047)/2048;
%得出频率轴
figure
(2),plot(f,abs(y1(1:
2048)));
语音信号频谱图'
Hz'
全部处理完毕!
\n\n'
%-------------------------------------------------%
程序运行结果如下图3-3所示:
图3-3语音信号时域、频域波形图
3.3调制模块设计
新建一个仿真空白模型,将DSB信号调至所需要的模块拖入空白模型中。
图3-4中Basebandwave为正弦基带信号、Carrierwave为正弦载波,均使用离散化的信号。
product为乘法器、scope为示波器。
连接各模块如下图所示。
图3-4DSB调制模型
双击模块设置基带信号属性:
幅度为1,频率为500HZ,初相位为0,离散方式,采样间隔为1×
10-5s,具体如下图3-5所示:
图3-5基带信号参数设置
用同样的方式设置载波信号属性如下图3-6所示:
图3-6载波参数设置图
设置完成点击“运行”按钮,并双击示波器,显示波形如下图3-7:
图3-7DSB信号调制波形
图中三路信号波形,第一路为基带信号,第三路为载波,第二路为调制的DSB波形。
从图中可以清楚地看出,双边带信号时域波形的包络不同于调制信号的变化规律。
在调制信号零点前处已调波的相位发生了180°
的突变。
在调制信号的正半周期内,已调波的高频相位与载波相同,在调制信号的负半周期内,已调波的高频相位与载波相反。
并且双边带的带宽为基带信号的两倍。
3.4高斯白噪声信道
加性高斯白噪声AWGN(AdditiveWhiteGaussianNoise)是最基本的噪声与干扰模型。
加性噪声是叠加在信号上的一种噪声,通常记为n(t),而且无论有无信号,噪声n(t)都是始终存在的。
因此通常称它为加性噪声或者加性干扰。
若噪声的功率谱密度在所有的频率上均为一常数,则称这样的噪声为白噪声。
如果白噪声取值的概率分布服从高斯分布,则称这样的噪声为高斯白噪声。
在通信系统中,经常碰到的噪声之一就是白噪声。
在理想信道调制与解调的基础上,在信道中加入高斯白噪声,把Simulink中的AWGN模块加入到模型中。
噪声参数设置、模型与波形图如下:
图3-8高斯噪声参数设置
图3-9高斯白噪声信道传输模型
图3-10高斯白噪声信道传输波形
如图3-10所示,第一路为调制后未经传输的DSB信号波形,第二路为加性高斯白噪声信道中传输的波形。
相比较可看出,波形出现了一定程度的失真。
失真是随着信噪比SNR的变化而变化的,SNR越小,通过AWGN信道的波形就越接近理想信道波形。
3.5解调模块设计
因为DSB信号包络不再与调制信号的变化规律一致,因而不能采用简单的包络检波来恢复基带信号,而必须采用相干解调。
相干解调也称同步检波,是指用载波乘以一路与载波相干(同频同相)的参考信号,再通过低通滤波器即可输出解调信号。
解调模块设计模型如图3-11所示:
图3-11相干解调模块模型
图中In1为DSB信号输入端,Referwave为与载波相干的参考信号,二者相乘后经数字滤波器进行低通滤波,再进行2倍增益后,输出的既是解调波。
这里的数字滤波器用到了Simulink模型库中的FDATool,双击模块可以选择滤波器类型及更改参数。
在这里选择了低通Elliptic滤波器,试验发现它具有很好的频响特性。
根据系统基带信号频率范围和载波的频率,设置其通带和截止频率如下图3-12所示:
图3-12数字滤波器设置
为了方便连线和放置模块,在这里将解调模块封装为子系统CoherentDemodulation,并对带有高斯白噪声的DSB信号进行解调,其模型如图3-13所示。
图3-13解调模块模型
基带信号、带有噪声的DSB信号和解调信号的波形如图3-14,由图可看出,解调波形较接近基带信号波形,表明解调模块特性较好,能够从带有高斯白噪声的DSB信号中解调出需要的原始波形。
图3-14解调模块波形
3.6总体模型
连接各模块并进行仿真调试,不断修改各模块参数使系统能正确稳定地工作。
系统总体模型如图3-15所示,系统各个关键点波形如图3-16。
图3-15系统总体模型图
图3-16系统各关键点波形
4系统特性分析
4.1频谱分析
为了显示系统各个点信号频谱图,在信号和频谱分析仪之间加一个采样保持器,根据信号频率设置适当采样周期,之后送入频谱分析仪显示频谱图。
图4-1频谱显示信号的预处理模型
用频谱示波器观察系统各点信号频谱,频谱图如图4-2:
(a)基带信号频谱(b)载波信号频谱
(c)未经传输的DSB信号频谱
(d)在AWGN信道中传输的DSB信号频谱
(e)解调信号频谱
图4-2系统各点信号频谱
由频谱可以看出,DSB信号的频谱由上边带、下边带两部分组成,上边带的频谱结构与原调制信号的频谱结构相同,下边带是上边带的镜像,它的带宽仍是是基带信号带宽的2倍。
可见DSB调制的实质是对频谱进行线形搬移,同时抑制了载波;
而解调正好是将高频部分信号频谱搬回低频的过程。
5总结
5.1遇到的问题
通过本次课程设计,我熟悉了Matlab下用Simulink进行通信仿真的过程,对一些过去没有弄懂或认识模糊的概念、理论有了正确认识,也为以后的工作和学习打下了基础。
在课程设计中有收获,同样也有许多不足之处。
其中之一就是没有很好地实现题目要求的“采用正弦信号和自行录制的语音信号(.wav文件)进行DSB调制与解调”。
设计过程中,我使用了“Fromwavefile”模块来加载wav文件,将音频信号作为基带信号进行调制,但可能因为MatLab版本问题,“Fromwavefile”模块始终无法正确运行,具体表现为Simulink提示找不到用于仿真的模块甚至直接崩溃。
我换过不同的软件版本和计算机,但始终没能圆满解决这个问题。
所以在最终的系统方案中,仍然采用了低频的正弦波代替音频文件作为基带信号,这个方案被证明是成功的。
今后需要进一步加强对通信系统的认识,并多用Simulink做系统仿真,以熟悉各模块的功能和适用场合。
5.2致谢
经过为期两周的课程设计,我基本实现了题目要求,完成了DSB信号调制与解调的Simulink建模和仿真。
以所学理论为基础,在课程设计的过程中,我又重温了模拟调制系统和相干解调等知识,感到实际动手能力有所提高,并激励自己结合实际问题在专业领域进行更深入的学习。
在这里要感谢很多同学和朋友在本次课程设计中给予我的支持和帮助。
特别要感谢我的指导老师秦**和迟*,在我遇到困难的时候,他们给了我极大的帮助。
尤其是在系统解调模块和录音方案的确定上,老师多次给我耐心细致的指导。
很庆幸能有这样负责任、有爱心的指导老师,帮我扫清了课程设计过程中的诸多障碍,也让我看到了师长的风范。
参考文献
[1]樊昌信,曹丽娜.通信原理.北京:
国防工业出版社,2006
[2]达新宇.通信原理实验与课程设计.北京:
北京邮电大学出版社,2003
[3]徐远明.MATLAB仿真在通信与电子工程中的应用.西安:
西安电子科技大学出版社,2005
[4]张化光,孙秋野.MATLAB/Simulink实用教程.北京:
人民邮电出版社,2009
[5]姚俊,马松辉.Simulink建模与仿真基础.北京:
西安电子科技大学出版社,2002
[6]邓华.MATLAB通信仿真及应用实例详解.北京:
国防工业出版社,2003