使用粗和细补偿补偿频率偏移
正确的相位和频率偏移的QAM信号使用载波同步器。然后为补偿使用正确的载波同步器和粗频率补偿器。
设置参数的例子。
fs = 10000;%符号率(赫兹)sps = 4;每个符号%样本M = 16;%调制顺序k = log2 (M);%每个符号位EbNo = 20;% Eb /不(dB)信噪比= convertSNR (EbNo,“ebno”BitsPerSymbol = k, SamplesPerSymbol = sps);
创建一个星座图对象可视化的影响抵消补偿技术。指定的星座图只显示最后的4000个样本。
constdiagram = comm.ConstellationDiagram (…“ReferenceConstellation”,qammod (0: M - 1 M),…“SamplesPerSymbol”sps,…“SymbolsToDisplaySource”,“属性”,…“SymbolsToDisplay”,4000,…“XLimits”,5 [5],…“YLimits”5 [5]);
介绍400赫兹的频率偏移和相位偏移的30度。
phaseFreqOffset = comm.PhaseFrequencyOffset (…“FrequencyOffset”,400,…“PhaseOffset”30岁的…“SampleRate”fs);
生成随机数据符号和应用16-QAM调制。
data =兰迪([0 m - 1], 10000 1);modSig = qammod(数据,M);
创建一个余弦滤波器对象和滤波器调制信号。
txfilter = comm.RaisedCosineTransmitFilter (…“OutputSamplesPerSymbol”sps,…“获得”、sqrt (sps));txSig = txfilter (modSig);
运用相位和频率偏移量,然后通过AWGN信道传递信号。
freqOffsetSig = phaseFreqOffset (txSig);rxSig = awgn (freqOffsetSig,信噪比);
细频率校正应用于利用载波同步器信号。
fineSync = comm.CarrierSynchronizer (…“DampingFactor”,0.7,…“NormalizedLoopBandwidth”,0.005,…“SamplesPerSymbol”sps,…“调制”,“QAM”);rxData = fineSync (rxSig);
显示过去的4000的星座图符号。
constdiagram (rxData)
即使时间收敛,情节的螺旋性质表明,载波同步器尚未弥补大型频率偏移。400赫兹抵消1%的采样率。
重复这个过程,粗频率补偿器插入前的载波同步器。
创建一个粗频率补偿器来降低频率偏移到一个可管理的水平。
coarseSync = comm.CoarseFrequencyCompensator (…“调制”,“QAM”,…“FrequencyResolution”,1…“SampleRate”fs * sps);
将接收到的信号传递到粗频率补偿器和载波同步器。
syncCoarse = coarseSync (rxSig);rxData = fineSync (syncCoarse);
情节后信号的星座图粗和细频率补偿。现在接收的数据与参考星座。
constdiagram (rxData)