Документация Engee

EngeeSatellites.SatelliteCNRConfig

Параметры конфигурации отношения несущей к шуму.

Библиотека

EngeeSatellites

Описание

Системный объект EngeeSatellites.SatelliteCNRConfig представляет собой конфигурацию отношения несущая/шум (Carrier-to-Noise Ratio, CNR) со значениями по умолчанию или с заданными значениями.

Синтаксис

Создание

  • cfg = EngeeSatellites.SatelliteCNRConfig() — создает системный объект конфигурации отношения несущая/шум со свойствами, заданными по умолчанию.

  • cfg = EngeeSatellites.SatelliteCNRConfig(Name=Value) — создает системный объект конфигурации отношения несущая/шум с заданными свойствами в виде пары Name=Value, где Name — имя свойства, а Value — соответствующее значение. Можно указать несколько пар «имя-значение», порядок пар не имеет значения. Неуказанные свойства сохраняют свои значения по умолчанию.

    Пример:

    # создание системного объекта конфигурации CNR с мощностью передатчика 20 дБВт
    cfg = SatelliteCNRConfig(TransmitterPower = 20)

Аргументы

Выходные аргументы

# cfg — конфигурация CNR
объект

Details

Объект конфигурации отношения сигнала несущей частоты к шуму.

Свойства

# TransmitterPower — мощность передатчика
10 (по умолчанию) | скаляр

Details

Мощность передатчика, заданная как вещественный скаляр в дБВт.

Типы данных

Float64

# TransmitterSystemLoss — общие потери в системе передатчика
0 (по умолчанию) | скаляр

Details

Общие потери в системе передатчика, заданные как неотрицательный вещественный скаляр в дБ.

Типы данных

Float64

# TransmitterAntennaGain — коэффициент усиления антенны передатчика
10 (по умолчанию) | скаляр

Details

Коэффициент усиления антенны передатчика, заданный как неотрицательный вещественный скаляр в дБи.

Типы данных

Float64

# Distance — расстояние между антенной передатчика и антенной приемника
3786 (по умолчанию) | скаляр

Details

Расстояние между антенной передатчика и антенной приемника, заданное как неотрицательный вещественный скаляр в км.

Типы данных

Float64

# Frequency — частота сигнала
14 (по умолчанию) | скаляр

Details

Частота сигнала, заданная как положительный вещественный скаляр в ГГц.

Типы данных

Float64

# MiscellaneousLoss — различные потери
0 (по умолчанию) | скаляр

Details

Различные потери, заданные как неотрицательный вещественный скаляр в дБ. Основные различные потери включают потерю на поляризацию, помехи и атмосферное затухание.

Типы данных

Float64

# GainToNoiseTemperatureRatio — отношение коэффициента усиления приемника к шумовой температуре
3 (по умолчанию) | скаляр

Details

Отношение коэффициента усиления приемника к шумовой температуре в направлении передающей антенны, заданное как вещественный скаляр в дБ/К.

Типы данных

Float64

# ReceiverSystemLoss — общие потери в системе приемника
0 (по умолчанию) | скаляр

Details

Общие потери в системе приемника, заданные как неотрицательный вещественный скаляр в дБ.

Типы данных

Float64

# BitRate — скорость передачи данных по каналу
10 (по умолчанию) | скаляр

Details

Скорость передачи данных по каналу связи, заданная как положительный вещественный скаляр в Мбит/с.

Типы данных

Float64

# SymbolRate — символьная скорость передачи данных по каналу связи
10 (по умолчанию) | скаляр

Details

Символьная скорость передачи данных по каналу связи, заданная как положительный вещественный скаляр в мс/с.

Типы данных

Float64

# Bandwidth — полоса пропускания сигнала
6 (по умолчанию) | скаляр

Details

Полоса пропускания сигнала, заданная как положительный вещественный скаляр в МГц.

Типы данных

Float64

Методы

Объектные функции

satelliteCNR

Отношение несущей к шуму для заданных параметров бюджета спутниковой связи

Примеры

Создание объекта CNR спутника

Details

Создадим объект отношения несущая/шум (CNR) спутника со свойствами, заданными по умолчанию.

Установим значение полосы пропускания равным 15 МГц, а значение отношение коэффициента усиления к шумовой температуре — 5 дБ/К.

import EngeeSatellites: SatelliteCNRConfig

cfg = SatelliteCNRConfig()
cfg.Bandwidth = 15
cfg.GainToNoiseTemperatureRatio = 5

Выведем свойства объекта конфигурации CNR.

show(cfg)
SatelliteCNRConfig:
    TransmitterPower=10
    TransmitterSystemLoss=0
    TransmitterAntennaGain=10
    Distance=3786
    Frequency=14
    MiscellaneousLoss=0
    GainToNoiseTemperatureRatio=5
    ReceiverSystemLoss=0
    BitRate=10
    SymbolRate=10
    Bandwidth=15

Расчет отношения несущая/шум и энергетического запаса

Details

Вычислим отношение несущая/шум и энергетический запас линии связи для заданных параметров бюджета спутниковой связи.

Создадим объект конфигурации CNR со свойствами, заданными по умолчанию, а затем изменим эти свойства.

import EngeeSatellites: SatelliteCNRConfig

cfg = SatelliteCNRConfig()
cfg.TransmitterPower = 17               # дБВт
cfg.TransmitterSystemLoss = 9           # дБ
cfg.TransmitterAntennaGain = 38         # дБи
cfg.Distance = 40215                    # км
cfg.Frequency = 11                      # ГГц

# В данном случае к прочим потерям относятся, соответственно, потеря
# поляризации, помехи и потери, связанные с неправильным направлением антенны.
polLoss = 3.0103
intLoss = 2
antLoss = 1
cfg.MiscellaneousLoss =  polLoss + intLoss + antLoss # дБ
cfg.GainToNoiseTemperatureRatio = 25                 # дБ/К
cfg.ReceiverSystemLoss = 2                           # дБ
cfg.BitRate = 10                                     # Мбит/с

Выведем свойства объекта конфигурации CNR.

show(cfg)
SatelliteCNRConfig:
    TransmitterPower=17
    TransmitterSystemLoss=9
    TransmitterAntennaGain=38
    Distance=40215
    Frequency=11
    MiscellaneousLoss=6.0103
    GainToNoiseTemperatureRatio=25
    ReceiverSystemLoss=2
    BitRate=10
    SymbolRate=10
    Bandwidth=6

Рассчитаем отношение несущая/шум.

import EngeeSatellites.Functions: satelliteCNR

cn, info = satelliteCNR(cfg)

println("\ncn = ", cn, "\ninfo: ",
                     "\n\tTransmitterEIRP = ", info.TransmitterEIRP,
                     "\n\tFSPL = ", info.FSPL,
                     "\n\tReceivedIsotropicPower = ", info.ReceivedIsotropicPower,
                     "\n\tCarrierToNoiseDensityRatio = ", info.CarrierToNoiseDensityRatio,
                     "\n\tReceivedEbNo = ", info.ReceivedEbNo,
                     "\n\tReceivedEsNo = ", info.ReceivedEsNo)
cn = 18.44395628356213
info:
        TransmitterEIRP = 46
        FSPL = 205.3633983858191
        ReceivedIsotropicPower = -165.3736983858191
        CarrierToNoiseDensityRatio = 86.22546878739857
        ReceivedEbNo = 16.22546878739857
        ReceivedEsNo = 16.22546878739857

Вычислим запас линии связи. Предположим, что требуемое отношение энергии на бит к плотности мощности шума (Eb/No) составляет 10 дБ, а потери при реализации в приемнике — 2 дБ.

reqEbNo = 10
implLoss = 2
margin = info.ReceivedEbNo - reqEbNo - implLoss

println("margin = ", margin)
margin = 4.225468787398569