华北水利水电大学
North China University of Water Resources and Electric Power
课 程 设 计
题目 2ASK系统的设计
学 院 信息工程学院 专 业 姓 名 学 号 指导教师 完成时间
教务处制
1.课程设计目的和作用
通信原理课程设计的目的是:使自己加深对所学的通信原理知识理解,培养自己的专业素质,提高利用通信原理知识处理通信系统问题的能力,为今后的专业课程的学习、毕业设计和工作打下良好的基础。使自己能比较扎实地掌握本专业的基础知识和基本理论,掌握数字通信系统及有关设备的分析、开发等基本技能,受到必要工程训练和初步的科学研究方法和实践训练,增强分析和解决问题的能力,了解本通信专业的新发展。
2.课程设计题目和目标
题目:2ASK系统设计 目标:(1)系统工作原理 (2)设计系统
(3)设定参数(码速率,仿真时间,抽样频率,载频,信噪比等),利用Matlab仿真
3.课程设计的系统框图
s(t)xs(t)e信号0(t)e0(t)2ASKcosωctx~信道e0(t)载波n(t)(a)cosωct1 0 0 1{an]1 0 0 1z(t)抽 样ke0(t)ks(t)e0(t)s(t)tt~BPFLPFx判决器s(t)e0(t)e0(t)载波y(t)s(t)s(t)cosωct(b)(a)(b)解调器(c)t(c)定时脉冲t
系统框图描述:
(1)发送端采用模拟法产生已调信号:
因为要产生2ASK信号,所以基带信号s(t)是单极性波形 (2)将已调信号送入信道进行传输:
由于信道中常见的噪声是高斯白噪声,因而,假设信道是高斯白噪声信道。已调信号在送入信道传输的过程中,叠加上高斯白噪声。 (3)信道输出端信号的解调
对于2ASK信号,采用相干解调或者非相干解调都可以,这里我采用的的是相干解调。 (4)基带信号的恢复
对解调器的输出进行抽样判决恢复基带信号。
4.软件设计流程
开始设定参数随机产生二进制代码载波调制对已调信号进行频谱分析已调信号通过高斯噪声信道对加噪信号进行频谱分析通过带通滤波器滤除噪声相干载波解调对解调信号进行频谱分析通过低通滤波器滤除高频分量抽样判决输出恢复波形
5. Matlab仿真结果与分析
5.1设定参数
nb=10;%代码个数 fs=10000;%抽样速率 fc=1000;%载波频率
t=0:1/fs:1-1/fs;%仿真时间设为1s snr=20;%信噪比
T=fs/nb;%1个码元对应的时间长度
k=-fs/2:fs/2-1;%使频谱图关于坐标轴竖轴对称,便于分析
5.2随机产生二进制代码
data=rand(1,nb)>0.5; for i=1:nb
data_bs((i-1)*T+1:i*T)=data(i); end
设计原理及方法:
(1)通过产生nb个在[0,1]之间的数,与0.5进行比较,大于0.5为真,即为1,小于0.5
为假,即为0。 (2)取时间轴0~1s,将抽样频率fs设为10000,也就是在时间轴0~1s上取10000个点,
因为代码个数取的是10,也就是用1000个点对应一个码元。
消息代码基带信号频谱8000160000.54000200000.20.40.6载波0.810
0-5000-4000-3000-2000-1000010002000300040005000
观察图像知随机产生的消息代码为 600010.5 1 1 0 0 1 0 0 1 0 1
基带信号频谱4000消息代码08000
载波频谱5.3-0.5载波
carry=sin(2*pi*fc*t); 00.20.40.60.810.5设计原理及方法: 这里选取的载波是频率fc为1000Hz的正弦信号 0-1120006000400002000-5000-4000-3000-2000-1000010002000300040005000
10.50-0.5-100.20.40.6载波0.81
消息代码0-5000-4000-3000-2000-1000010002000300040005000载波频谱6000140000.5200000.20.40.60.811.21.41.61.8x 102-30-5000-4000-3000-2000-10000100020003000400050000.20.4 0.6载波0.81
10.50-0.5-100.20.40.60.81
5.4调制
sm=data_bs.*carry; 设计原理及方法:
(1)信源输出的消息信号一般具有从零频开始的较宽频谱,而且在频谱的低端分布较大能
量,所以称为基带信号,不宜直接在信道中传输。
为便于传输、提高抗干扰能力和有效利用带宽,通常需要通过调制将信号的频谱搬移到适合信道和噪声特性的频率范围内进行传输。 (2)2ASK信号的一般表达式
t) e2ASK(其中
stcosct
nTs)
s(t)ang(tn Ts - 码元持续时间;
g(t) - 持续时间为Ts的基带脉冲波形,通常假设是高度为1,宽度等于Ts的矩形脉冲 ; an - 第N个符号的电平取值,若取
an1,0,概率为P概率为1P
则相应的2ASK信号就是OOK信号。
(3)实现方法:根据基带信号不同分为模拟幅度调制和数字幅度调制(振幅键控ASK)
二进制不归零信号e2ASK(t)乘法器cosct开关电路e2ASK(t)s(t)cosct
s(t)
图(a)采用模拟相乘的方法实现 图(b)采用数字键控的方法实现 (4)功率谱密度
P2ASK(f)1Ps(ffc)Ps(ffc)4
P2ASKf由上式可见,2ASK信号的功率谱是基带信号功率谱Ps (f)的线性搬移(属线性调制)。
2ASK信号的带宽是基带信号带宽的两倍,若只计谱的主瓣(第一个谱零点位置),则有
fcffc-2fsfcfsfcfcfsfc2fsB2ASK2fs
二进制振幅键控信号时间波型如图
1001stTst载波t2ASK10.52ASK已调信号t
仿真结果:
2ASK已调信号10.50-0.5-100.20.40.60.811.21.41.61.8x 102-30-0.5-1
3000200010000.20.40.60.811.21.41.61.8x 102-32ASK已调信号频谱0-5000-4000-3000-2000-1000010002000300040005000
2ASK已调信号频谱300020001000
2ASK已调信号10.500-5000-4000-3000-2000-1000-0.5-100.10100020003000400050000.20.30.40.50.60.70.80.91
由仿真结果可知,基带信号被搬移到高频处fc-fs,fc+fs 3000
2ASK已调信号频谱5.5已调信号通过高斯噪声信道
sn=awgn(sm,snr); 1000设计原理及方法:
0-3000-2000-1000010002000300040005000直接使用-5000matlab-4000已有的函数awgn进行加噪,通过控制信噪比snr的大小来控制信道噪声的大
小。
2000加噪信号10.50-0.5-100.511.5x 10210-1-22-3加噪信号频谱3000200010000-500005000加噪信号00.10.20.30.40.50.60.70.80.91
5.6通过带通滤波器滤除噪声
wp1=800;wp2=1200; ws1=500;ws2=1350;
wp=[wp1,wp2];ws=[ws1,ws2];
[N0,wn]=cheb1ord(wp/(fs/2),ws/(fs/2),3,40,'z'); [B,A]=cheby1(N0,3,wn); [H,w]=freqz(B,A,512,fs); sbp=filter(B,A,sn); 设计原理及方法: (1)我选用的是切比雪夫I型数字带通滤波器,选用它的原因是其相对巴特沃斯陡峭性好,
且实际中相对椭圆滤波器易于实现。
(2)带通滤波器在这里的作用主要是是加载到高频载波上的基带信号通过同时滤除噪声,
因此在设计时需要分析加噪信号的频谱,找到适合的通带,使以载波频率fc=1000Hz为中心频率的已调信号通过。
经过带通后信号10.501000-0.5-101.510.50-0.5-100.10.20.30.40.50.60.70.80.910.0050.010.0150.025000-500005000250020001500经过带通后频谱经过带通后信号
带通滤波器1幅度0.5250030003500400045005000Hz低通滤波器可以看出,经过带通滤波器后噪声被滤除很多,但同时也滤除了一部分有用信号。
1.500500100015002000
5.7解调信号
1scj=sbp.*carry;
设计原理及方法: 2ASK信号解调方法 0.5非相干解调(包络检波法):
幅度0e2ASK(t)0500带通滤波器1000a15002000全波整流器2500bHz3000低通滤波器3500c40004500抽样判决器定时脉冲5000d输出
相干解调(同步检测法):
e2ASK(t)带通滤波器相乘器低通滤波器抽样判决器定时脉冲输出cosct
我选用的是相干解调(同步检测法)。 仿真结果:解调信号频率变为2fc
解调信号120001500100005000-5000解调信号的频谱0.5-0.500.5105000解调信号10.50-0.5-100.0020.0040.0060.0080.010.0120.0140.0160.0180.02
5.8低通滤波
wp=1000;ws=1500;
[N0,wn]=buttord(wp/(fs/2),ws/(fs/2),3,40,'z'); [B,A]=butter(N0,wn);
[H1,w1]=freqz(B,A,512,fs); slp=filter(B,A,scj); 设计原理及方法:
(1)我选用的是巴特沃斯数字低通滤波器,选用它的原因是其平滑性好,且实际中易于实
现。 (2)低通滤波器在这里的作用主要是滤除解调信号中频率为2fc的高频分量,保留基带信号
的低频分量。
通过低通滤波器的信号0.60.40.20-0.200.10.20.30.40.50.60.70.80.91通过低通滤波器的频谱2000150011000带通滤波器幅度0.55000-50000-4000500-30001000-20001500-10002000010002000350030004000400045005000500025003000Hz低通滤波器
1.51幅度0.5005001000150020002500Hz30003500400045005000
5.9抽样判决
demodata_bs=1*(slp>0.3); plot(t,demodata_bs);grid 设计原理及方法:
对每个抽样点进行幅值是否大于0.3的判断,真即为1,假即为0,从而恢复原始信号。
信源10.5000.20.40.6恢复波形10.810.5000.20.40.60.81
可以看出,恢复出来的信号跟原始信号相比有一定的误差和延时,这是因为设计的滤波器不理想和叠加噪声所引起的。
6.课程设计总结
通过本次通信原理的课程设计,我深入了解了2ASK已调信号在信道中的传输过程,对调制解调等相关知识有了进一步的认识。
一开始在设计时,我把频谱都进行了归一化,虽然这样在设计滤波器时比较方便,但对分析具体的数据,比如中心频率问题带来了不便,还有一开始选取的载波信号频率比较小,恢复出来的波形时延较大,几经修改,反复试验才得出比较满意的结果。这也告诉自己,以后在探究问题时要有耐心有毅力,同时要联系所学知识,自己在多思考的同时多向他人请教,这样才能更快的学到并掌握到更多的知识。
最后,很感谢老师这些天的指导,让我得以顺利完成课程设计。
7.参考文献
[1] 通信原理 樊昌信等编著 国防工业出版社
[2] 现代通信系统----使用Matlab 刘树棠译 西安交通大学出版社
[3] 通信原理——基于matlab的计算机仿真 郭文斌等编著 北京邮电大学出版社 [4] 数字信号处理实验与学习指导 宋宇飞 清华大学出版社 [5] 数字信号处理 陈后金 高等教育出版社
附录
clear all; close all;
%设定参数
nb=10;%代码个数 fs=10000;%抽样速率 fc=1000;%载波频率
t=0:1/fs:1-1/fs;%仿真时间设为1s snr=20;%信噪比
T=fs/nb;%1个码元对应的时间长度 k=-fs/2:fs/2-1;
%消息代码的产生 %data=rand(1,nb)>0.5; data=[1 1 0 0 1 0 0 1 0 1] for i=1:nb
data_bs((i-1)*T+1:i*T)=data(i); end
subplot(121)
plot(t,data_bs);grid axis([0 1.1 -0.2 1.2]); title('消息代码'); subplot(122)
data_bs1=abs(fftshift(fft(data_bs))); plot(k,data_bs1);grid title('基带信号频谱');
%载波的产生
carry=sin(2*pi*fc*t); figure
subplot(221) plot(t,carry);grid
axis([0 0.002 -1.2 1.2]); title('载波');
subplot(2,2,[3 4]) plot(t,carry);grid axis([0 1.1 -1.2 1.2]); title('载波'); subplot(222)
carry1=abs(fftshift(fft(carry))); plot(k,carry1);grid title('载波频谱');
%已调信号的产生 sm=data_bs.*carry; figure
subplot(221) plot(t,sm);grid
axis([0 0.002 -1.2 1.2]); title('2ASK已调信号'); subplot(2,2,[3 4]) plot(t,sm);grid
title('2ASK已调信号'); subplot(222)
a=abs(fftshift(fft(sm))); plot(k,a);grid
title('2ASK已调信号频谱');
%已调信号通过高斯噪声信道 sn=awgn(sm,snr); figure
subplot(221) plot(t,sn);grid
axis([0 0.002 -1.2 1.2]); title('加噪信号'); subplot(2,2,[3 4]) plot(t,sn);grid title('加噪信号');
b=abs(fftshift(fft(sn))); subplot(222); plot(k,b);grid
title('加噪信号频谱');
%通过带通滤波器滤除噪声 wp1=800;wp2=1200; ws1=500;ws2=1350;
wp=[wp1,wp2];ws=[ws1,ws2];
[N0,wn]=cheb1ord(wp/(fs/2),ws/(fs/2),3,40,'z'); [B,A]=cheby1(N0,3,wn); [H,w]=freqz(B,A,512,fs); sbp=filter(B,A,sn); figure
subplot(221) plot(t,sbp);grid
title('经过带通后信号'); axis([0 0.02 -1.2 1.2]); subplot(2,2,[3 4])
plot(t,sbp);grid
title('经过带通后信号'); subplot(222)
sbp1=fftshift(fft(sbp)); plot(k,abs(sbp1));grid title('经过带通后频谱');
%解调信号 scj=sbp.*carry; figure
subplot(221); plot(t,scj);grid title('解调信号'); subplot(2,2,[3 4]); plot(t,scj);grid title('解调信号');
axis([0 0.02 -1.2 1.2]); subplot(222);
scj1=fftshift(fft(scj)); plot(k,abs(scj1));grid title('解调信号的频谱');
%低通滤波
wp=1200;ws=1500;
[N0,wn]=buttord(wp/(fs/2),ws/(fs/2),3,40,'z'); [B,A]=butter(N0,wn);
[H1,w1]=freqz(B,A,512,fs); slp=filter(B,A,scj); figure
subplot(211); plot(t,slp);grid
title('通过低通滤波器的信号'); subplot(212);
sllp1=fftshift(fft(slp)); plot(k,abs(sllp1));grid
title('通过低通滤波器的频谱');
%抽样判决
demodata_bs=1*(slp>0.3); figure
subplot(211)
plot(t,data_bs);grid axis([0 1.1 -0.2 1.2]); title('信源');
subplot(212)
plot(t,demodata_bs);grid axis([0 1.1 -0.2 1.2]); title('恢复波形');
%滤波器 figure
subplot(211)
plot(w,abs(H));grid
ylabel('幅度');xlabel('Hz'); title('带通滤波器'); subplot(212)
plot(w1,abs(H1));grid ylabel('幅度');xlabel('Hz'); title('低通滤波器');
因篇幅问题不能全部显示,请点此查看更多更全内容