主要内容

生成波形

中所描述的创建必要对象之后创建配置或系统对象,您可以使用这些对象来生成所需的波形。改变物体参数并绘制波形。

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

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

  • 创建用于波形生成的信息位的列向量的列向量或单元格数组。

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

生成CCSDS TC波形

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

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

创建频谱分析仪System对象,显示生成的CCSDS TC波形的信号频谱。

scope =光谱分析仪;范围。SampleRate = cfg.SamplesPerSymbol*cfg.SymbolRate;范围(波形)

生成CCSDS TM波形

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

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

  • CCSDS TM同步与信道编码标准

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

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

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

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

创建频谱分析仪System对象,显示生成的CCSDS TM时域波形的频谱。

BW = 36e6;典型卫星频道带宽Fsamp = tmWaveGen.SamplesPerSymbol*BW;范围=光谱分析仪(“SampleRate”Fsamp,“AveragingMethod”“指数”);范围(波形)

为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文件。

如果~ (“dvbs2xLDPCParityMatrices.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 1]';TS报文的% Sync字节(47 HEX)pktLen = 1496;不带同步位的用户包(UP)长度为1496numPktsPerStream = s2WaveGen.MinNumPackets*numFramesPerStream;每个流填充数据字段所需的包数

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

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

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

tx波形= s2WaveGen(数据);

创建一个频谱分析仪System对象,以显示生成的DVB-S2时域波形的信号频谱。

BW = 36e6;典型卫星频道带宽Fsym = BW/(1+s2WaveGen.RolloffFactor);Fsamp = Fsym*s2WaveGen.SamplesPerSymbol;光谱分析仪(“SampleRate”, Fsamp);谱(txWaveform);释放(谱);

生成DVB-S2X波形

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

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

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

s2xwaveegen = 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 1]';TS报文的% Sync字节(47 HEX)pktLen = 1496;不带同步位的用户包(UP)长度为1496numPkts = s2xWaveGen.MinNumPackets*numFrames;每个流填充数据字段所需的包数

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

txRawPkts = randi([0 1], pktLen, numPkts);txPkts = [repmat(syncBits, 1, numPkts);txRawPkts];data = txPkts(:);

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

tx波形= s2xWaveGen(数据);

生成DVB-RCS2波形

创建卫星数字视频广播第二代返回信道(DVB-RCS2)系统对象和波形。使用名称,值对指定传输参数。

wg = dvbrcs2WaveformGenerator(“WaveformID”2,“PreBurstGuardLength”6“SamplesPerSymbol”6);disp (wg)
dvbrcs2WaveformGenerator with properties: TransmissionFormat:“TC-LM”ContentType:“traffic”iscustom波形:false WaveformID: 2 PreBurstGuardLength: 6 PostBurstGuardLength: 0 FilterSpanInSymbols: 10 SamplesPerSymbol: 6使用get显示所有属性

生成一个帧协议数据单元(PDU)。

framePDU = randi([0 1],wg.FramePDULength,1);

生成DVB-RCS2突发样本。

tx波形= wg(framePDU);

参考文献

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

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

另请参阅

对象

功能

相关的话题