版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《物联网通信技术》第7章课后习题答案
1(1)按照7.1.1实验内容和步骤,通过MATLAB脚本程序将实验仿真结果
和2FSK理论误比特率曲线绘制在一张图中。
解Simulink仿真框图如文中7.1.1实验内容所示,文件名为commChannel.slx
脚本程序代码如下:
%commChanmain.ni文件名
%snrVec表示信噪比向量值,单位dB
snrVec=0:15;
%初始化误比特率向量
ber=zeros(lenglh(snrVec),1);
%BFSK调制的频率间隔等于24kHz
Frequencyseparation=24000;
%信源产生信号的bit率等于10kbit/s,产生1秒的数据BitRate=10000;
%仿真时间设置为10秒
SirnulationTime=10;
%BFSK调制信号每人符号的抽样数等于2
SamplesPerSymbol=2;
%循环执行仿真程序
fori=l:lcngth(snrVcc)
%信道的信噪比(单位dB)依次取snrVec中的元素
SNR=snrVec(i);
%运行仿真程序,得到的误比特率保存在工作区变量BitErrorRate中
simC^ommChannel');
%计算BitErrorRate的均值作为本次仿真的误比特率
ber(i)=mean(BitErrorRate);
end
%计算理论情况下不同信噪比的AWGN信道的浜比特率,此处需将dB单位
进行转换
theoryBitErrorRate=qfunc(sqrt(10.A(snrVec/10)));
第1页共28页
%绘制仿真信噪比和误比特率的关系曲线图,纵坐标采用对数坐标,红色曲
线
semilogy(snrVcc,bcr,'-r*');
%在同一坐标系下画多条曲线
holdon
grid
xlabelCSNR(dB),)
ylabel('BitErrorRate')
%绘制理论的信噪比却误比特率的关系曲线图,纵坐标采用对数坐标,蓝色
曲线
semilogy(snrVec,theoryRitErrorRate,'-h*');
仿真结果如下:
图中蓝色曲线为理论曲线,红色曲线为实验与真曲线。
从图中可以看出,在加性高斯白噪声(AWGN)信道下,BFSK调制信号的
误比特率随着信噪比的增加而降低,当信噪比达到14dB左右时,误比特率刚好
第2页共28页
低于10-3。而在理论条件下,误比特率也随着信噪比增加而降低,在相同信噪比
下,理论值低于实际值,可以看出理论情况下信噪比到达10dB时误比特率就低
于于3。
(2)在都市环境中,一般将移动通信信道看作是多径瑞利衰落信道。分析
2FSK在多径瑞利衰落信道中的传输性能,瑞利衰落信道模拟两径衰落的情况,
这两径信号的时延分别为0和2.,它们的相对增益则分别为OdB和-3dB。
信道由两部分组成,分别是单输入单输出衰落信道(SISOFadingChannel)
和加性高斯白噪声产生器(AWGNChannel)o其中单输入单输出衰落信道的主要
参数设置如表7-40所示,试给出该场景下的仿真结果。
表7・40单输入单输出衰落信道(SISOFadingChannel)的参数设置
参数名称参数值
Discretepathdelays(s)[02e-61
Averagepathgains(dB)[0-3]
Normalizeaveragepathgainsto0dBChecked
FadingdistributionRaleigh
MaximumDopplerShift(Hz)30
Dopplerspectrumdoppler(*Jake,)
InitialSeed67
解Simulink仿真框图如下图所示,文件名为commChannelRayleigh.slx
%3m・SimukMc
(dilVWwOispUyOwgr«nSmjiMtonMyvtCodeTo<M»Mp
「,I«*i溢
«jtXVanab<e$«fpOtKrete|
第3页共28页
%绘制信噪比和误比特率的关系曲线图,纵坐标采用对数坐标
semilogy(snrVec,ber/-b*');
grid
xlabel('信噪比(dB),)
ylabelC误比特率,)
仿真结果如下:
4TFigure1—□X
文件(F)编辑(E)查看(V)插入(I)工具⑴桌面(D)窗口(W)帮助(H)
051015
信噪比(dB)
图中蓝色曲线为多径瑞利哀落信道下误码率曲线,红色曲线为AWGN信道
下误码率曲线。从图中可以看出多径瑞利衰落信道下误码率很高。
第5页共28页
2(1)按照7.1.2实验内容和步骤,通过MATLAB脚本程序将DQPSK实验
仿真结果和QPSK仿真结果绘制在一张图中进行性能比较。
解将文中7.1.2实验DQPSKSimulink系统文件dqpskMod.slx中的误码率计算
器(ErrorRateCalculation)的参数设置改为如下图所示。
1%1BlockParameters:ErrorRateCalculationX
symbolscompared.Thisvectorcanbesenttoeitherthe♦
woikspaueorcmoutputport.
Thedelaysarespecifiedinnumberofsamples,regardlessof
whethertheinputisascalaroravector.Theinputstothe
Tx'and'Rx'portsmustbescalarsorcolumnvectors.
ThetStopsimulation*optionstopsthesimulationupon
detectingatargetnumberoferrorsoramaximumnumberof
symbols,whichevercomesfirst.
Parameters
Computationmode:Entireframe
Outputdata:Workspace
Variableriamfii————
^pskErrorVec
OResetport
□Stopsimulation
OKCancelHelpApp1y
QPSK系统与DQPSK仅在调制解调方式上不同,其他部分与文中参数完全一致。
其Simulink系统图如下所示,文件名为qpskMod.slxo
第6页共28页
口
回
QPSKModulatorBaseband(QPSK基带调制器)
第7页共28页
QPSKDemodulatorBaseband(QPSK基带解调器)
ErrorRateCalculation(误而马率计算器)
I%1BlockParameters:ErrorRateCalculationX
symbolscompared.Thisvectorcanbesenttoeitherthe,
workspaceoranoutputport.
Thedelaysarespecifiedinnumberofsamples,regardlessof
whethertheinputisascalaroravector.Theinputstothe
‘Tx'and'Rx'portsmustbescalarsorcolumnvectors.
Thp*Stnpsimii1ation*oplionsinps1hpinnupon
detectingatargetnumberoferrorsoramaximumnumberof
symbols,whichevercomesfirst.
Parameters
Receivedelay:
0
Computationdelay:
0
Computationmed。:Entireframe
OKCancelHelp
第8页共28页
M文件dqpskModmain.m对QPSK和DQPSK两个仿真模型进行仿真。
脚本程序代码如下:
%dqpskModmain.m文件名
clear;
%设置调制信号的抽样间隔
SampleTime=1/50000;
%设置仿真时间的长度
SimulationTime=10;
%snrVec表示信噪比向量值,单位dB
snrVec=0:10;
%初始化误符号率向量
dqpskser=7eros(length(snrVec),1);
qpskser=zeros(length(snrVec),1);
fori=1:length(snrVec)
%信噪比依次取向量snrVec的数值
SNR=snrVec(i);
%执行DQPSK的仿真模型
sim('dqpskMod');
%从ErrorVer中获得调制信号的误符号率
dqpskser(i)=dqpskErrorVec(l);
end
fork=klength(snrVec)
SNR-smVuc(k);
%执行QPSK的仿真模型
sim('qpskMod')
%从ErrorVer中获得调制信号的误符号率
qpskser(k)=qpskErrorVec(l);
end
第9页共28页
%绘制信噪比与误符号率的关系曲线
semilogy(snrVec,dqpskser,
holdon
grid
xlabeI('SNR(dB))
ylabel('SymboIErrorRate1)
semilogy(snrVec,qpskser,'-k*');
仿真结果如下图所示:
回,Xi
文件(F)编策⑹查看(V)通入(I)IM(T)息面(D)窗口(W)颦助(H)
012345678910
SNR(dB)
红色曲线为DQPSK误符号率曲线,黑色曲线为QPSK与误符号率曲线。可
以看出QPSK符号率低于DQPSK,说明QPSK性能更好。但是在解调时由于
QPSK存在相位模糊问题,所以在实际中主要采用DQPSKo
(2)用MATLAB绘制不同滚降因子升余弦成型流波器的冲激响应曲线。
第10页共28页
假设截止频率为500Hz,采样频率100kHz,时延5,四个滚降系数分别为0,
0.25,0.5»lo利用rcosine。函数生成升余弦滚降系统。
脚本程序代码如下:
%raiscd_cosinc.m
clearall
Fd=le3;%截止频率为Fd/2
Fs=Fd*100;%设置采样频率为100k
deiay=5;%设置时延为5
forr=[0,0.25,0.5,1]%滚降系数
num=rcosine(Fd,Fs,'fir/normal',r,delay);
%生成升余弦滚降系统
t=0:1/Fs:1/Fs*(length(num)-1);
l=[rand(),rand(),rand(),rand()l;
%每个循环改变一次颜色
figure(1);
plot(t,num,'Color*,1);
holdon;
axis([()0.01-0.31.1]);
title。升余弦滚降系统冲激响应)
xlabelC时间/s')
ylabel('h⑴')
end
结果如下:
第11页共28页
上图说明,在每个码元周期结束时,刚好是冲激响应曲线的零点,可以消除
码间串扰。同时,滚降系数越大时,升余弦滚降系统的冲激响应衰减越快,越接
近理想低通特性。
3(1)按照7.1.3实验内容和步骤,对约束长度都等于9,码率(编码效率)
分别等于1/2和1/3的卷积码进行硬判决译码仿真,结果绘制在•张图中进行性
能比较。其中码率为1;2的卷积编码器2个生成多项式用八进制数表示为753和
561,码率为1/3的卷积编码器3个生成多项式用八进制数表示为557、663和
711o
解按照7.1.3实验内容码率1/2的卷积码,其Simulink系统文件名为
chanEndecodel.slx
第12页共28页
ConvolutionalEncoder(卷积编码器)的参数设置如下:
|%|BlockParameters:ConvolutionalEncoder
_____________—_______________________________________
ConvolutionalEncoder(mask)(link)
Convolutionallyencodebinarydata.Usethepoly2trellis
functiontocreateatrellisusingtheconstraintlength,code
generator(octal)andfeedbackconnection(octal).
Selectthe"Terminatetrellisbyappendingbits“operation
modetoterminatethetrellisattheall-zerostateby
appendingtailbitsattheendofeachinputframe.Checkthe
Puncturecodecheckboxtopuncturetheencodeddataforall
otheroperationmodes.
UsetheistrellisfunctioninMATLABtocheckifastructure
isavalidtrellisstructure.
Parameters
Trellisstructure:
poly2trellis(9,[753561])
Operationmode:Truncatedpreseteveryframe)▼
Specifyinitialstateviainputport
Outputfinalstate
Puncturecode
OK]CancelHelpApply
ViterbiDecoder(Viterbi译码器)的参数设置如下:
第13页共28页
&BlockParameters:ViterbiDecoder
ViterbiDecoder(mask)(link)
VsetheViterbialgorithmtodecodeconvolutionallyencodedinputdata.Isethepoly2trellis
functiontocreateatrellisusingtheconstraintlength,codegenerator(octal)andfeedback
connection(octal).
MainDataTypes|
Fixed-pointoperationalparameters
Settingsinthisgrouponly却plyforHardandSoftdecisionswithfixed-pointinputsignals.
Statemetricwordlength:16同
Outputdatatype:[double▼
OK]「Cancel]|Help|
ToWorkspace(工作区写入模块)的参数设置如卜:
国BlockParameters:ToWorkspaceX
ToWorkspace
Writeinputiospecifiedtimeseries,array,orstructureina
workspace.Eormenu-basedsimulation,dataiswritteninthe
MATLABbaseworkspace.Dataisnotavailableuntilthe
simulationissloppedorpaused.
Tologabussignal,use”Timeserics'saveforniat.
Parameters
Variablename:
Decimation:
Saveformal:Timeseries
0Logfixed-pointdataasafiobject
Sampletime(■iforinherited):
IT-
OK|CancelHelp
第14页共28页
码率1/3除卷积码编码和译码的poly2trellis-:)函数的参数不同外,其余与
码率1/2相同。其Simulink系统文件名为chanEndecode2.slx
ConvolutionalEncoder(卷积编码器)的参数设置如下:
BlockParameters:ConvolutionalEncoder
ConvolutionalEncoder(mask)(link)
Convolutionallyencodebinarydata.Usethepoly2trellis
functiontocreateatrellisusingtheconstraintlength,code
generator(octal)andfeedbackconnection(octal).
Selecttae*Terminatetrellisbyappendingbits*operation
modetoterminatethetrellisattheall-zerostateby
appendingtailbitsattheendofeachinputfra>e.Checkthe
Puncturecodecheckboxtopuncturetheencodeddataforall
otheroperationmodes.
UsetheistrellisfunctionmMATLABtocheckifastructure
isavalidtrellisstructure.
Paraineters
Trellisstructure:
poly2trellis(9,[557663711])
Operationnode:Truncated(reseteveryfrane)▼)
Specifyinitialstateviaport
Outputfinalstate
Puncturecode
JOKICancelHelpApply
ViterbiDecoder(Viterbi译码器)的参数设置如下:
第15页共28页
ToWorkspace(工作区写入模块)的参数设置如下:
1%1BlockParameters:ToWorkspaceX
ToWorkspaceA
Writeinputtospecifiedtimeseries,array,orstructureina
workspace.Formenu-basedsimulation,dataiswritteninthe
MATLABbaseworkspace.Deilaisnotavailubleuntilthe
simulationissloppedorpaused.
Tologabussignal,use"Timeseries*saveformat.
Parameters
Variablename:
|BitErrorRatc2
Limitdatapointstolast:
inf
Decinuition:
|1~|[j]
Saveformat:Timcserics”
0Logfixed-pointdataasafiobject
Sampletime(-1forinherited):
~"iiyi
OKCance1HelpApply
脚本程序代码如下:
%chanEndccodcrmain.m
%snrVec表示信噪比向量值,单位dB
clearall;
snrVec=-10:5;
%初始化误比特率向量
berl=zeros(lenglh(snrVec),l);
ber2=zeros(length(snrVec),1);
%循环执行仿真程序
fori=klength(snrVec)
%信道的信噪比(单位dB)依次取snrVec中的元素
SNR=snrVec(i);
%运行码率1/2的仿真程序,得到的误比特率保存在工作区变量
BitEiTorRatel中
sim('chanEndccodc1
第16页共28页
%计算BilErrorRatel的均值作为本次仿真的误比特率
berl(i)=mean(BitErrorRate1);
end
fork=l:length(snrVec)
%信道的信噪比(单位dB)依次取snrVec中的元素
SNR=snrVec(k);
%运行码率U3仿真程序,得到的误比特率保存在工作区变量
BitErrorRate2中
sim('chanEndecode2');
%计算BitErrorRate2的均值作为本次仿真的误比特率
ber2(k)=mean(RitFrrorRate2);
end
%绘制信噪比和误比特率的关系曲线图,纵坐标采用对数坐标
semilogy(snrVec,berl,
holdon
grid
xlabeI('SNR(dB))
ylabel('BitErrorRate')
semilogy(snrVec,ber2,'-k*1);
第17页共28页
仿真结果如下图所示:
-10-8-6-4-2024
SNR(dB)
红色曲线表示码率为1/2的误比特率曲线,黑色曲线表示码率为1/3的误
比特率曲线。仿真的结果显示,相同信噪比下,码率为1/3的卷积码性能更好。
(2)对同一个卷积码分别进行软判决译码和硬判决译码仿真,将仿真结果绘
制在一张图中进行性能比较。(注意:软判决译码时解调器的参数设置与硬判决
译码时不同)
解保留卷积码硬判决译码系统,将卷积码改为示例中的
trellis=poly2lrellis(3,[67])其Simuliiik系统文件名为uhanEndecude.slx
第18页共28页
ConvolutionalEncoder(卷积编码器)的参数设置如下:
i,|BlockParameters:ConvolutionalEncoder
ConvolutionalEncoder(mask)(link)
Convolutionallyencodebinarydata.Usethepoly2trellis
functiontocreateatrellisusingtheconstraintlength,code
generator(octal)andfeedbackconnection(octal).
Selectthe^Terminatetrellisbyappendingbits,*operation
modetoterminatethetrellisattheall-zerostateby
appendingtailbitsattheendofeachinputframe.Checkthe
Puncturecodecheckboxtopuncturetheencodeddataforall
otheroperationmodes.
UsetheistrellisfunctioninMATLABtocheckifastructure
Jisavalidtrellisstructure.
Parameters
Trellisstructure:
poly2trellis(3,[67])
Operationmode:[Truncatedpreseteveryframe)
Specifyinitialstateviainputport
Outputfinalstate
Puncturecode
JOK~[CancelHelp,[Apply
ViterbiDecoder(Vilerbi译码器)的参数设置如下:
第19页共28页
要进行软判决译码,通过AWGN信道的已调BPSK复信号必须先进行映射
和解调,Viterbi译码器要求输入数据为()到7之间的整数,必须先进行多于2
bit的量化。
建立了如下图所示的软判决译码系统。其Simulink系统文件名为
chanEndecode3.slx
2•n••◎七•2y、••««三匚••二•
由于通过AWGN信道的已调BPSK复信号的虚部为零,所以只需要转换实
信号,先进行归一化然后再量化。将已调BPSK信号转换成卷积码译码器可识别
的整数数据。
编码以及调制部分与硬判决相同,此处不再说明参数设置。
解调和译码部分各模块参数设置如下:
第20页共28页
将通过AWGN信道的已调BPSK信号数据以复数形式表示:
数据归一化:
第21页共28页
国BlockParameters:Gain
Gain
Element-wisegain(y=K.*u)ormatrixgain(y=K*uory=u*K).
MainSignalAttributesParameterAttributes
Gain:
-1
Multiplication:Element-wise(K.*u)
第22页共28页
数据量化(3比特量化):
[%]BlockParameters:UniformEncoder
UniformEncoder(mask)(link)
Uniformlyquantizeandencodetheinputintospecifiednumber
ofbits.TheinputissaturatedatpositiveandnegativePeak
value.Outputdatatypeiseither8,16,or32-bitsignedor
unsignedinteger,basedontheleastnumberofbitsneeded.
Parameters
Peak:
2•
Bits:
3
Outputtype:[Unsignedinteger
第23页共28页
ViterbiDecoder(Viterbi译码器)的参数设置如下:
脚本程序代
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 运营管理大专
- 高中安全教育课件教学
- 新员工个人工作总结精彩7篇
- 自我定位与规划方案
- 小学生母亲节演讲稿范文
- 小学开学典礼校长演讲稿集锦五篇
- 学校安全生产月
- 护理的课件教学课件
- 安全文化理念
- 物流经理年度工作总结
- GB/T 26411-2010海水中16种多环芳烃的测定气相色谱-质谱法
- GB/T 10560-2017矿用焊接圆环链用钢
- 8.2 重力势能 课件(共29张PPT)
- 低成本自动化的开展与案例课件
- FMEA-培训教材-汽车fmea培训课件
- 《项目进度管理研究文献综述》
- 信用风险加权资产计量与管理手册课件
- 光伏项目试验报告
- 小学“双减”作业设计:小学数学四年级上册作业设计案例
- 知识产权法(英文) Intellectual Property Right Law课件
- 综合评分法评分表(建设工程)
评论
0/150
提交评论