ТехСтоп, Екатеринбург, Россия - технологии для работы и развлечений.

Скрипт для файлов TLE орбит спутников.

Разработка скрипта TLE и проблемы.

Изготовив неплохую, на мой взгляд, спутниковую антенну и в попытке опробовать ее - вновь подступился к теме создания специфичного TLE, будучи подкованным предыдущими разработками ... Как я уже предполагал ранее и, чтобы не городить огород с Microsoft Excel - должно быть возможным придумать BAT / CMD скрипт, который непосредственно извлекает строки из суммарного файла всех TLE координат в папке программы Орбитрон и пишет в отдельный файл для заданного спутника ... Иметь свой настроенный / целевой файл TLE координат - это очень удобно и практично ...

Лень возится с пугающей сложностью процедур полу / ручной обработки строк TLE координат из предыдущего опыта - заставила меня взяться за разработку универсального скрипта ... Теперь, забегая вперед, я скажу, что все получилось так, как я хотел, но результат оказался неработоспособным ... Кратко расскажу, как было дело ...

Сначала нужен сборный файл обновленных TLE ... Обновил программы Orbitron ... Как и ранее, собрал скриптом - прочитав файлы TXT в цикле FOR и вывел через перенаправление вывода TYPE в _all.dat ... Это скрипт _01-tle-type.cmd ...

Следующим этапом разработал и отладил скрипт разбора строк _02-tle-min.cmd ... Как только код заработал - на его основе доработал скрипт _02-tle-max.cmd и подставив, в переменные - номера требуемых спутников, вычисленных заранее (из предыдущего файла sat2375.txt - в котором почему-то оказалось всего 22 спутника ...) Обсчитался ... А, в статье на сайте - 23 ... Так и есть, пропустил спутник 43589 ...

Так, как я планирую использовать этот файл многократно - сохранил его с региональной выборкой спутников, как _02-tle-ural-2375.cmd ... Запустил и, вскоре - получил идеальные требуемые файлы, которые третьим скриптом _03-tle-my-combi.cmd объединил в обновленный файл sat2375.txt ... Только при загрузке в Орбитрон файл отказался показывать спутники в окне меню / выбора ... Первый спутник отображается - остальные ни в какую ...

Тогда я вручную скопировал код следующего спутника из оригинала и перезагрузил файл - стало отображаться 2 спутника ... Как же так - все получилось в прошлый раз ? Не понимаю ... Сравнил файлы командой FC и увидел отличия в коде, хотя визуально текст практически не отличается ... Я подумал, что проблема связана с TYPE или ECHO и сделал новый файл, где собрал _all.dat способом COPY / коннектацией ... Заново проделал всю процедуру - снова та же самая проблема ...

Подумав, я поигрался с кодировками DOS и не получил успеха ... Тогда я сравнил скриптовую и оригинальную записи : отличие заключается в количестве пробелов, которые режет цикл, используя пробел в качестве делителя ...

Ошибка скриптов при использовании пробела вы качестве разделителя.

Есть только один способ обойти эту проблему : отделить копирование от разбора строк ... И переназначить делитель токенов по умолчанию на знак =; ... Тогда строка не должна будет изменяться ... Введение дополнительной переменной с механизмом извлечения номера спутника из строки позволило, наконец - уйти от этой проблемы с пробелами, хотя - осложнило код скрипта и увеличило его время работы на 38% ... Но, нет худа без добра ... При переделке скрипта я значительно улучшил его и добавил авто / остановку при нахождении последних искомых данных спутника ...

Всем, кто работает с собственными TLE файлами могу обратить внимание, что нужно крайне деликатно обходится с пробелами, даже в коде скрипта, например :
ECHO %%A > file.txt - в этом случае скрипт сгенерирует лишние пробелы ...
ECHO %%A>file.txt - такая запись кода не дает лишних пробелов, которые, в большинстве случаев - не оказывают никакого негативного влияния на исполнимость кода BAT / CMD, но не в случае TLE ...

Преимущества скрипта TLE и особенности работы.

Широкий функционал работы скриптов предоставляет следующие возможности по созданию собственного TLE файла :

Порядок работы при создании TLE файла.

Шаг 1. Установка скрипта.

Скрипт не привязан к каталогу / папке, описание для примера ...
- В папке программы Орбитрон создайте папку Tle-My
- Скопируйте в нее файлы скрипта из архива и TXT файлы из папки Tle

Как создать TLE файл? Шаг 1 - установка скрипта.

Шаг 2. Слияние групп TLE в общий файл.

Скрипт _01-tle-type.cmd не требует специальной настройки ...
- Его задача - объединить группы в единый файл для возможности поиска элементов орбит
- Копируйте, а не перемещайте TXT файлы - после слияния они будут удалены ...

Как создать TLE файл? Шаг 2 - слияние файлов групп.

Шаг 3. Генерация отдельных TLE файлов спутников.

Скрипты _02-tle-***.cmd требуют указания номеров NORAD искомых спутников ...
- Откройте скрипт ПКМ / правой кнопкой мыши для редактирования ...
- Измените значение переменной SET Sat(?)=0 на номер искомого спутника
- Неиспользуемые строки должны иметь значение =0 ...
- Файл можно сохранить, как ... и указать собственное имя ...
- Запустите скрипт и файлы в папке будут созданы по мере обнаружения элементов орбит спутника ...
- По окончании поиска или окончании просмотра файла _all.dat скрипт автоматически закончит свою работу ...
# _02-tle-min.cmd - скрипт для поиска одиночных файлов ...
# _02-tle-max.cmd - пользовательский скрипт для настройки и поиска группы спутников ...
# _02-tle-ural-2375.cmd - скрипт моей региональной настройки и выборки, Урал, Россия ...

Как создать TLE файл? Шаг 3 - генерация файлов спутников.

Шаг 4. Создание файла TLE для выбранной группы спутников.

Скрипт _03-tle-my-combi.cmd, слияния разрозненных файлов в групповой файл ...
- Можно настроить собственное имя выходного файла ...
- Откройте скрипт ПКМ для редактирования ...
- Измените переменную SET OutFile=tle-my на =собственное имя ...
- Расширение файла уже указано в скрипте ...

Как создать TLE файл? Шаг 4 - генерация выходного файла.

Шаг 5. Подключение своего TLE файла группы спутников в программе.

Файл TLE к программе Орбитрон подключается стандартным образом ...
- Укажите папку генерации и выберите файл ...
- Не рекомендуется перемешивать оригинальные и собственные файлы, во избежание возможных будущих проблем ...

Как создать TLE файл? Шаг 5 - подключение своего TLE файла к программе.

Скачать скрипт обработки TLE файлов.

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

Скачать, RAR архив, 4 кб : sat-tle-my-script-03-2019.rar

13:34 21.03.2019

Поделиться ссылкой :

Быстрый поиск по сайту :


Главная страница сайта.

Меню сайта - главные разделы.

= = = Меню раздела = = =


© techstop-ekb.ru / Екатеринбург / 2019