移动通信系统OFDM系统仿真与实现基于MATLAB.docx

上传人:b****6 文档编号:8390016 上传时间:2023-01-31 格式:DOCX 页数:16 大小:337.11KB
下载 相关 举报
移动通信系统OFDM系统仿真与实现基于MATLAB.docx_第1页
第1页 / 共16页
移动通信系统OFDM系统仿真与实现基于MATLAB.docx_第2页
第2页 / 共16页
移动通信系统OFDM系统仿真与实现基于MATLAB.docx_第3页
第3页 / 共16页
移动通信系统OFDM系统仿真与实现基于MATLAB.docx_第4页
第4页 / 共16页
移动通信系统OFDM系统仿真与实现基于MATLAB.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

移动通信系统OFDM系统仿真与实现基于MATLAB.docx

《移动通信系统OFDM系统仿真与实现基于MATLAB.docx》由会员分享,可在线阅读,更多相关《移动通信系统OFDM系统仿真与实现基于MATLAB.docx(16页珍藏版)》请在冰豆网上搜索。

移动通信系统OFDM系统仿真与实现基于MATLAB.docx

移动通信系统OFDM系统仿真与实现基于MATLAB

OFDM系统仿真与实现

1.OFDM的应用意义

在近几年以内,无线通信技术正在以前所未有的速度向前发展。

由于用户对各种实时多媒体业务需求的增加和互联网技术的迅猛发展,未来的无线通信及技术将会有更高的信息传输速率,为用户提供更大的便利,其网络结构也将发生根本的变化。

随着人们对通信数据化、个人化和移动化的需求,OFDM技术在无线接入领域得到了广泛的应用。

OFDM是一种特殊的多载波传输方案,它将数字调制、数字信号处理、多载波传输技术结合在一起,是目前已知的频谱利用率最高的一种通信系统,具有传输速率快、抗多径干扰能力强的优点。

目前,OFDM技术在数字音频广播(DAB)、地面数字视频广播(DVB-T)、无线局域网等领域得到广泛应用。

它将是4G移动通信的核心技术之一。

OFDM广泛用于各种数字传输和通信中,如移动无线FM信道,高比特率数字用户线系统(HDSL),不对称数字用户线系统(ADSL),甚高比特率数字用户线系统HDSL,数字音频广播(DAB)系统,数字视频广播(DVB)和HDTV地面传播系统。

1999年,IEEE802.11a通过了一个SGHz的无线局域网标准,其中OFDM调制技术被采用为物理层标准,使得传输速率可以达54MbPs。

这样,可提供25MbPs的无线ATM接口和10MbPs的以太网无线帧结构接口,并支持语音、数据、图像业务。

这样的速率完全能满足室内、室外的各种应用场合。

OFDM由于技术的成熟性,被选用为下行标准很快就达成了共识。

而在上行技术的选择上,由于OFDM的高峰均比(PAPR)使得一些设备商认为会增加终端的功放成本和功率消耗,限制终端的使用时间,一些则认为可以通过滤波,削峰等方法限制峰均比。

不过,经过讨论后,最后上行还是采用了SC-FDMA方式。

拥有我国自主知识产权的3G标准一一TD-SCDMA在LTE演进计划中也提出了TD-CDM-OFDM的方案B3G/4G是ITU提出的目标,并希望在2010年予以实现。

B3G/4G的目标是在高速移动环境下支持高达100Mb/S的下行数据传输速率,在室内和静止环境下支持高达IGb/S的下行数据传输速率。

而OFDM技术也将扮演重要的角色。

 

2.OFDM的原理研究与分析

2.1OFDM的关键技术

(1)时域和频域同步

OFDM系统对定时和频率偏移敏感,特别是实际应用中与FDMA、TDMA和CDMA等多址方式结合使用时,时域和频率同步显得尤为重要。

(2)信道估计

在OFDM系统中,信道估计器的设计主要有两个问题:

一是导频信息的选择,由于信道常常是衰落信道,需要不断对信道进行跟踪,因此导频信息也必须不断的发送;二是复杂度较低和导频跟踪能力良好的信道估计器的设计。

(3)信道编码和交织

为了提高数字通信系统的性能,信道编码和交织是普遍采用的方法。

对于衰落信道衰落中的随机错误,可以采用信道编码;对于衰落信道中的突发错误,可以采用交织技术。

(4)降低峰值平均功率比

由于OFDM信号在时域上表现为N个正交子载波信号的叠加,当这N个信号恰好均以峰值相加时,OFDM信号也将产生最大峰值,该峰值功率是平均功率的N倍。

尽管峰值功率出现的概率较低,但为了不失真地传输这些高PAPR的OFDM信号,从而导致发送效率极低,接收端对前端放大器以及A/D变换器的线性度要求也很高。

因此提出了基于信号畸变技术、信号扰码技术和基于信号空间扩展等降低OFDM系统PAPR的方法。

(5)自适应技术

在OFDM系统中使用自适应技术,还应考虑频率分组、时间间隔、信道总延迟和信道估计误差等因素,其中信道估计误差对性能的影响较大。

2.2OFDM的优缺点

OFDM主要有下列一些优点:

(1)OFDM在对抗干扰及衰落的优势:

把高速数据流通过串并变换,使得每个子载波上的数据符号持续长度相对增加,可有效对抗信号波形间的干扰ISI,适用于多径信道存在频率选择性,而所有子载波都处于深衰落的概率极小,OFDM系统可通过动态比特分配和动态子信道分配的方法,充分利用信噪比较高的子信道,提高系统性能。

(2)OFDM系统由于子载波之间存在正交性,允许子信道的频谱相互重叠,因此与常规的频分复用相比,OFDM可以最大限度地利用频谱资源。

(3)各子信道的正交调制和解调可通过离散傅利叶反变换(IDFT)和离散傅利叶变换(DFT)实现。

对N很大(N>32)的系统,可以通过快速傅立叶变换(FFT)来实现。

基于FFT的系统在计算方面更有效,并且随着大规模集成电路技术和DSP的发展,IFFT和EFT都非常容易实现。

(4)OFDM的开放灵活性:

无论从无线数据业务的使用需求,还是从移动通信系统自身要求,都希望物理层支持非对称高速数据传输,而OFDM系统可以很容易使用不同数量的子载波来实现上下链路中不同的传输速率。

OFDM技术的不足:

由于OFDM系统内存在多个正交子载波,而且其输出信号是多个子信道的叠加,因此对子信道的正交性有严格要求。

而由于无线信道的时变性,还有发射机载波和本地振荡器的频率偏差,所以OFDM易受频率偏差的影响。

如果多个子信号的相位一致时,所得到的叠加信号的瞬时功率会远大于信号的功率,出现较大的峰值与均值功率比(PAR),这个比值的增大会降低射频放大器的功率效率,使系统性能恶化。

本文主要研究了OFDM调制解调系统,对噪声信道抗干扰能力的研究以及在实际中的基本应用。

利用Matlab进行仿真和性能分析。

2.3原理及数学描述

2.3.1OFDM的载波调制

正交频分复用OFDM(OrthogonalFrequencyDivisionMultiplex)是一种多载波调制方式,通过减小和消除码间串扰的影响来克服信道的频率选择性衰落。

它的基本原理是将信号分割为N个子信号,然后用N个子信号分别调制N个相互正交的子载波。

由于子载波的频谱相互重叠,因而可以得到较高的频谱效率。

下图是OFDM基带信号处理原理图。

其中,(a)是发射机工作原理,(b)是接收机工作原理。

 

图2.1OFDM基带信号处理原理图

2.3.2OFDM的调制解调原理

OFDM通过把需要发射的数据流分解为若干个并行的数据子流,这样每个数据子流在速率上就会降低很多,然后再进行相关调制,将它们调制到一组总数为N,频率之间的间隔相等,且又两两正交的子载波上。

OFDM的调制可以用离散傅里叶反变化(IDFT)来实现,相应的有在解调端可以用离散傅里叶变换(DFT)来实现。

而这两种傅里叶变换都有相应的快速算法,在系统的效率和相应时间上会有所提高。

系统的实际应用中一般采用IFFT和FFT技术。

2.3.3串并转换

数据传输的典型形式是串行数据流,符号被连续传输,每一个数据符号的频谱可占据整个可利用的带宽。

但在并行守护据传输系统中,许多符号被同时传输,减少了那些在串行系统中出现的问题。

在OFDM系统中,每个传输符号速率的大小大约在几十bps到几十Kbps之间,所以必须进行串并变换,将输入串行比特流转换为可以传输的OFDM符号。

由于调制模式可以自适应调节,所以每个子载波的调制模式是可变化的,因而每个子载波可传输的比特数也是可以变化的,所以串并转换需要分配给每个子载波数据段的长度是不一样的。

在接收端执行相反的过程,从各个子载波处来的数据被转换回原始的串行数据。

2.3.4保护间隔和循环前缀

应用OFDM的一个重要原因在于它可以有效的对抗多径时延扩展。

通过把输入数据流串并变换到N个并行的子信道中,使得每一个调制子载波的数据周期可以扩大为原始数据符号周期的N倍。

为了最大限度的消除符号间干扰,还可以在每个OFDM符号间插入保护间隔(GI),而且该保护间隔长度一般要大于无线信道中的最大时延扩展,这样一个符号的多径分量就不会对下一个符号造成干扰。

在这段保护间隔内,可以不插入任何信号,即是一段空闲的传输时段。

2.3.5OFDM的基本参数

各种OFDM参数的选择就是需要在多项要求冲突中进行折中考虑。

通常来讲,如前所述,首先要确定3个参数:

带宽、比特率以及保护间隔,按照惯例,保护间隔的时间长度应该为应用移动环境信道的时延均方根值的2~4倍。

一旦确定了保护间隔,则OFDM符号周期长度就可以确定。

为了最大限度的减少由于插入保护间隔所带来的信噪比的损失,希望OFDM符号周期长度要远远大于保护间隔长度。

但是符号周期长度又不可能任意大,否则OFDM系统中包括更多的子载波数,从而导致子载波间隔相应减少,系统的实现复杂度增加,而且还加大了系统的峰值平均功率比,同时使系统对频率偏差更加敏感。

因此在实际应用中,一般选择符号周期是保护间隔长度的5倍,这样由于插入保护比特所造成的信噪比损耗只有1dB左右。

2.3.6调制方式

可以通过改变发射的射频信号的幅度、相位和频率来调制信号。

对于OFDM系统来说,只能采用前两种调制方法,而不能采用频率调制的方法,这是因为子载波是频率正交,而且携带独立的信息,调制子载波频率会破坏这些子载波的正交特性,这是频率调制不能在OFDM系统中采用的原因。

2.3.716QAM调制

16QAM是用两路独立的正交4ASK信号叠加而成,4ASK是用多电平信号去键控载波而得到的信号。

它是2ASK体制的推广,和2ASK相比,这种体制的优点在于信息传输速率高。

16QAM信号采取正交相干解调的方法解调,解调器首先对收到的16QAM信号进行正交相干解调,一路与cosωct相乘,一路与sinωct相乘。

然后经过低通滤波器,低通滤波器LPF滤除乘法器产生的高频分量,获得有用信号,低通滤波器LPF输出经抽样判决可恢复出电平信号。

16进制的正交振幅调制是一种振幅相位联合键控信号。

16QAM的产生有2种方法:

(1)正交调幅法,它是有2路正交的四电平振幅键控信号叠加而成;

(2)复合相移法:

它是用2路独立的四相位移相键控信号叠加而成。

2.3.8QPSK调制

QPSK是在2PSK(二相调相)的基础上发展而来的一种多进制相位调制。

QPSK是利用载波的四种不同相位来表征传送的数字信息。

在QPSK调制中,首先对输入的二进制数据按二位数字编成一组,以此构成双比特码元。

其组合共有4种,即有4种不同状态。

故可以用M=4种相位或相位差来表示。

这里M=4,故称为四相调相。

同样,若采用八相调制方式,在一个码元时间内可传送3位码,其信息传送速率是二相调制方式的3倍。

由此可见,采用多相调制的级数愈多,系统的传输速率愈高,但相邻载波之间的相位差愈小,接收时要区分它们的困难程度就愈大,将使误码率增加。

 

3.基于MATLAB的OFDM系统仿真实验

3.1MATLAB的特点与功能

MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室)。

是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。

它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。

3.2MATLAB仿真系统

3.2.1仿真结构图

 

图3.1系统仿真原理图

3.2.2主要模块

(1)串并转换

OFDM系统是多载波传输的一种特殊方式,而发送端产生的数据为串行的,因此需要进行串并转换。

OFDM将高速输入的串行数据比特流转换成并行传输的低速数据流,而且串并转换之后会提高系统的抗干扰能力。

串并转换的示意图如图3.2。

 

图3.2串并转换示意图

(2)QPSK调制

QPSK调制的方法有两种,一种是数字方法,另一种是相位选择法。

本程序中选择的是利用数字的方法来调制信号。

这里通过调用一个子函数qpskmod,程序如下:

function[iout,qout]=qpskmod(paradata,para,nd,ml)

m2=ml./2;

paradata2=paradata.*2-1;

count2=0;

forjj=1:

nd

isi=zeros(para,1);

isq=zeros(para,1);

forii=1:

m2

isi=isi+2.^(m2-ii).*paradata2((1:

para),ii+count2);

isq=isq+2.^(m2-ii).*paradata2((1:

para),m2+ii+count2);

end

iout((1:

para),jj)=isi;

qout((1:

para),jj)=isq;

count2=count2+ml;

end

(3)IFFT/FFT运算

通过N点的IDFT运算,把频域数据符号变换为时域数据信号,经调制后发送到信道中去。

在实际应用中,一般采用FFT/IFFT运算,因为它可以显著的降低运算的复杂度。

在Matlab软件里可以使用函数fft()和ifft()来对数据进行FFT/IFFT运算,可以省去很多复杂的运算。

(4)保护间隔和循环前缀

在OFDM系统中,保护间隔是一种循环复制增加了符号的波形长度,在符号的数据部分,每一个子载波内有一个整数倍的循环,此种符号的复制产生了一个循环的信号,即将每个OFDM符号的后一段时间的样点复制到OFDM符号的前面,形成前缀,在交接点没有任何的间断。

当信道的最大多径时延扩展小于保护间隔的时间时,OFDM系统可以完全克服ISI的影响。

具体的m语言实现为:

ich3=[ich2(fl-gl+1:

fl,:

);ich2];

qch3=[qch2(fl-gl+1:

fl,:

);qch2];

(5)并串转换

这一过程是串并转换的逆过程,将N个子载波的数据传送到一个载波信道中去,将并行数据转换为串行数据序列进行传输。

示意图如图3.3。

 

图3.3并串转换示意图

(6)加入高斯噪声

白噪声是根据噪声的功率谱密度是否均匀来定义的,而高斯噪声则是根据它的概率密度函数呈正态分布来定义的,高斯型白噪声称高斯白噪声,在通信系统的理论分析中,特别是在分析、计算系统抗噪声性能时,经常假定系统中信道噪声(即前述的起伏噪声)为高斯型白噪声。

在matlab软件里产生高斯噪声的函数一般有两个WGN和AWGN。

Awgn的用法为:

y=awgn(x,SNR)在信号x中加入高斯白噪声。

信噪比SNR以dB为单位。

x的强度假定为0dBW。

如果x是复数,就加入复噪声。

y=awgn(x,SNR,SIGPOWER)如果SIGPOWER是数值,则其代表以dBW为单位的信号强度;如果SIGPOWER为''measured'',则函数将在加入噪声之前测定信号强度。

本程序正是采用的ReData=awgn(TrData,SNR,’measured’)来给复数发射数据TrData加入高斯噪声。

(7)QPSK解调

在进行解调之前,信号要完成去掉保护间隔和进行FFT运算的任务。

去掉保护间隔也就可以去掉符号间的干扰。

这里通过调用一个子函数qpskdemod,具体的m语言实现为:

function[demodata]=qpskdemod(idata,qdata,para,nd,ml)

demodata=zeros(para,ml*nd);

demodata((1:

para),(1:

ml:

ml*nd-1))=idata((1:

para),(1:

nd))>=0;

demodata((1:

para),(2:

ml:

ml*nd))=qdata((1:

para),(1:

nd))>=0;

(8)接收信号

完成解调之后下面就是进行解调信号的判决得到接收信号,程序中将发送段的原始信号和接收端的信号的波形输了出来。

(9)MATLAB仿真源程序:

clear;

clc;

SNR=10;%信噪比为10

fl=128;%FFT长度为128

Ns=6;%OFDM信号的个数为6

para=128;%子载波个数为128

sr=250000;%符号速率为250000

br=sr.*2;%子载波的比特率

gl=32;%保护时隙的长度

nloop=1;%循环次数

noe=0;

nod=0;

eop=0;

nop=0;

foriii=1:

nloop

%[发送和产生数据]

Signal=rand(1,para*Ns*2)>0.5;

%[串并转换]

paradata=reshape(Signal,para,Ns*2);

%[QPSK调制]

[ich,qch]=qpskmod(paradata,para,Ns,2);

kmod=1./sqrt

(2);

ich1=ich.*kmod;

qch1=qch.*kmod;

qpsk_x=ich1+qch1.*sqrt(-1);

%[IFFT]

fy=ifft(qpsk_x);

ich2=real(fy);

qch2=imag(fy);

%[保护间隔设定]

ich3=[ich2(fl-gl+1:

fl,:

);ich2];

qch3=[qch2(fl-gl+1:

fl,:

);qch2];

%[衰减的计算]

spow=sum(ich3.^2+qch3.^2)/Ns./para;

attn=0.5*spow*sr/br*10.^(-SNR/10);

attn=sqrt(attn);

%[并串转换]

ich4=reshape(ich3,1,(fl+gl)*Ns);

qch4=reshape(qch3,1,(fl+gl)*Ns);

%[通过形成复数发射数据]

TrData=ich4+qch4.*sqrt(-1);

%[在此加入一个高斯白噪声]

ReData=awgn(TrData,SNR,'measured');

idata=real(ReData);

qdata=imag(ReData);

idata1=reshape(idata,fl+gl,Ns);

qdata1=reshape(qdata,fl+gl,Ns);

idata2=idata1(gl+1:

gl+fl,:

);

qdata2=qdata1(gl+1:

gl+fl,:

);

%[FFT]

Rex=idata2+qdata2.*sqrt(-1);

ry=fft(Rex);

ReIChan=real(ry);

ReQChan=imag(ry);

ReIchan=ReIChan/kmod;

ReQchan=ReQChan/kmod;

%[QPSK解调]

RePara=qpskdemod(ReIchan,ReQchan,para,Ns,2);

ReSig=reshape(RePara,1,para*Ns*2);

%[误码比特率和及时的的误码和数据]

noe2=sum(abs(ReSig-Signal));

nod2=length(Signal);

noe=noe+noe2;

nod=nod+nod2;

ifnoe2~=0

eop=eop+1;

else

eop=eop;

end

eop;

nop=nop+1;

fprintf('%d\t%e\t%d\n',iii,noe2/nod2,eop)

end

%[输出结果]

per=eop/nop;

ber=noe/nod;

figure

(1)

subplot(2,1,1),stem(Signal),gridminor;

title('signal');

xlabel('x'),ylabel('y');

subplot(2,1,2),stem(ReSig),gridminor;

title('Resignal')

figure

(2)

subplot(2,1,1),stem(ich2),gridminor;

xlabel('x'),ylabel('y');

subplot(2,1,2),stem(qch2),gridminor;

xlabel('x'),ylabel('y');

figure(3)

subplot(2,1,1),stem(idata),gridminor;

xlabel('时间'),ylabel('幅度');

title('加噪声后I路波形')

subplot(2,1,2),stem(qdata),gridminor;

xlabel('时间'),ylabel('幅度');

title('加噪声后Q路波形')

figure(4)

subplot(2,1,1),stem(ReIChan),gridminor;

subplot(2,1,2),stem(ReQChan),gridminor;

xlabel('x'),ylabel('y');

%[QPSK星座图]

figure(5)

foralfa=0:

0.001*pi:

2*pi

plot(cos(alfa),sin(alfa),'b')

holdon

end

grid;

xlabel('I路');

ylabel('Q路');

title('调制后的星座图');

holdoff

4.仿真实验结果分析及总结

4.1实验分析

通过图3.4可以看出,通过将图中发送数据和接收到的数据进行对比发现,经过OFDM系统的传输后,信号的误码率为0,对抗码间干扰和时延扩展有很好的效果。

实际OFDM系统中,子载波的数目较大时,系统的误码率也是非常低的。

为了能够很好的观察到QPSK的调制,同时也得到了调制后的星座图。

 

图3.4发送短信号和接收短信号

 

图3.5进行IFFT后的I路和Q路波形

 

图3.6加入噪声后的I路和Q路波形

 

图3.7进行FFT变换后的I路和Q路波形

 

图3.8经过调制后的星座图

通过仿真可以看出,OFDM在高斯信道具有比较良好的性能,信噪比在比较大的时候,误码率比较低。

图3.4为发送信号和接收信号的波形图,从中可以看出,通过两者之间的对比,OFDM系统在对抗码间干扰中起到了很好的效果。

同时通过图3.5和图3.6以及图3.7进行观察I路和Q路的波形,并通过星座图作为参考,对进行IFFT变换、加入噪声、FFT变换过程中,OFDM系统对抗干扰的性能都有所体现。

本次仿真利用了MATLAB强大的符号计算功能,由于在数值计算的同时需要获取问题的解析解,因此就需要涉及到符号运算,而MATLAB软件提供了便捷的符号运算,在利用MATLAB软件的过程中,关于矩阵的计算、多项式的运算以及数据统计分析等功能都起到了重要的作用。

有优点的同时也存在很多不足,主要体现在一下几个方面:

(1)编写代码过程比较复杂;

(2)在仿真观察波形的时候修改参数比较复杂;

(3)可视化程度不高。

因此针对这些问题,下面通过SystemView进行一个更便捷的系统仿真,同时再次验证OFDM系统的抗干扰性能。

4.2实验总结

主要工作有:

(1)学习并总结OFDM的原理及其技术应用。

(2)通过MATLAB平台编写m程序对QPSK的调制的OFDM进行仿真并对其性能方面的分析。

体现了MATLAB软件强大的符号运算和数值方面的运算功能,借助了MATALAB运算的灵活性等特点。

(3)整个过程中主要基于操作方面的相对较多,锻炼了动手能力和对MATLAB软件的使用和了解,以及其他仿真的平台的使用,同时操作的过程中了解和掌握了OFDM的基本原理和相关应用。

本文所做工作的

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 计算机硬件及网络

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1