Таблица v3 из файлов TLE. Как решить проблемы.
... Все страницы раздела SAT * KSM проекта MY TLE генератор DDE файлов спутникового мониторинга - являются размышлением, направленным на необходимость и обеспечение работоспособности скриптовых сценариев автоматической генерации собственных данных орбит и связей авто настройки программ - для работы в составе единого ПО комплекса отслеживания радио передач спутников - в образовательных и радиолюбительских целях ...
* KSM - kompleks sputnikovogo monitoringa, satellite monitoring complex, частная любительская домашняя наземная станция приёма сигналов космических аппаратов на базе RTL-SDR ...
Подходит время плотнее заняться новой версией спутникового генератора TLE ... Перечитываю статьи в надежде освежить прошлые знания и проанализировать, их - на предмет улучшений ... Сразу же натыкаюсь на копирование TLE файлов для генератора - зачем ? Пусть все лежит на своих местах, по своим папкам ... Копировать можно - сразу, из скрипта и из стандартных директорий хранения (это я - про слияние всех TLE в общий file, для подготовки единой базы данных) ...
Как и ранее - скрипт работает с трех-строчными ТЛЕ исходниками ... База Space-Track - как исправлять отсутствующие нули в первых 10000 тысячах номеров ? ... Еще - надо переработать базу исходных данных satellite и выходную таблицу ... Смысла в анализе активности - я больше не вижу, но не исключаю его использования - для удобства или выбора, как отдельный компонент ... Остается интерес по частоте передачи и типу данных ... Выбор всех требуемых настроек / параметров работы скрипта - производить в одном конфигурационном документе, где можно задать сразу все предпочтения ... Отсюда вытекает следующее умозаключение : чтобы не переназначать переменные настроек - легче сразу скомпоновать преднастроенный набор данных конфигурации со скриптом - и запустить комбинированный document на исполнение ...
Следует ли файл Space-Track 3LE.txt после обработки переименовать в 3LEmod.txt ? Вопрос пока висит в воздухе, хотя, это наименование - логично и понятнее, чем ZZZ ... Еще одно пожелание - не разбивать скрипт на разные исполняемые части, сделать его цельным, с однократным запуском - и до получения окончательного результата ... Предпочтение планируется отдать одно / частотным сателлитам с телеметрией / TLM, маяком / BEACON и их комбинациям с другими типами / режимами работы ... Транспондеры с диапазоном и переносом частот - требуют собственных таблиц / настроек и, возможно, даже - индивидуального специфического приема ...
По причине сокращения избыточных данных таблицы в сторону лаконичности и сохранения места - поля столбцов : COSPAR NSSDC и UPLINK - практически не несут полезной нагрузки, но могут быть оставлены в files / описателях NOTES ... Как было выяснено ранее - новый генератор должен поддерживать документ Radio.his, в котором указаны последние настройки конкретного ИСЗ на частоту ... Document должен быть : либо пустым / либо - прописанным заранее, чтобы при случайном выборе не сохранялась ненужная частота ... Прописанный, заранее, Radio.his - легко восстановить к первоначальному состоянию ... Этот файл требует указание частоты с 6 знаками после запятой (точки / заменителя, применяемого в компьютерном программировании) ...
Итак, отталкиваться нужно - от списка номеров космических аппаратов для мониторинга ... Взять, его - можно двумя путями :
# из таблицы активных КА (два варианта : сбор и анализ частотности номеров из разных источников интернета ; генерация из локальной базы данных на ПК) ...
# с помощью поиска и отсева по заданным признакам из локальной базы данных на ПК ...
Далее, список номеров сверяется со свежими TLE и возникает мотивация к действиям : ...
- Отсутствует в TLE : больше не существует или слишком новый ; номер игнорировать (при наличии - удалить из базы ПК ?) ...
- Отсутствует в локальной базе ПК : необходимо добавить и обновить информацию ...
Получается - замкнутый круг ... Собранные номера активных претендентов, так или иначе, со временем - все-равно попадут в локальную базу компьютера ... База нужна, чтобы хранить номера, названия, частоты, виды и режимы работы спутников - для текущей выборки в пределах нескольких месяцев, пока база потребует серьезного обновления ...
Пожалуй, самый трудный вопрос - формат хранения данных в базе ... Проблема - не в алгоритме обработчика команд, а - в неизвестности количества возможных вариантов конфигураций для satellite, которые придется - как-то предопределить ... Прошлый скрипт мог делать это - построчно, плодя множество files для одного имени сателлита ... В этот раз - хотелось бы уйти в сторону одного документа на ИСЗ и строчной записи вариантов - внутри ... Что, безусловно - усложнит разбор параметров и код скрипта ...
Пора начинать ... Остальные доработки придут на ум - во время действия ... Первоначально - нужен глобальный список всех возможных популярных радиолюбительских рабочих космических аппаратов текущей активности ... Использую номера из последней 18-sat-table-v2 таблицы КА (+199) и обзор спутниковых ресурсов интернета 09-sat-table-prep для подготовки таблицы v1 ... Из источников : AMSAT (+42), DXSummit (+12, плотно сидят на QQ-100), SatNOGS DB (+211), спутниковые листинги JE9PEL (+166), JA0CAW 400 MHz (+45), DK3WN (+161), SAT ресурс FG8OJ (+38) быстренько собрал кластеры активности ... Пока - даже не собираюсь вникать в различия, скрипт подскажет об отсутствующих данных - при формировании локальной базы на компьютере ...
Всего было собрано 874 кандидата ... После отсева дублей - получилось 352 активных спутника ... Самые свежие упоминания включают 266 названий ... Самые популярные, 100% использования : 40903 XW-2A, 40910 XW-2F, 40911 XW-2B, 42017 EO-88 Nayif-1 FUNcube-5, 42759 CAS-4B ZHUHAI-1 02, 42761 CAS-4A ZHUHAI-1 01, 43017 AO-91 Fox-1B RadFxSat, 43137 AO-92 Fox-1D ... Далее - места располагаются, так : 80% - 14 ; 65% - 14 ; 50% - 90 ; 35% - 50 ; 15% - 91 ; еще 86 satellite, вообще - широко не упоминались (специализированные - не радиолюбительские?) ...
Как бы я не хотел уйти от старых наработок - в пользу новых - следует отметить факт их удобного использования, как например : участок кода по удалению дублей среди строк записей - его вообще нужно оформить в отдельный скрипт, как крайне полезную фичу ... Еще один момент, который совсем мне не нравится : сателлиты - запущенные парой, не разделившиеся, прикрепленные к корпусу ракетоносителя и, особенно, когда пара с одним номером - имеет разные частоты радио передач ... Так и тянет сделать приставку -1, -2, -3 - к основному номеру ИСЗ, чтобы понимать, что это - не единственный, его, вариант ... Тогда все переменные его настроек - можно уложить в одну строку ... Такой подход - увеличит, конечно количество файлов базы данных (для 352 - например, до 900) - но, не на тысячи, как сейчас идет их счет ... Одновременно, такой вариант - позволит грузить все переменные в скрипт - за один раз, что уменьшит количество обращений к HDD и скажется на скорости обработки в лучшую сторону ...
... Да ... Озадачившись способом разделения частот и типов строк - я, чуть было, не наделал бесполезной работы, а именно : не проверил составленный список на наличие записей в свежих TLE ... Поэтому : обновил и создал свежий список всех TLE, а затем - написал мини утилиту проверки фактического наличия записей TLE составленному списку активных космических аппаратов ... Понадеялся, на непогрешимость алгоритмов упоминаемости и, вот результат : еще 50 КА можно смело вычеркивать из списка ... Осталось 302 упоминания, всесторонне проверенные с различных сторон и, с которыми можно начинать плотную работу ...
Применяемые ограничения :
# Для удобства настройки - все многочастотные спутники разнесены по частотам ...
# Диапазоны транспондеров - установлены в среднее положение частоты ...
# Если частота неизвестна - установлено временное значение 333.333 , с пометкой, что обеспечивает работу алгоритмов, но не проясняет ситуацию ...
# Пришлось добавить неработоспособные satellite : в связи с их высокой упоминаемостью и, возможно - в целях контроля непредвиденного восстановления их работоспособности (другой причины и необходимости, мне на ум - не пришло) ...
# ...
Проблемы и преимущества перехода на Windows 7 x64.
... Переход на Win7 x64 ... Пытаясь помочь другу - натолкнулся на завирусованный источник ... Из 100000 files примерно 30000 - содержали вирусы различного происхождения ... Антивирусник и компьютер захлебнулись таким потоком и, в результате неаккуратных действий по избавлению от напасти - система слетела ... Хм, не аккуратных действий ... Да там была бойня за право владения ноутбуком ... Мясорубка, с лишением админских привилегий с обеих сторон ... Победил - DEL /F /S /Q ... Он - просто снес часть системы, остальное было делом техники ... Можно было бы отделаться и помягче ... Просто, в пылу схватки - я упустил, что запуск CMD из под админа происходит в системной директории C:\Windows\System32, а не в текущей папке вызова, как обычно ... Системные файлы выжили, но часть драйверов загрузки - канули в небытие ...
Последнее время наблюдалась крайняя нехватка памяти на x32, которая не обслуживает более 3 Гб оперативки ... Лишний гигабайт памяти не помешал бы и, поэтому - было принято не совсем оправданное решение перейти на x64, которая не имеет таких проблем, но имеет разные другие ... Если не принимать во внимание необходимость применения специализированных / x64 версий программ - то, можно сказать, переход прошел почти безболезненно ... Первые встреченные проблемы, которые попортили кровь - это права на владения создателя документов и кодировки в окне сеанса DOS командной строки CMD ... Надеюсь, со временем столкнуться и с другими проблемами / ограничениями ...
... Проблемы безопасности WinXP не затрагивали права владения файловыми данными, так явно, хотя ... Win7 / NTFS в поток файла записывает полномочия и разрешения владельцев, что при смене системы (читай - переустановке) запрещает модификацию собственных files из-под другого (в глазах системы) логина ... Несколько решений весьма сумбурны и требуют сочетательного подхода / действий по восстановлению владения документами ...
# Диск - тоже является своеобразной большой папкой ... Разница в занятом месте, на HDD, между document и directory / каталогом (папкой) - в применении флага указателя ... Для контроллера - это всего лишь последовательность бит / байт, поделенных на нумерованные кластеры / сектора диска ...
# Правой кнопкой мыши / ПКМ на диске, Свойства, вкладка Безопасность - откроет окно владельцев и прав доступа ... Варианты : Все, Система, Администраторы, Пользователи, Прошедшие проверку - относятся к текущей ОС ... Вариант : S-1-5-21-123 набор непонятных цифр (также - с приставкой Неизвестная учетная запись) - указывают прежнего владельца, права которого - теперь в мусорной корзине и недоступны ... Кнопка - Изменить и, в новом окне - нажатием подсветить эту запись и снять все галочки разрешений ... Это удалит прежнего владельца из списка и снимет его разрешения, чтобы не мешали в дальнейшем ... ( ? Удалит из списка вариантов доступа, но / фактически - не удалит запись из ACL / DACL хранилища ? ) ...
# Следующий этап - назначение полномочий новому владельцу, текущему юзеру ... Запомнить букву HDD (или адрес папки), где надо изменить права доступа к редактированию и управлению файлами ... Перегрузиться в безопасный режим с поддержкой командной строки ... Под админом откроется окно DOS командного процессора CMD (с путем запуска из системной папки C:\Windows\System32) ... Указать путь или букву диска для смены цели пути (например, D: и ENTER) ...
# Запустить команду TAKEOWN /F * /R /D Y, что означает : /F - назначить права files новому владельцу / текущему Юзеру, * - для любых / всех имен объектов, /R - рекурсивно, для всех папок и поддиректорий, /D Y - автоматически отвечая на вопрос да, заменить ... И немного подождать ... Ключ /A - для администратора ПК - устанавливать не рекомендую, по причине одной особенности : даже если текущий Юзер - это Админ (наследует политику полного управления компьютером) - по соображениям безопасности он все равно остается Юзером и все главные команды следует запускать из-под админа, ПКМ ...
# Даже после этих операций могут остаться документы с доступом по правам от старого хозяина ... Вообще, операции по переназначению прав компьютерной бумаги - достаточно опасные и, неправильным действием - можно лишить себя доступа к объектам, сделав их бесхозными или ограничив разрешения ... Общий сценарий : сначала сделать себя владельцем (папки, файла), затем назначить полномочия (чтение, запись, выполнение, удаление и прочие) ... В процессе - все полномочия перемешаются так, что их будет не разлепить ...
# ... В общем ... Провозившись несколько часов - настолько все это мне осто 3.14 3 дело, что я перезагрузился в загрузочный диск Hiren's BootCD v15.2 WinXP, в меню утилит восстановления, подменю файловая система - открыл программу NTFS Access v2.2 от Zeus-Software, выбрал диск и указал : установить права полного доступа для всех папок (всего две галочки) ... Через несколько минут все непотребные и ошибочные записи прав были удалены и заменены на : Все и system, после чего пропали иконки с замком, взаимно / конфликтующие установки разрешений - и все files стали доступны, открываться и сохраняться без лишних вопросов ... Ни один документ не мявкнул, что его права нельзя изменять (нет доступа), никаких глюков при загрузке системы с виртуального VHD не было обнаружено - просто сброшены все ограничения на полный доступ чтения / записи и удаления, для HDD, поделенного пополам (System, Data) ... Data, вторая партиция - это просто диск с файлами, на которые любая ОС / создатель пытается налепить свои права ... Я - хозяин наборов цифровых данных и мне просто нужен полный доступ к своей файловой системе жесткого диска, без клизмы и геморроя ...
... Следующий косяк : крякозяблы вместо букв в окне при запуске BAT / CMD скриптов ... Здесь / наоборот - надо идти от обратного ...
- Левый верхний угол окна DOS, свойства, вкладка Шрифт : по умолчанию стоит точечные шрифты ... Переустановка в шрифт Consolas или Lucida Console (дефолтный шрифт для блокнота) - возможно сразу решит отображение букв по русски, при включении кодировки CHCP 1251 (в отличие от 866 по умолчанию) ... Размер шрифта выставить по своим предпочтениям ...
- Иначе, проверить Пуск ... Панель управления ... Часы, язык и регион ... Язык и региональные стандарты ... Вкладка - дополнительно, кнопка Изменить язык системы ... Слева от кнопки указан текущий выбор языка для программ, не поддерживающих Unicode ; изменить на русский ...
- Еще более сложный путь - изменение записей реестра CodePage с c_1252.nls на c_1251, с соответствующей переименовкой файлов в системной директории ... Возможно, будет достаточно и первого варианта ... Может встречаться как на английских, так и на русских локализациях, в зависимости от сборки ...
Возможно, описанные выше, проблемы - относятся только к Win7 x64 и не так заметно на версии x32, но ... Не это самое главное ... Набор скриптов SGS Script v3 - готов, протестирован, но совсем не решает поставленных задач ... Проблема в том, что я сделал ставку на номер сателлита с приставкой / дефисом разновидности, типа 12345-6, которая изначально могла указывать на многочисленный выбор из частот, типов и режимов связи ИСЗ ... Однако - сама идея оказалась недостаточно продуманной, если не сказать, что - глупой ...
# Orbitron не принимает files Notes более 5 знаков в имени ... Почему ? Потому-что он берет их из второй / третьей строчки TLE, где явно указан пятизначный идентификатор космического аппарата, применяемый на сегодняшний день ... Это потянет за собой смежные проблемы ...
# Как поведет себя планировщик SDRSharp RTL-SDR корректора частот DDE, если одновременно сработает несколько триггеров выбора одного КА ? Он ведь - не умеет переключать варианты по очереди и ожидается, что - остановится на последнем выборе ...
# Затем я собрался было покуситься на самое святое - изменить номера спутников в записях TLE в соответствии с применяемым форматом наименований, по очередности ... Теоретически - это возможно сделать, но практически, по указанным выше причинам - бесполезно ... Поясню : вместо 07530-1 (в TLE 1 07530U ... 2 07530 ...) - например, сделать 00005 (1 00005U ... 2 00005 ... ) и так далее, по порядку ... Сделать можно, но работать - не будет, так как сами значения ТЛЕ координат - остануться неизмененными ... Ну и, путаницы, будет - в разы больше ...
# Во время разработки скриптов появились новые идеи еще большего ускорения процедур выборки и генерации документов, но это осталось за бортом версии 3 ... Как-то все наложилось одно на другое, закончившись не слишком удачно ... В любом случае - есть satellite, вида 12345-0, одночастотные, которые не имеют вариантов разных настроек и могут быть легко выделены из общей таблицы, для последующей обработки и мониторинга ... С такими сборками сателлитов - нет никаких проблем ... Их всего 25 единиц, достаточно свежие с 35933 по 44878, выборочно ... Остальные - многовариантные версии 12345-1 ... 12345-9 - могут быть поделены на группы -1, -2, -3 и так далее - и промониторены отдельно, на предмет работоспособности ... Но, выбирать следует - только один из вариантов, иначе последующий - частично затрет предыдущий и приведет к несоответствию настроек ... Выборка не поддается автоматизации и может быть сделана - только руками, что снова не исключает ошибок ... Вся эта ситуация растет оттого, что в середине разработки скриптов я начал осознавать последствия и привел выходные объекты к стандартному / совместимому форматированию, то есть для любых вариантных номеров -1 ... -9 - генерятся стандартные 5-значные идентификаторы ...
# По этим причинам, версия 3, хотя и интересная, и работоспособная - признана промежуточной и не будет опубликована ... Реализация всех функций в одном документе - снова не удалась, как и document единой конфигурации, хотя стал прослеживаться принцип модульности, где каждый модуль отвечает за свои действия ... Такой подход позволяет сделать единое меню / файл, где можно собрать все команды запуска отдельных скриптов воедино, и выбирать нужное в зависимости от поставленной задачи ... Поддержка скриншотов, записи звука и модификация хранителя прошлых выборок частот / Radio.his - не реализованы ... Однако в настройках программы Orbitron обнаружена опция - делать снимок с экрана ... Как она работает и стоит ли заменить стороннее решение на ее использование - еще предстоит выяснить ...
# Таблица ... В версии SatGen / SGS Script v3 сортировка в таблице - не применяется ... Достаточно скопировать таблицу целиком в Excel - и он даст гораздо больше возможностей сортировки и выборки, чем прежде используемая по / колоночная ограниченная сортировка ... В общем, состояние дел, хотя и движется помаленьку, но в целом - остается, как в той прибаутке : по горам, по долам, ну а воз и ныне там ...
2:07 20.03.2020
Раздел sat-ksm : список всех страниц ...