Перейти к содержанию
    

Протокол BINR для общения с GPS/GLONASS

Всем привет. Не знаю где еще можно задать подобный вопрос, поэтому попробую тут.

 

Подключил GPS/GLONASS приемник отечественного производства (но это не важно). Связь с компом через RS-232.

Протокол обмена BINR. Мне нужна лишь дата и время.

 

Согласно протоколу даю запрос на периодическую выдачу времени. В ответ получаю посылку типа:

 

В.16.4 Ответный пакет 72h содержит данные о текущем времени и текущей дате, статистических значениях параметров опорного генератора, отклонении шкалы времени GPS от UTC и имеет вид:

10 72

00 00 00 00 40 0e d0 81 1c 40 (1)

24 02 (2)

......

10 03

1 – время с начала недели, мс;

2 – номер недели по GPS;

3 – тип шкалы времени;

4 – отклонение периода опорного генератора, мс;

5 – текущее отклонение метки времени от истинной шкалы, нс;

6 – отклонение шкалы времени GPS от UTC, с;

7, 8 – не используются.

 

Первые 10 байт - это Текущее время с начала недели, мс,

вторые два байта - это Номер недели GPS от 22.08.1999г по модулю 1024

 

Я совершенно не могу понять, как превратить эти циферки в дату и время. Время с начала недели получается невероятное число, а номер недели вообще загадка.

 

Подскажите, кто понимает этот BINR, как тут что перевести?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вы совершенно зря шифруетесь ;) Например, у нас применяют модули фирмы NAVIS для которых на сайте производителя есть документация. В том числе и по BINR.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если это приемник РИРВа, то все должно работать корректно. Вспомните про плавающую точку. Больше не подскажу - т.к. сам "обратным инжинирингом" в бинарном формате занимался пару лет (да больше) на эту тему. Всё - только за деньги.:)) А что хотите - это ж Глонасс!

Даже премьер Иванову все время говорит: "надо скорей коммерциализировать нашу систему".

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вы совершенно зря шифруетесь wink.gif Например, у нас применяют модули фирмы NAVIS для которых на сайте производителя есть документация. В том числе и по BINR.

 

С днем недели я разобрался, просто забыл что первым идет старший байт. А вот с миллисекундами не вкуриваю пока. Даже в примере из документации все выглядит не так:

00 00 00 00 40 0e d0 81 1c 40

Это же 10 байт, хрен знает что за число.

 

Может я не доглядел где-то?

 

Вспомните про плавающую точку.

 

Быть может можно как-то переключиться из этого режима плавающей точки, если это она?

 

 

Вы совершенно зря шифруетесь wink.gif

Да я не шифруюсь. Думал, протокол-то стандартный...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяюсь к вопросу.

Я использую NAVIOR-24. Получаемые данные не соответвуют структуре ни одного пакета в руководстве BINR.

Пакет помещается в контейнер <DLE>...<DLE><ETX> - 10h...10h03h. Должен. С размером порядка пары сотен байт максимум (пакеты 47h, 48h). Но реально получается, что пакеты от десятков байт до десятков тысяч байт. Причём многократно повторяется пакет 81h, которого вообще нет в руководстве.

10 21 19 09 57 FD D0 2D 43 3F 11 BD 2B FD 7D 71
43 3F 00 C0 8F A9 FB 66 57 03 89 5E 7A C2 41 00
88 24 02 1D B5 39 0D 1A 01 BA 4F 10 2C C6 1C 94
BD 29 41 FB E5 F4 97 95 9B 30 57 3B 3F 2B 77 68
F5 F0 D8 83 FD D1 25 75 2F 16 0C A1 60 08 93 11
86 01 03 4C 18 41 A0 0A 00 0C 60 00 00 00 00 00
10 0D 83 08 9B 30 81 0D 5C 9E FD 0B F6 18 40 41
1A FC 10 49 0A 48 D0 0C A5 00 1C 05 22 E8 1B 89
01 53 14 10 D8 20 65 0A 28 28 A0 D8 1E EC 01 03
2C 50 62 36 37 01 9B 28 10 63 39 2F 05 CA 28 90
43 0C BF 01 0B 16 10 E8 13 3D 02 2C 24 10 20 B0
20 93 80 00 02 2D 02 2C 48 02 CC 91 40 C3 FF 4A
F9 02 6C 91 40 83 FE 23 09 0B 08 98 40 85 04 1A
85 03 0C 98 40 A1 BF 26 47 00 24 02 5D 1B EC 99
3C C0 CB 04 78 FF 0D DD 01 06 8C 20 FA 23 49 00
00 04 F9 FB 24 CE 01 03 8C 90 51 0A 6C 00 00 10
0D FF 10 21 28 DD 6B F9 41 2D 43 3F 7D A7 F1 15
06 71 43 3F 00 00 C5 B4 A4 9D 7D 40 E9 F3 AA 58
68 C0 48 D4 03 07 D1 39 0D 1A 01 BA 4F 50 6E 9A
AB 56 24 9D 05 BF 21 2C AD B2 55 2A D1 FB 46 7B
6A DB 37 96 53 A2 BF E9 71 5D 39 11 10 0D 83 68
2E 31 28 C0 80 0A 08 01 29 06 8C 18 6C C0 00 00
00 00 10 0D 83 08 9B 30 81 BF 5A 9E FD 8B B3 18
40 41 1A FC 10 49 0A 48 D0 0C A5 00 1C 05 22 E8
1B 89 01 53 14 10 D8 20 65 0A 08 2C A0 D8 1E EC
01 03 2C 50 62 36 37 01 B3 28 10 63 39 2F 05 CA
28 90 43 0C BF 01 13 16 10 E8 13 3D 02 2C 24 10
20 B0 20 93 80 00 02 2D 02 2C 48 02 CC 91 40 C3
FF 4A F9 02 6C 91 40 83 FE 23 09 0B 08 98 40 85
04 1A 85 03 0C 98 40 A1 BF 26 47 00 24 02 5D 1B
EC 99 3C C0 CB 04 78 FF 0D DD 01 06 8C 20 FA 23
49 00 00 04 F9 FB 24 CE 01 03 8C 90 51 0A 6C 00
00 10 0D FF 10 21 22 33 DD FC D0 2D 43 3F 9F 39
DA 49 03 71 43 3F 00 00 95 AB 3D 52 F5 03 69 D8
5A 62 D0 00 60 81 05 87 32 3D C3 1A 01 BA 4F 10
53 8F 0C 58 09 4A 37 ED 15 DA 50 27 99 1D 5B FB
45 90 2A F9 14 4D 6F 4F BF 7D 45 D7 39 11 10 0D
83 68 2E 31 28 C0 80 0A 08 01 29 06 8C 18 6C C0
00 00 00 00 10 0D 83 08 9B 30 81 F8 58 9E FD 03
AF 1F 63 90 10 03 10 49 0A 48 D0 0C A5 00 1C 05
22 E8 1B 89 01 53 14 10 D8 20 65 0A 08 2C A0 D8
1E EC 01 03 2C 50 62 36 37 01 BB 2C 10 63 39 2F
05 CA 28 90 43 0C BF 01 0B 16 10 E8 13 3D 02 2C
24 10 20 B0 20 93 80 00 02 2D 02 2C 48 02 CC 91
40 C3 FF 4A F9 02 4C 99 40 83 FE 23 09 0B 08 98
40 85 04 1A 85 03 0C 98 40 A1 BF 26 47 00 23 09
BA 6C D8 32 3C C0 CB 04 78 FF 0D DD 01 06 8C 20
FA 23 49 00 00 04 F9 FB 24 CE 01 03 8C 90 51 0A
6C 00 00 10 0D FF 10 21 0B D1 6D 06 D1 4B E8 3F
5F CC 39 31 81 71 43 3F 00 40 99 EB 84 2F 20 03
C9 DF 53 58 68 C0 D8 27 07 1D 8A 7B 6F 9E 43 90
D7 02 2D 3B 5A 68 15 60 96 74 BF 79 13 C8 EF 38
99 30 B6 16 9F 23 64 7C 81 50 73 FD 9B 45 0C 2F
16 0C A1 60 08 93 11 86 01 03 4C 18 41 E0 0A 00
0C 60 00 00 00 00 00 10 0D 83 08 DB 20 81 26 AE
E6 26 D9 DE 41 90 10 03 10 49 0A 48 D0 0C A5 00
1B 01 11 FA 1B 89 01 53 14 10 D8 20 65 0A E8 2C
A0 D8 1E EC 01 03 2C 50 62 36 37 01 B3 28 10 63
39 2F 05 C2 2C 90 43 0C BF 01 0B 16 10 E8 13 3D
02 2C 24 10 20 B0 20 93 80 00 02 2D 02 2C 48 02
CC 91 40 C3 FF 4A F9 02 6C 91 40 83 FE 23 09 0B
08 98 40 85 04 1A 85 03 0C 98 40 A1 BF 26 47 00
24 02 5D 1B EC 99 3C C0 CB 04 78 FF 0D DD 01 06
8C 20 FA 23 49 00 00 04 F9 FB 24 CE 01 03 8C 90
51 0A 6C 00 00 10 0D FF 10 21 7F F5 75 82 08 28
BD 69 F4 3F 8F C1 6E 85 02 71 43 3F 00 40 29 7A
24 24 99 03 69 99 5A B0 D0 80 60 CF 08 1D AF CF
C3 1A 01 BA 4F 10 7B 90 19 38 35 33 AF DB 06 8D
DE BB 5F 8A 60 6D FD 63 09 CC 3C 1E 7B E1 A1 BF
35 CA EB 2F 16 0C A1 60 08 93 11 86 01 03 4C 18
41 E0 0A 00 0C 60 00 00 00 00 00 10 0D 83 08 DB
20 81 52 E5 65 3F 83 2D 2D 04 09 A1 E0 10 49 0A
48 D0 0C A5 00 1B 01 11 FA 1B 89 01 53 14 10 D8
20 65 0A E8 2C A0 D8 1E EC 01 03 2C 50 62 36 37
01 C3 2C 10 63 39 2F 05 D2 28 90 43 0C BF 01 0B
16 10 E8 13 3D 02 2C 24 10 20 B0 20 93 80 00 02
2D 02 2C 48 02 CC 91 40 C3 FF 4A F9 02 6C 91 40
83 FE 23 09 0B 08 98 40 85 04 1A 85 03 0C 98 40
A1 BF 26 47 00 24 02 5D 1B EC 99 3C C0 CB 04 78
FF 0D DD 01 06 8C 20 FA 23 49 00 00 04 F9 FB 24
CE 01 03 8C 90 51 0A 6C 00 00 10 0D FF 10 21 93
3B 6D 71 14 6F 1A 7D 26 9A 20 7F 38 E0 71 43 3F
00 C0 07 99 C2 EF E4 03 09 D1 7D C5 41 00 C0 80
29 3B C8 DF DE 78 43 20 D7 02 E1 35 9D 55 AE D6
37 4A B6 D0 A1 56 8A EA CD 8B FB 65 25 D6 3B B7
AF 86 E5 BF 7D C6 D7 39 11 10 0D 83 68 2E 31 28
C0 80 0A 08 05 0A 00 0C 60 00 00 00 00 00 10 0D
83 08 DB 20 81 F8 E4 99 3F E5 1D 2D 04 09 A1 E0
10 49 0A 48 D0 0C A5 00 1A 05 22 E8 1B 89 01 53
14 10 D8 20 65 0A A8 28 A0 D8 1E EC 01 03 2C 50
62 36 37 01 CB 28 10 63 39 2F 05 C2 2C 90 43 0C
BF 01 0B 16 10 E8 13 3D 02 2C 24 10 20 B0 20 93
80 00 02 2D 02 2C 48 02 CC 91 40 C3 FF 4A F9 02
4C 99 40 83 FE 23 09 0B 08 98 40 85 04 1A 85 03
0C 98 40 A1 BF 26 47 00 24 02 5D 1B EC 99 3C C0
CB 04 78 FF 0D DD 01 06 8C 20 FA 23 49 00 00 04
F9 FB 24 CE 01 03 8C 90 51 0A 6C 00 00 10 0D FF

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В свое время для работы с модулем ГПС/ГЛОНАС от РИРВ написал утилиту под win для настройки этого модуля.

Необходимо было также принимать время и синхроимпульс 1Гц. Так чтобы модуль не ср..л в порт отключал всякие ненужные пакеты, которые он шлет по умолчанию.

Если кому необходима тулза могу намылить.

 

Опс, темка то старая, но про тулзу если нужна, то готов.

Изменено пользователем Vasen

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Тема хоть и старая, но актуальная.

Вот! как раз эти ненужные пакеты и надо отключить. КАК это сделать??

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Тема хоть и старая, но актуальная.

Вот! как раз эти ненужные пакеты и надо отключить. КАК это сделать??

 

Читайте протокол - там есть команды конфигурирования набора выдаваемых сообщений. Галочки поставите в битиках.....

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Читайте протокол - там есть команды конфигурирования набора выдаваемых сообщений. Галочки поставите в битиках.....

У меня вот это руководство к BINR'у. В нём нет информации о конфигурировании набора выдаваемых сообщений.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Согласен, нет в этом файле описания команды установки набора сообщений.

Если предположить, что там находится СН-4702, то по их документации BINR у них одинаковые и, следвательно ситуация "as is"

Если предположить, что там "внутре неонка", то есть NV08 бла-бла, то на них нет официальной инфы по BINR - см предыдущий результат ....

 

К модулю прилагается программа управления - есть ли там выбор набора сообщений?

Если да - "подслушайте", если нет - "as is"

 

А официально авторам вопрос не задавали? Пусть за дитё ответят.

 

Ну, на этом - всё.

 

Простите за вопрос - а н..., то есть зачем Вам это чудо? Потому что в коробочке и по USB? Ну, с USB вы и сами за 5 коп при помощи FTD превратите S1722GF (к примеру) в такой же (а может и лучше) приёмник.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

К модулю прилагается программа управления - есть ли там выбор набора сообщений?
От производителя программ даже две.

- Storegis ( http://nvs-gnss.ru/support/software/item/24-storegis.html )

- BM_Ctrl ( http://nvs-gnss.ru/support/software/item/25-bm-control.html )

В обеих данные получаются корректные. Или скорее распознаются корректно.

Управляющие пакеты позволяют настроить только режимы работы - перечень выдаваемых навигационных данных.

 

А официально авторам вопрос не задавали? Пусть за дитё ответят.
Обратился. Пока ответа не получил.

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну, если Вам "сырые" данные нужны - тогда в путь.

 

Есть ещё, правда, Geos-3. который тоже выдаёт сырые данные. К Геосу доверия больше.

Навис NV08 я тестил в прошлом году - негативное впечатление. При наличии явных проблем в прошивке, была она тогда годичной давности. То есть они за год не захотели или не смогли улучшить поведение своего изделия.

Впрочем, люди на NV08 работают, так что - удачи.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну, если Вам "сырые" данные нужны - тогда в путь.
В пути то в пути... только куда двигаться не понятно.

Предполагаю, что где-то есть настройка на сам COM-порт, которая фильтрует "служебные данные" что ле. Хотя в NMEA ничего подобного не было. Всё что шло в порт соответсвовала протоколу - 5 пакетов (GPRMC, GPGGA, PORZD, GPGSV, GPGSA). А BINR, хоть убейте, понять не могу.

Заметил ещё такую штуку: байт <CRC> (FFh) должен быть только в одном месте - после байта <DLE> (10h). Затем два байта контрольной суммы <KC>. Но ни разу нет такой последовательности байт. Байт FFh встречается только до байта 10h.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

По разборке данных от модуля я Вам не помогу.

 

По сбросу любой модуль настраивается на свою скорость передачи, выдаёт поределённый (и иногда свой) набор сообщений NMEA - производитель должен указать этот набор в РЭ на модуль или в руководстве по программированию

Выбрать перечень выдаваемых модулем данных и/или сообщений (GGA, RMC, и т.д.) можно только по BINR. В последних версиях NMEA (iec61162) может и было что-то - не поручусь. "Настройка COM-порта" к этому не имеет никакого отношения.

 

Выбрать часть сырых данных, которые будет слать в ваш адрес модуль и при этом не слать другие - это точно только через BINR.

 

.....................................

Предполагаю, что где-то есть настройка на сам COM-порт, которая фильтрует "служебные данные" что ле. Хотя в NMEA ничего подобного не было. Всё что шло в порт соответсвовала протоколу - 5 пакетов (GPRMC, GPGGA, PORZD, GPGSV, GPGSA). А BINR, хоть убейте, понять не могу.

...................................

 

 

То есть у вас просто нет возможности конфигурировать набор данных в BINR? Так и сконфигурировать набор данных в NMEA вы тоже не можете - все вопросы к авторам. По BINR. Если брали не напрямую - долбите продавца - производитель может вас игнорировать, в том числе и за непонятные формулировки. Уж простите - что есть то есть.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Производитель ответил.

Всё оказалось до ужаса простым. Нужно было выставить проверку на нечетность

ComPort->Parity=paOdd;

Спасибо всем.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...