Конфигурация и системные object™ Satellite Communications Toolbox инициализируют, сохраняют и проверяют свойства объекта. Эти свойства соответствуют параметрам, определяющим специфичные для стандартов формы сигналов.
После создания различных объектов, описанных здесь, их можно использовать для генерации форм сигнала. Функции панели инструментов инициализируют параметры для передачи и приема сигнала с использованием соответствующих свойств объекта.
В этом примере показано, как создать объект конфигурации Telecommand (TC) Консультативного комитета по системам космических данных (CCSDS). Также показано, как изменить настройки свойств по умолчанию с помощью точечной нотации или переопределить настройки по умолчанию с помощью Name,Value пар при создании объекта.
Создать объект, а затем изменить свойства
Создайте объект конфигурации TC CCSDS с настройками по умолчанию.
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"
Измените значения по умолчанию для определения схемы модуляции BPSK.
cfg.Modulation = "BPSK"cfg =
ccsdsTCConfig with properties:
DataFormat: "CLTU"
ChannelCoding: "BCH"
HasRandomizer: 1
Modulation: "BPSK"
Переопределить значения свойств по умолчанию при создании объекта
Создание объекта конфигурации TC CCSDS с использованием Name,Value пары для задания кодов LDPC с длиной кодового слова 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"
В этом примере показано, как создать объект системы телеметрии (TM) Консультативного комитета по системам космических данных (CCSDS). В нем также показано, как изменить настройки свойств по умолчанию с помощью точечной нотации или переопределить настройки по умолчанию с помощью пар Наименование (Name) и Значение (Value) при создании объекта.
Системный объект ccsdsTMWaveformGenerator поддерживает эти два стандарта CCSDS TM, в зависимости от типа ввода WaveformSource собственность.
Стандарт синхронизации и канального кодирования CCSDS TM (CCSDS 131.0-B-3)
Гибкая расширенная схема кодирования и модуляции CCSDS для высокоскоростного стандарта телеметрии (CCSDS 131.2-B-1)
Стандартом по умолчанию для этого объекта является синхронизация CCSDS TM и канальное кодирование.
Создать объект, а затем изменить свойства
Создайте объект CCSDS TM System с настройками по умолчанию.
tmWaveGen = ccsdsTMWaveformGenerator
tmWaveGen =
ccsdsTMWaveformGenerator with properties:
WaveformSource: "synchronization and channel coding"
HasRandomizer: true
HasASM: true
PCMFormat: "NRZ-L"
Channel coding properties:
ChannelCoding: "RS"
RSMessageLength: 223
RSInterleavingDepth: 1
IsRSMessageShortened: false
Digital modulation and filter properties:
Modulation: "QPSK"
PulseShapingFilter: "root raised cosine"
RolloffFactor: 0.3500
FilterSpanInSymbols: 10
SamplesPerSymbol: 10
Show all properties
Измените значения по умолчанию для определения турбокодов и модуляции QPSK.
tmWaveGen.ChannelCoding = "turbo"; tmWaveGen.Modulation = "QPSK"
tmWaveGen =
ccsdsTMWaveformGenerator with properties:
WaveformSource: "synchronization and channel coding"
HasRandomizer: true
HasASM: true
PCMFormat: "NRZ-L"
Channel coding properties:
ChannelCoding: "turbo"
NumBitsInInformationBlock: 7136
CodeRate: "1/2"
Digital modulation and filter properties:
Modulation: "QPSK"
PulseShapingFilter: "root raised cosine"
RolloffFactor: 0.3500
FilterSpanInSymbols: 10
SamplesPerSymbol: 10
Show all properties
Переопределить значения свойств по умолчанию при создании объекта
Создайте объект CCSDS TM System, используя пары Name, Value, чтобы указать объект для гибкой расширенной схемы кодирования и модуляции для высокоскоростных приложений TM, и указав формат ACM как 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
Digital modulation and filter properties:
PulseShapingFilter: "root raised cosine"
RolloffFactor: 0.3500
FilterSpanInSymbols: 10
SamplesPerSymbol: 10
HasPilots: false
ScramblingCodeNumber: 0
Show all properties
В этом примере показано, как создать объект системы цифрового видеовещания Satellite Second Generation (DVB-S2). В нем также показано, как изменить настройки свойств по умолчанию с помощью точечной нотации или переопределить настройки по умолчанию с помощью пар Наименование (Name) и Значение (Value) при создании объекта.
Для создания объекта DVB-S2 System необходимо использовать MAT-файлы с матрицами четности LDPC. Если MAT-файлы недоступны по пути, загрузите и распакуйте MAT-файлы, введя этот код в командной строке MATLAB.
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'); end addpath('s2xLDPCParityMatrices'); end
Создать объект, а затем изменить свойства
Создайте объект DVB-S2 System с настройками по умолчанию.
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
Измените значения по умолчанию, чтобы указать универсальный поток с несколькими входами и длину поля данных (DFL) для каждого потока.
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
Переопределить значения свойств по умолчанию при создании объекта
Создайте объект DVB-S2 System, используя пары Name, Value для транспортного потока с одним входом с коротким форматом кадра FEC, а также заданную схему модуляции и скорость FEC (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
В этом примере показано, как создать объект цифровой системы спутникового вещания второго поколения (DVB-S2X). В нем также показано, как изменить настройки свойств по умолчанию с помощью точечной нотации или переопределить настройки по умолчанию с помощью пар Наименование (Name) и Значение (Value) при создании объекта.
Для создания объекта DVB-S2X System необходимо использовать MAT-файлы с матрицами четности LDPC. Если MAT-файлы недоступны по пути, загрузите и распакуйте MAT-файлы, введя этот код в командной строке MATLAB.
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'); end addpath('s2xLDPCParityMatrices'); end
Создать объект, а затем изменить свойства
Создайте объект DVB-S2X System с настройками по умолчанию.
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
Измените значения по умолчанию, чтобы указать транспортный поток с несколькими входами с включенным разделением по времени.
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
Переопределить значения свойств по умолчанию при создании объекта
Создайте объект DVB-S2X System, используя пары Name и Value, чтобы задать набор кадров 2 с очень низким отношением сигнал/шум (VL-SNR) и задав схему модуляции и кодовую скорость как 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
[1] Синхронизация TM и канальное кодирование. Рекомендация по стандартам системы космических данных. CCSDS 131.0-B-3. Синяя книга. Выпуск 3. Вашингтон, округ Колумбия: CCSDS, сентябрь 2017 года.
[2] Гибкая расширенная схема кодирования и модуляции для высокоскоростных телеметрических приложений. Рекомендация по стандартам системы космических данных. CCSDS 131.2-B-1. Синяя книга. Выпуск 1. Вашингтон, округ Колумбия: CCSDS, март 2012 года.
ccsdsTCConfig | ccsdsTMWaveformGenerator | dvbs2WaveformGenerator | dvbs2xWaveformGenerator