Как связаться с чипом uBlox GPS через последовательный порт, используя python для настройки включения сообщений SFRB? - PullRequest
0 голосов
/ 19 мая 2019

Я пытаюсь записать необработанные данные с помощью GPS-чипа ublox с GPS-движком Antaris 4, подключенным к raspberry pi через последовательное соединение с использованием кабеля последовательного интерфейса к USB. Мне удалось записать необработанные данные с помощью модуля pySerial, однако сообщения SFRB не включены по умолчанию и включены только сообщения RAW.

Я обнаружил, что пользовательские сообщения могут быть отправлены для включения сообщений SFRB, как указано в этой вики https://wiki.openstreetmap.org/wiki/UbloxRAW?fbclid=IwAR0Ijeti-i3dl6IRL303o4MA6r_UMqVzHi3ZZfULKTOgSwfc1hvcP5u7MgQ#ANTARIS4 Я попытался отправить эти шестнадцатеричные сообщения с помощью операторов python:

gps.write(b'!HEX b5 62 09 01 09 00 14 6c 00 00 00 00 00 00 ff 92 f7')

и

gps.write('!HEX b5 62 09 01 09 00 14 6c 00 00 00 00 00 00 ff 92 f7')

Эти строки были добавлены перед оператором try моего кода, показанным здесь. Но мне удалось получить только RAW-сообщения, а не SFRB-сообщения в моем файле test.ubx.

import serial

gps = serial.Serial('/dev/ttyACM0')

out = open('test.ubx','w+')
try:
    while True:
        line = gps.readline()
        out.write(line)
except KeyboardInterrupt:
    out.close()
    print "file closed"
    pass

Я ожидаю файл ubx с сообщениями RAW и SFRB. Это можно проверить, конвертировав файл ubx с помощью rtkconv. Наличие только RAW-сообщений обеспечивает только файл obs во время преобразования, однако, чтобы получить файл nav, мне также нужно регистрировать сообщения SFRB.

...