Skip to main content

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


       Снимок экрана 2023-12-26 200931.png         Снимок экрана 2023-12-26 200214.png              
                                                                                                    PiHatel6Cededb0fd0-da13-438c-87eb-305d20d7142a.png

PiSunRPI может работать не только с одноплатными компьютерами, но и с полноценными ПК.                                      

Функционал программы:
  1. Подключение к PiHatel и его настройка.
  2. Получение данных с PiHatel  и их отправка на бесплатный кастер сети pidt.net, либо создание собственного локального кастера.
  3. Запись статических данных в удобном формате RTCM3.
  4. Запись статики в формате CNB.

  5. Разделение файлов статики по часам для удобства архивации и анализа.
  6. Вывод различных статусов работы для контроля активности программы.
  7. Визуализация положения спутников на небосводе с помощью диаграммы в полярных координатах.
  8. Применение синхронизации времени.

  9. Выбор формата для передачи дифференциальных поправок.

Порядок работы:

1. Установка программы.

Для установки всех необходимых компонентов при помощи командной строки следует выполнить следующие команды:

sudo apt install git
git clone https://gitlab.com/piall1/pisunrpi.git
cd ./pisunrpi/
./install.sh

Следующие команды не обязательны к выполнению! После установки программа автоматически добавится в автозапуск системы и начнет работу.

Полезные команды:

sudo systemctl status pisun_rpi.service  - посмотреть статус работы программы
sudo systemctl restart pisun_rpi.service - перезапустить программу
sudo systemctl stop pisun_rpi.service - остановить выполнение программы
sudo systemctl disable pisun_rpi.service - выключить автозагрузку программы
sudo systemctl enable pisun_rpi.service - включить автозагрузку программы

2. Запись образа на флешку.

Для записи образа следует выполнить следующие шаги:

  1. Установить программу Raspberry Pi Imager.

  2. Выбрать устройство (необязательно).

  3. Выбрать операционную систему.
    Выбрать ОС -> Использовать настраиваемый образ (Use custom) -> Путь к образу (pihatel.img.xz)


    Снимок экрана 2023-12-27 140111.png


  4. Выбрать запоминающее устройство.

  5. Настроить параметры.
    После выбора ОС и флешки, перейдите по кнопке "далее". В окне появится возможность перейти в настройки. 

    Перед записью образа, следует сохранить следующие параметры:


    В разделе общие:
    Имя хоста: pihatel.
    Пароль и логин: указать имя пользователя и пароль для входа по SSH.
    WI-FI: указать логин и пароль для подключения к сети. Устройство должно быть подключено по WI-FI или по кабелю Ethernet. Страну WI-FI указывать необязательно.


    Снимок экрана 2023-12-27 135923.png


    В разделе службы:
    SSH: Аутентификация по паролю.

    Снимок экрана 2023-12-27 135947.png

3. Использование программы.

При установке в ручную:

После перезапуска вашего устройства, программа сама должна запуститься. Для того чтобы запустить старт в ручную, убедитесь, что программа находится не в активном состоянии с помощью команды "статус работы", если программа уже запущена, то необходимо применить команду остановки программы (sudo systemctl stop pisun_rpi.service ), далее используйте команду запуска.

sudo systemctl status pisun_rpi.service - посмотреть статус работы программы

./start.sh

Далее для входа в интерфейс управления необходимо подключиться ПК или мобильным устройством к той же сети, где находится PiSunRPI. Для этого необходимо в браузере указать IP вашей Raspberry Pi.

При установке образа диска:

Чтобы настроить Raspberry для доступа к PiSun RPI, вставьте флэшку с записанным образом в устройство. Raspberry автоматически подключится к Wi-Fi сети. Чтобы открыть веб-интерфейс, подключитесь к той же сети Wi-Fi, что и Raspberry. Введите в адресной строке браузера имя хоста, которое вы указали во время настройки образа (pihatel.local).

4. Выбор  com порт.

Перед началом работы необходимо выбрать тот com порт, который подключен к PiHatel (В названии порта обычно должно быть упоминание AMA0. Если вы подключаете PiGO Lite, то название порта будет  USB0).

5. Соединение с портом.

Connect - кнопка, при нажатии которой программа соединяется с выбранным com портом и пытается настроить устройство на выбранный вами режим работы.

Auto connection - функция автоподключения. При запуске, программа автоматически подключается к устройству с заранее сохраненными параметрами.

6. Настройка координат.

Load - загружает последние сохраненные координаты.

Save - сохраняет текущие координаты (координаты записываются в файл рядом с программой).

Сoords auto - устанавливает ориентировочные координаты, которые могут быть использованы, если точность фиксированных координат не является решающим фактором.

Lat, Lon, Height - поля для ввода координат в wgs84 формате.

7. Выбор вещания.

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. Диаграмма.

Satellites - при нажатии на кнопку, программа создает новое окно, в котором отображаются спутники в виде полярной диаграммы. 

Снимок экрана 2023-12-25 200859.png

9. Настройка PPS и Event.

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

Event - эта настройка активирует режим получения событий в модуле K803. При подаче сигнала на пин event в файл cnb попадает метка со временем, в которое этот сигнал пришел.

10. Выбор RTCM формата.

RTCM 3.0 - упрощённый формат сообщений, который может быть менее эффективным при передаче больших объемов данных.

RTCM 3.2 - новый формат сообщений, который поддерживает дополнительные функции, такие как передача поправок к данным о высоте и точности.

11. Статусы.

NTRIP - показывает статус работы кастера.

STATIC - показывает статус записи файла.

Lat, lon, Height - показывает текущие координаты, которое вещает устройство.

12. Вывод данных.

Serial - поле, предназначенное для отображения серийного номера устройства.

Sats - отображает количество спутников, которые принимает приемник.

Fix - указывает на текущий статус фиксированного решения.

Console - поле предназначено для вывода уведомлений о текущем состоянии работы программы, а также для отображения некоторых возможных ошибок.

Координаты прописываются в формате wgs84. Настройка координат должна производиться до нажатия кнопки Connect.

После установления соединения, программа автоматически начинает получать данные от приемника и сохраняет их в файл, который находится в разделе files и имеет название "годмесяцденьминутасекунда.cnb". Файлы статики можно скачать напрямую с WEB интерфейса PiSunRPI. Полученные данные отправляются в бесплатный NTRIP-кластер pidt.net на порт 2101, либо в локальный кластер, в зависимости от выбора пользователя.

Снимок экрана 2023-12-26 214903.png

Программа обеспечивает легкое и удобное взаимодействие с PiHatel и PiGo Lite, а также предоставляет возможность выбора способа передачи данных и настройки координат. Вы можете получить дополнительную информацию, задать вопросы, а также быть в курсе последних новостей и разработок в официальном Telegram чате PiSUN открытый код для PiGO.