《2022年采用MQAM调制的数字通信系统的MATLAB仿真 .pdf》由会员分享,可在线阅读,更多相关《2022年采用MQAM调制的数字通信系统的MATLAB仿真 .pdf(18页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、淮海工学院课程设计报告书课程名称:通信系统的计算机仿真设计题目:采用 MQAM 调制的数字通信系统MATLAB仿真系(院):电子工程学院学期:2017-2018-1 专业班级:通信141姓名:陆泓宇学号: 2014120949 评语:成绩:签名:日期:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 18 页 - - - - - - - - - 课程设计报告书专用纸第 2 页共 2 页采用 MQAM 调制的数字通信系统MATLAB 仿真1绪论1.1研究背景与研究意义目前,不
2、论是模拟通信还是数字通信,在实际的通信业务中都得到了广泛的应用。不过,近年来随着数字通信的迅速发展,数字通信在整个通信领域中所占的比重日益增长。与模拟通信相比,数字通信在传输质量上,技术、经济上都有显著的优点,如:抗干扰性能强、传输质量与通信线路无关、有高的传输可靠性、经济性、便于加密处理等等。随着无线通信频带日趋紧张, 研究和设计自适应信道调制技术体制是建立宽带移动通信网络的关键技术之一。正交振幅调制技术 (QAM) 是一种功率和带宽相对高效的信道调制技术, 因此在大容量数字微波通信系统、有线电视网络高速数据传输、卫星通信系统等领域得到了广泛使用。 在移动通信中, 随着微蜂窝和微微蜂窝的出现
3、, 使用信道传输特性发生了很大变化, 过去在传统蜂窝系统中不能应用的正交振幅调制也引起了人们的重视。1.2设计任务本次课程设计是根据“通信工程专业培养计划”要求而制定的。通信系统的计算机仿真设计课程设计是通信工程专业的学生在学完通信工程专业基础课、通信工程专业主干课及科学计算与仿真专业课后进行的综合性课程设计。其目的在于使学生在课程设计过程中能够理论联系实际,在实践中充分利用所学理论知识分析和研究设计过程中出现的各类技术问题,巩固和扩大所学知识面,为以后走向工作岗位进行设计打下一定的基础。课程设计任务如下:(1)使用一种分组码或者卷积码进行信道纠错编码。(2)使用格雷码对数据进行映射。(3)使
4、用 MQAM 举行调制, M 选自 8、16、32、64、128、256。(4)选择合适的升余弦参数,使用升余弦对基带信号举行滤波。(5)在解调端,进行滤波、MQAM 的解调、格雷码逆映射、纠错解码。(6)改变信噪比,分析系统性能。2MQAM 调制解调名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 18 页 - - - - - - - - - 课程设计报告书专用纸第 3 页共 3 页2.1MQAM 介绍MQAM (Multiple Quadrature Amplitude
5、 Modulation) 多进制正交幅度调制。 4 相相位键控信号其实也是一种二电平正交振幅键控。如果将二电平振幅键控进一步发展为多电平 ( 例如 4、8、16 电平等 ) 正交振幅键控,显然可以获得更高的频谱利用率。这种方式具有很高的频谱利用率,在调制进制数较高时,信号矢量集的分布也较合理,同时实现起来也较方便。当前在SDH 数字微波、 LMDS 等大容量数字微波通信系统中广泛使用的64QAM 、128QAM 等均属于这种调制方式。目前 QAM 最高已达到 1024QAM 。样点数目越多,其传输效率越高。但并不是样点数目越多越好,随着样点数目的增加,QAM系统的误码率会逐渐增大,所以在对可靠
6、性要求较高的环境,不能使用较多样点数目的QAM 。对于 4QAM ,当两路信号幅度相等时,其产生、解调、性能及相位矢量均与4PSK相同。图 2.1 4QAM 星座图图 2.2 16QAM 星座图QAM采用格雷编码,采用格雷码的好处在于相邻相位所代表的两个比特只有一位不同,由于因相位误差造成错判至相邻相位上的概率最大,故这样编码使之仅造成一个比特误码的概率最大。下图以16QAM 为例,显示了编码:图 2.3 16QAM 编码名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 1
7、8 页 - - - - - - - - - 课程设计报告书专用纸第 4 页共 4 页2.2MQAM 调制原理正交幅度调制 (QAM )是由两个正交载波的多电平振幅键控信号叠加而成的,在同样的符号速率下能够提供更高的比特传输速率,而不影响传输的可靠性。在高速的无线传输系统中, MQAM 是一类基本的调制方式,在实际中常用16-QAM 及 64QAM 这两种 QAM 调制技术。MQAM 信号的矢量表达式为:?= ? 1?1?+ ? 2?2? ,i = 1,2,M即将其表示为两个归一化正交基函数f1 与 f2 的线性组合。其中:?1=2? ?cos? ,0 ? ?2=2? ?sin? ,0 ? ?系
8、数为? 1=?0? ?1? ?= ?2,? = 1,2,? 2=?0? ?2? ?= ?2,? = 1,2,?式中的 Eg为发送滤波器冲激响应 tg (t )的脉冲能量。2.3MQAM 解调原理在高斯白噪声的环境下, MQAM 信号的最佳解调框图如下:图 2.4 MQAM信号的最佳解调框图将接收的到的信号采取正交相干解调的方法解调,将接收的信号分成两路,一路与cos? 相乘,另一路与 sin ? 相乘。然后经过低通滤波器(积分电路)滤除乘法器产生名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - -
9、 - 第 4 页,共 18 页 - - - - - - - - - 课程设计报告书专用纸第 5 页共 5 页的高频分量,获得有用信号。低通滤波器输出通过抽样判决可恢复出电平信号。然后经过并/ 串变换得到恢复数据。 矩形 MQAM 信号的最佳接收误符号率与MASK 的性能一样。将MQAM 和 MPSK 及 MASK 进行比较,可以得到以下结论:三者频带利用率都相同,但是在相同的信噪比下, MPSK 和 MQAM 的误符号率都小于MASK ;且在 M8的情况下, MQAM 的误符号率小于 MPSK 的误符号率。3MQAM 设计内容介绍MQAM 是一种基本的相位幅度联合调制方式。研究这种基本的数字调
10、制信号的性能可以帮助学生理解数字通信的基本特点。本次课程设计,选择符合要求的技术,如信道纠错编码可以是分组码或者卷积码,M 必须选择数字 8、16、32、64、128、256中的至少 3 个,以分析各种 M 下的 QAM 系统性能。应用 MATLAB 进行仿真,仿真采用蒙特卡罗模型。仿真基本框图是:图 2.1 MQAM通信系统的基本框图信号源:基本的二进制数据流。信道编码:可以选择分组码、卷积码等。调制:MQAM ,M 必须选择数字 8、16、32、64、128、256 中至少 3 个。在调制前使用格雷码进行映射。信道:信号经过调制以后,通过信道。信道可以选择高斯加性白噪声信道、多径瑞利(Ra
11、yleigh)衰落信道、莱斯( Rician)衰落信道等。设置不同的信道信噪比,对系统进行仿真,分析不同信噪比情况下的系统性能。解调:根据调制方式,选择对应的解调方式。译码:根据信道编码方式,选择对应的信道译码方式。性能分析:信号经过调制、信道、解调过程。在接收端,将得到的数据与原始信号源数据比较,得到在特定信噪比下的误码率。改变系统信噪比,从而得到系统的误码率曲线图。信号源信道调制解调性能分析信道编码译码名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 18 页 - -
12、- - - - - - - 课程设计报告书专用纸第 6 页共 6 页4设计流程(1)根据选择的调制信号形式,确定仿真框图。(2)设置模型中各模块的具体参数。(3)编写 m 文件。在程序中依次改变信噪比,得到在特定信噪比下的误码率。信噪比范围是可以是 -50dB50dB 之间,步长为 5dB。(4)根据得到的误码率数据,绘出误码率信噪比曲线图。(5)对所设计的系统进行修改。并同理论数据进行比较。5调试仿真5.1分组信道编码、高斯白噪声信道下的16QAM 数字调制方式程序:%产生二进制整数流M=16; %调制的数k=log2(M); n=3e4; %数据流长度nsamp=1; %采样率data=r
13、andint(n,1); %产生随机二进制数据流figure; %绘出前 40 个点的柱状图stem(x(1:40),filled); %选择向量中 1 到 40的数据title(Random binary number); %标题(随机二进制数)xlabel(Binary value); %横坐标(二进制的值)ylabel(Bit Number); %纵坐标(比特数)图 1 随机产生的前四十个二进制数字信号名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 18 页 - -
14、 - - - - - - - 课程设计报告书专用纸第 7 页共 7 页%定义滤波参数nsamp=4; %采样率filtorder=40; %滤波次顺序delay=filtorder/(nsamp*2); %时延rolloff=0.25; %滚降系数rrcfilter=rcosine(1,nsamp,fir/sqrt,rolloff,delay);% 升余弦平方根滤波figure; %产生一个新窗体impz(rrcfilter,1); %数字滤波器冲激响应(制作根余弦滤波器)图 2 信号经过格雷映射之后形成的十进制数值图%分组码纠错编码genmat=1 0 1;0 1 1;0 1 0,eye(3
15、); bianma=encode(x,6,3,linear,genmat); %姓名编码%准备调制,格雷码映射mapping=0 1 3 2 4 5 7 6 12 13 15 14 8 9 11 10.; %绘图xsym=bi2de(reshape(bianma,k,length(bianma)/k).,left-msb);% 前几行代码xsym=mapping(xsym+1); figure; stem(xsym(1:10),filled);%选择向量中 1 到 10 的值title(Random symbols);%标题(随机符号)xlabel(The value of the symbo
16、l);%横坐标(符号的值)ylabel(Integral Quantity);%纵坐标(整数值)名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 18 页 - - - - - - - - - 课程设计报告书专用纸第 8 页共 8 页图 3 随机符号%进行 16QAM 调制y=qammod(xsym,M,pi/4);%进行平方根升余弦滤波 (旋转 45 度) ytx=rcosflt(y,1,nsamp,filter,rrcfilter);%yi表示传送的符号eyediagra
17、m(ytx(1:2000),nsamp*2);%生成眼图图 4 滤波后无噪信号的眼图%加入高斯白噪声EbNo=10; %比特信噪比snr=EbNo+10*log10(k)-10*log10(nsamp); ynoisy=awgn(ytx,snr,measured);%yn表示加入高斯白噪声的传送信号%滤波yrx=rcosflt(ynoisy,1,nsamp,Fs/filter,rrcfilter); yrx=downsample(yrx,nsamp);%欠采样函数名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 -
18、- - - - - - 第 8 页,共 18 页 - - - - - - - - - 课程设计报告书专用纸第 9 页共 9 页yrx=yrx(2*delay+1:end-2*delay); %产生分布图h=scatterplot(sqrt(nsamp)*ynoisy(1:nsamp*5e3),nsamp,0,r.); hold on; scatterplot(yrx(1:5e3),1,0,y.,h); title(Receiving signal filtering);% 标题(接收信号滤波)legend(Before filtering,After filtering); axis(-5 5
19、 -5 5); hold off; 图 5 信号通过高斯滤波前后接收信号比较分布图%可以看到信号在经过滤波器之后码间距离增大、性能提高。%16QAM 解调niyings=qamdemod(yrx,M); %格雷码逆映射(相邻两位之间相差一位)dummy demapping=sort(mapping);%sort对 mapping排序,排序结果存在dummy 中,并把 dummy 中的数值在 mapping中的索引给出,存在demapping中demapping=demapping-1; niyings=demapping(niyings+1); l=de2bi(niyings,left-msb
20、);%进制转换名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 18 页 - - - - - - - - - 课程设计报告书专用纸第 10 页共 10 页l=reshape(l.,prod(size(l),1); %分组码纠错解码l=decode(l,6,3,linear,genmat); figure;% 产生一个新窗体stem(l(1:40),filled); title(Random Bits); %标题(随机二进制数)xlabel(Bit Index); % 横坐标
21、(比特数)ylabel(Binary Value);%纵坐标(二进制的值)图 6 终端接收端得到的信号%计算 BER errors,error_rate=biterr(x,l) errors=25 error_rate=8.3333e-004 5.2使用( M=16 、32、64、126)MQAM 进行数字仿真Mvec=16 32 64 128;%vec(向量误差修正)EbNovec=0:2:20; number_of_errors=zeros(length(Mvec),length(EbNovec); bit_error_rate=zeros(length(Mvec),length(EbNo
22、vec); %产生二进制整数流for idxM=1:length(Mvec) for idxEbNo=1:length(EbNovec) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 18 页 - - - - - - - - - 课程设计报告书专用纸第 11 页共 11 页M=Mvec(idxM); k=log2(M); n=4.2e4; nsamp=4; x=randint(n,1); %定义滤波参数nsamp=4; filtorder=40; delay=filt
23、order/(nsamp*2); rolloff=0.25; rrcfilter=rcosine(1,nsamp,fir/sqrt,rolloff,delay); %分组码纠错编码genmat=1 0 1;0 1 1;0 1 0,eye(3); bianma=encode(x,6,3,linear,genmat); %准备调制,格雷码映射Msize=Mvec(idxM); mapping=zeros(Msize); xx=0:Msize-1; yy=bitshift(xx,-1); mapping=bitxor(xx,yy); xsym=bi2de(reshape(bianma,k,lengt
24、h(bianma)/k).,left-msb); xsym=mapping(xsym+1); %进行 16QAM 调制y=qammod(xsym,M); %进行平方跟升余弦滤波ytx=rcosflt(y,1,nsamp,filter,rrcfilter); %加入高斯白噪声EbNo=EbNovec(idxEbNo);%Eb(信号平均能量),No(单边噪声功率谱密度)snr=EbNo+10*log10(k)-10*log10(nsamp); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - -
25、第 11 页,共 18 页 - - - - - - - - - 课程设计报告书专用纸第 12 页共 12 页ynoisy=awgn(ytx,snr,measured); yrx=ynoisy; %滤波yrx=rcosflt(ynoisy,1,nsamp,Fs/filter,rrcfilter); yrx=downsample(yrx,nsamp); yrx=yrx(2*delay+1:end-2*delay); %16QAM 解调zsym=qamdemod(yrx,M); %格雷码逆映射dummy demapping=sort(mapping); demapping=demapping-1;
26、zsym=demapping(zsym+1); z=de2bi(zsym,left-msb); z=reshape(z.,prod(size(z),1); %分组码纠错解码z=decode(z,6,3,linear,genmat); %计算 BER number_of_errors(idxM,idxEbNo),bit_error_rate(idxM,idxEbNo) = . biterr(x,z); end markerchoice=.*oP; plotsym = markerchoice(idxM) - ;semilogy(EbNovec,bit_error_rate(idxM,:),plo
27、tsym); drawnow; hold on; end title(不同 M 值的 M-QAM); xlabel(EbNo (dB); ylabel( 误码率 ); legend(M=16,M=32,M=64,M=128,Location,SouthWest); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 18 页 - - - - - - - - - 课程设计报告书专用纸第 13 页共 13 页图 7 不同调制系数的误码率clear all; Mvec = 16
28、; EbNovec = 0:1.6:15 number_of_errors = zeros(length(Mvec),length(EbNovec); bit_error_rate = zeros(length(Mvec),length(EbNovec); n=4.2e4; nsamp=4; x=randint(n,1); %定义滤波参数nsamp=4; filtorder=40; delay=filtorder/(nsamp*2); rolloff=0.25; rrcfilter=rcosine(1,nsamp,fir/sqrt,rolloff,delay); %分组码纠错编码genmat=
29、1 0 1;0 1 1;0 1 0,eye(3); code=encode(x,6,3,linear,genmat); %产生二进制整数流名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 18 页 - - - - - - - - - 课程设计报告书专用纸第 14 页共 14 页for idxM = 1:length(Mvec) for idxEbNo = 1:length(EbNovec) M = Mvec(idxM) a=log2(M); %准备调制,格雷码映射Msiz
30、e = Mvec(idxM); mapping = zeros(Msize); xx=0:Msize-1; yy=bitshift(xx,-1); mapping = bitxor(xx,yy); xs = bi2de(reshape(code,a,length(code)/a).,left-msb); xs = mapping(xs+1); %进行 16QAM 调制y=qammod(xs,M); %进行平方跟升余弦滤波yj=rcosflt(y,1,nsamp,filter,rrcfilter); %加入高斯白噪声EbNo = EbNovec(idxEbNo); snr=EbNo+10*log
31、10(a)-10*log10(nsamp); yn=awgn(yj,snr,measured); yf=yn %滤波yf=rcosflt(yn,1,nsamp,Fs/filter,rrcfilter); yf=downsample(yf,nsamp); yf=yf(2*delay+1:end-2*delay); %16QAM 解调zs=qamdemod(yf,M); %格雷码逆映射dummy demapping=sort(mapping); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - -
32、 第 14 页,共 18 页 - - - - - - - - - 课程设计报告书专用纸第 15 页共 15 页demapping=demapping-1; zs=demapping(zs+1); z=de2bi(zs,left-msb); z=reshape(z.,prod(size(z),1); %分组码纠错解码z=decode(z,6,3,linear,genmat); %计算 BER number_of_errors(idxM,idxEbNo),bit_error_rate(idxM,idxEbNo) = . biterr(x,z); end markerchoice = o.; plo
33、tsym = markerchoice(idxM) -; semilogy(EbNovec,bit_error_rate(idxM,:),plotsym); drawnow; hold on; end %产生二进制整数流for idxM = 1:length(Mvec) for idxEbNo = 1:length(EbNovec) M = Mvec(idxM) a=log2(M); %准备调制,格雷码映射Msize = Mvec(idxM); mapping = zeros(Msize); xx=0:Msize-1; yy=bitshift(xx,-1); mapping = bitxor(
34、xx,yy); xs = bi2de(reshape(x,a,length(x)/a).,left-msb); xs = mapping(xs+1); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 15 页,共 18 页 - - - - - - - - - 课程设计报告书专用纸第 16 页共 16 页%进行 16QAM 调制y=qammod(xs,M); %进行平方跟升余弦滤波yj=rcosflt(y,1,nsamp,filter,rrcfilter); %加入高斯白噪声EbNo
35、= EbNovec(idxEbNo); snr=EbNo+10*log10(a)-10*log10(nsamp); yn=awgn(yj,snr,measured); yrx=yn; %滤波yf=rcosflt(yn,1,nsamp,Fs/filter,rrcfilter); yf=downsample(yf,nsamp); yf=yf(2*delay+1:end-2*delay); %16QAM 解调zs=qamdemod(yf,M); %格雷码逆映射dummy demapping=sort(mapping); demapping=demapping-1; zs=demapping(zs+1
36、); z=de2bi(zs,left-msb); z=reshape(z.,prod(size(z),1); %计算 BER number_of_errors(idxM,idxEbNo),bit_error_rate(idxM,idxEbNo) = . biterr(x,z); end markerchoice = *o.; plotsym = markerchoice(idxM) -; semilogy(EbNovec,bit_error_rate(idxM,:),plotsym); drawnow; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - -
37、- - - - - - 名师精心整理 - - - - - - - 第 16 页,共 18 页 - - - - - - - - - 课程设计报告书专用纸第 17 页共 17 页hold on; end title(Whether there is no coding chart line comparison.);% 标题(有误编码图线比较)xlabel(signal-to-noise ratio); %横坐标(信噪比)ylabel( error rate);%误码率legend(There isa code time graph.,There is no code time graph.,Lo
38、cation,SouthWest);%(图例编码时图像 , 无编码时图像)图 8 有编码信道和无编码信道信噪比误码率曲线比较由此可见有信道编码比无信道编码的误码率时低,所以在信号传输中可以通过对信号进行分组编码以提高信号的传输效率。6总结根据以上数据和图可以得出以下结论:(1)信噪比与误码率成反比,信噪比增加误码率就降低。(2)M 值越小,误码率越小。(3)有编码的信道比无编码的信道的误码率要低。7心得体会这次的综合课程设计让我对数字通信系统有了进一步的认识。由于自身专业素养和知识储备不足,对于代码和程序的功能的认识比较浅薄,所以在前期学习准备和正是运行代码使出现了很多问题。但是在同学和老师的
39、帮助下顺利完成。利用MATLAB2016名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 17 页,共 18 页 - - - - - - - - - 课程设计报告书专用纸第 18 页共 18 页对 MQAM 调制系统进行仿真,实现通过编码减少误码率,M 值与误码率成正比,信噪比喻误码率成反比。 在滤波接受信号前, 我将图像旋转了 45 度,以检测在不同形态下进行解调工作,对于终端接受信号是否有干扰, 事实上接收解码后的信号没有明显的不同,再一次前文提到的MQAM 是减少误码率最佳的调制方式。在日常生活和其他工作中,减少信息交流和传递过程中的信息内容衰减也是人们一直以来的课题,采用不同的信道编码方式进行信号传输,以寻求最佳的方式。创新精神和持之以恒的学习是做成一件事基础也是最有效的方式,培养自身勤学好问的品质和习惯。特别感谢学院和张老师指导我们做这次课程设计!名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 18 页,共 18 页 - - - - - - - - -