生成波形
中所描述的创建必要对象之后创建配置或系统对象,您可以使用这些对象来生成所需的波形。改变物体参数并绘制波形。
在这些例子的每一部分,你:
创建特定于格式的配置对象或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月。
另请参阅
对象
ccsdsTCConfig
|ccsdsTMWaveformGenerator
|dvbs2WaveformGenerator
|dvbs2xWaveformGenerator
|dvbrcs2WaveformGenerator