抑制载波双边带调幅(DSB-SC)和解调的实现一、设计目的和意义本设计要求采用软件Matlab实现对信号进行抑制载波双边带调幅(DSB-SC)和解调,并且绘制相关的图形。
在通信系统中,从消息变换过来的信号所占的有效频带往往具有频率较低的频谱分量(例如语音信号),如果将这些信号在信道中直接传输,则会严重影响信号传输的有效性和可靠性。
因此这种信号在许多信道中均是不适宜直接进行传输的。
在通信系统的发射端通常需要调制过程,将信号的频谱搬移到所希望的位置上,使之转化成适合信道传输或便于信道多路复用的以调信号。
而在接收端则需要解调过程,以恢复原来有用的信号。
调制解调过程常常决定了一个通信系统的性能。
随着数字化波形测量技术和计算机技术的发展,可以使用数字化方法实现调制与解调的过程。
同时调制还可以提高性能,特别是抗干扰能力,以及更好的利用频带。
二、设计原理(1):调制与解调的MATLAB实现:调制在通信过程中起着极其重要的作用:无线电通信是通过空间辐射方式传输信号的,调制过程可以将信号的频谱搬移到容易以电磁波形式辐射的较高频范围;此外,调制过程可以将不同的信号通过频谱搬移托付至不同频率的载波上,实现多路复用,不至于互相干扰。
振幅调制是一种实用很广的连续波调制方式。
调幅信号X(t)主要有调制信号和载波信号组成。
调幅器原理如图1所示:其中载波信号C(t)用于搭载有用信号,其频率较高。
幅度调制信号g(t)含有有用信息,频率较低。
运用MATLAB 信号g(t)处理工具箱的有关函数可以对信号进行调制。
对于信号x(t),通信系统就可以有效而可靠的传输了。
在接收端,分析已调信号的频谱,进而对它进行解调,以恢复原调制信号。
解调器原理如图2所示:对于调制解调的过程以及其中所包含的对于信号的频谱分析均可以通过MATLAB 的相关函数实现。
(2):频谱分析 当调制信号f(t)为确定信号时,已调信号的频谱为()c c SDSB=1/2F -+1/2F(+)ωωωω. 双边带调幅频谱如图3所示:图3 双边带调幅频谱抑制载波的双边带调幅虽然节省了载波功率,但已调信号的频带宽度仍为调制信号的两倍,与常规双边带调幅时相同。
(3):功率谱密度分析通信中,调制信号通常是平稳随机过程。
其功率谱密度与自相关函数之间是一对付氏变换关系。
这样就可以先找到信号的自相关函数,然后通过付氏变换来实现信号的功率谱密度。
三、 详细设计步骤(1)利用Matlab 绘制已知信号f(t)根据f(t) 表达示0sin (200)||()0c t t t f t ≤⎧=⎨⎩其它,02t s =。
由于函数是辛格函数,故利用时间t 与f(t)的关系,再利用subplot 函数实现子图的画法,并且对所画的图做标识,如标题,幅度。
具体图形如图4:图4:已知信号波形(2)利用Matlab 绘制已知信号f(t)的频谱根据f(t)的表达示,通过求傅立叶变换来实现信号的频谱,具体可以取40000个点来实现。
并且运用算法yw=2*π/40000*abs(fftshift(yk)),fw=[-25000:24999]/50000*fs 。
这样再利用subplot 函数实现子图的画法,并且对所画的图做标识,如标题,幅度。
具体图形如图5:图5:已知信号波形的频谱(3)利用Matlab 绘制载波信号由给定的载波为cos 2c f t π,200c f H z =,的出余弦信号的画法,这样再利用subplot 函数实现子图的画法,并且对所画的图做标识,如标题,幅度,时间。
具体图形如图6:图6 :载波信号(4)利用Matlab绘制已调信号由调制信号知:抑制载波双边带调幅的调制过程实际上就是调制信号与载波的相乘运算。
故此时将上述两个信号相乘,就可以得出已调信号y4, y4=sinc(t.*200).*cos(2*π.*fc3.*t). 这样再利用subplot函数实现子图的画法,并且对所画的图做标识,如标题,幅度,时间。
具体图形如图7:图7:已调信号(5) 利用Matlab绘制已调信号的频谱根据已调信号的表达示,提高求傅立叶变换来实现信号的频谱,具体可以取4000个点来实现。
并且运用算法yw=2*π /4000*abs(fftshift(yk)),fw=[-2500:2499]/5000*fs。
这样再利用subplot函数实现子图的画法,并且对所画的图做标识,如标题,幅度。
具体图形如图8:图8:已调信号波形的频谱(6)利用Matlab绘制DSB-SC调制信号的功率谱密度通信中,调制信号通常是平稳随机过程。
其功率谱密度与自相关函数之间是一对付氏变换关系。
此时先求调制信号的自相关函数,利用命令[c,lags]=xcorr(y4,20)以及plot(lags/fs,c)就可以实现调制信号的自相关函数,此时将自相关函数求付氏变换。
利用SDSBp=fft(c,5000;fw=[-2500:2499]/5000*fs;yw=2*π/4000*abs(fftshift(SDSBp))即可实现,此时用figure和subplot可以在另一页画出自相关函数波形和功率谱密度波形,具体图形如图9:图9 调制信号自相关函数波形和功率谱密度波形(7)利用Matlab绘制相干解调后的信号波形由抑制载波双边带调幅的解调过程实际上实际是将已调信号乘上一个同频同相的载波。
即y7=sinc(t7*200).*cos(2*π*fc3*t7).*cos(2*π*fc3*t3)。
此时解调图形如图10:图10 乘上同频同相的载波后的信号波形再用一个低通滤波器就可以恢复原始的调制信号,这种调制方法称为相干解调。
主要程序语句为[n,Wn]=ellipord(Wp,Ws,Rp,Rs);[b,a]=ellip(n,Rp,Rs,Wn);这样可以实现求取阶数n和传递函数的分子分母b,a;Wp=40/100; Ws=45/100; 这时的100是最高频率的一半,而40则是在100/π和45之间。
Xl=5*filter(b,a,y7)。
通过这样可以使滤波后的波形失真更小。
此时可得相干解调后的信号波形,具体波形如图11:图11相干解调后的信号波形总结:通过利用Matlab程序实现了题目的要求,完成了对抑制载波双边带调幅(DSB-SC)的解调。
四、设计结果及分析本环节的主要任务是验证设计的结果以及分析原由。
(1)原始信号以及频谱的分析:由于原始信号是辛格函数,所以经过傅立叶变换后应该是一个方波。
频率为100/π。
经设计得出图形5,故正确得出了原信号的频谱。
(2)由于载波信号为余弦,故图形如图6。
频率为200HZ。
(3)对于已调信号则是由原信号与载波信号相乘的结果。
由于辛格函数只是中间幅度大,故与载波信号相乘后,主要幅度仍然集中在0附近。
此时在对已调信号求取频谱,由已调信号可知,只是一个双边带信号,而且频率应该在200HZ左右,而结果图形如图8所示,恰好与分析相吻合。
此过程证明了双边带调制过程中有频谱的搬移。
(4)在求已调信号的的功率谱密度函数波形时,首先要求自相关函数。
这一个过程即为两个辛格函数的乘积。
故如图9所示。
然后在把自相关函数经过傅立叶变换,此时即可得到相应的功率谱密度函数波形,如图9所示,同样也是将频率搬移到200HZ附近。
(5)最后将已调的信号通过乘以同频同相的本地载波,即为相干解调。
此时的波形没有经过低通滤波器,所以波形与原始信号有点不一致,如图10所示。
最后通过椭圆滤波器后,在设计参数的调整下,可以恢复出原始的信号。
但要求本过程的参数选择一定要合理,最到最理想,最后得出的波形去图11所示。
综上所述,通过画原始信号的波形,频谱以及载波的波形并且分析两个波形之间频率的大小关系,再实现两个函数的相乘,可以得出已调信号,并且利用傅立叶变换可以找到其频谱。
此时可以看出抑制载波双边带调幅的实质为频谱的搬移。
同时通过自相关函数,并且求自相关函数的傅立叶变换就可以实现功率谱密度函数波形的画法。
最后将已调信号与载波信号相乘经过低通滤波器作相干解调,就可以恢复出原始信号。
对椭圆滤波器的参数做调整,则可以改变其恢复信号的准确度。
而抑制载波双边带调幅的优点在于可以提高效率,减少干扰。
五、体会本设计要求采用软件Matlab实现对信号进行抑制载波双边带调幅(DSB-SC)和解调,并且绘制相关的图形。
通过设计完成了题目的要求。
本次设计,首先针对题目进行分析,将所涉及的波形,频谱及相关函数做了研究,大体上能够把握了设计的流程以及思路。
再通过查阅相关资料,能对相关的知识做正确的记录,以便随时查看。
在问题的分析阶段中,就原始信号的频率和载波信号的频率做了比较,确定了具体的方案后,在针对Matlab中的有关画图处理函数进行学习和分析,这样就提高了学习的针对性,同时节约了设计的时间。
在设计过程中,充分的利用Matlab的相关函数,如傅立叶变换,自相关函数以及椭圆滤波器的函数,使自己掌握了更多有用的函数。
通过查看函数的用法以及例题,句可以正确的实现本设计的部分函数的编写。
同时本设计中所运用的通信原理中的自相关函数与功率频密度函数的知识也在设计过程中得到了正确的理解,并且成功的实现了图形的绘制。
在设计过程中,也遇到了许多的困难。
如原始波形的频谱应该是方波,可结果却只是一条直线,经过分析,原来是采样点过少,同时在设计时也要随时考虑到数字信号处理中所学的抽样频率必须大于两倍信号谱的最高频率(FS.>2FH)以及抽样点数N大于M点的有限长序列。
这样就成功的将Matlab,通信原理和数字信号处理有机的结合在一起。
此外在分析所设计的图中,根据相关的通信原理知识可以对结果作出判断,这样就提高了自己的相关知识,同时加深了对Matlab的运用。
总之,在本设计中,通过自己的努力,认真学习相关的函数,通过设计前后的分析,大大提高了自己解决问题的能力。
而在设计过程中通过对错误的改正,也加强了自己对相关知识的理解,这将对以后的学习工作有着很大的帮助。
同时由于本次设计运用了不同的知识,这样我就可以更好的将不同科目的知识进行联系学习,对牢靠的学习有着巨大的支持!同时真诚感谢张烨老师给予的大力支持和帮助指导!六、参考文献[1]. 曹志刚,钱亚生.现代通信原理 . 清华大学出版社,2006年10月第24版[2]. 张志涌. 精通Matlab6.5版. 北京航天航空大学出版社,2005年8月[3].程佩青. 数字信号处理教程. 清华大学出版社,2006年10月[4].刘树棠. 信号与系统. 西安交通大学出版社2005年4月[5].刘毅敏. 基于Matlab的调制解调器的设计. 武汉科技大学[6].郭文彬. 通信原理基于Matlab的计算机仿真. 北京邮电大学出版社附录:本设计的具体程序如下:t=-2:0.001:2 %%信号f(t)y1=sinc(t*200)subplot(2,3,1),plot(t,y1) %画出原始信号title('已知信号')xlabel('时间:s')ylabel('幅度')gridxlim([-0.1,0.1])fs=3000 %%信号频谱t1=-2:0.0001:2y11=sinc(t1*200)yk=fft(y11,50000) %对信号做傅立叶变换yw=2*pi/40000*abs(fftshift(yk)) %频谱搬移fw=[-25000:24999]/50000*fssubplot(2,3,2),plot(fw,yw)title('已知信号的频谱')xlabel('频率:hz')ylabel('幅度')gridxlim([-30,30])y3=cos(2*pi*200*t) %%载波信号subplot(2,3,3),plot(t,y3)title('载波信号')xlabel('时间:s')ylabel('幅度')gridxlim([-0.1,0.1])y4=sinc(t*200).*cos(2*pi*200*t) %%已调信号subplot(2,3,4),plot(t,y4,'r-')title('已调信号')xlabel('时间:s')ylabel('幅度')gridxlim([-0.05,0.05])fs1=1000 %已调信号频谱yk=fft(y4,5000) %对信号做傅立叶变换yw=2*pi/4000*abs(fftshift(yk)) %频谱搬移fw=[-2500:2499]/5000*fs1subplot(2,3,5),plot(fw,yw,'r-')title('已调信号的频谱')xlabel('频率:hz')ylabel('幅度')gridxlim([-400,400])[c,lags]=xcorr(y4,200) %%DSB信号自相关函数Figure %200表示自相关函数时间тsubplot(211)plot(lags/fs,c)title('DSB信号自相关函数')xlabel('t')ylabel('Rxx(t)')gridSDSBp=fft(c,5000) %%DSB功率谱fw=[-2500:2499]/5000*fs1yw=2*pi/4000*abs(fftshift(SDSBp))%频谱搬移subplot(212)plot(fw,yw)title('DSB信号功率谱')xlabel('w')ylabel('Rxx(t)')gridy7=y4.*y3 %%解调信号figuresubplot(211)plot(t,y7)title('解调信号')xlabel('时间:s')ylabel('幅度')gridxlim([-0.1,0.1])Rp=0.1; %%滤波后的f(t)信号Rs=80; %信号衰减幅度Wp=40/100; %通带截止频率Ws=45/100; %阻带截止频率,100为载波频率的一半[n,Wn]=ellipord(Wp,Ws,Rp,Rs); %阶数n[b,a]=ellip(n,Rp,Rs,Wn); %传递函数分子分母b,aXl=5*filter(b,a,y7);figure;subplot(211);plot(t,Xl);title('滤波后的f(t)信号');xlabel('时间单位:s');ylabel('幅度');grid;xlim([-0.1,0.1])11。