PiSun Raspberry PI
Открытое программное обеспечение PiSun Raspberry PI позволяет записывать спутниковые измерения в режиме статики, а также поддерживает использование PiGO Lite или шилда PiHatel на одноплатных компьютерах Raspberry Pi 3 или 4, с установленной операционной системой linux.
Программа писалась и тестировалась на операционной системе linux с установленным пакетом для разработки Python 3. Для создания локального кастера в ПО используется библиотека rtklib с использованием утилиты str2str. Программа управляется при помощи веб интерфейса который доступен на 80-ом порту устройства. Исходные файлы программы можно скачать по ссылке PiSun CORS.
В основном PiSunRPI предназначен для работы в совокупности с PiHatel, который имеет аналогичный функционал, что и приемник PiGo Lite. В статье рассмотрим основной функционал этого open source продукта.
PiSun Raspberry PI
PiSunRPI может работать не только с одноплатными компьютерами, но и с полноценными ПК.
Функционал программы:
- Подключение к PiHatel и его настройка.
- Получение данных с PiHatel и их отправка на бесплатный кастер сети pidt.net, либо создание собственного локального кастера.
- Запись статических данных в удобном формате RTCM3.
-
Запись статики в формате CNB.
- Разделение файлов статики по часам для удобства архивации и анализа.
- Вывод различных статусов работы для контроля активности программы.
- Визуализация положения спутников на небосводе с помощью диаграммы в полярных координатах.
-
Применение синхронизации времени.
-
Выбор формата для передачи дифференциальных поправок.
Порядок работы:
1. Установка программы.
Для установки всех необходимых компонентов при помощи командной строки следует выполнить следующие команды:
sudo apt install git python3 python3-pip python3-venvgit clone https://gitlab.com/piall1/pisun.gitcd pisunpython3 -m venv venvvenv/bin/pip3 install -r requirements.txtsudo ./scripts/install.sh
Следующие команды не обязательны к выполнению! После установки программа автоматически добавится в автозапуск системы и начнет работу.
Полезные команды:
sudo systemctl status pisun.service - посмотреть статус работы программыsudo systemctl restart pisun.service - перезапустить программуsudo systemctl stop pisun.service - остановить выполнение программыsudo systemctl disable pisun.service - выключить автозагрузку программыsudo systemctl enable pisun.service - включить автозагрузку программы
2. Запись образа на флешку.
Для записи образа следует выполнить следующие шаги:
Установить программуRaspberry Pi Imager.Выбрать устройство (необязательно).Выбрать операционную систему.Выбрать ОС -> Использовать настраиваемый образ (Use custom) -> Путь к образу (pihatel.img.xz)Выбрать запоминающее устройство.Настроить параметры.После выбора ОС и флешки, перейдите по кнопке "далее". В окне появится возможность перейти в настройки.Перед записью образа, следует сохранить следующие параметры:В разделе общие:Имя хоста:pihatel.Пароль и логин:указать имя пользователя и пароль для входа по SSH.WI-FI:указать логин и пароль для подключения к сети. Устройство должно быть подключенопо WI-FI или по кабелю Ethernet. Страну WI-FI указывать необязательно.В разделе службы:SSH:Аутентификация по паролю.
3. Использование программы.
При установке в ручную:
После перезапуска вашего устройства, программа сама должна запуститься. Для того чтобы запустить старт в ручную, убедитесь, что программа находится не в активном состоянии с помощью команды "статус работы", если программа уже запущена, то необходимо применить команду остановки программы (sudo systemctl stop pisun_rpi.service ), далее используйте команду запуска.
sudo systemctl status pisun_rpi.service - посмотреть статус работы программы
sudo ./venv/bin/python3 StartPiSunRPI.py
Далее для входа в интерфейс управления необходимо подключиться ПК или мобильным устройством к той же сети, где находится PiSunRPI. Для этого необходимо в браузере указать IP вашей Raspberry Pi.
При установке образа:
Чтобы настроить Raspberry для доступа к PiSun RPI, вставьте флэшку с записанным образом в устройство. Raspberry автоматически подключится к Wi-Fi сети. Чтобы открыть веб-интерфейс, подключитесь к той же сети Wi-Fi, что и Raspberry. Введите в адресной строке браузера имя хоста, которое вы указали во время настройки образа (pihatel.local).
4.1. Выбор com порт.
Перед началом работы необходимо выбрать тот com порт, который подключен к PiHatel (В названии порта обычно должно быть упоминание AMA0. Если вы подключаете PiGO Lite, то название порта будет USB0).
5.2. Соединение с портом.
Connect - кнопка, при нажатии которой программа соединяется с выбранным com портом и пытается настроить устройство на выбранный вами режим работы.
Auto connection - функция автоподключения. При запуске, программа автоматически подключается к устройству с заранее сохраненными параметрами. Для использовании этой функции необходимо сохранить параметр Auto connection.
6.3. Настройка координат.
Load - загружает последние сохраненные координаты.
Save - сохраняет текущие координаты (координаты записываются в файл рядом с программой).
Сoords auto - устанавливает ориентировочные координаты, которые могут быть использованы, если точность фиксированных координат не является решающим фактором.
Lat, Lon, Height - поля для ввода координат в wgs84 формате.
7.4. Выбор вещания.
Local NTRIP - создаёт локальный кастер. Для соединения с кастером необходимо подключиться к точки доступа PH и ввести пароль/логин (1234). Если рядом с TCP установить галочку, то при выборе Local NTRIP также создается TCP сервер с указанным портом. Поле ввода TCP порта находится справа от кнопки TCP.
pidt.net:2101 - подключается к кастеру сети pidt.net:2101.
Local NTRIP|pidt.net:2101 - одновременное вещание на бесплатный кастер сети pidt.net и на локальный кастер.
RTCM to port - функция для отправки RTCM пакетов в com порт. Список с com портами находится справа от кнопки RTCM to port.
8.5. Диаграмма.
Satellites - при нажатии на кнопку, программа создает новое окно, в котором отображаются спутники в виде полярной диаграммы.
9.6. Настройка PPS и Event.
PPS - настройка используется для синхронизации времени между геодезическим приемником и внешним устройством, например, камерой. В данном случае это позволяет получить точное местоположение снимка.
Event - эта настройка активирует режим получения событий в модуле K803. При подаче сигнала на пин event в файл cnb попадает метка со временем, в которое этот сигнал пришел.
10.7. Выбор RTCM формата.
RTCM 3.0 - упрощённый формат сообщений, который может быть менее эффективным при передаче больших объемов данных.
RTCM 3.2 - новый формат сообщений, который поддерживает дополнительные функции, такие как передача поправок к данным о высоте и точности.
11.8. Статусы.
NTRIP - показывает статус работы кастера.
STATIC - показывает статус записи файла.
Lat, lon, Height - показывает текущие координаты, которое вещает устройство.
12.9. Вывод данных.
Serial - поле, предназначенное для отображения серийного номера устройства.
Sats - отображает количество спутников, которые принимает приемник.
Fix - указывает на текущий статус фиксированного решения.
Console - поле предназначено для вывода уведомлений о текущем состоянии работы программы, а также для отображения некоторых возможных ошибок.
Координаты прописываются в формате wgs84. Настройка координат должна производиться до нажатия кнопки Connect.
После установления соединения, программа автоматически начинает получать данные от приемника и сохраняет их в файл, который находится в разделе files и имеет название "годмесяцденьминутасекунда.cnb". Файлы статики можно скачать напрямую с WEB интерфейса PiSunRPI. Полученные данные отправляются в бесплатный NTRIP-кластер pidt.net на порт 2101, либо в локальный кластер, в зависимости от выбора пользователя.
Программа обеспечивает легкое и удобное взаимодействие с PiHatel и PiGo Lite, а также предоставляет возможность выбора способа передачи данных и настройки координат. Вы можете получить дополнительную информацию, задать вопросы, а также быть в курсе последних новостей и разработок в официальном Telegram чате PiSUN открытый код для PiGO.