dopplerShiftCircularOrbit
Расчет доплеровского смещения на наземной станции, вызванного движением спутника по круговой орбите.
| Библиотека |
|
Синтаксис
Вызов функции
-
shift = dopplerShiftCircularOrbit(el,hs,hg,freq)— вычисляет доплеровское смещение частоты в Гц на наземной станции, вызванное движением спутника по круговой орбите, при заданном угле возвышенияel, высоте спутникаhs, высоте наземной станцииhgи несущей частотой спутникаfreq.Дополнительную информацию см. в разделе Расчет эффекта Доплера.
Функция
dopplerShiftCircularOrbitпредполагает:-
Сферическую форму Земли, неподвижность наземной станции и отсутствие вращения Земли;
-
Постоянную связь между спутником и наземной станцией;
-
Расположение наземной станции на Северном полюсе (положительная ось ) и начало движения спутника с начального угла возвышения
elво втором квадранте плоскости ; -
Движение спутника по круговой орбите по часовой стрелке.
-
Аргументы
Входные аргументы
#
el —
угол возвышения спутника
скаляр | вектор
Details
Угол возвышения спутника в градусах, заданный как вещественный скаляр или вектор. Функция рассматривает каждый угол возвышения как соответствующий отдельному спутнику. Номинальный диапазон углов возвышения составляет от 0 до 90 градусов. Однако эта функция поддерживает любое значение угла возвышения, позволяя расположить спутник в любом месте орбиты.
Например, на следующем рисунке показан случай, когда для входного аргумента el установлено значение [45 135 225]. В этом случае функция предполагает наличие трех независимых спутников:
-
Спутник 1 с углом возвышения ;
-
Спутник 2 с углом возвышения ;
-
Спутник 3 с углом возвышения .
| Типы данных |
|
#
hs —
высота спутника
скаляр
Details
Высота спутника в метрах, заданная как положительный скаляр.
| Типы данных |
|
#
freq —
несущая частота спутника
скаляр
Details
Несущая частота спутника в Гц, заданная как неотрицательный скаляр.
| Типы данных |
|
#
time —
время
скаляр | вектор
Details
Время в секундах, используемое для вычисления расстояния между спутником, находящимся на круговой орбите, и наземной станцией, заданное как вещественный скаляр или вектор.
Отрицательное значение time соответствует движению спутника против часовой стрелки.
Когда вы указываете аргумент time, функция использует входные данные el, hs и hg в качестве начальных значений в 0 секунд.
| Типы данных |
|
Выходные аргументы
#
shift —
доплеровское смещение
скаляр | вектор | матрица
Details
Доплеровское смещение в Гц на наземной станции, вызванное движением спутника по круговой орбите, возвращаемое в виде скаляра, вектора или матрицы.
Когда вы задаете аргумент el как вектор длины NumEL и аргумент time как вектор длины NumTIME, то выходной аргумент shift представляет собой матрицу размера NumEL на NumTIME. Каждая строка shift представляет собой доплеровское смещение для соответствующего угла возвышения.
Доплеровское смещение непрерывно изменяется по мере прохождения спутника над наземной станцией. По мере того как спутник поднимается над горизонтом и приближается к зениту, доплеровское смещение постепенно уменьшается, становясь равным 0 в зените. Когда спутник удаляется от зенита, доплеровское смещение снова увеличивается, но уже в отрицательном направлении, до тех пор, пока доплеровское смещение не достигнет максимальной величины. Для иллюстрации этого поведения см. пример Визуализация изменений доплеровского смещения за один орбитальный период спутника.
| Типы данных |
|
Примеры
Расчет и построение графика доплеровского смещения для изменяющихся углов возвышения
Details
Рассчитаем доплеровское смещение для спутника, движущегося по круговой орбите, а затем построим график зависимости доплеровского смещения от угла возвышения.
Установим высоту спутника равной 10000 км, высоту наземной станции — 120 м и несущую частоту спутника — 20 ГГц.
hs = 10000e3 # m
hg = 120 # m
freq = 20e9 # Hz
Пусть угол возвышения меняется от 0 до 90 градусов.
el = 0:90 # deg
Рассчитаем доплеровское смещение для разных углов возвышения.
import EngeeSatellites.Functions: dopplerShiftCircularOrbit
shift = dopplerShiftCircularOrbit(el, hs, hg, freq)
Построим график зависимости доплеровского смещения от угла возвышения.
plot(el, shift, marker = :x,
title = "Doppler Shift vs Elevation Angle",
xlabel = "Elevation Angle (degrees)",
ylabel = "Doppler Shift (Hz)")
Визуализация изменений доплеровского смещения за один орбитальный период спутника
Details
Визуализируем изменения доплеровского смещения за один орбитальный период спутника.
Установим высоту спутника равной 1500 км, начальный угол возвышения — 45 градусов и несущую частоту спутника — 5 ГГц. Предположим, что высота наземной станции равна 0 м.
hs = 1500e3 # m
el = 45 # deg
freq = 5e9 # Hz
hg = 0 # m
Для заданной высоты спутника 1500 км орбитальный период составляет 6949.518 секунд. Чтобы охватить один орбитальный период, установим максимальный временной интервал равным 6950 секундам.
time = 0:6950 # s
Рассчитаем доплеровское смещение для заданных временных интервалов.
import EngeeSatellites.Functions: dopplerShiftCircularOrbit
shift = dopplerShiftCircularOrbit.(el, hs, hg, freq, time)
Построим график зависимости доплеровского смещения от времени.
plot(time, shift,
title = "Doppler Shift vs Time",
xlabel = "Time (seconds)",
ylabel = "Doppler Shift (Hz)")
Дополнительно
Расчет эффекта Доплера
Details
На этом рисунке изображен спутник, движущийся по круговой орбите по часовой стрелке, с углом возвышения относительно наземной станции на Земле. Наземная станция расположена на Северном полюсе (положительная ось ). Угол поворота спутника, измеренный от центра Земли, равен .
Учитывая, что спутник на рисунке движется в плоскости , вектор положения спутника [X; Y; Z] определяется следующим образом:
где
-
м — радиус Земли;
-
— высота наземной станции;
-
— высота спутника;
-
м3кг−1с−2 — гравитационная постоянная (ньютоновская постоянная тяготения);
-
кг — масса Земли.
Используя вектор положения спутника, вектор скорости определяется следующим образом:
Поскольку функция предполагает, что наземная станция неподвижна, она имеет следующие векторы положения и скорости:
-
Положение наземной станции: ;
-
Скорость наземной станции: .
Чтобы вывести формулу для доплеровского смещения на наземной станции, вызванного движением спутника по круговой орбите, используя положение источника , скорость источника , положение цели и скорость цели , примените следующие уравнения:
-
Единичный вектор от источника к цели равен
где обозначает евклидову норму.
-
Скорость источника в единичном направлении равна
Если угол между и находится в диапазоне от
0до90градусов, то положительно. Положительное значение указывает на то, что источник движется к цели. Отрицательное значение указывает на то, что источник движется от цели. -
Относительная скорость источника и цели в направлении от источника к цели равна
-
Доплеровская частота, наблюдаемая в цели, равна
где — скорость света в м/с.
-
Доплеровское смещение в цели равно