Моделирование проекций орбит ИСЗ на поверхность Земли на Python с использованием модели SGP4 и API space-track.org: различия между версиями
Нет описания правки |
Нет описания правки |
||
Строка 9: | Строка 9: | ||
== Входные параметры модели SGP4 == | == Входные параметры модели SGP4 == | ||
Наиболее распространенной моделью для определения положения спутников на орбите является 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). | |||
{| class="wikitable" | |||
|- | |||
! Номер !! Положение !! Содержание !! Пример | |||
|- | |||
| 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. [http://celestrak.com/NORAD/documentation/spacetrk.pdf Felix R. Hoots, Ronald L. Roehrich. SPACETRACK REPORT NO. 3 - Models for Propagation of NORAD Element Sets. December 1980] | 1. [http://celestrak.com/NORAD/documentation/spacetrk.pdf Felix R. Hoots, Ronald L. Roehrich. SPACETRACK REPORT NO. 3 - Models for Propagation of NORAD Element Sets. December 1980] | ||
2. [http://www.centerforspace.com/downloads/files/pubs/AIAA-2008-6770.pdf David A. Vallado, Paul Crawford. SGP4 Orbit Determination] | 2. [http://www.centerforspace.com/downloads/files/pubs/AIAA-2008-6770.pdf David A. Vallado, Paul Crawford. SGP4 Orbit Determination] |
Версия от 00:28, 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).
Номер | Положение | Содержание | Пример |
---|---|---|---|
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 |
Источники
2. David A. Vallado, Paul Crawford. SGP4 Orbit Determination