版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、-. z.序号*:学生实验报告书 2014年4月27日实验一:AWGN 信道中BPSK 调制系统的 BER 仿真计算一、 实验目的 掌握二相BPSK 调制的工作原理 2 掌握利用MATLAB 进展误比特率测试BER 的方法 3 掌握AWGN信道中BPSK调制系统的BER仿真计算方法 二实验容利用仿真程序在MATLAB 环境下完成AWGN信道中BPSK调制系统的BER仿真计算,得到仿真结果,写出实验小结,完成实验报告。三实验仪器: 计算机 matlab软件四、 实验原理 在数字领域进展的最多的仿真任务是进展调制解调器的误比特 率测试,在一样的条件下 进展比拟的话,接收器的误比特率性能是一个十分重
2、要的指标。误比特率的测试需要一个发送器、一个接收器和一条信道。首先需要产生一个长的随机比特序列作为发送器的输入,发送器将这些比特调制成*种形式的信号以便传送到仿真信道,我们在传输信道上加上一定的可调制噪声,这些噪声信号会变成接收器的输入,接收器解调信号然后恢复比特序列,最后比拟接收到的比特和传送的比特并计算错误。误比特率性能常能描述成二维图像。纵坐标是归一化的信噪比,即每个比特的能量除以噪声的单边功率谱密度,单位为分贝。横坐标 为误比特率,没有量纲。五实验步骤 运行发生器:通过发送器将伪随机序列变成数字化的调制信号。 设定信噪比:假定 SNR 为 m dB,则 Eb/N0=10,用 MATLA
3、B 假设 SNR 单位为分贝。 确定Eb 计算N0 计算噪声的方差 n 产生噪声:因为噪声具有零均值,所以其功率和方差相等。我们产 生一个和信号长度一样的噪声向量,且该向量方差为 n 。 加上噪声,运行接收器 确定时间延迟 产生误差向量 统计错误比特:误差向量err中的每一个非零元素对应着一个 错误的比特。 最后计算误比特率 BER:每运行一次误比特率仿真,就需要传输和 接收固定数量的比特,然后确定接收到的比特中有多少错误的。使用 MATLAB 计算BER: ber=te/length(t*)。实验结果及分析MATLAB程序:%Simulation of bpskAWGNMa*_SNR=10;
4、N_trials=1000;N=200;Eb=1;ber_m=0;for trial=1:1:N_trials trial msg=round(rand(1,N); % 1, 0 sequence s=1-msg.*2; %0-1, 1-1 n=randn(1,N)+j.*randn(1,N);%generate guass white noise ber_v=;for snr_dB=1:2:Ma*_SNR snr=10.(snr_dB./10);%snr(db)-snr(decimal) N0=Eb./snr; sgma=sqrt(N0./2); y=sqrt(Eb).*s+sgma.*n;
5、 y1=sign(real(y); y2=(1-y1)./2; % 1, 0 sequence error=sum(abs( msg- y2);%error bits ber_snr=error./N;%ber ber_v=ber_v,ber_snr;end%for snrber_m=ber_m+ber_v;endber=ber_m./N_trials;ber_theory=;for snr_db=1:2:Ma*_SNR snr=10.(snr_db./10); snr_1=Qfunct(sqrt(2*snr); ber_theory=ber_theory,snr_1;endi=1:2:Ma*
6、_SNR;semilogy(i,ber,-r,i,ber_theory,*b);*label(E_b/N_0 (dB)ylabel(BER)legend(Monte Carlo, Theoretic)程序分析:做1000次试验,每次试验取200个抽样点,求出每次试验的误比特率,然后对1000次试验的误比特率取平均值,即得仿真误比特率ber,然后将此误比特率与理论值ber_theory进展比拟。程序运行结果如图3所示。图1 bpskAWGN误比特率仿真结果与理论值比拟结果分析:由图3可知,仿真结果与理论值根本相符,只是在信噪比拟大时,仿真误码率与理论值存在误差,这是因为在高信噪比情况下,误比特率
7、会呈下降趋势,假设要仿真实际的误比特率,就需要进展更屡次试验,而且每次试验取的抽样点数也应该增加。%Simulation of qpskAWGNN_trials=1000;N_number=100;N_snr=10;Es=1;BER_m=0;SER_m=0;for trials=1:N_trials; trials s10=round(rand(1,N_number); S=(s10*2-1)./sqrt(2); S1=S(1:2:N_number); S2=S(2:2:N_number); Sc=S1+j.*S2;%generate qpsk signal niose=randn(1,N_n
8、umber/2)+j.*randn(1,N_number/2);%generate noise SER_v=;%Symbol error rate BER_v=;%Bit error ratefor snr_db=0:1:N_snr; sgma=(1/2)*sqrt(10.(-snr_db./10); Y=Sc+sgma.*niose;Y_r=sign(real(Y)./sqrt(2); Y_i=sign(imag(Y)./sqrt(2); Y_bit=;for k=1:length(Y_r); Y_bit=Y_bit,Y_r(k),Y_i(k);end; Y_symbol=Y_r+j*Y_i
9、; *_b=S-Y_bit; *_s=Sc-Y_symbol; ber_snr=0;for k=1:N_numberif *_b(k)=0; ber_snr=ber_snr+1;end;end; ser_snr=0;for k=1:N_number/2;if *_s(k)=0; ser_snr=ser_snr+1;end;end; BER_v=BER_v,ber_snr./N_number; SER_v=SER_v,ser_snr./(N_number./2);end;%for SNRBER_m=BER_m+BER_v;SER_m=SER_m+SER_v;end% for trialsBER=
10、BER_m./N_trials;SER=SER_m./N_trials;BER_T=;SER_T=;for snr_db=0:1:N_snr; snr=10.(snr_db./10); BER_THEORY=Qfunct(sqrt(2.*snr); SER_THEORY=1-(1-(1/2).*erfc(sqrt(snr).2; BER_T=BER_T,BER_THEORY; SER_T=SER_T,SER_THEORY;end;figurei=0:1:N_snr;semilogy(i,BER,-r,i,BER_T,*b);legend(BER-simulation,BER-theory);*
11、label(Eb/N0(db);ylabel(BER);figurei=0:1:N_snr;semilogy(i,SER,-g,i,SER_T,*y);legend(SER-simulation,SER-theory);*label(E_b/N_0(db);ylabel(SER);程序分析:与bpskAWGN类似,做1000次试验,每次试验取100个点,然后每两个点形成一个qpsk符号,首先计算仿真误比特率和误码率,然后与理论值进展比拟。程序运行结果如图4和图5所示,其中图4是ber图,图5是ser图。图2 BER仿真结果与理论值结果分析:由图4和图5可知,在低信噪比的情况下,BER和SER的
12、仿真结果与理论值完全相符,在高信噪比情况下,两者存在差异,这是因为随着信噪比的增加,误比特率和误码率也会增加,这就需要更多的试验次数和更多的抽样点数。将BER和SER仿真结果进展比拟可知,在一样信噪比的情况下,BER比SER小,这是因为只要一个比特错,相应的qpsk符号就会出错,而一个qpsk要正确接收,就必须保证它的两个比特全部正确接收。图3 SER仿真结果与理论值实验二: 无线通信信道建模一、实验目的1.掌握无线移动通信信道的特点,根据相关模型进展仿真。2.掌握MATLAB 语言对上述参数进展仿真。二实验容 利用仿真程序在MATLAB 环境下完成移动信道建模的仿真分析,得到仿真结果,写出实
13、验小结,完成实验报告。三实验仪器 计算机 matlab软件四、 实验原理 当移动台在一个较小的围小于20个工作波长运动时,引起接收信号的幅度、相位和到达角等的快速变化,这种变化称为小尺度衰落。典型的小尺度衰落有Rayleigh、Rician衰落,因为当信号在传播过程中经过许多反射路径后,接收到的信号幅度可以用Rayleigh或Rician概率密度函数来描述。在承受信号有直达信号LOS的情况下,幅度的衰落呈现Rician分布,而当在接收端没有直达信号的情况下,幅度的衰落呈现Rayleigh分布。采用小尺度衰落模型的信道,衰落幅度是服从Rician或Rayleigh分布的随机变量,这些变量将会影响
14、到接收信号的幅度和功率。五实验步骤1 选择路径数 2 按均匀分布产生各条路径的延迟 3 按功率时延谱确定对应的各径的功率 4 按Jake 模型产生各径的瑞利衰落系数 5 对瑞利衰落系数进展统计分析并与理论值相比拟 说明: 1 路径数目2-4 自己确定,或采用*个国际标准 2 每条路径时间延迟满足0,Tma*围均匀分布,Tma* 为自 己选择的最大采样步长数200-600 间比拟适宜,或采用国际标准 3 功率可以按时延迟谱求得,也可用国际标准测量值。功率延迟谱: 假设采用等功率分配产生功率:P i =P t /M;采用指数分布的功率 延迟谱产生功率:P=1/6*e*p(-t/6) 六实验结果及分
15、析MATLAB程序:% Simulation Of Jakes Modelclear all;f_ma* = 30;M = 8; % # of low frequency oscillators - 1N = 4*M+2;Ts=1.024e-04;sq = 2/sqrt(N);sigma = 1/sqrt(2);theta = 0; % Fi*ed Phasecount = 0;t0=0.001;for t = 0:Ts:0.5 % Varying time count = count + 1 g(count) = 0;for n = 1 : M+1,if n = M c_q(count,n)
16、 = 2*sigma*sin(pi*n/M); % Gain associated with quadrature ponent c_i(count,n) = 2*sigma*cos(pi*n/M); % Gain associated with inphase ponent f_i(count,n) = f_ma*cos(2*pi*n/N); % Discrete doppler frequencies of inphase ponent f_q(count,n) = f_ma*cos(2*pi*n/N); % Discrete doppler frequencies of quadratu
17、re ponentelse c_i(count,n) = sqrt(2)*cos(pi/4); c_q(count,n) = sqrt(2)*sin(pi/4); f_i(count,n) = f_ma*; f_q(count,n) = f_ma*;end; % end if g_i(count,n) = c_i(count,n)*cos(2*pi*f_i(count,n)*(t-t0) + theta); % Inphase ponent for one oscillator g_q(count,n) = c_q(count,n)*cos(2*pi*f_q(count,n)*(t-t0) +
18、 theta); % Quadrature ponent for one oscillatorend; %end n tp(count) = sq*sum(g_i(count,1:M+1);% Total Inphase ponent tp1(count) = sq*sum(g_q(count,1:M+1);% Total quadrature ponent end; % end count no n again envelope=sqrt(tp.2+tp1.2);%rayleigh envelope rmsenv=sqrt(sum(envelope.2)/count);%root mean
19、square envelpe auto_i,lag_i = *corr(tp,coeff) ; % Auto-correlation associated with inphase ponent auto_q,lag_q = *corr(tp1,coeff); % Auto-correlation associated with quadrature ponent len=length(lag_i); corr*2,lag2 = *corr(tp,tp1,coeff);% Cross Correlation between inphase and quadrature ponents aa=-
20、(len-1)/2:1:(len-1)/2;%total duration for lag bb=(len-2001)./2;%mid . points for drawing figures cc=bb+1:1:bb+2001;%for getting the mid-values dd=-1000:1:1000;%_ tdd=dd*Ts; z=2.*pi.*f_ma*tdd; sigma0=1; T_bessel=sigma0.2.*besselj(0,z);% figure; plot(tdd,auto_i(cc),-,tdd,T_bessel,*);%in-phase *label(t
21、(Second); ylabel(Auto-correlation); legend(In-ponent) figure; plot(tdd,auto_q(cc),-,tdd,T_bessel,*);%quadrature *label(t(Second); ylabel(Auto-correlation); legend(Q-ponent)figureco1=1:1000;semilogy(co1*Ts,envelope(1:1000);*label(t(Second);ylabel(Rayleigh Coef.);%_length_r=length(envelope);%_pdf_env=
22、zeros(1,501);count=0;temp=round(100.*envelope);for k=1:length_rif temp(k)=500 count=count+1; pdf_env(1,temp(k)+1)=pdf_env(1,temp(k)+1)+1;endendcountpdf_env=pdf_env./count./0.01;%simulation rayleigh pdfsgma2=0.5;*=0:0.01:5;pdf_theory=(*./sgma2).*e*p(-1.*.2./(2.*sgma2);%theory rayleigh pdffigureplot(*
23、,pdf_env,-,*,pdf_theory,*);legend(Simulated,Theoretic);*label(r);ylabel(PDF of r);程序分析:首先选定jake模型得到参数M=8、N=4*M+2,然后计算各路的同相与正交分量的增益和多普勒频率,以及它们的表达式,该程序假设各路的延时相等,均为t0=0.001,各路相位均为0。然后分别求同相分量和正交分量的自相关和互相关,分别作图,并分别与理论值相比拟。接着作出瑞利衰落系数图形,最后作出仿真的和理论的瑞利分布的概率密度函数,并进展比拟。程序运行结果如图6-图9所示。图4. 同相分量的自相关仿真图形和理论图形图5. 正
24、交分量的自相关仿真图形和理论图形 图6. 瑞利衰落系数图形图7. 瑞利分布概率密度函数仿真图形和理论图形结果分析:图4和图5的自相关和互相关函数图形仿真结果与理论结果大致一样,说明jake模型很好地别离出了接收信号同相分量和正交分量,图6是瑞利衰落系数的时域图形,图7利分布概率密度函数的仿真结果的大致变化趋势与理论值一样,只不过在概率密度较大的区域两者有较大差异,这是因为抽样点数太少,无法满足理论计算的要求,而且jake模型的M、N取值也会影响概率密度函数图形的仿真结果。 实验三: CDMA通信仿真实验目的1. CDMA通信具有很多通信特点,不仅被IS-95移动通信系统使用,目前已成为3G的主
25、要技术。2. 通过实验:掌握直接序列扩频发射机与接收机的组成与仿真;仿真验证AWGN信道下单用户直接序列扩频系统的BER性能;仿真验证平坦瑞利信道下单用户直接序列扩频系统的BER性能;观察存在干扰用户时的系统性能变化。实验容设计一个CDMA系统,用MATLAB进展仿真,统计BER或SER随信噪比的关系,绘出曲线。对统计试验的结果与单用户的理论值进展比拟,对仿真结果进展分析。三实验仪器 计算机 matlab软件四实验原理仿真基带直接序列扩频系统:采用BPSK或QPSK映射。扩频序列可以是随机产生,可以是m序列,也可以是Gold码,长度自选。最后对BER或SER随信噪比变化画图与理论单用户的结果比
26、拟,并对仿真结果进展分析。五实验步骤确定用户数目、信道特征以及调制方式。确定基带扩频仿真系统的原理构造图,按照框图设计一个CDMA系统,并进展仿真。信源卷积编码交织编码加扰码扩频调制AWGN信道调制解扩信宿解卷积解交织去扰码用MATLAB进展仿真,统计BER或SER随信噪比的关系,绘出曲线。对统计试验的结果与单用户的理论值进展比拟。对仿真结果进展分析。六实验结果及分析MATLAB程序:%main_IS95_forward.m %此函数用于IS-95前向链路系统的仿真,包括扩%频调制,匹配滤波,RAKE接收等相关通信模块。 %仿真环境: 加性高斯白噪声信道. %数据速率 = 9600 KBps
27、% clear allclose allclcdisp(-start-); global Zi Zq Zs show R Gi Gq clear j; show = 0; %控制程序运行中的显示SD = 0; % 选择软/硬判决接收 %-主要的仿真参数设置-BitRate = 9600; %比特率ChipRate = 1228800; %码片速率N = 184; %源数据数MFType = 1; % 匹配滤波器类型-升余弦R = 5; %+Viterbi生成多项式+G_Vit = 1 1 1 1 0 1 0 1 1; 1 0 1 1 1 0 0 0 1;%Viterbi生成多项式矩阵K = s
28、ize(G_Vit, 2); %列数 L = size(G_Vit, 1); %行数 %+ %+Walsh矩阵+WLen = 64; %walsh码的长度Walsh = reshape(1;0*ones(1, WLen/2), WLen , 1); %32个1 0行%Walsh = zeros(WLen ,1); %+ %+扩频调制PN码的生成多项式+%Gi = 1 0 1 0 0 0 1 1 1 0 1 0 0 0 0 1; %Gq = 1 0 0 1 1 1 0 0 0 1 1 1 1 0 0 1; Gi_ind = 15, 13, 9, 8, 7, 5, 0; %i路PN码生成多项式参数
29、Gq_ind = 15, 12, 11, 10, 6, 5, 4, 3, 0; %q路PN码生成多项式参数Gi = zeros(16, 1); %161的0矩阵Gi(16-Gi_ind) = ones(size(Gi_ind);%根据Gi_ind配置i路PN码生成多项式Zi = zeros(length(Gi)-1, 1); 1; % I路信道PN码生成器的初始状态Gq = zeros(16, 1); %161的0矩阵Gq(16-Gq_ind) = ones(size(Gq_ind); %根据Gq_ind配置q路PN码生成多项式Zq = zeros(length(Gq)-1, 1); 1; %
30、 Q路信道PN码生成器的初始状态%+ %+扰码生成多项式+Gs_ind = 42, 35, 33, 31, 27, 26, 25, 22, 21, 19, 18, 17, 16, 10, 7, 6, 5, 3, 2, 1, 0; Gs = zeros(43, 1); %431的0矩阵Gs(43-Gs_ind) = ones(size(Gs_ind); %根据Gs_ind配置扰码生成多项式Zs = zeros(length(Gs)-1, 1); 1; % 长序列生成器的初始状态%+%+AWGN信道+ EbEc = 10*log10(ChipRate/BitRate);%处理增益 EbEcVit
31、= 10*log10(L); EbNo = -1: 0.5 : 1; %仿真信噪比围(dB) %EbNo = -2 : 0.5 : -1.5; %+%-%-主程序-ErrorsB = ; ErrorsC = ; NN = ; if (SD = 1) % 判断软/硬判决接收 fprintf(n SOFT Decision Viterbi Decodernn); else fprintf(n HARD Decision Viterbi Decodernn); endfor i=1:length(EbNo) %根据EbNo屡次运行 fprintf(nProcessing %1.1f (dB), Eb
32、No(i);%输出当前EbNo值 iter = 0; ErrB = 0; ErrC = 0; while (ErrB 300) & (iter 0);%生成源数据 % 速率为19.2Kcps T*Chips, Scrambler = PacketBuilder(T*Data, G_Vit, Gs); %产生IS-95前向链路系统的发送数据包% 速率为1.2288Mcps * PN MF = Modulator(T*Chips, MFType, Walsh);%实现IS-95前向链路系统的数据调制 %+%+信道+ noise = 1/sqrt(2)*sqrt(R/2)*( randn(size(
33、*) + j*randn(size(*)*10(-(EbNo(i) - EbEc)/20);%生成噪声序列 r = *+noise;%参加噪声 %+ %+接收机+ R*SD = Demodulator(r, PN, MF, Walsh); %软判决,速率为19.2 Kcps R*HD = (R*SD0); % 定义接收码片的硬判决if (SD) R*Data Metric= ReceiverSD(R*SD, G_Vit, Scrambler); %软判决else R*Data Metric= ReceiverHD(R*HD, G_Vit, Scrambler); %硬判决end%+ if(sh
34、ow) subplot(311); plot(R*SD, -o); title(Soft Decisions); %软判决结果图 subplot(312); plot(*or(T*Chips, R*HD), -o); title(Chip Errors);%RAKE接收机输入符号与发送码相比出错的码 subplot(313); plot(*or(T*Data, R*Data), -o); %硬判决接收机与发送数据相比的出错码 title(Data Bit Errors. Metric = , num2str(Metric); pause; endif(mod(iter, 50)=0) %每50次保存一次 fprintf(.); save TempResultsErrBErriter%保存结果end ErrB = ErrB + sum(*or(R*Data, T*Data);%求出错
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中考物理复习专题3简答题课件
- 第四章细胞的物质输入和输出教案
- 《老年人健康知识手册》
- 城市智慧城市工程合同
- 四年级语文下册教案
- 六年级上册心理健康课教案
- 港口码头工程招投标保证
- 医院建筑工程招标与合同签订指南
- 医疗卫生项目招标指南
- 机械设备表面喷漆合同
- 小学语文中国古典名著解读课件:西游记
- 报废机动车拆解有限公司应急预案
- 第二章-1 回转薄壳应力分析
- AutoCAD2007简体中文版正式版(免激活版下载
- 鲁教版初中化学知识点全面总结
- 舞台机械系统工程栅顶钢结构施工方案
- ISO9001模具管理控制程序(含流程图)
- 报价单模板下载word(模板可修改)
- u型玻璃内隔断施工工法
- 药品销毁登记表
- 大学生职业生涯规划大赛获奖作品
评论
0/150
提交评论