Моделирование проекций орбит ИСЗ на поверхность Земли на Python с использованием модели SGP4 и API space-track.org: различия между версиями

Материал из GIS-Lab
Перейти к навигации Перейти к поиску
Нет описания правки
Нет описания правки
Строка 11: Строка 11:
Наиболее распространенной моделью для определения положения спутников на орбите является SGP (Simplified General Perturbations), различные модификации которой используются в оперативной работе по всему миру начиная с 70-х годов. Главная задача модели - вычислить скорость и геоцентрические координаты ИСЗ (X, Y, Z) на заданный момент времени, которые нетрудно пересчитать на поверхность эллипсоида, получив географические координаты проекции положения ИСЗ (широта, долгота). Сама модель достаточно сложна, хотя и сводится к линейным расчётам и удобна для алгоритмизации. Её описание и оригинальный FORTRAN-код можно найти в соответствующих документах [1,2].
Наиболее распространенной моделью для определения положения спутников на орбите является SGP (Simplified General Perturbations), различные модификации которой используются в оперативной работе по всему миру начиная с 70-х годов. Главная задача модели - вычислить скорость и геоцентрические координаты ИСЗ (X, Y, Z) на заданный момент времени, которые нетрудно пересчитать на поверхность эллипсоида, получив географические координаты проекции положения ИСЗ (широта, долгота). Сама модель достаточно сложна, хотя и сводится к линейным расчётам и удобна для алгоритмизации. Её описание и оригинальный FORTRAN-код можно найти в соответствующих документах [1,2].


В качестве входных параметров SGP использует данные телеметрии спутников в формате TLE (two-line element sets).
В качестве входных параметров SGP использует данные телеметрии спутников в формате TLE (two-line element sets): это две линии по 69 символов, описывающие основные метаданные спутника и параметры телеметрии. Содержание первой линии:


{| class="wikitable"
{| class="wikitable"
Строка 45: Строка 45:
| 14 || 69-69  || Контрольная сумма по модулю 10 || 6
| 14 || 69-69  || Контрольная сумма по модулю 10 || 6
|}
|}
Собранный пример: 1 25994U 99068A 16052.07623983 .00001336 00000-0 30635-3 0 9996
Содержание второй линии:
{| class="wikitable"
|-
! Номер !! Положение !! Содержание !! Пример
|-
| 1 || 01-01 || Номер строки || 1
|-
| 2 || 03-07  || Номер спутника в базе данных NORAD || 25994
|-
| 3 || 09-16  || Наклонение в градусах  || 98.1986
|-
| 4 || 18-25  || Долгота восходящего узла в градусах  || 128.0087
|-
| 5 || 27-33 || Эксцентриситет (подразумевается, что число начинается с десятичного разделителя)  || 0001485
|-
| 6 || 35-42  || Аргумент перицентра в градусах || 109.3968
|-
| 7 || 44-51  || Средняя аномалия в градусах  || 250.7393
|-
| 8 || 53-63  || Частота обращения (оборотов в день) (среднее движение) [виток/день]  || 14.57136668
|-
| 9 || 64-68 || Номер витка на момент эпохи  || 86046
|-
| 10 || 69-69 || Контрольная сумма по модулю 10  || 2
|}
Собранный пример: 2 25994 98.1986 128.0087 0001485 109.3968 250.7393 14.57136668860462


== Источники ==
== Источники ==

Версия от 00:33, 20 декабря 2016

Эта страница является черновиком статьи.


Определение положения ИСЗ по орбитальным данным на заданное время по модели SGP4. Автоматизированное получение орбитальных данных с помощью API сервиса space-track.org. Пример реализации на языке Python.

Задачу определения положения того или иного искусственного спутника Земли в заданный момент времени (в прошлом или недалёком будущем) приходится решать для самых разнообразных целей, в том числе связанных с дистанционным зондированием Земли из космоса. Часть данных (например, многие продукты MODIS) распространяется без строгой географической привязки, а лишь с указанием времени непосредственного наблюдения территории для каждой сцены, — и для автоматизации поиска и загрузки таких данных требуется вычислять время пролёта спутника над исследуемыми объектами. Часто возникает и потребность определить время зондирования заданной территории в будущем - чаще всего для проведения подспутниковых наблюдений (в целях верификации, атмосферной коррекции и пр.).

В статье описывается подход к моделированию проекций орбит ИСЗ на поверхность Земли с использованием доступных средств: библиотек языка Python и API сервиса space-track.org.

Входные параметры модели SGP4

Наиболее распространенной моделью для определения положения спутников на орбите является SGP (Simplified General Perturbations), различные модификации которой используются в оперативной работе по всему миру начиная с 70-х годов. Главная задача модели - вычислить скорость и геоцентрические координаты ИСЗ (X, Y, Z) на заданный момент времени, которые нетрудно пересчитать на поверхность эллипсоида, получив географические координаты проекции положения ИСЗ (широта, долгота). Сама модель достаточно сложна, хотя и сводится к линейным расчётам и удобна для алгоритмизации. Её описание и оригинальный FORTRAN-код можно найти в соответствующих документах [1,2].

В качестве входных параметров SGP использует данные телеметрии спутников в формате TLE (two-line element sets): это две линии по 69 символов, описывающие основные метаданные спутника и параметры телеметрии. Содержание первой линии:

Номер Положение Содержание Пример
1 01-01 Номер строки 1
2 03-07 Номер спутника в базе данных NORAD 25994
3 08-08 Классификация (U=Unclassified — не секретный) U
4 10-11 Международное обозначение (последние две цифры года запуска) 99
5 12-14 Международное обозначение (номер запуска в этом году) 068
6 15-17 Международное обозначение (часть запуска) A
7 19-20 Год эпохи (последние две цифры) 16
8 21-32 Время эпохи (целая часть — номер дня в году, дробная — часть дня) 052.07623983
9 34-43 Первая производная от среднего движения (ускорение), деленная на два [виток/день^2] .00001336
10 45-52 Вторая производная от среднего движения, деленная на шесть (подразумевается, что число начинается с десятичного разделителя) [виток/день^3] 00000-0
11 54-61 Коэффициент торможения B* (подразумевается, что число начинается с десятичного разделителя) 30635-3
12 63-63 Изначально — типы эфемерид, сейчас — всегда число 0 0
13 65-68 Номер (версия) элемента 999
14 69-69 Контрольная сумма по модулю 10 6

Собранный пример: 1 25994U 99068A 16052.07623983 .00001336 00000-0 30635-3 0 9996

Содержание второй линии:

Номер Положение Содержание Пример
1 01-01 Номер строки 1
2 03-07 Номер спутника в базе данных NORAD 25994
3 09-16 Наклонение в градусах 98.1986
4 18-25 Долгота восходящего узла в градусах 128.0087
5 27-33 Эксцентриситет (подразумевается, что число начинается с десятичного разделителя) 0001485
6 35-42 Аргумент перицентра в градусах 109.3968
7 44-51 Средняя аномалия в градусах 250.7393
8 53-63 Частота обращения (оборотов в день) (среднее движение) [виток/день] 14.57136668
9 64-68 Номер витка на момент эпохи 86046
10 69-69 Контрольная сумма по модулю 10 2

Собранный пример: 2 25994 98.1986 128.0087 0001485 109.3968 250.7393 14.57136668860462

Источники

1. Felix R. Hoots, Ronald L. Roehrich. SPACETRACK REPORT NO. 3 - Models for Propagation of NORAD Element Sets. December 1980

2. David A. Vallado, Paul Crawford. SGP4 Orbit Determination