PiSun Raspberry PI
- PiSun Raspberry PI
- Система координат
- Добавление точек
- Конвертер CNB файлов
- Диаграммы
- Авторизация в сервисах PIDT.NET
- Дополнительные настройки
- Обновление PiSun RPI
- Установка PiSunRPI
- Установка частоты процессора для Raspberry
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 продукта.
PiSunRPI может работать не только с одноплатными компьютерами, но и с полноценными ПК.
Функционал программы:
- Подключение к PiHatel и его настройка.
- Получение данных с PiHatel и их отправка на бесплатный кастер сети pidt.net, либо создание собственного локального кастера.
- Запись статических данных в удобном формате RTCM3.
-
Запись статики в формате CNB.
- Разделение файлов статики по часам для удобства архивации и анализа.
- Вывод различных статусов работы для контроля активности программы.
- Визуализация положения спутников на небосводе с помощью диаграммы в полярных координатах.
-
Настройка K803 для получения сигнала синхронизации времени и меток.
-
Выбор формата для передачи дифференциальных поправок.
- Управление точками.
- Облачная конвертация CNB файлов в формат RINEX.
-
Интеграция системы координат в поток поправок.
Порядок работы:
Установить программу можно вручную, либо с помощью образа. Подробнее об этом вы можете прочитать в статье "Установка PiSunRPI ".
1. Начальные настройки.
Перед началом работы необходимо выбрать тот com порт, который подключен к PiHatel (В названии порта обычно должно быть упоминание AMA0. Если вы подключаете PiGO Lite, то название порта будет USB0).
Connect - кнопка, при нажатии которой программа соединяется с выбранным com портом и пытается настроить устройство на выбранный вами режим работы.
Auto connection - функция автоподключения. Для использования этой функции необходимо установить ползунок Auto connection в активное положение, выбрать устройство к которому будет происходить подключение, а также установить остальные настройки по вашим требованиям. После этого необходимо нажать кнопку Save. Для проверки закройте программу и откройте заново. PiSun должен автоматически вернуться в активное состояние.
RTCM to port - функция для отправки RTCM пакетов в com порт. Список с com портами находится справа от кнопки.
Buzzer - запускает звуковые оповещения во время работы программы.
RTCM interval - устанавливает дискретность вещания поправок RTCM.
RESET - активирует управление пином reset (Обязательно установить в активное состояние при использовании платы PiHatel с Raspberry Pi).
Max files - в поле указывается максимальное количество файлов, которое будет храниться на устройстве. По достижению этого количества, ранее записанные файлы будут автоматически удаляться.
Если вы используете плату PiHatel с Raspberry Pi, обязательно активируйте опцию RESET для обеспечения корректной работы программы!
2. Статусы.
NTRIP - показывает статус работы кастера.
STATIC - показывает статус записи файла.
Lat, lon, Height - показывает текущие координаты, которое вещает устройство.
3. Выбор вещания.
NTRIP Remote - подключается к кастеру сети pidt.net:2101 или другому кастеру по вашему выбору. Если режим будет активирован, но данные для подключения не указаны, система по умолчанию установит соединение с кастером по адресу pidt.net:2101.
Local NTRIP - создаёт локальный кастер. Для соединения с кастером необходимо подключиться к точки доступа PH и ввести пароль/логин (1234). Если рядом с TCP установить галочку, то при выборе Local NTRIP также создается TCP сервер с указанным портом. Поле ввода TCP порта находится справа от кнопки TCP.
TCP Remote - подключение к TCP серверу для передачи поправок.
Hardware Comport - настройка внешних UART портов К803. Более подробно о настройке читайте в статье "Дополнительные настройки".
FTP Server - включает/отключает отправку файлов статики на ваш FTP-сервер. Отправка файлов будет происходить в процессе работы программы.
Local NTRIP|pidt.net:2101 - одновременное вещание на бесплатный кастер сети pidt.net и на локальный кастер.
4. Настройка PPS и Event.
PPS - настройка используется для синхронизации времени между геодезическим приемником и внешним устройством, например, лидаром. В данном случае это позволяет получить точное местоположение съёмки.
Event - эта настройка активирует режим получения событий в модуле K803. При подаче сигнала на пин event в файл cnb попадает метка со временем, в которое этот сигнал пришел.
5. Выбор формата для RTCM.
RTCM 3.0 - упрощённый формат сообщений для передачи поправок, который позволяет уменьшить объём передаваемых данных (используется при ограниченном канале связи или для поддержки старых приемников).
RTCM 3.2 - расширенный формат сообщений, который поддерживает передачу более точных спутниковых измерений, а также все имеющиеся спутниковые группировки.
6. Интеграция системы координат в поток поправок.
Сохранённые системы координат могут быть встроены в поток трансляции поправок. Для этого нажмите на кнопку "Coord System" на главном экране, затем выберите нужную систему координат из списка. После этого рядом с кнопкой "Coord System" появится название выбранной системы. Далее нажмите кнопку "Apply" и выберите желаемую частоту трансляции.
Как добавить системы координат читайте в статье "Система координат".
7. Настройка координат.
Сoords auto - устанавливает ориентировочные координаты, которые могут быть использованы, если точность фиксированных координат не является решающим фактором.
Lat, Lon, Height - поля для ввода координат в wgs84 формате.
Points - установка сохранённых координат.
Координаты прописываются в формате wgs84. Настройка координат должна производиться до нажатия кнопки Connect.
В PiSun RPI доступна функция внесения собственных координат. Подробную инструкцию по данному процессу можно найти в статье "Добавление точек".
9. Сохранение и установка настроек.
Load - загружает последние настройки.
Save - сохраняет текущие настройки.
9. Вывод данных.
Serial - поле, предназначенное для отображения серийного номера устройства.
Sats - отображает количество спутников, которые принимает приемник.
Fix - указывает на текущий статус фиксированного решения.
Console - поле предназначено для вывода уведомлений о текущем состоянии работы программы, а также для отображения некоторых возможных ошибок.
Скачать файлы
После установки соединения, программа автоматически начинает получать данные от приемника и сохраняет их в файл, который находится в разделе Files и имеет название "годмесяцденьминутасекунда.cnb". Файлы статики можно скачать и удалить напрямую с WEB интерфейса PiSunRPI. Полученные данные отправляются в бесплатный NTRIP-кластер pidt.net на порт 2101, либо в локальный кластер, в зависимости от выбора пользователя. На скриншоте красном цветом выделена кнопка для перехода в раздел Files .
Программа обеспечивает легкое и удобное взаимодействие с PiHatel и PiGo Lite, а также предоставляет возможность выбора способа передачи данных и настройки координат. Вы можете получить дополнительную информацию, задать вопросы, а также быть в курсе последних новостей и разработок в официальном Telegram чате PiSUN открытый код для PiGO.
Система координат
В разделе Coords System выполняются операции связанные с созданием и управлением системами координат и их параметрами. Раздел состоит из следующих блоков:
-
Datum - Имя системы координат
-
Source ellipsoid - Исходный эллипсоид
-
Target ellipsoid - Целевой эллипсоид
- ToWGS84 - Пользовательский datum
- Projection - Параметры проекции
-
Advanced Settings - Расширенные настройки
На скриншоте красным цветом выделена кнопка для перехода в раздел Coords System.
Порядок работы:
Импорт системы координат:
Для установки системы координат, переходим в Telegram канал PRJ to QR, в строке сообщения пишем: @findprjbot МСК и выбираем нужную зону. В ответ, бот отправит QR код, содержащий информация о вашей СК и калибровке для расчета высоты. Для импорта системы координат в PiSun, нажмите на иконку, выделенную на скриншоте ниже, и загрузите фото QR кода.
Установка системы координат вручную:
1. Укажите имя системы координат и введите исходный и целевой эллипсоид.
2. Настройте параметры проекции и пользовательский datum.
3. Установите расширенные параметры.
- Plate
- Computation Indicator
- Height Indicator
- Horizontal Helmert
- Vertical Helmert
- Projection Type
4. Нажмите кнопку "Create New", чтобы сохранить вашу систему координат. После сохранения, СК появится на экране. Удалить её можно по нажатию на крестик около неё.
5. Чтобы изменить систему координат, нажмите на иконку выбора и введите новые данные, затем сохраните изменения, нажав на кнопку "Save Changes".
Сохранённые системы координат могут быть встроены в поток трансляции поправок. Для этого нажмите на кнопку "Coord System" на главном экране, затем выберите нужную систему координат из списка. После этого рядом с кнопкой "Coord System" появится название выбранной системы. Далее нажмите кнопку "Apply" и выберите желаемую частоту трансляции.
Добавление точек
Перейдите в меню и нажмите кнопку "GPoints".
Введите свои координаты и название точки в соответствующие поля. Нажмите кнопку "Create New", чтобы сохранить вашу точку.
После сохранения, точка появится на экране. Удалить точку можно по нажатию на крестик около неё.
Чтобы изменить точку, нажмите на иконку выбора и введите новые данные, затем сохраните изменения, нажав на кнопку "Save Changes".
Для синхронизации точек с другими проектами воспользуйтесь кнопкой "sync point", выделена на скриншоте ниже.
Сохраненные точки могут быть использованы в дальнейшем при вещании поправок: нажмите кнопку "Point" на главном экране и выберите нужную точку из списка. Не забудьте перед установкой собственных координат, отключить авто координаты. Ползунок для отключения автоматических координат выделен красным цветом на скриншоте.
Ваши координаты будут автоматически установлены в поля Latitude, Longitude, Height.
Конвертер CNB файлов
Для того чтобы начать работу с конвертором, требуется произвести процедуру авторизации. Инструкцию по этому процессу можно найти в статье "Авторизация".
Откройте вкладку с файлами по кнопке "Files". На скриншоте красным цветом выделена эта кнопка.
Выберите файл для конвертации, нажав на кнопку, выделенную красным цветом. Файлы можно загружать выборочно, либо сразу несколько штук.
Перейдите во вкладку с конвертором по кнопке "Converter CNB" и скачайте сконвертированные файлы RINEX.
Во время процесса конвертации, вы сможете отслеживать статус о текущем состоянии операции. По завершению конвертации, статус изменится на "ready". Далее, для скачивания нажмите на кнопку "download" рядом с файлом.
Обратите внимание! Все ранее сконвертированные файлы будут отображаться на экране, но ссылка на их скачивание активна в течении суток.
Диаграммы
Satellites - при нажатии на кнопку, программа создает новое окно, в котором отображаются спутники в виде полярной диаграммы. На скриншоте кнопка выделена красным цветом.
Авторизация в сервисах PIDT.NET
Откройте вкладку "Login" и введите в соответствующие поля логин и пароль, предоставленные ботом PiDATA User Bot.
Нажмите на кнопку "Login!", чтобы пройти авторизацию.
После этого вы получите код от бота PiDATA User Bot, который нужно будет ввести в соответствующее поле. После успешного завершения процесса авторизации, вы увидите в консоли сообщение "Авторизация прошла успешно!" и ваше имя профиля.
На скриншоте ниже отмечена иконку, предназначенная для выхода из аккаунта.
После прохождения авторизации будет доступна функция конвертации CNB файлов. Как преобразовать CNB файл в формат RINEX с помощью PiSun читайте в статье “Конвертор CNB файлов”.
Дополнительные настройки
Настройки UART портов К803
На главном экране в разделе "Settings" вы можете найти настройку "Hardware Comport".
COM1, СОМ2, СОМ3 - настройка внешних UART портов К803. Включите настройку, установив переключатель напротив COM1, COM2 или COM3. Выберите параметры настройки:
Скорость порта: выберите из списка.
Формат для RTCM: выберите из списка.
GPS, GAL, GLO, BDS : выберите спутниковую группировку (необходимо выбрать хотя бы одну группировку).
RTCM interval: выберите дискретность вещания поправок.
Настройки можно устанавливать выборочно для каждого порта, либо установить одновременно для всех портов.
Обратите внимание! Выбор COM порта зависит от используемого приемника. Если вы используете PiGo Lite, то вы можете настроить только порт COM3 (который подключен к Bluetooth модулю), так как PiSun подключается через порт COM1 (который подключен к USB Type C). Если вы используете PiHatel и подключили его к Raspberry через разъем 40 pin, то вы можете настроить порты COM2 и COM3. Смотрите распиновку PiHatel в статье "Подключение к PiHatel".
Обновление PiSun RPI
Update - кнопка “Update” позволяет обновить приложение до последней версии. На скриншоте красной линией обозначена вкладка, где располагается настройка. Обновление происходит в течении 2-х минут, по окончанию, web интерфейс сам перезапуститься. Во время обновления PiSun будет недоступен. При успешном обновлении под логотипом изменится номер версии. На скриншоте красном цветом выделен номер версии и кнопка для перехода в раздел с обновлением.
Установка PiSunRPI
Установка PiSunRPI вручную
Перед установкой PiSun переведите UART в режим последовательного порта. Выполните следующие шаги:
-
Подключитесь к Raspberry и перейдите в терминал.
-
Перейдите в утилиту для конфигурации Raspberry. Для этого введите команду:
$ sudo raspi-config
-
Выберите пункт меню: Interface Options.
-
Выберите пункт меню: Serial Port.
Затем будет выведен запрос на доступ к shell через последовательный порт. Выберите «Нет» , как показано ниже.
В завершение процесса вам будет предложено включить аппаратный последовательный порт. Выберите «Да».
После применения настроек появится уведомление о том, что изменения успешно применены. Нажмите «ОК», а затем перезагрузите Raspberry. После этой операции плата PiHatel будет без проблем работать через UART Raspberry.
Для установки всех необходимых компонентов при помощи командной строки следует выполнить следующие команды:
sudo apt install git python3 python3-pip python3-venv
git clone https://gitlab.com/piall1/pisun.git
cd pisun
python3 -m venv venv
venv/bin/pip3 install -r requirements.txt
sudo bash ./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 - включить автозагрузку программы
Для запуска программы вручную из терминала, находясь в корне репозитория, выполнить следующую команду:
sudo ./venv/bin/python3 StartPiSunRPI.py
Далее для входа в интерфейс управления необходимо подключиться ПК или мобильным устройством к той же сети, где находится PiSunRPI. Для этого необходимо в браузере указать IP вашей Raspberry Pi или hostname.local.
Образ PiSun RPi
Образ с предустановленным PiSun можно скачать по ссылке Образ PiSun RPi. Протестирован на Raspberry Pi 3-4. Всё что нужно это записать образ и запустить Raspberry.
Для записи образа следует выполнить следующие шаги:
- Установить программу Raspberry Pi Imager.
-
Выбрать устройство (необязательно).
-
Выбрать операционную систему.
Выбрать ОС -> Использовать настраиваемый образ (Use custom) -> Путь к образу (pisun.img.xz) -
Выбрать запоминающее устройство.
-
Настроить параметры.
После выбора ОС и флешки, нажмите кнопку "далее". В окне появится возможность перейти в настройки. Перед записью образа, следует сохранить следующие параметры:
В разделе общие:
Имя хоста: pihatel (имя устройства, можно любое)
Пароль и логин: указать имя пользователя и пароль для входа по SSH (придумайте имя пользователя и пароль, они будут использоваться для доступа к устройству через терминал)
WI-FI: указать логин и пароль для подключения к вашей сети. Устройство может быть подключено по WI-FI или по кабелю Ethernet. Страну WI-FI указывать необязательно.
В разделе службы:
SSH: Аутентификация по паролю.
Далее нажмите кнопку "Записать" и дождитесь окончания процесса, программа уведомит вас, когда флешку можно вытаскивать. Вставьте флеш-накопитель в Raspberry Pi и подключите питание.
Не пугайтесь, первый запуск займет какое-то время (2-5 минут), устройство перезагрузится ещё раз и после этого можно подключаться к интерфейсу управления.
Находясь в одной сети с Raspberry, откройте браузер и впишите следующее HOSTNAME.local (где HOSTNAME это имя устройства, указанное в момент настройки параметров записи образа) или впишите туда IP адрес устройства (можно посмотреть в настройках роутера)
Ознакомиться с возможностями программы можно в статье "PiSun Raspberry PI".
Установка частоты процессора для Raspberry
- Зайти по ssh на raspberry.
- Открыть файл /boot/config.txt в удобном для вас текстовом редакторе. Пример:
sudo nano /boot/config.txt
ВАЖНО! Редактировать файл нужно с правами root. - В конец файла добавить строку arm_freq=800.
- Сохранить файл.
- Чтобы проверить, были ли сохранены внесенные изменения, следует выполнить следующую команду:
cat /boot/config.txt
В выводе должна быть ваша добавленная строка. - Перезагрузить raspberry.
- После перезагрузки, снова зайдите по ssh на raspberry и выполните следующую команду:
sudo cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq
Вы должны увидеть 800000, это означает что вы сделали всё правильно!