Zahlavi

Выберите язык

Знакомство с ПО версии 1.x.x, выбор языка программирования

 

Оригинальный блок управления представляет собой отдельную электронную часть без возможности дистанционного управления. Сейчас мне это кажется непрактичным. Новый блок с Raspberry Pi может обмениваться данными по сети и, следовательно, может управляться программой, расположенной на любом компьютере. Такую программу можно найти прямо в спутниковом ресивере как плагин в Enigma и повернуть тарелку согласно выбранной программе. Однако он также может быть в планшете или мобильном телефоне и использовать это устройство в качестве пульта дистанционного управления. Или это может быть классический ПК или ноутбук, и большой монитор этих устройств может использоваться для четкого графического отображения в различных экспериментах. Например, при поиске экзотических спутников, создании новых предустановок или настроек, наблюдении за спутниками, которые не являются геостационарными, и так далее.

Все эти опции зависят от того, как запрограммировано управляющее программное обеспечение. И здесь я должен упомянуть одну особенность, которая есть в оригинальном устройстве, которую я, конечно, не смогу предоставить. А именно полная функциональность даже через 35 лет. Сегодня мир программного обеспечения - это время стремительных инноваций и обновлений, и трудно предсказать, что произойдет всего через несколько лет. То есть, если сегодняшнее управляющее программное обеспечение будет совместимо с операционными системами завтрашнего дня.

Если бы у меня были амбиции создать устройство, которое будет работать через 35 лет, мне пришлось бы превратить второй Raspberry Pi в блок управления, расположенный в пределах досягаемости оператора, который содержал бы управляющее программное обеспечение без необходимости каких-либо последующих модификаций. Это означает соединение двух частей с помощью отдельного кабеля для передачи данных без подключения к какой-либо компьютерной сети. А это довольно непрактично и ограничительно. Скорее, два устройства будут обмениваться данными через обычную сеть, скорее всего, подключенную к Интернету, поэтому всегда будет необходимо устанавливать обновления безопасности для операционных систем. И поэтому видение полностью автономного устройства нереально.

Если бы я попытался как можно больше устранить последствия изменений в компьютерном программном обеспечении, мне пришлось бы писать свою программу в каком-нибудь долговременном стабильном стандарте программирования. Например, использование C без использования внешних библиотек операционной системы. Можно предположить, что совместимость с такой программой может быть устойчивой в течение относительно длительного времени. К сожалению, я боюсь, что моих знаний недостаточно для такого программирования. Вот почему я должен немного пойти на компромисс в отношении аналогичных функций для начала. На данный момент моя основная цель - сдать весь объект в эксплуатацию. Это самый важный параметр, которому я подчиняю все остальное.

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

По этим причинам я наконец решил не писать отдельной управляющей программы. Вместо этого я буду использовать для управления стандартный веб-браузер. Это гарантирует независимость от платформы, с которой можно управлять позиционером. Raspberry Pi будет иметь веб-сервер, который будет принимать команды от веб-браузера - клиента и будет выполнять все HW в соответствии с этими инструкциями. Из-за необходимости быстрой двусторонней связи между клиентским веб-браузером и мощным серверным приложением я решил использовать язык программирования javascript. Для его интерпретации я выбрал веб-сервер Node.js. С точки зрения программиста-любителя этот подход пока кажется мне наиболее осуществимым.

И в завершение этих размышлений я должен упомянуть самое трудное решение, которое меня ждало. Такой проект определенно заслуживает оригинального названия. После долгих раздумий я, наконец, выбрал имя «SatProwler». Не буду отрицать, что черпал вдохновение в группе AC / DC в их песне Night Prowler.

No comments

Leave your comment

In reply to Some User