Main Content

Create Configuration or System Objects

卫星通信工具箱configuration and System object™ initialize, store, and validate object properties. These properties correspond to parameters that define the standards-specific waveforms.

After you create the various objects described here, you can use them to generate waveforms. The functions in the toolbox initialize parameter settings for waveform transmission and reception by using the relevant object properties.

Create CCSDS TC Configuration Object

This example shows how to create a Consultative Committee for Space Data Systems (CCSDS) Telecommand (TC) configuration object. It also shows how to change the default property settings by using dot notation or by overriding the default settings by usingName,Valuepairs when creating the object.

Create Object and Then Modify Properties

Create a CCSDS TC configuration object with default settings.

cfg = ccsdsTCConfig
cfg = ccsdsTCConfig with properties: DataFormat: "CLTU" ChannelCoding: "BCH" HasRandomizer: 1 Modulation: "PCM/PSK/PM" PCMFormat: "NRZ-L" ModulationIndex: 0.4000 SubcarrierFrequency: 16000 SymbolRate: 4000 SamplesPerSymbol: 10 Read-only properties: SubcarrierWaveform: "sine"

Modify the defaults to specify for BPSK modulation scheme.

cfg.Modulation ="BPSK"
cfg = ccsdsTCConfig with properties: DataFormat: "CLTU" ChannelCoding: "BCH" HasRandomizer: 1 Modulation: "BPSK"

Override Default Property Values During Object Creation

Create a CCSDS TC configuration object, usingName,Valuepairs to specify LDPC codes with codeword length of 512.

cfg = ccsdsTCConfig("ChannelCoding","LDPC","LDPCCodewordLength",512)
cfg = ccsdsTCConfig with properties: DataFormat: "CLTU" ChannelCoding: "LDPC" LDPCCodewordLength: 512 Modulation: "PCM/PSK/PM" PCMFormat: "NRZ-L" ModulationIndex: 0.4000 SubcarrierFrequency: 16000 SymbolRate: 4000 SamplesPerSymbol: 10 Read-only properties: SubcarrierWaveform: "sine"

Create CCSDS TM Object

This example shows how to create a Consultative Committee for Space Data Systems (CCSDS) Telemetry (TM) System object. It also shows how to change the default property settings by using dot notation or by overriding the default settings by usingName,Valuepairs when creating the object.

The System objectccsdsTMWaveformGenerator金宝app支持这些太瓦o CCSDS TM standards, depending on the type of input toWaveformSourceproperty.

  • CCSDS TM synchronization and channel coding standard (CCSDS 131.0-B-3)

  • CCSDS flexible advanced coding and modulation scheme for high rate telemetry standard (CCSDS 131.2-B-1)

The default standard for this object is CCSDS TM synchronization and channel coding.

Create Object and Then Modify Properties

Create a CCSDS TM System object with default settings.

tmWaveGen = ccsdsTMWaveformGenerator
tmWaveGen = ccsdsTMWaveformGenerator with properties: WaveformSource: "synchronization and channel coding" HasRandomizer: true HasASM: true PCMFormat: "NRZ-L" Channel coding ChannelCoding: "RS" RSMessageLength: 223 RSInterleavingDepth: 1 IsRSMessageShortened: false Digital modulation and filter Modulation: "QPSK" PulseShapingFilter: "root raised cosine" RolloffFactor: 0.3500 FilterSpanInSymbols: 10 SamplesPerSymbol: 10 Show all properties

Modify the defaults to specify for turbo codes and QPSK modulation.

tmWaveGen.ChannelCoding ="turbo"; tmWaveGen.Modulation ="QPSK"
tmWaveGen = ccsdsTMWaveformGenerator with properties: WaveformSource: "synchronization and channel coding" HasRandomizer: true HasASM: true PCMFormat: "NRZ-L" Channel coding ChannelCoding: "turbo" NumBitsInInformationBlock: 7136 CodeRate: "1/2" Digital modulation and filter Modulation: "QPSK" PulseShapingFilter: "root raised cosine" RolloffFactor: 0.3500 FilterSpanInSymbols: 10 SamplesPerSymbol: 10 Show all properties

Override Default Property Values During Object Creation

Create a CCSDS TM System object, usingName,Valuepairs, to specify the object for flexible advanced coding and modulation scheme for high rate TM applications standard, and specifying the ACM format as 9.

tmWaveGen = ccsdsTMWaveformGenerator("WaveformSource","flexible advanced coding and modulation","ACMFormat",9)
tmWaveGen = ccsdsTMWaveformGenerator with properties: WaveformSource: "flexible advanced coding and modulation" ACMFormat: 9 NumBytesInTransferFrame: 223 Channel coding No properties. Digital modulation and filter PulseShapingFilter: "root raised cosine" RolloffFactor: 0.3500 FilterSpanInSymbols: 10 SamplesPerSymbol: 10 HasPilots: false ScramblingCodeNumber: 0 Show all properties

Create DVB-S2 Object

This example shows how to create a Digital Video Broadcasting Satellite Second Generation (DVB-S2) System object. It also shows how to change the default property settings by using dot notation or by overriding the default settings by usingName,Valuepairs when creating the object.

To create a DVB-S2 System object, you must use MAT-files with LDPC parity matrices. If the MAT-files are not available on the path, download and unzip the MAT-files by entering this code at the MATLAB command prompt.

if~exist('dvbs2xLDPCParityMatrices.mat','file')if~exist('s2xLDPCParityMatrices.zip','file') url ='https://ssd.mathworks.com/supportfiles/spc/satcom/DVB/s2xLDPCParityMatrices.zip'; websave('s2xLDPCParityMatrices.zip',url); unzip('s2xLDPCParityMatrices.zip');endaddpath('s2xLDPCParityMatrices');end

Create Object and Then Modify Properties

Create a DVB-S2 System object with default settings.

s2WaveGen = dvbs2WaveformGenerator
s2WaveGen = dvbs2WaveformGenerator with properties: StreamFormat: "TS" NumInputStreams: 1 FECFrame: "normal" MODCOD: 1 DFL: 15928 HasPilots: 0 RolloffFactor: 0.3500 FilterSpanInSymbols: 10 SamplesPerSymbol: 4 Show all properties

Modify the defaults to specify multi-input generic stream and the data field length (DFL) for each stream.

s2WaveGen.StreamFormat ="GS"; s2WaveGen.NumInputStreams = 3; s2WaveGen.DFL = [44500 51387 42960]
s2WaveGen = dvbs2WaveformGenerator with properties: StreamFormat: "GS" NumInputStreams: 3 UPL: 0 FECFrame: "normal" MODCOD: 1 DFL: [44500 51387 42960] HasPilots: 0 RolloffFactor: 0.3500 FilterSpanInSymbols: 10 SamplesPerSymbol: 4

Override Default Property Values During Object Creation

Create a DVB-S2 System object, usingName,Valuepairs for a single-input transport stream with short FEC frame format, and specified modulation scheme and FEC rate (MODCOD).

s2WaveGen = dvbs2WaveformGenerator("FECFrame","short","MODCOD",10)
s2WaveGen = dvbs2WaveformGenerator with properties: StreamFormat: "TS" NumInputStreams: 1 FECFrame: "short" MODCOD: 10 DFL: 15928 HasPilots: 0 RolloffFactor: 0.3500 FilterSpanInSymbols: 10 SamplesPerSymbol: 4 Show all properties

Create a DVB-S2X Object

This example shows how to create a Digital Video Broadcasting Satellite Second Generation extended (DVB-S2X) System object. It also shows how to change the default property settings by using dot notation or by overriding the default settings by using Name,Value pairs when creating the object.

To create a DVB-S2X System object, you must use MAT-files with LDPC parity matrices. If the MAT-files are not available on the path, download and unzip the MAT-files by entering this code at the MATLAB command prompt.

if~exist('dvbs2xLDPCParityMatrices.mat','file')if~exist('s2xLDPCParityMatrices.zip','file') url ='https://ssd.mathworks.com/supportfiles/spc/satcom/DVB/s2xLDPCParityMatrices.zip'; websave('s2xLDPCParityMatrices.zip',url); unzip('s2xLDPCParityMatrices.zip');endaddpath('s2xLDPCParityMatrices');end

Create Object and Then Modify Properties

Create a DVB-S2X System object with default settings.

s2xWaveGen = dvbs2xWaveformGenerator
s2xWaveGen = dvbs2xWaveformGenerator with properties: StreamFormat: "TS" HasTimeSlicing: false NumInputStreams: 1 PLSDecimalCode: 132 DFL: 18448 PLScramblingIndex: 0 RolloffFactor: 0.3500 FilterSpanInSymbols: 10 SamplesPerSymbol: 4 Show all properties

Modify the defaults to specify multi-input transport stream with time slicing enabled.

s2xWaveGen.NumInputStreams = 4; s2xWaveGen.HasTimeSlicing = true
s2xWaveGen = dvbs2xWaveformGenerator with properties: StreamFormat: "TS" HasTimeSlicing: true NumInputStreams: 4 PLSDecimalCode: 132 DFL: 18448 PLScramblingIndex: 0 RolloffFactor: 0.3500 FilterSpanInSymbols: 10 SamplesPerSymbol: 4 ISSYI: false Show all properties

Override Default Property Values During Object Creation

Create a DVB-S2X System object, using Name,Value pairs to specify the very low signal to noise ratio (VL-SNR) frame set 2, and specfying the modulation scheme and code rate as BPSK 1/5.

s2xWaveGen = dvbs2xWaveformGenerator("PLSDecimalCode",131,"CanonicalMODCODName","BPSK 1/5")
s2xWaveGen = dvbs2xWaveformGenerator with properties: StreamFormat: "TS" HasTimeSlicing: false NumInputStreams: 1 PLSDecimalCode: 131 CanonicalMODCODName: "BPSK 1/5" DFL: 18448 PLScramblingIndex: 0 RolloffFactor: 0.3500 FilterSpanInSymbols: 10 SamplesPerSymbol: 4 Show all properties

Create DVB-RCS2 Object

This example shows how to create a Digital Video Broadcasting Second Generation Return Channel over Satellite (DVB-RCS2) System object. It also shows how to change the default property settings by using dot notation or by overriding the default settings by usingName,Valuepairs when creating the object.

Create Object and Then Modify Properties

Create a DVB-RCS2 System object with default settings.

wg = dvbrcs2WaveformGenerator
wg = dvbrcs2WaveformGenerator with properties: TransmissionFormat: "TC-LM" ContentType: "traffic" IsCustomWaveform: false WaveformID: 1 PreBurstGuardLength: 0 PostBurstGuardLength: 0 FilterSpanInSymbols: 10 SamplesPerSymbol: 4 Show all properties

Modify the defaults to specify the transmission format and the burst content type.

wg.TransmissionFormat ="SS-TC-LM"; wg.ContentType ="logon"
wg = dvbrcs2WaveformGenerator with properties: TransmissionFormat: "SS-TC-LM" ContentType: "logon" IsCustomWaveform: false WaveformID: 1 PreBurstGuardLength: 0 PostBurstGuardLength: 0 FilterSpanInSymbols: 10 SamplesPerSymbol: 4 Show all properties

Override Default Property Values During Object Creation

Create a DVB-RCS2 System object, usingName,Valuepairs, to specify the object for a custom waveform with pre burst guard length as 4.

wg = dvbrcs2WaveformGenerator("IsCustomWaveform",true,"PreBurstGuardLength",4)
wg = dvbrcs2WaveformGenerator with properties: TransmissionFormat: "TC-LM" ContentType: "traffic" IsCustomWaveform: true PreBurstGuardLength: 4 PostBurstGuardLength: 0 FilterSpanInSymbols: 10 SamplesPerSymbol: 4 PayloadLengthInBytes: 10 Show all properties

References

[1] TM Synchronization and Channel Coding.Recommendation for Space Data System Standards. CCSDS 131.0-B-3. Blue Book. Issue 3. Washington, D.C.: CCSDS, September 2017.

[2] Flexible Advanced Coding and Modulation Scheme for High Rate Telemetry Applications.Recommendation for Space Data System Standards. CCSDS 131.2-B-1. Blue Book. Issue 1. Washington, D.C.: CCSDS, March 2012.

See Also

||||

Related Topics