Рейтинг@Mail.ru

Анализатор TLE (two-line element) и элементов орбит ИСЗ

4 комментарии Приложения
Print Friendly, PDF & Email
Онлайн разборщик файлов TLE – двухстрочного формата, которым кодируются элементы орбит искусственных спутников Земли. Также предлагается программа для атоматической загрузки TLE произвольных космических аппаратов.

1Краткое описание двухстрочного формата TLE

Формат TLE был разработан и внедрён американской системой NORAD для хранения данных об орбитах различных космических аппаратов. Формат TLE в настоящее время используется в NASA и некоторых других организациях, которые используют закодированные данные для определения положения интересующих космических аппаратов (КА). Формат TLE представляет собой двухстрочный буквенно-цифровой набор. Пример закодированных в TLE данных:

METEOR 1-29
1 11251U 79005A   19081.29151034  .00001026  00000-0  29880-4 0  9995
2 11251  97.6714 339.2672 0014582 306.8271  53.1634 15.37873768738404

Здесь в первой строчке приводится название ИСЗ, и эта строка является необязательной. Далее в двух строках закодированы данные об элементах орбиты КА. Данные TLE публикуются для каждого спутника. Кроме того, данные TLE постепенно обновляются, т.к. орбита каждого ИСЗ со временем (на самом деле, достаточно быстро) изменяется. Как правило, данные по орбитам космических аппаратов обновляются и публикуются ежедневно.

TLE является позиционным форматом, где на определённой позиции располагаются заданные параметры. Подробное описание всех полей формата TLE можно найти, например, на Википедии, на celestrak.com или на других сайтах, посвящённых астрономии.

2Расшифровка информации из из two-line element set (TLE) онлайн

Вставив в поле ввода текст TLE и нажав кнопку «Расшифровать TLE», вы получите разбор параметров, закодированных в TLE. Актуальный набор данных TLE для интересующего спутника можно найти, например, на сайте celestrak.com, где они ежедневно обновляются.

Исходный текст TLE:


 

Расшифровка TLE:

Спутник 
Строка 1
Номер ИСЗ 
Классификация 
Год запуска  
Номер запуска в году  
Фрагмент запуска 
Год эпохи  
Эпоха  
Первая производная среднего движения по времени 
Вторая производная среднего движения по времени  
Коэффициент торможения (BSTAR)  
Тип эфемериды (орбитальная модель)  
Номер набора элементов 
Контрольная сумма  
Строка 2
Номер ИСЗ 
Наклонение, i 
Прямое восхождение восходящего узла, Ω 
Эксцентриситет, e  
Аргумент перигея, ω 
Средняя аномалия, ν 
Среднее движение [оборотов в день] 
Номер витка 
Контрольная сумма  

В приложении к статье находится файл в формате *.hta (HTML application) – программа для расшифровки данных TLE, которая запускается на любом компьютере с браузером, поддерживающим JavaScript. Она в точности повторяет функциональность данного онлайн-разборщика формата TLE.

3Программа автоматической загрузки TLE для выбранных спутников

В приложении к статье также можно найти программу, которая позволяет автоматически загружать TLE для заданного набора космических аппаратов.

Программа для загрузки TLE – консольная программа. Данные о том, для каких спутников следует загружать TLE, хранятся в конфигурационном файле программы. При первом запуске программа создаёт образец такого файла.

В первой строке конфигурационного файла содержится адрес веб-страницы API, с которым работает программа. Он расположен на сайте n2yo.com. Следующая строка – ключ, который бесплатно получается при регистрации на указанном сайте. На момент написания статьи бесплатно в месяц можно получать данные 1000 раз. Соответственно, лучше зарегистрироваться на сайте (это бесплатно, никакие личные данные не требуются), получить другой ключ и использовать его, а не тот, который записан в конфигурационном файле.

Далее в файле перечислены в столбец идентификаторы спутников (т.н. NORAD ID). Число идентификаторов в файле не ограничено. Для примера в конфигурации добавлены идентификаторы 25544 (МКС) и 11251 (Метеор 1-29).

Узнать идентификатор NORAD ID интересующего КА можно на множестве сайтов, в том числе на www.n2yo.com.

Когда программа запускается, она по очереди запрашивает данные для каждого указанного спутника, форматирует их в двухстрочном формате TLE и сохраняет в текстовый файл с именем текущая-дата.tle. При этом на консоли можно отслеживать прогресс выполнения данной операции. Полученный файл можно использовать по назначению в различных астрономических программах (таких как Orbitron и других).

Дополнение от 03.2021

На сайте, с которого программа забирает данные TLE, несколько изменился API, и старая версия программы более не работает.

Чтобы получать данные, необходимо скачать обновлённую версию программы (приложена к статье), а в конфигурационном файле вместо https://www.n2yo.com/rest/v1/satellite/ следует написать https://api.n2yo.com/rest/v1/satellite/.

Последнее изменениеПятница, 12 Март 2021 20:28 Прочитано 14953 раз
Теги :

Поблагодарить автора:

Поделиться

Print Friendly, PDF & Email

4 комментарии

  • Александр
    Александр 12.03.2021 19:42 Комментировать

    Здравствуйте.

    При запуске программы в окне консоли выводится сообщение:

    System.Net.WebException: Удаленный сервер возвратил ошибку: (404) Не найден.
    в System.Net.HttpWebRequest.GetResponse()
    в Module1.GetResponseWithTleData(String apiAddr, String apiKey, String satelliteId)
    в Module1.Main()
    Нажмите любую клавишу...

    Соответственно, и не создаётся файл [date].tle. Не могли бы Вы помочь с решением этой проблемы? Используется Windows 10 64bit. В конфиге:

    https://www.n2yo.com/rest/v1/satellite/
    [api-ключ]
    25544

  • aave1
    aave1 12.03.2021 20:25 Комментировать

    Александр, здравствуйте!

    Я проверил, действительно перестали приходить TLE с сайта. Дело в том,
    что на данном сайте несколько изменился API интерфейс доступа к TLE. Я сделал соответствующие изменения в программе и приложил к статье обновлённую версию.

    Спасибо, что сообщили о проблеме!

  • Truf
    Truf 28.01.2023 16:16 Комментировать

    Попробовал для TLE:
    1 28446U 04041A 19002.21559949 -.00000090 00000-0 00000+0 0 9998
    2 28446 0.0198 37.5572 0002596 225.6438 170.9111 1.00271812
    На выходе:
    Эпоха 002.21559949 2.1.2019, 5:10:45.693

    При этом с тем же TLE пакет skyfield выдает:

    ```
    from skyfield.api import EarthSatellite
    from skyfield.api import load
    ts = load.timescale()
    line1 = "1 28446U 04041A 19002.21559949 -.00000090 00000-0 00000+0 0 9998"
    line2 = "2 28446 0.0198 37.5572 0002596 225.6438 170.9111 1.00271812"
    satellite = EarthSatellite(line1, line2, 'ISS (ZARYA)', ts)
    print(satellite)
    ```
    ISS (ZARYA) catalog #28446 epoch 2019-01-02 05:10:28 UTC

    Т.е. на 17 минут меньше. Я так понимаю, что это как-то связано с объектом tl.
    Skyfield пишет:

    When building a satellite, use the arguments ``line1`` and ``line2`` to provide the two data lines from a TLE file as separate strings. Optional ``name`` lets you give a name to the satellite, accessible later through the ``name`` attribute. ``ts`` is a :class:`~skyfield.timelib.Timescale` object, used to generate the ``epoch`` value; if it is not provided, the satellite will use a built in ``Timescale`` object.
    Но если ts не предоставить, результат не меняется.

    С чем может быть связано такое расхождение?

  • aave1
    aave1 28.01.2023 20:26 Комментировать

    Truf,
    кажется в вашем TLE какая-то ошибка. Если вы вставите его в форму выше и нажмёте кнопку "Расшифровать TLE", увидите ошибку контрольной суммы. Если не доверяете моему разборщику, попробуйте например этот: https://sat-tle-parser.netlify.app/
    Он также сообщает об ошибке контрольной суммы. Возможно, дело в некорректном TLE.

Оставить комментарий