正交幅度调制(QAM)及解调Matlab仿真讲解
基于MATLAB的QAM调制解调技术分析解读

基于MA TLAB的QAM调制解调技术分析基于MATLAB的QAM调制解调技术分析【摘要】当今频谱资源很大一部分已经被利用,随着用户数量的不断增加,对业务需求量不断地提高,在所剩无几的频谱资源如何才能够承载用户的需求,QAM 凭借着自身高频谱利用率,低误码率,抗干扰性极强等优势已经被国际上众多移动专家所关注与研究。
本次毕业设计所研究的课题是基于MATLAB的QAM的调制与解调技术分析,着重研究与分析QAM调制与解调过程中所涉及的各个模块,其中发射端包括二进制信号输入模块,电平转换模块,串并转换模块,信号调制模块,信号解调模块,每个模块都是通过MATLAB建立子函数来实现来模拟实现,其中加进了星座图,眼图,频谱图,误码率曲线图来对比分析不同调制进制的QAM调制系统性能,同时在这个基础上给系统加上高斯白噪声,对加噪后[1]。
系统进行如上的相同的分析【关键词】:QAM,MATLAB,调制与解调,星座图,眼图,误码率基于MA TLAB的QAM调制解调技术分析QAM Modulation and Demodulation Analysis Base onMATLAB【Abstract 】Today, a large part of the spectrum resources has already been used, as thenumber of users and the demand for business constantly increasing, QAM relying on its highspectrum utilization ratio and low error rate, strong anti-interference advantages catch numerousmobile experts concern and do research on it. The graduation design research topic is QAMmodulation and demodulation technology base on MATLAB, this paper studies and analysis ofQAM modulation and demodulation process involved each module, including the binarytransmitting terminal input module, level conversion module, string and conversion module,signal modulation module, signal demodulation module, every module is established throughMATLAB to realize, this process included a constellation diagram, eye diagram, the frequencyspectrum graph, bit error rate curve to analysis different level modulation system of QAMperformance, at the same time, add gaussian white noise on the previous signal , and do the sameanalysis like preceding [1].【keywords】QAM,MATLAB,modulation and demodulation, constellation diagram, bit errorrate基于MA TLAB的QAM调制解调技术分析【目录】第一章:绪论11 1.1QAM背景、研究目的及意义2 的最新研究状况 1.2 QAM3 1.3本文研究的内容及结构4 第二章:MATLAB的简介4 的简述和基本功能 2.1MATLAB 4 2.2MATLAB应用平台结构4 2.3MATLAB的优势5 2.4MATLAB 的应用领域6 第三章:正交振幅系统6 3.1调制与解调6 3.1.1调制简介3.1.2解调简介 67 3.1.3数字通信系统构成及各模块的说明8 3.2QAM系统的简介8 3.2.1QAM调制和星座图简介10 3.2.2串/ 并简介10 3.2.3形成载波11 3.2.4 QAM调制信号的形成11 正交调幅的解调和判决3.2.512 的优缺点3.3QAM13 的主要应用领域 3.4QAM14 的误码率性能分析 3.5QAM15 3.6QAM 眼图17 仿真16QAM第四章:1716QAMMATLAB4.1 基于的仿真174.1.1信号源17 电平转换4.1.219调制4.1.3QAM基于MA TLAB的QAM调制解调技术分析4.1.4 16QAM星座图1921 4.1.5 16QAM频谱22 加入高斯白噪声系统仿真 4.2对16QAM22 4.2.116QAM系统加入高斯白噪声后的星座图23 在不同信道噪声强度下的误码率 4.2.216QAM24 4.2.316QAM在高斯信道中的性能25 基于MATLAB的的仿真MQAM4.325 信号源4.3.126 电平转换 4.3.226 4.3.3MQAM星座图27 4.3.4 MQAM在高斯信道中的性能28 4.3.5不同进制调制的眼图对比30 MQAM的性能对比 4.4 16QAM与31 总结与展望32 致谢33参考文献34附录基于MA TLAB的QAM调制解调技术分析第一章:绪论1.1QAM(背景、研究目的及意义)Quadrature Amplitude Modulation随着频带资源的日益减少,加上用户数量不断增加对业务需求量不断提高,在剩余的频带中,如何充分利用频带,成为迫在眉睫的话题。
基于MATLAB下的QAM仿真

基于MATLAB下的QAM仿真————————————————————————————————作者:————————————————————————————————日期:1.课程设计目的随着现代通信技术的发展,特别是移动通信技术高速发展,频带利用率问题越来越被人们关注。
在频谱资源非常有限的今天,传统通信系统的容量已经不能满足当前用户的要求。
正交幅度调制QAM(Quadrature Amplitude Modulation)以其高频谱利用率、高功率谱密度等优势,成为宽带无线接入和无线视频通信的重要技术方案。
首先介绍了QAM调制解调原理,提出了一种基于MATLAB的16QAM系统调制解调方案,包括串并转换,2-4电平转换,抽样判决,4-2电平转换和并串转换子系统的设计,对16QAM的星座图和调制解调进行了仿真,并对系统性能进行了分析,进而证明16QAM调制技术的优越性。
2.课程设计要求(1)设计一个16QAM调制与解调系统。
(2)设计程序时必须使得程序尽可能的简单。
(3)利用MATLAB进行程序编写并对系统进行仿真分析。
3.相关知识随着现代通信技术的发展,特别是移动通信技术高速发展,新的需求层出不穷,促使新的业务不断产生,因而导致频率资源越来越紧张。
在有限的带宽里要传输大量的多媒体数据,频谱利用率成为当前至关重要的课题,由于具有高频谱利用率、高功率谱密度等优势,16QAM技术被广泛应用于高速数据传输系统.在很多宽带应用领域,比如数字电视广播,Internet宽带接入,QAM系统都得到了广泛的应用。
QAM也可用于数字调制。
数字QAM有4QAM、8QAM、16QAM、32QAM 等调制方式。
其中,16QAM和32QAM广泛用于数字有线电视系统。
当今国际市场上出现了采用16QAM调制技术的卫通调制解调器,如美国COMTECH EF DATA公司新推出的CDM-600。
该卫通调制解调器支持速率高达20Mbps[1]。
基于MATLAB的QAM调制解调实现

基于MATLAB的QAM调制解调实现学生姓名:张平凡指导老师:吴志敏摘要: 此次课程设计的主要内容为利用MATLAB集成环境下的M文件,编写程序来实现QAM的调制解调,,并绘制出解调前后的时域和频域波形及叠加噪声时解调前后的时频波形,根据运行结果和波形来分析该解调过程的正确性及信道对信号传输的影响。
通过此次课设,我加深了关于正交调幅方面的理论知识,加强了MATLAB软件的操作能力,对以后的实验操作打下了基础。
此次课程设计,旨在提高自己的MATLAB软件编程能力,自学能力,对资料的收集.理解以及总结的能力。
在此次课程设计中,我依托MATLAB为平台,编程实现QAM 调制解调的实现,并将相关图形绘制出来,进一步巩固了对课本知识的理解。
关键词: MATLAB; 正交振幅调制; 频谱利用率; 调制与解调;1. 引言在现代通信中,提高频谱利用率一直是人们关注的焦点之一。
近年来,随着通信业务需求的迅速增长,寻找频谱利用率高的数字调制方式已成为数字通信系统设计、研究的主要目标之一。
为了提高其性能,人们对这些数字调制体制不断加以改进提出了多种新的调制解调机体。
这些新的调制解调体制,各有所长分别在不同的方面有其优势。
正交振幅调制QAM(Quadrature Amplitude Modulation)就是一种频谱利用率很高的调制方式,正交振幅调制是二进制的PSK、四进制的QPSK调制的进一步推广,通过相位和振幅的联合控制,可以得到更高频谱效率的调制方式,从而可在限定的频带内传输更高速率的数据【1】。
通信原理通信工程的一门重要的专业课,调制与解调又是通信的精髓,调制就是用基带信号去控制载波信号的某个或几个参量的变化,将信息荷载在其上形成已调信号传输,而解调是调制的反过程,通过具体的方法从已调信号的参量变化中将恢复原始的基带信号,QAM(正交振幅调制)是一种振幅和相位联合键控,在MPSK体制中,随着M 的增大,相位相邻相位的距离逐渐缩小,使噪声容限随之减小,使误码率难于保证,为了改善在M大的噪声容限,发展出了QAM体制【2】。
基于MATLAB的正交幅度调制系统仿真

23
表 4
错误统计器 ( Error Ra te Ca lcula tion ) 的参数设置 参数名称 参数值 设置为 0 设置为 0 选择帧计算模式 选择把输出数据送到工作区 设置为存放数据变量名
参数值 进制数 , M = 2 ″ n ≥1 任意正整数 1 /码元速率 不选择 不选择 码元速率
在通信系统中使用的两个主要资源是发射功率 和信道带宽 。以往在设计微波无线和卫星通信系统 时 ,是按照功率受限信道来选择信道调制技术 。但 随着移动用户数迅速增长以及高速移动数据传输等 需要 ,无线通信频带资源日趋紧张 ,研究和设计自适 应信道调制技术体制是建立宽带移动通信网络中的 关键技术 。由于幅度相位联合键控方式 ( APK ) 是 一种功率和带宽相对高效的信道调制技术 , 在自适 应信道调制技术中应用较多 。自适应调制 ( AM ) 的 基本原理就是优选调制方式 , 并使它在系统限制范 围内和信道条件相适应 。它需要建立调制方式与信 道条件的关系数据 ,在通信系统工作时 ,不断地把实
i =1
具 ,工具箱中提供有丰富的通信模块 , 基于 MAT2 LAB / Sim ulink 通信系统仿真 , 仿真模块的设计过程 是从对 Sim ulink 模型库中各个模块的一种组合 。设 计仿 真 模 型 , 可 以 直 接 用 鼠 标 从 Sim ulink L ibrary B row ser 窗口拖到模型编辑窗口 ,将各模块正确地连 接起来 ,再双击模块 , 弹出该模块的参数对话框 , 修 改模块中各个参数的数值即完成系统仿真模型的建 立。 MATLAB / Si m ulink - comm unications 工 具 箱 中 D igital modulation 中有各种数字调制 /解调器模块 。 其中 ,有基带 ( baseband ) 和通带 ( passband ) 模块之 分 。通带仿真的载波信号包含在模型的发射部分 , 载 波 频 率 通 常 远 远 高 于 信 号 的 最 高 频 率 。由 Nyquist抽样定理可知 , 为了能在接收端恢复原信 号 ,仿真中的抽样频率应至少为载波频率最大值的 两倍 。如果信号频率很高 , 则仿真会变得非常慢或 无法直接进行计算机模拟 。基带仿真一般称为低通 等效法仿真 ,将带通信号等效为基带信号 ,使得调制 和解调性能分析与载波频率和信道频段无关 , 从而 [3] 减少系统资源的占用 。本文采用基带仿真 , 由于 它使用的是通带信号的复数包络 , 所以不能用示波 器观察调制信号波形 。 在 MATLAB / Sim ulink - comm unications/Modula2 tion /D igital B aseband Modulation /AM 工具箱中 4 种 QAM 调制 /解调器 。采用基带正交幅度调制仿真模 型如图 1,仿真模型中各模块参数设置如表 1 ~4 所 示。
MATLAB环境下16QAM调制及解调仿真程序说明

创作编号:BG7531400019813488897SX创作者:别如克*姓名:NikeyMATLAB环境下16QAM调制及解调仿真程序说明一、正交调制及相干解调原理框图正交调制原理框图相干解调原理框图二、MQAM调制介绍及本仿真程序的几点说明MQAM可以用正交调制的方法产生,本仿真中取M=16,即幅度和相位相结合的16个信号点的调制。
为了观察信道噪声对该调制方式的影响,我们在已调信号中又加入了不同强度的高斯白噪声,并统计其译码误码率。
为了简化程序和得到可靠的误码率,我们在解调时并未从已调信号中恢复载波,而是直接产生与调制时一模一样的载波来进行信号解调。
三、仿真结果图附源程序代码:main_plot.mclear;clc;echo off;close all;N=10000; %设定码元数量fb=1; %基带信号频率fs=32; %抽样频率fc=4; %载波频率,为便于观察已调信号,我们把载波频率设的较低Kbase=2; % Kbase=1,不经基带成形滤波,直接调制;% Kbase=2,基带经成形滤波器滤波后,再进行调制info=random_binary(N); %产生二进制信号序列[y,I,Q]=qam(info,Kbase,fs,fb,fc); %对基带信号进行16QAM调制y1=y; y2=y; %备份信号,供后续仿真用T=length(info)/fb; m=fs/fb; nn=length(info);dt=1/fs; t=0:dt:T-dt;subplot(211);%便于观察,这里显示的已调信号及其频谱均为无噪声干扰的理想情况%由于测试信号码元数量为10000个,在这里我们只显示其总数的1/10plot(t(1:1000),y(1:1000),t(1:1000),I(1:1000),t(1:1000),Q(1:1000),[0 35],[0 0],'b:');title('已调信号(In:red,Qn:green)');%傅里叶变换,求出已调信号的频谱n=length(y); y=fft(y)/n; y=abs(y(1:fix(n/2)))*2;q=find(y<1e-04); y(q)=1e-04; y=20*log10(y);f1=m/n; f=0:f1:(length(y)-1)*f1;subplot(223);plot(f,y,'r');grid on;title('已调信号频谱'); xlabel('f/fb');%画出16QAM调制方式对应的星座图subplot(224);constel(y1,fs,fb,fc); title('星座图');SNR_in_dB=8:2:24; %AWGN信道信噪比for j=1:length(SNR_in_dB)y_add_noise=awgn(y2,SNR_in_dB(j)); %加入不同强度的高斯白噪声y_output=qamdet(y_add_noise,fs,fb,fc); %对已调信号进行解调numoferr=0;for i=1:Nif (y_output(i)~=info(i)),创作编号:BG7531400019813488897SX创作者:别如克*numoferr=numoferr+1;end;end;Pe(j)=numoferr/N; %统计误码率end;figure;semilogy(SNR_in_dB,Pe,'red*-');grid on;xlabel('SNR in dB');ylabel('Pe');title('16QAM调制在不同信道噪声强度下的误码率');random_binary.m%产生二进制信源随机序列function [info]=random_binary(N)if nargin == 0, %如果没有输入参数,则指定信息序列为10000个码元N=10000;end;for i=1:N,temp=rand;if (temp<0.5),info(i)=0; % 1/2的概率输出为0elseinfo(i)=1; % 1/2的概率输出为1endend;qam.mfunction [y,I,Q]=qam(x,Kbase,fs,fb,fc);%T=length(x)/fb; m=fs/fb; nn=length(x);dt=1/fs; t=0:dt:T-dt;%串/并变换分离出I分量、Q分量,然后再分别进行电平映射I=x(1:2:nn-1); [I,In]=two2four(I,4*m);Q=x(2:2:nn); [Q,Qn]=two2four(Q,4*m);if Kbase==2; %基带成形滤波I=bshape(I,fs,fb/4); Q=bshape(Q,fs,fb/4);end;y=I.*cos(2*pi*fc*t)-Q.*sin(2*pi*fc*t); %调制qamdet.m%QAM信号解调function [xn,x]=qamdet(y,fs,fb,fc);dt=1/fs; t=0:dt:(length(y)-1)*dt;I=y.*cos(2*pi*fc*t);Q=-y.*sin(2*pi*fc*t);[b,a]=butter(2,2*fb/fs); %设计巴特沃斯滤波器I=filtfilt(b,a,I);Q=filtfilt(b,a,Q);m=4*fs/fb; N=length(y)/m; n=(.6:1:N)*m; n=fix(n);In=I(n); Qn=Q(n); xn=four2two([In Qn]);%I分量Q分量并/串转换,最终恢复成码元序列xnnn=length(xn); xn=[xn(1:nn/2);xn(nn/2+1:nn)];xn=xn(:); xn=xn';bshape.m%基带升余弦成形滤波器function y=bshape(x,fs,fb,N,alfa,delay);%设置默认参数if nargin<6; delay=8; end;if nargin<5; alfa=0.5; end;if nargin<4; N=16; end;b=firrcos(N,fb,2*alfa*fb,fs);y=filter(b,1,x);two2four.m创作编号:BG7531400019813488897SX创作者:别如克*%二进制转换成四进制function [y,yn]=two2four(x,m);T=[0 1;3 2]; n=length(x); ii=1;for i=1:2:n-1;xi=x(i:i+1)+1;yn(ii)=T(xi(1),xi(2));ii=ii+1;end;yn=yn-1.5; y=yn;for i=1:m-1;y=[y;yn];end;y=y(:)'; %映射电平分别为-1.5;0.5;0.5;1.5four2two.m%四进制转换成二进制function xn=four2two(yn);y=yn; ymin=min(y); ymax=max(y); ymax=max([ymax abs(ymin)]);ymin=-abs(ymax); yn=(y-ymin)*3/(ymax-ymin);%设置门限电平,判决I0=find(yn< 0.5); yn(I0)=zeros(size(I0));I1=find(yn>=0.5 & yn<1.5); y n(I1)=ones(size(I1));I2=find(yn>=1.5 & yn<2.5); y n(I2)=ones(size(I2))*2;I3=find(yn>=2.5); yn(I3)=ones(size(I3))*3;%一位四进制码元转换为两位二进制码元T=[0 0;0 1;1 1;1 0]; n=length(yn);for i=1:n;xn(i,:)=T(yn(i)+1,:);end;xn=xn'; xn=xn(:); xn=xn';constel.m%画出星座图function c=constel(x,fs,fb,fc);N=length(x); m=2*fs/fb; n=fs/fc;i1=m-n; i=1; ph0=(i1-1)*2*pi/n;while i <= N/m;xi=x(i1:i1+n-1);y=2*fft(xi)/n; c(i)=y(2);i=i+1; i1=i1+m;end;%如果无输出,则作图if nargout<1;cmax=max(abs(c));ph=(0:5:360)*pi/180;plot(1.414*cos(ph),1.414*sin(ph),'c');hold on;for i=1:length(c);ph=ph0-angle(c(i));a=abs(c(i))/cmax*1.414;plot(a*cos(ph),a*sin(ph),'r*');end;plot([-1.5 1.5],[0 0],'k:',[0 0],[-1.5 1.5],'k:');hold off; axis equal; axis([-1.5 1.5 -1.5 1.5]);end;创作编号:BG7531400019813488897SX创作者:别如克*。
基于matlab的正交振幅调制与解调仿真分析文档

基于matlab的正交振幅调制与解调仿真分析文档it168文库文档会议文集图书全部 DOC PDF PPT XLS TXT我要上传当前已有1161330份文档首页分类浏览文集排行榜合作机构会议图书iPad客户端文库首页基于MATLAB的正交振幅调制与解调仿真分析.doc相关文档共94条,当前页显示 0-30基于MATLAB的正交振幅调制与解调仿真分析7>2013-03-19摘要:MATLAB由于其强大的功能而被广泛应用于很多工程技术领域,尤其在通信和信息处理领域更有其突出地位。
众所周知,在物理级的产品作出之前,先用MATLAB进行这种电子产品的输入输出以估计这种产品的性能好坏,从而可以看出什么地方需要从新设计,什么地方需要优化等来进一步提高系统的性能,因此,伴标签:QA 信号仿真 MATLAB 通信分类:网络通信-嵌入式开发贡献者:he97yuyu| 下载: 0次评分: 收藏到书房基于MATLAB的正交振幅调制与解调仿真分析2013-03-19摘要:MATLAB由于其强大的功能而被广泛应用于很多工程技术领域,尤其在通信和信息处理领域更有其突出地位。
众所周知,在物理级的产品作出之前,先用MATLAB进行这种电子产品的输入输出以估计这种产品的性能好坏,从而可以看出什么地方需要从新设计,什么地方需要优化等来进一步提高系统的性能,因此,伴标签:QA 信号仿真 MATLAB 通信分类:软件与测试-C/C++贡献者:OraBSD| 下载: 0次评分: 收藏到书房基于MATLAB模拟调制系统的仿真2013-03-20MATLAB模拟调制系统的仿真标签:调制系统 MATLAB分类:软件与测试调研报告贡献者:lo岁月静好ve| 下载: 0次评分: 收藏到书房MATLAB实现信号的调制与解调2012-07-20MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。
M—QAM通信系统及matlab的仿真

五.M-QAM在有线电视网的应用
■ 目前应用的比较广泛的是基于有线电视网络的 Cable Modem系统,其基本架构如图所示。有线 电视网络通过Cable Modem终端系统(CMTS)与 互联网络连接。
■ 对应于各种可能的符号数M,有两种不同的 QAM星座图,当每个符号对应于偶数个比特 时,星座图是正方形的;当每个符号对应于 奇数个比特时,星座图是十字行的。
1.QAM正方形星座图
当每个符号对应于偶数个比特时,有 其中,L为正整数。对于具有正方形星座图QAM, 有序坐标对通常构成一个正方形的矩阵
在实际中,常用的一种QAM信号空间如图, 方形QAM,4QAM,16QAM,64QAM
■ 在接收端,输入信号与本地恢复的两个正 交载波信号相乘以后,经过低通滤波器、多 电平判决、L电平到2电平变换,再经过并/串 变换就得到输出数据。
三.QAM的星座图
■ 对于QAM调制而言,如何设计QAM信号的结 构不仅影响到已调信号的功率谱特性,而且 影响已调信号的解调及其性能。因而研究 QAM的星座图来设计信号的结构显得十分重 要。
QAM中的振幅Am和Bm,可以表示成: Am=dmA,Bm=emA
式中,A是固定的振幅,(dm,em)决定已 调QAM信号在信号空间中的坐标点
二.QAM的调制和相干解调
■ QAM的调制和相干解调如图一。在调制端, 输入数据经过串/并变换后分为两路,分别经 过2电平到L电平的变换,形成Am和Bm,之后 Am和Bm经过调制低通滤波器,与相互正交的各 路载波相乘。最后将两个信号相加就可以得 到已调输出信号y(t).
MATLAB环境下16QAM调制及解调仿真程序说明

姓名:NikeyMATLAB环境下16QAM调制及解调仿真程序说明一、正交调制及相干解调原理框图正交调制原理框图相干解调原理框图二、MQAM调制介绍及本仿真程序的几点说明MQAM可以用正交调制的方法产生,本仿真中取M=16,即幅度和相位相结合的16个信号点的调制。
为了观察信道噪声对该调制方式的影响,我们在已调信号中又加入了不同强度的高斯白噪声,并统计其译码误码率。
为了简化程序和得到可靠的误码率,我们在解调时并未从已调信号中恢复载波,而是直接产生与调制时一模一样的载波来进行信号解调。
三、仿真结果图附源程序代码:clear;clc;echo off;close all;N=10000; %设定码元数量fb=1; %基带信号频率fs=32; %抽样频率fc=4; %载波频率,为便于观察已调信号,我们把载波频率设的较低Kbase=2; % Kbase=1,不经基带成形滤波,直接调制;% Kbase=2,基带经成形滤波器滤波后,再进行调制info=random_binary(N); %产生二进制信号序列[y,I,Q]=qam(info,Kbase,fs,fb,fc); %对基带信号进行16QAM调制y1=y; y2=y; %备份信号,供后续仿真用T=length(info)/fb; m=fs/fb; nn=length(info);dt=1/fs; t=0:dt:T-dt;subplot(211);%便于观察,这里显示的已调信号及其频谱均为无噪声干扰的理想情况%由于测试信号码元数量为10000个,在这里我们只显示其总数的1/10plot(t(1:1000),y(1:1000),t(1:1000),I(1:1000),t(1:1000),Q(1:1000),[0 35],[0 0],'b:'); title('已调信号(In:red,Qn:green)');%傅里叶变换,求出已调信号的频谱n=length(y); y=fft(y)/n; y=abs(y(1:fix(n/2)))*2;q=find(y<1e-04); y(q)=1e-04; y=20*log10(y);f1=m/n; f=0:f1:(length(y)-1)*f1;subplot(223);plot(f,y,'r');grid on;title('已调信号频谱'); xlabel('f/fb');%画出16QAM调制方式对应的星座图subplot(224);constel(y1,fs,fb,fc); title('星座图');SNR_in_dB=8:2:24; %AWGN信道信噪比for j=1:length(SNR_in_dB)y_add_noise=awgn(y2,SNR_in_dB(j)); %加入不同强度的高斯白噪声y_output=qamdet(y_add_noise,fs,fb,fc); %对已调信号进行解调numoferr=0;for i=1:Nif (y_output(i)~=info(i)),numoferr=numoferr+1;end;end;Pe(j)=numoferr/N; %统计误码率end;figure;semilogy(SNR_in_dB,Pe,'red*-');grid on;xlabel('SNR in dB');ylabel('Pe');title('16QAM调制在不同信道噪声强度下的误码率');%产生二进制信源随机序列function [info]=random_binary(N)if nargin == 0, %如果没有输入参数,则指定信息序列为10000个码元 N=10000;end;for i=1:N,temp=rand;if (temp<,info(i)=0; % 1/2的概率输出为0elseinfo(i)=1; % 1/2的概率输出为1endend;function [y,I,Q]=qam(x,Kbase,fs,fb,fc);%T=length(x)/fb; m=fs/fb; nn=length(x);dt=1/fs; t=0:dt:T-dt;%串/并变换分离出I分量、Q分量,然后再分别进行电平映射I=x(1:2:nn-1); [I,In]=two2four(I,4*m);Q=x(2:2:nn); [Q,Qn]=two2four(Q,4*m);if Kbase==2; %基带成形滤波I=bshape(I,fs,fb/4); Q=bshape(Q,fs,fb/4);end;y=I.*cos(2*pi*fc*t)-Q.*sin(2*pi*fc*t); %调制%QAM信号解调function [xn,x]=qamdet(y,fs,fb,fc);dt=1/fs; t=0:dt:(length(y)-1)*dt;I=y.*cos(2*pi*fc*t);Q=-y.*sin(2*pi*fc*t);[b,a]=butter(2,2*fb/fs); %设计巴特沃斯滤波器I=filtfilt(b,a,I);Q=filtfilt(b,a,Q);m=4*fs/fb; N=length(y)/m; n=(.6:1:N)*m; n=fix(n);In=I(n); Qn=Q(n); xn=four2two([In Qn]);%I分量Q分量并/串转换,最终恢复成码元序列xnnn=length(xn); xn=[xn(1:nn/2);xn(nn/2+1:nn)];xn=xn(:); xn=xn';%基带升余弦成形滤波器function y=bshape(x,fs,fb,N,alfa,delay);%设置默认参数if nargin<6; delay=8; end;if nargin<5; alfa=; end;if nargin<4; N=16; end;b=firrcos(N,fb,2*alfa*fb,fs);y=filter(b,1,x);%二进制转换成四进制function [y,yn]=two2four(x,m);T=[0 1;3 2]; n=length(x); ii=1;for i=1:2:n-1;xi=x(i:i+1)+1;yn(ii)=T(xi(1),xi(2));ii=ii+1;end;yn=; y=yn;for i=1:m-1;y=[y;yn];end;y=y(:)'; %映射电平分别为;;;%四进制转换成二进制function xn=four2two(yn);y=yn; ymin=min(y); ymax=max(y); ymax=max([ymax abs(ymin)]); ymin=-abs(ymax); yn=(y-ymin)*3/(ymax-ymin);%设置门限电平,判决I0=find(yn< ; yn(I0)=zeros(size(I0)); I1=find(yn>= & yn<; yn(I1)=ones(size(I1)); I2=find(yn>= & yn<; yn(I2)=ones(size(I2))*2; I3=find(yn>=; yn(I3)=ones(size(I3))*3; %一位四进制码元转换为两位二进制码元T=[0 0;0 1;1 1;1 0]; n=length(yn);for i=1:n;xn(i,:)=T(yn(i)+1,:);end;xn=xn'; xn=xn(:); xn=xn';%画出星座图function c=constel(x,fs,fb,fc);N=length(x); m=2*fs/fb; n=fs/fc;i1=m-n; i=1; ph0=(i1-1)*2*pi/n;while i <= N/m;xi=x(i1:i1+n-1);y=2*fft(xi)/n; c(i)=y(2);i=i+1; i1=i1+m;end;%如果无输出,则作图if nargout<1;cmax=max(abs(c));ph=(0:5:360)*pi/180;plot*cos(ph),*sin(ph),'c');hold on;for i=1:length(c);ph=ph0-angle(c(i));a=abs(c(i))/cmax*;plot(a*cos(ph),a*sin(ph),'r*');end;plot([ ],[0 0],'k:',[0 0],[ ],'k:');hold off; axis equal; axis([ ]);end;。
基于matlab的正交振幅调制与解调(DOC)

题目:基于MATLAB的正交振幅调制与解调仿真学生姓名:学生学号:系别:专业:届别:指导教师:电气信息工程学院制2012年5月基于MATLAB的正交振幅调制与解调仿真学生:指导老师:电气信息工程学院1课程设计的任务与要求1.1课程设计的任务本课程设计通过Matlab,Simulink软件来仿真正交振幅调制和解调,要求进一步理解QAM,并掌握Matlab,Simulink软件的使用。
1.2课程设计的要求设计平台为Matlab集成环境,在Matlab,Simulink软件下输入仿真程序,运行该程序,观察波形前后的变化。
独立完成所有的设计。
1.3课程设计的研究基础正交振幅调制(Quadrature Amplitude Modulation, QAM )是一种高效的数字调制解调方式,它在中、大容量数字微波通信系统、有线电视网络高数据传输、卫星通信等领域被广泛使用。
在多进制键控体制中,相位键控的带宽和功率占用方面都具有优势,即带宽占用小和比特信噪比要求低。
因此,MPSK和MDPSK为人们所喜用。
但是,在MPSK体制中,随着M的增大,相邻相位的距离逐渐减小,使噪声容限随之减小,误码率难以保证。
为了改善在M大时的噪声容限,发展出了QAM体制。
在QAM体制中,信号的振幅和相位作为两个独立的参量同时受到调制[1]。
正交振幅调制(Quadrature Amplitude Modulation, QAM )是一种振幅和相位联合键控。
正交振幅调制是二进制的PSK、四进制的QPSK调制的进一步推广,通过相位和振幅的联合控制,可以得到更高频谱效率的调制方式,从而可在限定的频带内传输更高速率的数据。
正交振幅调制(QAM)的一般表达式为y(t)=A cos c w t+mB sin c w t 0≤t<s T(1)m上式由两个相互正交的载波构成,每个载波被一组离散的振幅{A}、{m B}所调制,m故称这种调制方式为正交振幅调制。
基于Matlab的QAM调制系统仿真

《通信技术综合实验》实验报告题目基于Matlab的QAM调制系统仿真系(院)计算机科学技术系专业通信工程班级学生姓名学号2011年 1月 11日基于Matlab的QAM调制系统仿真1.引言随着通信业迅速的发展,传统通信系统的容量已经越来越不能满足当前用户的要求,而可用频谱资源有限,业不能靠无限增加频道数目来解决系统容量问题。
另外,人们亦不能满足通信单一的语音服务,希望能利用移动电话进行图像等多媒体信息的通信。
但由于图像通信比电话需要更大的信道容量。
高效、可靠的数字传输系统对于数字图像通信系统的实现很重要,正交幅度调制QAM是数字通信中一种经常利用的数字调制技术,尤其是多进制QAM具有很高的频带利用率,在通信业务日益增多使得频带利用率成为主要矛盾的情况下,正交幅度调制方式是一种比较好的选择。
为了加深对QAM调制解调数字传输系统的理解,本实验对整个16-QAM基带传输系统的仿真,结构框图如图所示:2.仿真分析与设计(1)随机信号的生成利用Matlab中自带的函数randsrc来产生0、1等概分布的随机信号。
源代码如下所示:global NN=300;global pp=0.5;source=randsrc(1,N,[1,0;p,1-p]);(2)星座图映射将等概分布的0、1信号映射到16QAM星座图上。
每四个bit构成一个码子,具体实现的方法是,将输入的信号进行串并转换分成两路,分别叫做I路和Q路。
再把每一路的信号分别按照两位格雷码的规则进行映射,这样实际上最终得到了四位格雷码。
为了清楚说明,参看表1表1 两位格雷码的映射规律源代码如下所示:function [y1,y2]=Qam_modulation(x)%QAM_modulation%对产生的二进制序列进行QAM调制%=====首先进行串并转换,将原二进制序列转换成两路信号N=length(x);a=1:2:N;y1=x(a);y2=x(a+1);%=====分别对两路信号进行QPSK调制%======对两路信号分别进行2-4电平变换a=1:2:N/2;temp1=y1(a);temp2=y1(a+1);y11=temp1*2+temp2;temp1=y2(a);temp2=y2(a+1);y22=temp1*2+temp2;%=======对两路信号分别进行相位调制a=1:N/4;y1=(y11*2-1-4)*1.*cos(2*pi*a);y2=(y22*2-1-4)*1.*cos(2*pi*a);%========按照格雷码的规则进行映射y1(find(y11==0))=-3;y1(find(y11==1))=-1;y1(find(y11==3))=1;y1(find(y11==2))=3;y2(find(y22==0))=-3;y2(find(y22==1))=-1;y2(find(y22==3))=1;y2(find(y22==2))=3;(3)插值为了能够模拟高斯白噪声的宽频谱特性,以及为了能够显示波形生成器(平方根升余弦滤波器)的效果,所以在原始信号中间添加一些0点。
QAM 调制技术及其MATLAB 仿真

QAM 调制技术及其MATLAB 仿真杨辉媛 李云红 涂成军(吉首大学物理科学与信息工程学院,湖南 吉首 416000)摘 要 : 文章首先概述了QAM 调制技术的原理,然后重点介绍了QAM 调制技术在有线电视系统中的作用和意义,并且对QAM 的频道设置和输出进行了说明。
文章还利用MATLAB 对基于QAM 的数字通信系统进行仿真, 得到了良好效果的接收星座图和补偿后的星座图、信道估计图、系统BER 分析图。
仿真结果表明这种通过MATLAB 实现的数字通信系统具有较强的可实现性,为实际应用和科学合理地设计正交幅度调制系统,提供了高效的仿真平台。
关键词:调制;QAM ;MATLAB中图分类号:TN914.3 文献标识码:AThe Modulation Technology of QAMAnd The Simulation in MatlabYanghuiyuan Liyunhong Tuchengjun(College of Physics Science and Information Engineering,Jishou University,Jishou,Hunan 416000)Abstract :This article has outlined digital communication system's composition and communications system's quality requirement, and introduced range keying (ASK) modulation, frequency shift keying (FSK) modulation, phase shift keying (PSK) modulation, quadrature amplitude (QAM) modulation covers a wide variety of digital modulation technology, and elaborated the QAM modulating technology mechanism in detail. The QAM modulating technology with emphasis has been Introduced in wired television system's function and the significance, and the determination to the QAM channel establishment and the output has been carried on in this paper. The simulating of QAM system based on MATLAB has provided a efficient simulation platform to design a QAM system practically and scientifically.Key words: Modulation; QAM; MATLAB1 前言调制在DVB 系统(DigitalVideoBroadcastingSystem ,数字视频广播系统)中具有十分重要的作用。
基于MATLAB 的M-QAM调制及相干解调的设计与仿真通信原理课程设计

通信原理课程设计报告题目:基于MATLAB 的M-QAM调制及相干解调的设计与仿真班级:通信工程1411姓名:杨仕浩(2014111347)解博文(2014111321)介子豪(2014111322)指导老师:罗倩倩成绩:日期:2016 年12 月21 日基于MATLAB的M-QAM调制及相干解调的设计与仿真摘要:正交幅度调制技术(QAM)是一种功率和带宽相对高效的信道调制技术,因此在自适应信道调制技术中得到了较多应用。
本次课程设计主要运用MATLAB软件对M =16 进制正交幅度调制系统进行了仿真,从理论上验证16进制正交幅度调制系统工作原理,为实际应用和科学合理地设计正交幅度调制系统,提供了便捷、高效、直观的重要方法。
实验及仿真的结果证明,多进制正交幅度调制解调易于实现,且性能良好,是未来通信技术的主要研究方向之一,并有广阔的应用前景。
关键词:正交幅度调制系统;MATLAB;仿真目录1引言 (1)1.1课程设计的目的 (1)1.2课程设计的基本任务和要求 (1)1.3仿真平台Matlab (1)2 QAM系统的介绍 (2)2.1正交幅度调制技术 (2)2.2QAM调制解调原理 (5)2.3QAM的误码率性能 (7)3 多进制正交幅度(M-QAM)调制及相干解调原理框图 (9)4 基于MATLAB的多进制正交幅度(M-QAM)调制及相干解调设计与仿真 (10)4.1系统设计 (10)4.2随机信号的生成 (10)4.3星座图映射 (11)4.4波形成形(平方根升余弦滤波器) (13)4.5调制 (14)4.6加入高斯白噪声之后解调 (15)5 仿真结果及分析 (20)6 总结与体会 (23)6.1总结 (23)6.2心得体会 (24)【参考文献】 (25)附录 (26)1引言本次课程设计主要运用MATLAB软件进行程序编写。
实现模拟基带信号经QAM调制与相干解调的传输过程,通过分析比较调制解调输出波形以及功率谱特征,理解QAM调制解调原理。
实验一16QAM调制与解调仿真

实验一 16QAM调制与解调仿真一、实验目的(1)掌握16QAM调制与解调原理。
(2)掌握Matlab/Simulink仿真软件使用方法。
(3)设计16QAM调制与解调仿真电路,观察同相支路、正交支路波形及16QAM星座图。
二、实验环境与仪器Windows98/2000/XP、Matlab(R2010a)/Simulink三、实验内容1、熟悉地掌握了MATLAB软件在通信系统设计与仿真的基本步骤与方法。
2、搭建16QAM调制解调仿真系统;3、运行仿真系统,得出各模块部分的波形及并进行分析。
四、实验原理1、16QAM调制原理16QAM是用两路独立的正交4ASK信号叠加而成,4ASK是用多电平信号去键控载波而得到的信号。
它是2ASK体制的推广,和2ASK相比,这种体制的优点在于信息传输速率高。
正交幅度调制是利用多进制振幅键控(MASK)和正交载波调制相结合产生的。
16进制的正交振幅调制是一种振幅相位联合键控信号。
16QAM的产生有2种方法:(1)正交调幅法,它是有2路正交的四电平振幅键控信号叠加而成;(2)复合相移法:它是用2路独立的四相位移相键控信号叠加而成。
这里采用正交调幅法。
16QAM正交调制的原理如下图1.1所示。
图1.1 16QAM调制器组成框图图中串/并变换器将速率为Rb的二进制码元序列分为两路,速率为Rb/2。
2-4电平变换为Rb/2的二进制码元序列变成速率为RS=Rb/log216的4个电平信号,4电平信号与正交载波相乘,完成正交调制,两路信号叠加后产生16QAM信号。
在两路速率为Rb/2的二进制码元序列中,经2-4电平变换器输出为4电平信号,即M=16。
经4电平正交幅度调制和叠加后,输出16个信号状态,即16QAM RS=Rb/log216=Rb/4,本实验采用便是这种方式。
2、QAM解调原理16QAM信号采取正交相干解调的方法解调,解调器首先对收到的16QAM信号进行正交相干解调,一路与cosωct相乘,一路与sinωc t相乘。
正交幅度调制(QAM)及解调Matlab仿真讲义

正交幅度调制(QAM)及解调Matlab仿真实验目的:1.掌握QAM及解调原理与特性;2.了解星座图的原理及用途。
实验内容:1.编写MATLAB程序仿真QAM及相干解调;2.观察I、Q两路基带信号的特征及与输入NRZ码上网关系;3.观察I、Q调制过程中信号的变化;4.观察星座图在不同噪声环境下的变化;5.分析仿真中观察的数据,撰写实验报告。
仿真代码:function project(N,p)%N为待仿真序列的长度%p为产生1的概率%======================%首先产生随机二进制序列N=input('输入二进制序列的长度:N=');p=input('输入产生1的概率:');source=randsrc(1,N,[1,0;p,1-p]);figure(1);stem(source);axis([1 N -1 2]);%对产生的二进制序列进行QAM调制[source1,source2]=Qam_modulation(source);%===============================%画出星座图figure(2);plot_astrology(source1,source2);%==============================%两路信号进行插值(8倍过采样)sig_insert1=insert_value(source1,8);sig_insert2=insert_value(source2,8);%================================%画出两路信号的波形图figure(3);plot_2way(sig_insert1,sig_insert2,length(sig_insert1),0.5);title('两路信号波形');%================================%通过低通滤波器[sig_rcos1,sig_rcos2]=rise_cos(sig_insert1,sig_insert2,0.25,2);%================================%画出两路信号信号波形图figure(4);plot_2way(sig_rcos2,sig_rcos2,length(sig_rcos1)/4,0.5);title('通过低通滤波器后两路信号波形图')hold onstem_2way(sig_insert1,sig_insert2,3,0.25,2,length(sig_rcos1)/4); %================================%将基带信号调制到高频上[t,sig_modulate]=modulate_to_high(sig_rcos1,sig_rcos2,0.25,2.5); figure(5);plot(t(1:500),sig_modulate(1:500));title('载波调制信号图');%================================%将滤波后的信号加入高斯噪声snr=10;[x1,x2]=generate_noise(sig_rcos1,sig_rcos2,snr);sig_noise1=x1';sig_noise2=x2';figure(6);plot_2way(sig_noise1,sig_noise2,length(sig_noise1)/4,0.5);title('加入高斯白噪声后的两路信号波形');%================================%经过匹配滤波器[sig_match1,sig_match2]=rise_cos(sig_noise1,sig_noise2,0.25,2); figure(7);plot_2way(sig_match1,sig_match2,length(sig_match1)/4,0.5); title('经过匹配滤波器后');%================================%采样[x1,x2]=pick_sig(sig_match1,sig_match2,8);sig_pick1=x1;sig_pick2=x2;%画出星座图figure(8)plot_astrology(sig_pick1,sig_pick2);%================================%解调signal=demodulate_sig(sig_pick1,sig_pick2);r=signal;%画出解调后的信号figure(9);stem(r);axis([1 N -1 2]);demodulate_sigfunction y=demodulate_sig(x1,x2)%解调xx1(find(x1>=2))=3;xx1(find((x1<2)&(x1>=0)))=1;xx1(find((x1>=-2)&(x1<0)))=-1;xx1(find(x1<-2))=-3;xx2(find(x2>=2))=3;xx2(find((x2<2)&(x2>=0)))=1;xx2(find((x2>=-2)&(x2<0)))=-1;xx2(find(x2<-2))=-3;temp1=zeros(1,length(xx1)*2);temp1(find(xx1==-1)*2)=1;temp1(find(xx1==1)*2-1)=1;temp1(find(xx1==1)*2)=1;temp1(find(xx1==3)*2-1)=1;temp2=zeros(1,length(xx2)*2);temp2(find(xx2==-1)*2)=1;temp2(find(xx2==1)*2-1)=1;temp2(find(xx2==1)*2)=1;temp2(find(xx2==3)*2-1)=1;n=length(temp1);for i=1:2:2*n-1y(i)=temp1((i+1)/2);y(i+1)=temp2((i+1)/2);endgenerate_noisefunction [y1,y2]=generate_noise(x1,x2,snr)snr1=snr+10*log10(4);ss=var(x1+i*x2,1);y=awgn([x1+j*x2],snr1+10*log10(ss/10),'measured'); y1=real(y);y2=imag(y);insert_valuefunction y=insert_value(x,ratio)%对两路信号进行插值y=zeros(1,ratio*length(x));a=1:ratio:length(y);y(a)=x;modulate_to_highfunction [t,y]=modulate_to_high(x1,x2,f,hf)yo1=zeros(1,length(x1)*hf/f*10);yo2=zeros(1,length(x1)*hf/f*10);n=1:length(yo1);yo1(n)=x1(floor((n-1)/(hf/f*10))+1);yo2(n)=x1(floor((n-1)/(hf/f*10))+1);t=(1:length(yo1))/hf*f/10;y=yo1.*cos(2*pi*hf*t)-yo2.*sin(2*pi*hf*t);pick_sigfunction [y1,y2]=pick_sig(x1,x2,ratio)%采样y1=x1(ratio*3*2+1:ratio:(length(x1)-ratio*3*2)); y2=x2(ratio*3*2+1:ratio:(length(x2)-ratio*3*2));plot_2wayfunction plot_2way(x1,x2,len,t)%绘制正交信号图subplot(2,1,2);plot((1:len)*t,x2(1:len));axis([0 len*t -4 4]);hold on;plot((1:len)*t,x2(1:len),'.','Color','red');hold off;xlabel('虚部信号');subplot(2,1,1);plot((1:len)*t,x1(1:len));axis([0 len*t -4 4]);hold onplot((1:len)*t,x1(1:len),'.','Color','red');xlabel('实部信号');hold offplot_astrologyfunction plot_astrology(a,b)%画出星座图subplot(1,1,1);plot(a,b,'+');axis([-5 5 -5 5]);line([-5,5],[0,0],'LineWidth',3,'Color','red'); line([0,0],[-5,5],'LineWidth',3,'Color','red'); title('QAM星座图');Qam_modulationfunction [yy1, yy2]=Qam_modulation(x)N=length(x);a=1:2:N;y1=x(a);y2=x(a+1);a=1:2:N/2;temp11=y1(a);temp12=y1(a+1);y11=temp11*2+temp12;temp21=y2(a);temp22=y2(a+1);y22=temp21*2+temp22;yy1(find(y11==0))=-3;yy1(find(y11==1))=-1;yy1(find(y11==3))=1;yy1(find(y11==2))=3;yy2(find(y22==0))=-3;yy2(find(y22==1))=-1;yy2(find(y22==3))=1;yy2(find(y22==2))=3;endrise_cosfunction [y1,y2]=rise_cos(x1,x2,fd,fs)%升余弦滤波[yf,tf]=rcosine(fd,fs,'fir/sqrt');[yo1,to1]=rcosflt(x1,fd,fs,'filter/Fs',yf); [yo2,to2]=rcosflt(x2,fd,fs,'filter/Fs',yf);y1=yo1;y2=yo2;stem_2wayfunction stem_2way(x1,x2,delay,fd,fs,len)subplot(2,1,1)hold onstem(((1:len)+fs/fd*3)/fs,x1(1:len));subplot(2,1,2)hold onstem(((1:len)+fs/fd*3)/fs,x2(1:len));实验结果:>> project输入二进制序列的长度:N=200输入产生1的概率:0.820406080100120140160180200-1-0.50.511.52-5-4-3-2-1012345-5-4-3-2-112345QAM 星座图020406080100120140160180200-4-224虚部信号020406080100120140160180200-4-224实部信号两路信号波形01020304050-4-224虚部信号01020304050-4-224实部信号通过低通滤波器后两路信号波形图00.51 1.52 2.53 3.54 4.55-0.01-0.008-0.006-0.004-0.0020.0020.0040.0060.0080.01载波调制信号图01020304050-4-224虚部信号01020304050-4-224实部信号加入高斯白噪声后的两路信号波形0102030405060-4-224虚部信号0102030405060-4-224实部信号经过匹配滤波器后-5-4-3-2-1012345-5-4-3-2-112345QAM 星座图20406080100120140160180200-1-0.50.511.52。
基于Matlab的QAM调制系统仿真

《通信技术综合实验》实验报告题目基于Matlab的QAM调制系统仿真系(院)计算机科学技术系专业通信工程班级学生学号2011年 1月 11日基于Matlab的QAM调制系统仿真1.引言随着通信业迅速的发展,传统通信系统的容量已经越来越不能满足当前用户的要求,而可用频谱资源有限,业不能靠无限增加频道数目来解决系统容量问题。
另外,人们亦不能满足通信单一的语音服务,希望能利用移动进行图像等多媒体信息的通信。
但由于图像通信比需要更大的信道容量。
高效、可靠的数字传输系统对于数字图像通信系统的实现很重要,正交幅度调制QAM是数字通信中一种经常利用的数字调制技术,尤其是多进制QAM具有很高的频带利用率,在通信业务日益增多使得频带利用率成为主要矛盾的情况下,正交幅度调制方式是一种比较好的选择。
为了加深对QAM调制解调数字传输系统的理解,本实验对整个16-QAM基带传输系统的仿真,结构框图如图所示:2.仿真分析与设计(1)随机信号的生成利用Matlab中自带的函数randsrc来产生0、1等概分布的随机信号。
源代码如下所示:global NN=300;global pp=0.5;source=randsrc(1,N,[1,0;p,1-p]);(2)星座图映射将等概分布的0、1信号映射到16QAM星座图上。
每四个bit构成一个码子,具体实现的方法是,将输入的信号进行串并转换分成两路,分别叫做I路和Q路。
再把每一路的信号分别按照两位格雷码的规则进行映射,这样实际上最终得到了四位格雷码。
为了清楚说明,参看表1表1 两位格雷码的映射规律源代码如下所示:function [y1,y2]=Qam_modulation(x)%QAM_modulation%对产生的二进制序列进行QAM调制%=====首先进行串并转换,将原二进制序列转换成两路信号N=length(x);a=1:2:N;y1=x(a);y2=x(a+1);%=====分别对两路信号进行QPSK调制%======对两路信号分别进行2-4电平变换a=1:2:N/2;temp1=y1(a);temp2=y1(a+1);y11=temp1*2+temp2;temp1=y2(a);temp2=y2(a+1);y22=temp1*2+temp2;%=======对两路信号分别进行相位调制a=1:N/4;y1=(y11*2-1-4)*1.*cos(2*pi*a);y2=(y22*2-1-4)*1.*cos(2*pi*a);%========按照格雷码的规则进行映射y1(find(y11==0))=-3;y1(find(y11==1))=-1;y1(find(y11==3))=1;y1(find(y11==2))=3;y2(find(y22==0))=-3;y2(find(y22==1))=-1;y2(find(y22==3))=1;y2(find(y22==2))=3;(3)插值为了能够模拟高斯白噪声的宽频谱特性,以及为了能够显示波形生成器(平方根升余弦滤波器)的效果,所以在原始信号中间添加一些0点。
QAM调制解调的仿真实现报告-

一、设计任务任务:使用 MATLAB 软件,实现对 QAM 系统调制与解调过程的仿真,并分析系统的可靠性。
二、实验内容(1)对原始信号分别进行 4QAM 和 16QAM 调制,画出星座图;(2)采用高斯信道传输信号,画出信噪比为 13dB 时,4QAM 和 16QAM 的接收信号星座图;(3)画出两种调制方式的眼图;(4)解调接收信号,分别绘制 4QAM 和 16QAM 的误码率曲线图,并与理论值进行对比;(5)提交详细的设计报告和实验报告。
三、设计原理QAM 调制原理:QAM 调制是把 2ASK 和 2PSK 两种调制技术结合起来的一种调制技术,使得带宽得到双倍扩展。
QAM 调制技术用两路独立的基带信号对频率相同、相位正交的两个载波进行抑制载波双边带调幅,并将已调信号加在一起进行传输。
nQAM 代表 n 个状态的正交调幅,一般有二进制(4QAM)、四进制(16QAM)、八进制(64QAM)。
我们要得到多进制的 QAM 信号,需将二进制信号转换为 m 电平的多进制信号,然后进行正交调制,最后相加输出。
正交调制及相干解调原理框图如下:QAM 调制说明:MQAM 可以用正交调制的方法产生,本仿真中分别取 M=16 和 4。
M=16 时,进行的是幅度和相位相结合的 16 个信号点的调制。
M=4 时,进行的是幅度和相位相结合的 4 个信号点的调制。
为了观察信道噪声对该调制方式的影响,我们在已调信号中又加入了不同强度的高斯白噪声,并统计其译码误码率。
为了简化程序和得到可靠的误码率,我们在解调时并未从已调信号中恢复载波,而是直接产生与调制时一模一样的载波来进行信号解调。
四、实验步骤:(1)我们整个代码编写为 MQAM 格式,在刚开始时,会询问选择 4QAM 还16QAM,然后开始运行。
(2)首先生成一个随机且长度为 n*k 的二进制比特流。
(3)在 MATLAB 中 16QAM 调制器要求输入的信号为 0~M-1 这 1M 个值,所以需要用函数 reshape 和 bi2de 将二进制的比特流转换为对应的十进制这 M 个值。
基于MATLAB仿真QAM调制与解调的设计

摘要正交振幅调制QAM(Quadrature Amplitude Modulation)是一种功率加宽带相对高效的信道调制技术,广泛应用于数字电视,无线宽带等传输领域。
本文针对16QAM系统调制解调系统,利用MATLAB工具对整个系统进行完整仿真,并通过星座图仿真对误码率进行分析。
仿真结果表明该系统简单可行,对QAM相关产品研发和理论研究具有一定的理论和实践意义。
关键词:16QAM;正交振幅调制;MATLAB;误码率AbstractQuadrature amplitude modulation (QAM) is a channel modulation techniques with relatively high efficiency of usage power and bandwidth, It is widely used in digital television,broadband and wireless transmission fields,This article in view of the 16 QAM system demodulation system,Then,Use of MATLAB tools to complete the whole system simulation,And through the constellation chart sinmlation analysis of the ber(bit error rate).Simulation results indicate that this system is both simple and feasible,It has a certain theoretical and practical significance that does the research about products related to QAM.Keywords:16QAM;Quadrature Amplitude Modulation;MATLAB;Bit Error Rate第1章前言1.1 QAM的引入QAM(Quadrature Amplitude Modulation):正交振幅调制。
(完整版)实验五16QAM调制与解调实验

实验五16QAM调制与解调实验【实验目的】使学生了解16QAM的调制与解调原理;能够通过MATLAB对其进行调制和解调;比较解调前后功率谱密度的差别。
【实验器材】装有MATLAB软件的计算机一台【实验原理】1. 16QAM 是用两路独立的正交4ASK 信号叠加而成,4ASK 是用多电平信号去键控载波而得到的信号。
它是2ASK 体制的推广,和2ASK 相比,这种体制的优点在于信息传输速率高。
2. 正交幅度调制是利用多进制振幅键控(MASK)和正交载波调制相结合产生的。
16 进制的正交振幅调制是一种振幅相位联合键控信号。
16QAM 的产生有2 种方法:(1)正交调幅法,它是有2 路正交的四电平振幅键控信号叠加而成;(2)复合相移法:它是用2 路独立的四相位移相键控信号叠加而成。
3. 16QAM 信号采取正交相干解调的方法解调,解调器首先对收到的16QAM 信号进行正交相干解调,一路与cosωc t 相乘,一路与sinωc t 相乘。
然后经过低通滤波器,低通滤波器LPF 滤除乘法器产生的高频分量,获得有用信号,低通滤波器LPF 输出经抽样判决可恢复出电平信号。
【实验内容与步骤】1. MATLAB软件的设置:对路径的设置,设置成路径指向comm2文件夹;2. 在命令行输入start指令,然后输入num值,如3,之后按照内容3输入参考代码。
3. 新建一个扩展名为M的文件,输入以下程序:M=16;k=log2(M);x=randint(30000,1);%产生二进制随机数y=modulate(modem.qammod('M',16,'InputType','Bit'),x);%调制EbNo=-5:1:10;%信噪比s_b2d=bi2de(reshape(x,k,length(x)/k).','left-msb');%二进制变为十进制for n=1:length(EbNo)snr(n)=EbNo(n)+10*log10(k);%Ratio of symbol energy to noise power spectral densityynoisy=awgn(y,snr(n),'measured');%加入高斯白噪声z=demodulate(modem.qamdemod('M',16,'OutputType','Bit'),ynoisy);%解调r_b2d=bi2de(reshape(z,k,length(z)/k).','left-msb');%二进制变为十进制[sym(n),sym_rate(n)]=symerr(s_b2d,r_b2d);%计算仿真误码率,不是误比特率。
基于MATLAB 的M-QAM调制及相干解调的设计与仿真通信原理课程设计

通信原理课程设计报告题目:基于MATLAB 的M-QAM调制及相干解调的设计与仿真班级:通信工程1411姓名:杨仕浩(2014111347)解博文(2014111321)介子豪(2014111322)指导老师:罗倩倩成绩:日期:2016 年12 月21 日基于MATLAB的M-QAM调制及相干解调的设计与仿真摘要:正交幅度调制技术(QAM)是一种功率和带宽相对高效的信道调制技术,因此在自适应信道调制技术中得到了较多应用。
本次课程设计主要运用MATLAB软件对M =16 进制正交幅度调制系统进行了仿真,从理论上验证16进制正交幅度调制系统工作原理,为实际应用和科学合理地设计正交幅度调制系统,提供了便捷、高效、直观的重要方法。
实验及仿真的结果证明,多进制正交幅度调制解调易于实现,且性能良好,是未来通信技术的主要研究方向之一,并有广阔的应用前景。
关键词:正交幅度调制系统;MATLAB;仿真目录1引言 (1)1.1课程设计的目的 (1)1.2课程设计的基本任务和要求 (1)1.3仿真平台Matlab (1)2 QAM系统的介绍 (2)2.1正交幅度调制技术 (2)2.2QAM调制解调原理 (5)2.3QAM的误码率性能 (7)3 多进制正交幅度(M-QAM)调制及相干解调原理框图 (9)4 基于MATLAB的多进制正交幅度(M-QAM)调制及相干解调设计与仿真 (10)4.1系统设计 (10)4.2随机信号的生成 (10)4.3星座图映射 (11)4.4波形成形(平方根升余弦滤波器) (13)4.5调制 (14)4.6加入高斯白噪声之后解调 (15)5 仿真结果及分析 (20)6 总结与体会 (23)6.1总结 (23)6.2心得体会 (24)【参考文献】 (25)附录 (26)1引言本次课程设计主要运用MATLAB软件进行程序编写。
实现模拟基带信号经QAM调制与相干解调的传输过程,通过分析比较调制解调输出波形以及功率谱特征,理解QAM调制解调原理。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
正交幅度调制(QAM)及解调Matlab仿真实验目的:1.掌握QAM及解调原理与特性;2.了解星座图的原理及用途。
实验内容:1.编写MATLAB程序仿真QAM及相干解调;2.观察I、Q两路基带信号的特征及与输入NRZ码上网关系;3.观察I、Q调制过程中信号的变化;4.观察星座图在不同噪声环境下的变化;5.分析仿真中观察的数据,撰写实验报告。
仿真代码:function project(N,p)%N为待仿真序列的长度%p为产生1的概率%======================%首先产生随机二进制序列N=input('输入二进制序列的长度:N=');p=input('输入产生1的概率:');source=randsrc(1,N,[1,0;p,1-p]);figure(1);stem(source);axis([1 N -1 2]);%对产生的二进制序列进行QAM调制[source1,source2]=Qam_modulation(source);%===============================%画出星座图figure(2);plot_astrology(source1,source2);%==============================%两路信号进行插值(8倍过采样)sig_insert1=insert_value(source1,8);sig_insert2=insert_value(source2,8);%================================%画出两路信号的波形图figure(3);plot_2way(sig_insert1,sig_insert2,length(sig_insert1),0.5);title('两路信号波形');%================================%通过低通滤波器[sig_rcos1,sig_rcos2]=rise_cos(sig_insert1,sig_insert2,0.25,2);%================================%画出两路信号信号波形图figure(4);plot_2way(sig_rcos2,sig_rcos2,length(sig_rcos1)/4,0.5);title('通过低通滤波器后两路信号波形图')hold onstem_2way(sig_insert1,sig_insert2,3,0.25,2,length(sig_rcos1)/4); %================================%将基带信号调制到高频上[t,sig_modulate]=modulate_to_high(sig_rcos1,sig_rcos2,0.25,2.5); figure(5);plot(t(1:500),sig_modulate(1:500));title('载波调制信号图');%================================%将滤波后的信号加入高斯噪声snr=10;[x1,x2]=generate_noise(sig_rcos1,sig_rcos2,snr);sig_noise1=x1';sig_noise2=x2';figure(6);plot_2way(sig_noise1,sig_noise2,length(sig_noise1)/4,0.5);title('加入高斯白噪声后的两路信号波形');%================================%经过匹配滤波器[sig_match1,sig_match2]=rise_cos(sig_noise1,sig_noise2,0.25,2); figure(7);plot_2way(sig_match1,sig_match2,length(sig_match1)/4,0.5); title('经过匹配滤波器后');%================================%采样[x1,x2]=pick_sig(sig_match1,sig_match2,8);sig_pick1=x1;sig_pick2=x2;%画出星座图figure(8)plot_astrology(sig_pick1,sig_pick2);%================================%解调signal=demodulate_sig(sig_pick1,sig_pick2);r=signal;%画出解调后的信号figure(9);stem(r);axis([1 N -1 2]);demodulate_sigfunction y=demodulate_sig(x1,x2)%解调xx1(find(x1>=2))=3;xx1(find((x1<2)&(x1>=0)))=1;xx1(find((x1>=-2)&(x1<0)))=-1;xx1(find(x1<-2))=-3;xx2(find(x2>=2))=3;xx2(find((x2<2)&(x2>=0)))=1;xx2(find((x2>=-2)&(x2<0)))=-1;xx2(find(x2<-2))=-3;temp1=zeros(1,length(xx1)*2);temp1(find(xx1==-1)*2)=1;temp1(find(xx1==1)*2-1)=1;temp1(find(xx1==1)*2)=1;temp1(find(xx1==3)*2-1)=1;temp2=zeros(1,length(xx2)*2);temp2(find(xx2==-1)*2)=1;temp2(find(xx2==1)*2-1)=1;temp2(find(xx2==1)*2)=1;temp2(find(xx2==3)*2-1)=1;n=length(temp1);for i=1:2:2*n-1y(i)=temp1((i+1)/2);y(i+1)=temp2((i+1)/2);endgenerate_noisefunction [y1,y2]=generate_noise(x1,x2,snr)snr1=snr+10*log10(4);ss=var(x1+i*x2,1);y=awgn([x1+j*x2],snr1+10*log10(ss/10),'measured'); y1=real(y);y2=imag(y);insert_valuefunction y=insert_value(x,ratio)%对两路信号进行插值y=zeros(1,ratio*length(x));a=1:ratio:length(y);y(a)=x;modulate_to_highfunction [t,y]=modulate_to_high(x1,x2,f,hf)yo1=zeros(1,length(x1)*hf/f*10);yo2=zeros(1,length(x1)*hf/f*10);n=1:length(yo1);yo1(n)=x1(floor((n-1)/(hf/f*10))+1);yo2(n)=x1(floor((n-1)/(hf/f*10))+1);t=(1:length(yo1))/hf*f/10;y=yo1.*cos(2*pi*hf*t)-yo2.*sin(2*pi*hf*t);pick_sigfunction [y1,y2]=pick_sig(x1,x2,ratio)%采样y1=x1(ratio*3*2+1:ratio:(length(x1)-ratio*3*2)); y2=x2(ratio*3*2+1:ratio:(length(x2)-ratio*3*2));plot_2wayfunction plot_2way(x1,x2,len,t)%绘制正交信号图subplot(2,1,2);plot((1:len)*t,x2(1:len));axis([0 len*t -4 4]);hold on;plot((1:len)*t,x2(1:len),'.','Color','red');hold off;xlabel('虚部信号');subplot(2,1,1);plot((1:len)*t,x1(1:len));axis([0 len*t -4 4]);hold onplot((1:len)*t,x1(1:len),'.','Color','red');xlabel('实部信号');hold offplot_astrologyfunction plot_astrology(a,b)%画出星座图subplot(1,1,1);plot(a,b,'+');axis([-5 5 -5 5]);line([-5,5],[0,0],'LineWidth',3,'Color','red'); line([0,0],[-5,5],'LineWidth',3,'Color','red'); title('QAM星座图');Qam_modulationfunction [yy1, yy2]=Qam_modulation(x) N=length(x);a=1:2:N;y1=x(a);y2=x(a+1);a=1:2:N/2;temp11=y1(a);temp12=y1(a+1);y11=temp11*2+temp12;temp21=y2(a);temp22=y2(a+1);y22=temp21*2+temp22;yy1(find(y11==0))=-3;yy1(find(y11==1))=-1;yy1(find(y11==3))=1;yy1(find(y11==2))=3;yy2(find(y22==0))=-3;yy2(find(y22==1))=-1;yy2(find(y22==3))=1;yy2(find(y22==2))=3;endrise_cosfunction [y1,y2]=rise_cos(x1,x2,fd,fs)%升余弦滤波[yf,tf]=rcosine(fd,fs,'fir/sqrt');[yo1,to1]=rcosflt(x1,fd,fs,'filter/Fs',yf); [yo2,to2]=rcosflt(x2,fd,fs,'filter/Fs',yf);y1=yo1;y2=yo2;stem_2wayfunction stem_2way(x1,x2,delay,fd,fs,len)subplot(2,1,1)hold onstem(((1:len)+fs/fd*3)/fs,x1(1:len)); subplot(2,1,2)hold onstem(((1:len)+fs/fd*3)/fs,x2(1:len));实验结果:>> project输入二进制序列的长度:N=200输入产生1的概率:0.8QAM星座图虚部信号实部信号两路信号波形虚部信号实部信号通过低通滤波器后两路信号波形图载波调制信号图加入高斯白噪声后的两路信号波形实部信号虚部信号经过匹配滤波器后实部信号虚部信号QAM星座图。