Как создать свой TLE файл орбит избранных спутников?

Итак, задача : расчет прохода указал имена спутников для места наблюдения, как теперь создать собственный TLE файл, чтобы иметь легкий доступ к избранным спутникам ? ... О-го ... Как бы - не хотелось создавать его вручную, учитывая, что выбрано около 350 спутников ... Как, там в стихотворении С. В. Михалкова (Как старик корову продавал) ? : ... не выдоишь за день - устанет рука ... Метод копи / пасти вручную - ну, никак не годится ... Особенно, если учесть, что через 7 дней расчеты устареют и все придется делать снова ... Попробую автоматизировать ...

Скрипт был переработан в пользу более нового и лучшего скрипта для работы программных агрегаторов спутникового мониторинга в едином формате ... Последнюю версию таблицы активных спутников и скрипты смотрите в меню / ниже ... Для комплекса спутникового мониторинга, в комплекте - идет весь набор необходимых новейших скриптов ... Информация оставлена для ознакомления с процессом создания собственного ТЛЕ методом проб и ошибок ... Следующая версия скрипт TLE - также была отменена, в пользу более новой и работоспособной версии ... Однако, разработка базируется - именно на этом материале ...

Примечание :
- При создании статьи были допущены грубые ошибки в коде первого скрипта (и, сответственно, последнего) ... Ошибки исправлены, извиняйте ...
- В статье я указал, что Orbitron некачественно сортирует список проходов ... Возможно это было связано с добавлением огромного списка спутников с дублированными записями и сбоя при расчете ... При незначительном количестве спутников (например, 23) такой проблемы не обнаружено ...
- было придумано новое название для собственного ТЛЕ списка спутников : sat2375.txt (23 спутника с углом прохода 75 градусов), что позволяет модифицировать название файла в удобную сторону ...

Обновляю TLE ... Путь : Orbitron\Tle ...
Создать скрипт копирования всех txt / tle в единый документ ...
TYPE *.txt >> _all.dat

Как бы я хотел, чтобы эта строчка кода - работала ... Но этому не бывать ...
во-первых, команда TYPE не работает с подстановочными знаками в FileName ... Это не DEL и не DIR ... Это действие легко может быть реализовано в цикле ...
во-вторых, команда TYPE не работает с пробелами в имени файла ... В этом случае имя заключается в кавычки ...
Правильный код, выглядит, так :
FOR %%I IN (*.txt) DO TYPE "%%I" >> _all.dat
REN _all.dat _all.txt

Используется расширение .dat , чтобы txt не перемешивались ... надо назначить открытие файлов .dat с помощью блокнота - и проблем не будет ...

Примечание : проблемы, конечно же, все-равно остануться ... Ввиду дублирования записей в исходных ТЛЕ и отсутствии проверки на существование файла - в некоторых сгенерированных документах - будут двойные и тройные / одинаковые записи ... При исправлении (если это вообще вам понадобиться ...) обратите внимание, что файл должен заканчиваться переносом строки ... ECHO делает это автоматически ...

Запускаю Orbitron, подключаю _all.txt (программа не увидит _all.dat), делаю расчет ...
Файл расчета можно сохранить, путь : Orbitron\Output ...
Вроде бы все прекрасно, но есть один большой подвох : в строки пишутся только имена спутников ... Некоторые спутники имеют одно имя - и более 10 номеров спутников ... Узнать необходимые можно только в расчете, выбрав спутник (стрелка вправо) и посмотрев информацию ...
Ладно, файл расчета получен, немного отредактировать, убрать заголовки и оставить только строки расчета ...
Проходы отсортированы по имени спутника, а не по времени, что не очень удобно для планирования множественных наблюдений по течению времени ...
Открыть Excel, Данные, Получение внешних данных, Из текста ...
Откроется мастер текстов (импорт), указать формат фиксированной ширины, формат / кодировку текста, например 1251 : Кириллица (Windows) ...
Далее, Шаг 2, цифры в 4 столбце не бывают более 3 знаков до точки ... а в третьем столбце имя спутника может вылезти за границу вертикальной стрелки / ограничителя - мышью передвинуть ее вплотную к 4 столбцу ...

Подготовка данных расчета прохода спутников в программе Orbitron к дальнейшей обработке.

Далее, Шаг 3, формат разбора данных / столбцов - можно оставить общий ...
Импорт данных, куда поместить данные - ткнуть мышью в клетку с координатами 1:A (координаты в окошке изменятся на =$A$1) и нажать ОК ...
Преимущество Excel в том, что его / данные - можно сортировать, как угодно ...

Сортировка прохода спутников по времени в программе Excel.

Как, видно - спутники летят почти каждую минуту, и это - выборка только с углом более 75 градусов, и их значительно больше ...
...
15:46:38 GLOBALSTAR M077 [+]
15:46:46 NOSS 3 (G)
15:47:22 COSMOS 482 DESCENT C
15:47:26 NOAA 11 [-]
15:47:30 NOSS 2-3 (D)
15:47:53 GPS BIIR-11 (PRN 19)
15:49:42 OSCAR 30 [?]
15:55:08 GLOBALSTAR M050 [-]
15:55:30 GLOBALSTAR M076 [+]
15:55:54 MOLNIYA 2-10
...

Для визуального наблюдателя за спутниками - это просто, золотое дно ... Какой интерес представляют спутники в радиолюбительском применении - еще предстоит выяснить ... Однако, продолжим ...

Excel позволяет копировать избранные данные, например, столбец с именами спутников ...
Отсортировать названия спутников по алфавиту ...
Скопировать столбец с именами спутников в _tmp75.dat ; временный файл для расчета 75 градусов ; здесь и далее имена текстовых документов могут быть произвольные - просто / соответственно изменяйте их в CMD / BAT скриптах - так, чтобы они работали ...
Также, я ранее указывал, что мне больше нравится расширение скриптов - CMD, но я не настаиваю ))) ...
В _tmp75.dat имена спутников повторяются - надо удалить дубли ...

Для этого пишем скрипт удаления повторов / дублей в тексте :
Не забывайте, что в режиме отложенного расширения переменной среды ... знак переменной / проценты изменяется на знак восклицания ... позволяя оперировать значением переменных, непосредственно, при вычислении в цикле ...
_tmp75.dat читается построчно и отсеянные, от дублей, строки пишутся в _mysat.dat ...
SET wrd=last
SETLOCAL ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION
FOR /F "tokens=*" %%I IN (_tmp75.dat) DO (
IF /I NOT !wrd!==%%I (ECHO %%I >> _mysat.dat)
SET wrd=%%I
)
ENDLOCAL

Отлично, процесс идет и это не может не радовать ...
Теперь надо разлепить пельмени ...
Я не придумал способа, как копировать 3 строки TLE данных координат спутника напрямую из файла, но можно в цикле вычитать строки 1, 2, 3 - и скопировать их в отдельный документ ... Затем из отдельных ТЛЕ орбит спутников - можно создать свой ТЛЕ ... Однако - по порядку ...

У нас есть _all.dat (или, _all.txt), куда мы уже скопировали координаты орбит всех спутников ... Его и будем использовать для создания отдельных TLE файлов ... Пишем скрипт ...
Счетчики цикла установлены ...
Построчно читается _all.dat
Если это первый проход / строка - по имени спутника создается txt ...
Если это второй или третий проход - тупо копируются 1 и 2 строки координат в этот txt ...
Если счетчик = 4, то обнуление и цикл продолжается заново ...
REN _all.txt _all.dat
SET STR=1
SET FLN=0
SETLOCAL ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION
FOR /F "tokens=1,*" %%I IN (_all.dat) DO (
IF !STR!==4 (SET STR=1)
IF !STR!==1 (SET FLN=%%I %%J.txt)
ECHO %%I %%J >> !FLN!
SET /A STR=!STR!+1
)
ENDLOCAL

Замечательно ... Получилась куча файлов, а именно 1716 штук ... А, дальше? ...
А дальше у меня чето - не заладилось ... Тому виной - несколько причин ...
Когда формируется отчет расчета проходов спутников - некоторые имена обрезаются, например, как ARIRANG-5 (KOMPSAT-5 ... - позже по этому имени нельзя точно указать текстовый ТЛЕ файл соответствующего спутника ...
Когда TLE микрофайлы пишутся на диск, то в следствии особенностей обработки сзади дописываются пробелы - и, это тоже проблема ...
Когда ТЛЕ микрофайлы пишутся на диск, то в следствии особенностей Microsoft Windows - запрещаются к записи имена, содержащие знак вопроса ( ? ) , косой слеш ( / ) - которые присутствуют в имени некоторых спутников ...
Также, в отчете расчета проходов не указывается NORAD / каталожные номера спутников, что создает некую двойственность / неоднозначность восприятия ...
Возможно в последнем скрипте / генераторе надо было сохранять строки в переменные, считывать из третьей строки NORAD номер спутника - и уже по этому номеру писать ТЛЕ микрофайлы на жесткий диск ...
Не знаю ... Я пошел другим путем ... Собрал / скопировал нужные мне файлы в отдельную папку ...
Проверил на дублированные записи внутри текстов и перенос строки ... (Примечание : лучше - заново переписать скрипт разделения координат на отдельные файлы спутников, с защитой от дублирования по существующему имени документа и генерировать имя по 5-ти значному номеру спутника, что будет наиболее правильным) ...
И прототипом первого скрипта / генератора - слил в один текст _mysat.txt sat2375.txt ...
FOR %%I IN (*.txt) DO TYPE "%%I" >> sat2375.dat
REN sat2375.dat sat2375.txt

Пусть и не самым легким путем, н я все-таки получил, что хотел - собственный TLE файл ... Теперь возникает вопрос : что с этим делать ... Нужно ли было отсеивать такое (342) количество спутников ? Как узнать, подходит ли спутник для радио / мониторинга? ... Читать далее на сайте ...

Цикл статей наивного и беспризорного радионаблюдателя, который услышал, как легко ловить сигналы спутников ...

22:28 02.02.2019

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


Популярное : ...

... | ... Найти ... | ... Радио ... | ... Тюнинг ... | ... Торрент ... | ... Компьютер ... | ... Читать ... | ... Погода ... | ... Идея ... | ... Программы ... | ...

TechStop-Ekb.ru : познавательные развлечения, техника, технологии ... На сайте, для работы и соответствия спецификациям - используются ... Протокол HTTPS шифрования для безопасного соединения с сервером и защиты пользовательских данных ... Антивирус DrWeb для превентивной защиты пользователей от интернет угроз и вирусов ... Ресурс входит в рейтинги Рамблер Топ 100 (познавательно-развлекательные сайты) и Mail Top 100 (авто мото информация) ...

Тех Стоп Екб RU (РФ) официальный сайт, популярные темы, погода, новости, обзоры с картинками, бесплатно, актуально, без регистрации ... Смотреть утром, днем, вечером и ночью - круглосуточно онлайн ...

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


© techstop-ekb.ru, 2016++, 2020.