主要内容

生成波形

在创建必要的对象之后,在创建配置或系统对象,您可以使用这些对象来产生所需的波形。改变目标参数并绘制波形。

在这些例子的每一部分,你:

  • 创建特定于格式的配置对象或System对象™。

  • 为波形生成创建信息位列向量的列向量或单元阵列。

  • 生成特定格式的波形并绘制它。

生成CCSDS TC波形

创建空间数据系统咨询委员会(CCSDS)远程命令(TC)配置对象和波形。使用名称,值对以指定传输参数。

cfg = ccsdsTCConfig (“ChannelCoding”“方法”“LDPCCodewordLength”, 512);TFLength = 12;传送帧长度bits = randi([0 1],8*TFLength,1);TC传输帧中的%位波形= ccsdsTCWaveform(比特,cfg);

创建一个dsp。简介系统对象显示所生成的CCSDS TC波形的信号频谱。

范围= dsp.SpectrumAnalyzer;范围。SampleRate = cfg.SamplesPerSymbol * cfg.SymbolRate;范围(波形)

图频谱分析仪包含一个轴和其他类型的uiflowcontainer, uimenu, uitoolbar对象。轴包含一个线型对象。这个对象表示通道1。

生成CCSDS TM波形

创建空间数据系统(CCSDS)遥测(TM)系统对象和波形咨询委员会。

的对象ccsdsTMWaveformGenerator金宝app支持这两个CCSDS TM标准,取决于输入的类型WaveformSource财产。

  • TM同步和信道编码标准(CCSDS 131.0-B-3)

  • 用于高速率遥测标准的灵活高级编码和调制方案(CCSDS 131.2-B-1)

此对象的默认标准是CCSDS TM同步和信道编码。

为CCSDS TM同步和信道编码方案创建System对象和生成波形

tmWaveGen = ccsdsTMWaveformGenerator% CCSDS TM对象具有默认属性
tmWaveGen = ccsdsTMWaveformGenerator with properties: WaveformSource: "同步和信道编码" HasRandomizer: true HasASM: true PCMFormat: "NRZ-L"信道编码属性:ChannelCoding: "RS" rsessaglength: 223 RSInterleavingDepth: 1 isrsmessageshorated:假数字调制和滤波器属性:“QPSK”PulseShapingFilter:“根提升余弦”RolloffFactor: 0.3500 FilterSpanInSymbols: 10 SamplesPerSymbol: 10显示所有属性
bits = randi([0 1], tmWaveGen.NumInputBits,1);%输入信息位波形= tmWaveGen(位);

创建一个dsp。简介系统对象显示所生成的CCSDS TM时域波形的频谱。

BW = 36 e6;%典型卫星信道带宽Fsamp = tmWaveGen.SamplesPerSymbol * BW;= dsp范围。简介(“SampleRate”Fsamp,“AveragingMethod”“指数”);范围(波形)

图频谱分析仪包含一个轴和其他类型的uiflowcontainer, uimenu, uitoolbar对象。轴包含一个线型对象。这个对象表示通道1。

为CCSDS TM创建System对象并生成波形灵活的高级编码和调制方案

对于本例,使用点表示法来指定传输参数。

tmWaveGen = ccsdsTMWaveformGenerator;tmWaveGen。WaveformSource =柔性高级编码和调制;tmWaveGen。ACMFormat = 14;% 16 apsk

计算一个物理层帧中的传输帧数。利用信息位生成波形,数据

NumTFInOnePLFrame = tmWaveGen。MinNumTransferFrames * 16%按照标准的规定,一个PL帧由16个码字组成
NumTFInOnePLFrame = 192
波形= [];%初始化波形为空%生成波形iTF = 1:NumTFInOnePLFrame bits = randi([0 1], tmWaveGen。NumInputBits, 1);波形=[波形;tmWaveGen(比特)];结束

生成DVB-S2波形

这个例子使用带有LDPC奇偶校验矩阵的mat文件。如果路径上没有可用的mat文件,请在MATLAB命令提示符处输入以下代码下载并解压缩mat文件。

如果~ (“s2xLDPCParityMatrices.zip”“文件”) url =“https://ssd.mathworks.com/金宝appsupportfiles/spc/satcom/DVB/s2xLDPCParityMatrices.zip”;websave (“s2xLDPCParityMatrices.zip”url);解压缩(“s2xLDPCParityMatrices.zip”);目录“s2xLDPCParityMatrices”)结束

建立数字视频广播卫星第二代(DVB-S2)系统对象和波形。使用名称,值对以指定传输参数。

s2WaveGen = dvbs2WaveformGenerator (“NumInputStreams”2,“MODCOD”19 [6],“RolloffFactor”, 0.25);disp (s2WaveGen)
dvbs2WaveformGenerator with properties: StreamFormat: "TS" NumInputStreams: 2 FECFrame: "normal" MODCOD: [6 19] DFL: 15928 ScalingMethod: "outer radius as 1" HasPilots: 0 RolloffFactor: 0.2500 FilterSpanInSymbols: 10 SamplesPerSymbol: 4 ISSYI: false显示所有属性

初始化仿真参数。

numFramesPerStream = 1;%每条流生成的PL帧数syncBits = [0 1 0 0 0 1 1]';% TS包的同步字节(47 HEX)pktLen = 1496;% User packet (UP) length不带同步位是1496numPktsPerStream = s2WaveGen.MinNumPackets * numFramesPerStream;%每个流填充数据字段所需的包数

生成每个流的传输流(TS)包。

data =细胞(s2WaveGen.NumInputStreams, 1);我= 1:s2WaveGen。NumInputStreams txRawPkts = randi([0 1],pktLen,numPktsPerStream(i));txPkts = [repmat (syncBits 1 numPktsPerStream(我));txRawPkts];{我}= txPkts数据(,);结束

利用信息位生成DVB-S2时域波形,数据

txWaveform = s2WaveGen(数据);

创建一个dsp。简介系统对象显示所生成的DVB-S2时域波形的信号频谱。

BW = 36 e6;%典型卫星信道带宽Fsym = BW / (1 + s2WaveGen.RolloffFactor);Fsamp = Fsym * s2WaveGen.SamplesPerSymbol;谱= dsp。简介(“SampleRate”, Fsamp);谱(txWaveform);释放(谱);

生成DVB-S2X波形

这个例子使用带有LDPC奇偶校验矩阵的mat文件。如果路径上没有可用的mat文件,请在MATLAB命令提示符处输入以下代码下载并解压缩mat文件。

如果~ (“s2xLDPCParityMatrices.zip”“文件”) url =“https://ssd.mathworks.com/金宝appsupportfiles/spc/satcom/DVB/s2xLDPCParityMatrices.zip”;websave (“s2xLDPCParityMatrices.zip”url);解压缩(“s2xLDPCParityMatrices.zip”);目录“s2xLDPCParityMatrices”)结束

创建一个数字视频广播卫星第二代扩展(DVB-S2X)系统对象和波形。

s2xWaveGen = dvbs2xWaveformGenerator% DVB-S2X对象的默认属性
s2xWaveGen = dvbs2xWaveformGenerator带有属性:StreamFormat: "TS" HasTimeSlicing: false NumInputStreams: 1 PLSDecimalCode: 132 DFL: 18448 PLScramblingIndex: 0 RolloffFactor: 0.3500 FilterSpanInSymbols: 10 SamplesPerSymbol: 4显示所有属性

初始化仿真参数。

numFrames = 3;%每条流生成的PL帧数syncBits = [0 1 0 0 0 1 1]';% TS包的同步字节(47 HEX)pktLen = 1496;% User packet (UP) length不带同步位是1496numPkts = s2xWaveGen.MinNumPackets * numFrames;%每个流填充数据字段所需的包数

生成每个流的传输流(TS)包。

txRawPkts = randi([0 1], pktLen, numPkts); / /将pktLen和numPkts赋值txPkts = [repmat(syncBits, 1, numPkts);data = txPkts (:);

利用信息位生成DVB-S2X时域波形,数据

txWaveform = s2xWaveGen(数据);

参考文献

[1] TM同步和信道编码。空间数据系统标准的建议.冲洗液131.0 b3。蓝色的书。问题3。华盛顿特区:CCSDS, 2017年9月。

[2]高速率遥测应用的灵活高级编码和调制方案。空间数据系统标准的建议.131.2 -b-1冲洗液。蓝色的书。问题1。华盛顿特区:CCSDS, 2012年3月。

另请参阅

||||

相关的话题