用MATLAB实现OFDM仿真分析报告.docx

上传人:b****3 文档编号:10341708 上传时间:2023-05-25 格式:DOCX 页数:11 大小:84.56KB
下载 相关 举报
用MATLAB实现OFDM仿真分析报告.docx_第1页
第1页 / 共11页
用MATLAB实现OFDM仿真分析报告.docx_第2页
第2页 / 共11页
用MATLAB实现OFDM仿真分析报告.docx_第3页
第3页 / 共11页
用MATLAB实现OFDM仿真分析报告.docx_第4页
第4页 / 共11页
用MATLAB实现OFDM仿真分析报告.docx_第5页
第5页 / 共11页
用MATLAB实现OFDM仿真分析报告.docx_第6页
第6页 / 共11页
用MATLAB实现OFDM仿真分析报告.docx_第7页
第7页 / 共11页
用MATLAB实现OFDM仿真分析报告.docx_第8页
第8页 / 共11页
用MATLAB实现OFDM仿真分析报告.docx_第9页
第9页 / 共11页
用MATLAB实现OFDM仿真分析报告.docx_第10页
第10页 / 共11页
用MATLAB实现OFDM仿真分析报告.docx_第11页
第11页 / 共11页
亲,该文档总共11页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

用MATLAB实现OFDM仿真分析报告.docx

《用MATLAB实现OFDM仿真分析报告.docx》由会员分享,可在线阅读,更多相关《用MATLAB实现OFDM仿真分析报告.docx(11页珍藏版)》请在冰点文库上搜索。

用MATLAB实现OFDM仿真分析报告.docx

用MATLAB实现OFDM仿真分析报告

3.1计算机仿真

仿真实验是掌握系统性能的一种手段。

它通过对仿真模型的实验结果来确定实际系统的性能。

从而为新系统的建立或系统的改良提供可靠的参考。

通过仿真,可以降低新系统失败的可能性,消除系统中潜在的瓶颈。

优化系统的整体性能,衡量方案的可行性。

从中选择最后合理的系统配置和参数配置。

然后再应用于实际系统中。

因此,仿真是科学研究和工程建设中不可缺少的方法。

仿真平台

●硬件

CPU:

PentiumIII600MHz

存:

128MSDRAM

●软件

仿真软件:

包括MATLAB6.5的M文件仿真系统。

Matlab是一种强大的工程计算软件。

目前最新的6.x版本(windows环境)是一种功能强、效率高、便于进展科学和工程计算的交互式软件包。

其工具箱中包括:

数值分析、矩阵运算、通信、数字信号处理、建模和系统控制等应用工具程序,并集应用程序和图形于一便于使用的集成环境中。

在此环境下所解问题的Matlab语言表述形式和其数学表达形式一样,不需要按传统的方法编程。

Matlab的特点是编程效率高,用户使用方便,扩大能力强,语句简单,涵丰富,高效方便的矩阵和数组运算,方便的绘图功能。

3.1.2基于MATLAB的OFDM系统仿真链路

根据OFDM根本原理,本文给出利用MATLAB编写OFDM系统的仿真链路流程。

串行数据经串并变换后进展QDPSK数字调制,调制后的复信号通过N点IFFT变换,完成多载波调制,使信号能够在N个子载波上并行传输,中间插入10训练序列符号用于信道估计,参加循环前缀后经并串转换、D/A后进入信道,接收端经过N点FFT变换后进展信道估计,将QDPSK解调后的数据并串变换后得到原始信息比特。

本文采用MATLAB语言编写M文件来实现上述系统。

M文件包括脚本M文件和函数M文件,M文件的强大功能为MATLAB的可扩展性提供了根底和保障,使MATLAB能不断完善和壮大,成为一个开放的、功能强大的实用工具。

M文件通过input命令可以轻松实现用户和程序的交互,通过循环向量化、数组维数预定义等提高M文件执行速度,优化存管理,此外,还可以通过类似C++语言的面向对象编程方法等等。

图3-1仿真链路模型

循环前缀与信道估计对系统误码率的改善分析

本文主要研究循环前缀对系统误码率的改善分析

3.2.1循环前缀

OFDM系统中,每个并行数据支路都是窄带信号,可近似认为每个支路都经历平坦衰落,这样就减小了频率选择性衰落对信号的影响。

同时,每路子数据流速率的降低,减小了符号间干扰(ISI)。

此外,还可以通过加保护间隔的方法完全消除符号间干扰。

假设每个OFDM符号由Y个样值组成,由于时延扩展,接收端将会有和信道冲激响应持续时间相对应的前L(L

最初的保护间隔是用空数据填充的,这虽然消除了ISI,但却破坏了信道间的正交性。

后来,Peled和Ruiz提出了用循环前缀填充保护间隔的方法,即把Y个样值的最后M个复制到个OFDM符号的前端作为保护间隔,利用循环卷积的概念,只要循环前缀的长度大于信道的冲激响应,信道间仍是正交的。

符号周期由T增加至T′=T+

T,

T是保护时隙,增加保护时隙会降低频谱利用率,所以

T一般小于等于T/4。

3.2.2系统仿真结果分析

用上述OFDM系统的实现方法进展OFDM传输系统的仿真,系统参数见表3-1

 

3-1仿真系统参数

并行子信道个数

64

FFT的长度

64

载波个数

64

符号速率

25000

循环次数

100

调制方式

QPSK

循环一次OFDM符号个数

10

首先根本参数设置成如上表所示,再分别设置保护间隔为18和32,然后改变输入信号的信噪比为:

3、4、5、6、7、8、9、10、11、12、13。

图3-2一样信道〔64〕插入不同保护间隔下误码率比拟

图3-3一样信道〔128〕插入不同保护间隔下误码率比拟

图3-4一样信道〔256〕插入不同保护间隔下误码率比拟

如图3-2可知,误码率随着信噪比的增加而逐渐减小,直至趋于理想化的误码率为0。

data1〔下方曲线〕是插入保护间隔为18时的误码率曲线,data2〔上方曲线〕是插入保护间隔为32时的曲线,可见在插入保护间隔过大时,会造成在信噪比低时的高误码率,但随着信噪比的增加,误码率会趋于一样。

改变并行子信道的个数为200,如图3-3,3-4,做一样的比拟,可得同样的结论。

如图3-5与图3-6可知,在插入一样保护间隔的情况下,并行子信道的个数越多,信道传输信息的误码率越低。

并且大大提高了频谱的利用率。

这就充分说明OFDM系统的优点,可以把串行高速数据流成假如干路并行低速数据流,每路低速数据流被调制在彼此正交的子载波上,然后所有子载波叠加在一起构成发送信号。

这种技术具有在杂波干扰下传送信号的能力,可以利用在容易受外界干扰或者抵抗外界干扰能力较差的传输介质中。

因此,OFDM的应用前景十分光明。

图3-5一样保护间隔下插入不同信道〔64、128、256〕误码率比拟

图3-6一样保护间隔〔32〕下插入不同信道〔128、200〕误码率比拟

OFDM技术在实现的过程中,需要根据相应的信道条件和系统要求进展合理设计,才能发挥其优势。

系统的参数选择,导频和同步方案的设计,均衡和编码技术的结合使用,都需要在实现之前进展优化设计,所以仿真工作是必不可少的。

OFDM的系统仿真是一个非常复杂的问题。

根据研究问题的侧重点,可以采用不同的仿真工具和方法分开进展。

目前许多系统级的仿真工具都支持OFDM系统的仿真,对于具体的算法如此可以使用更加灵活的程序语言工具进展仿真。

OFDM系统的仿真是可以优化整个系统的参数和指标,缩短开发的周期。

结合我们的实践经验,系统的分析了OFDM实现中的关键技术,通过一个实例给出了OFDM系统仿真的根本框架,但在具体的系统设计中,还有很多更复杂的问题需要解决,尤其是同步技术,本文给出的只是系统设计时需要宏观考虑的问题。

 

第4章结论

随着数字时代的到来,OFDM技术给通信领域注入了新的活力。

正如绪论中所述,OFDM技术良好的性能在计算机网络、数字音频/视频广播、移动通信、卫星通信等多个领域中都有表现。

本文首先介绍了OFDM系统的关键技术,然后又分析了OFDM系统的原理,在OFDM系统原理的根底上,详细设计了一个基于MATLAB的系统仿真链路模型,并进展了计算机仿真,同时详细分析了仿真结果。

通过对该系统的仿真与分析,可以得到如下结论:

a)IFFT/FFT变换可以有效的实现OFDM信号的调制解调。

b)OFDM可以有效的提供系统频带利用率。

c)信息流的误码率随着信噪比的增加而逐渐减小。

d)信息传输时,并行信道的个数越多信息流的误码率越小。

本文所做的只是系统传输误码率的仿真,在实际应用中,大多需要将OFDM同相和反相两路信号调制成一路信号后,进展射频调制。

这时,系统的同步问题将是仿真的重点。

需要充分考虑系统的频率同步问题,频率的偏移将导致系统子载波得正交性变差,严重影响系统的正常工作。

OFDM的同步也是当前通信领域里的一个研究热点。

事物是在不断开展中,OFDM技术也需要开展。

通过与新技术的结合,OFDM技术将不断完善。

其良好的性能预示着它将拥有一个广阔的前景。

 

在论文的完毕,特附上此致,感在写本文期间给予了我热心帮助的教师、同学和朋友:

感在本科学习期间给予我热心帮助的教师、同学和朋友。

首先要感指导教师:

常怡萍,感这一个多学期来常教师在学习、工作中给予的关心和帮助。

本文的研究工作也是在常教师的悉心指导下完成的。

常教师严谨的工作作风都使我受益匪浅。

尤其是她对当今科技前沿的把握,使我所做的工作具有非常广泛的应用前景。

在她耐心细致的指导下,我的专业知识得以扩大,学习能力得以提高,论文的工作也得以顺利地进展。

所以,再次向常教师表达我最诚挚的意。

在这两年的学习生活中,还得到了学校多位教师的热情帮助。

他们经常给我讲解当今世界前沿技术,给了我许多启发。

在此一并感。

最后还要感我的同学以与本科学习期间的舍友们,和他们一起度过两年和谐融洽的宝贵时间,和他们建立的友谊和我所学到的知识同样弥笃可贵。

这两年来的每一点成绩和进步都得益于我身边的很多人,在此谨向所有关心过我,帮助过我的教师和朋友表示衷心的感。

 

参考文献

[1

[2

[3

[4]亚勇等编著MATLAB信号处理详解.人民邮电出版.2001.

 

[12]王文博,侃宽带无线通信OFDM技术人民邮电

[13]长川,罗涛,乐光新多载波宽带无线通信技术邮电大学

[14]阮勇王永利桑群芳编MATLAB程序设计电子工业2004.1〔MATLAB应用与提高系列〕

[15]建东、家玮,个人通信,人民邮电,1998.

 

附MATLAB仿真程序

%**********************准备局部***************************

para=128;

fftlen=128;

noc=128;

nd=6;

ml=2;

sr=2500;

br=sr.*ml;

gilen=18;

ebn0=3;

%**************************主循环局部**************************

nloop=100;

noe=0;

nod=0;

eop=0;

nop=0;

foriii=1:

nloop

%******************发射局部******************************************************

%******************产生数据**********************

seldata=rand(1,para*nd*ml)>0.5;

%******************串并转换***********************

paradata=reshape(seldata,para,nd*ml);

%******************QPSK调制***********************

[ich,qch]=qpskmod(paradata,para,nd,ml);

kmod=1/sqrt

(2);

ich1=ich.*kmod;

qch1=qch.*kmod;

%******************IFFT(离散傅里叶反变换)*********

x=ich1+qch1.*i;

y=ifft(x);

ich2=real(y);

qch2=imag(y);

%******************插入保护间隔*******************

[ich3,qch3]=giins(ich2,qch2,fftlen,gilen,nd);

fftlen2=fftlen+gilen;

%******************衰减计算************************

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

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

attn=sqrt(attn);

%******************高斯白信道*****************************************************

[ich4,qch4]=b(ich3,qch3,attn);

%******************接收局部******************************************************

%******************去除保护间隔********************

[ich5,qch5]=girem(ich4,qch4,fftlen2,gilen,nd);

%******************FFT(离散傅里叶变换)************

rx=ich5+qch5.*i;

ry=fft(rx);

ich6=real(ry);

qch6=imag(ry);

%*****************QPSK解调**************************

ich7=ich6./kmod;

qch7=qch6./kmod;

[demodata]=qpskdemod(ich7,qch7,para,nd,ml);

%**************并串变换***************************

demodata1=reshape(demodata,1,para*nd*ml);

%***************比特误码率(BER)*********************

%instantaneousnumberoferroranddata

noe2=sum(abs(demodata1-seldata));

nod2=length(seldata);

%cumulativethenumberoferroranddatainnoeandnod

noe=noe+noe2;

nod=nod+nod2;

%calculatingPER

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;

fprintf('%f\t%e\t%e\t%d\t\n',ebn0,ber,per,nloop);

fid=fopen('BERofdm.dat','a');

fclose(fid);

%******************endoffile******************************************************

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

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2