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

GPS-ГЛОНАСС приемник BN-280


Рекомендуемые сообщения

Внешний вид. Стоимость 7$ на Али

image1.jpg.55062ec0d8fcd3fc729ceafebb2bb511.jpgimage2.jpg.fe6cff7ef79ae1f2991d52270caefd26.jpg

Видим встроенную антенну, разъем для подключения провода и 6 отверстий дублирующих разъем. Распиновка разъема представлена на следующем рисунке.

image3.jpg.0640f4a57f6dbc7d8828bdd3f5bd66d6.jpg

Параметры представлены в таблице.

image4.thumb.jpg.0e8890a5ff1ff71acc89d6a08730a374.jpg

В качестве USB-UART переходника я использовал неисправную arduino nano (у которой сгорел микроконтроллер), а точнее установленную на ней микросхему CH340G. С таким переходником модуль отлично работает как с терминалами, так и со специальной программой для GPS u-center v8.27.

На подоконнике модуль выловил спутники почти сразу, заявленное время холодного старта 26 секунд. При помощи программы u-center можно просмотреть всю информацию, полученную от GPS-приемника. На следующем изображении видно, что приемник использует одновременно и GPS и ГЛОНАСС спутники.

image5.GIF.c36ed2ebbd5520b04c307a9e633b504c.GIF

Так же можно посмотреть, где находятся спутники, и какие из них используются.

image6.GIF.415229c486051dd0688da5e622d9f986.GIF

Так же в программе u-center можно просмотреть все данные, которые приходят от GPS-приемника. Данные приходят один раз в секунду, и за секунду приходит вот такой поток данных

$GNRMC,133028.00,A,5217.37114,N,05629.32522,E,0.173,,171217,,,A*6E

$GNVTG,,T,,M,0.173,N,0.320,K,A*39

$GNGGA,133028.00,5217.37114,N,05629.32522,E,1,11,1.04,195.4,M,-12.9,M,,*6F

$GNGSA,A,3,16,27,23,09,07,26,08,,,,,,1.63,1.04,1.26*19

$GNGSA,A,3,78,77,86,87,,,,,,,,,1.63,1.04,1.26*16

$GPGSV,3,1,10,02,03,289,,05,16,322,22,07,57,257,22,08,09,130,29*74

$GPGSV,3,2,10,09,82,187,26,16,42,058,35,23,50,133,21,26,15,043,30*78

$GPGSV,3,3,10,27,20,096,36,30,28,253,22*78

$GLGSV,3,1,10,68,39,170,23,69,71,267,,70,22,325,,77,06,051,27*6B

$GLGSV,3,2,10,78,54,044,40,79,75,254,,80,13,235,,86,10,350,15*63

$GLGSV,3,3,10,87,16,044,37,88,03,088,27*6E

$GNGLL,5217.37114,N,05629.32522,E,133028.00,A,A*71

Давайте разберемся, что же там приходит.

Согласно протоколу NMEA 0183 первый символ всегда $, затем идут 2 буквы, согласно тому какие спутники используются.

А именно:

  • GP – GPS;
  • GL - ГЛОНАСС;
  • GA - Галилео;
  • GN – GPS+ГЛОНАСС (точнее любая комбинация систем навигации).

В моем случае встречаются GP, GL и GN.

Далее три буквы и следом набор данных, разделенный запятыми. Завершает строку символ * и контрольная сумма всех символов между $ и * (не включая их).

Первая строка $GNRMC,133028.00,A,5217.37114,N,05629.32522,E,0.173,,171217,,,A*6E содержит так называемый минимальный рекомендованный пакет данных, а именно:

  • время в формате ччммсс.сс по UTC;
  • статус, А если данные достоверны или V если не достоверны;
  • широта в формате ddmm.mmmm;
  • полушарие, N для северного, S для южного;
  • долгота в формате ddmm.mmmm;
  •  полушарие, W  для западного, E для восточного;
  • скорость относительно земли в узлах (1 узел = 1.852 км/ч);
  • азимут направления движения в градусах;
  • дата в формате ddmmyy;
  • магнитное склонение в градусах;
  • направление склонения, W  для западного, E для восточного;
  • индикатор режима.

Индикатор режима обозначается буквами:

  • A = Автономный режим
  • D = Дифференциальный режим
  • E = Экстраполяция координат
  • M = Режим ручного ввода
  • S = Режим симулятора
  • N = Недостоверные данные

В общем, в этой строке есть всё, что необходимо для навигации.

Идем дальше, строка $GNVTG,,T,,M,0.173,N,0.320,K,A*39 предназначена для определения направления движения. Содержит следующие данные:

  • Курс на истинный полюс (в градусах), затем следует буква Т;
  • Курс на магнитный полюс (так же в градусах), затем следует буква М;
  • Скорость относительно земли в узлах, затем следует буква N;
  • Скорость относительно земли в км/ч, затем следует буква К;
  • Индикатор режима, согласно рассмотренным ранее значениям.

Как видим, строка начинается с GN, это значит, что используются данные полученные как с GPS, так и с ГЛОНАСС.

Строка $GNGGA,133028.00,5217.37114,N,05629.32522,E,1,11,1.04,195.4,M,-12.9,M,,*6F содержит данные местоположения, а именно:

  • время определения координат в формате ччммсс.сс по UTC;
  • широта в формате ddmm.mmmm;
  • полушарие, N для северного, S для южного;
  • долгота в формате ddmm.mmmm;
  • полушарие, W  для западного, E для восточного;
  • режим работы приемника (о значениях позже);
  • количество спутников, использованных для получения координат;
  • HDOP;
  • Высота над уровнем моря в метрах, далее следует буква М;
  • Высота над геоидом в метрах, далее следует буква М;
  •  Возраст дифференциальных поправок (в моем случае пусто).

Режимы работы приемника:

  •   0 = Координаты недоступны или недостоверны
  •  1 = Режим GPS SPS, координаты достоверны
  • 2 = Дифференциальный GPS, режим GPS SPS
  • 3 = Режим GPS PPS, координаты достоверны
  •  4 = RTK
  • 5 = Float RTK
  •  6 = Режим экстраполяции координат
  • 7 = Режим ручного ввода
  • 8 = Режим симулятора.

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

 

Строки $GNGSA,A,3,16,27,23,09,07,26,08,,,,,,1.63,1.04,1.26*19 и $GNGSA,A,3,78,77,86,87,,,,,,,,,1.63,1.04,1.26*16 содержат следующую информацию:

  • Режим переключения 2D/3D, А – автоматический, М – ручной;
  • Режим: 1 – нет решения, 2 – 2D, 3- 3D;
  • ID номера спутников, используемых в нахождении координат (1-32 для GPS, 65-96 для ГЛОНАСС);
  • PDOP (снижение точности по местоположению);
  • HDOP (снижение точности в горизонтальной плоскости);
  • VDOP (снижение точности в вертикальной плоскости);

Про DOP и его значения смотрите https://ru.wikipedia.org/wiki/DOP . Заметьте, что здесь две строки, одна для спутников GPS, вторая для ГЛОНАСС. Для нас эта строка большого интереса не представляет.

Строки

$GPGSV,3,1,10,02,03,289,,05,16,322,22,07,57,257,22,08,09,130,29*74

$GPGSV,3,2,10,09,82,187,26,16,42,058,35,23,50,133,21,26,15,043,30*78

$GPGSV,3,3,10,27,20,096,36,30,28,253,22*78 содержат информацию о видимых спутниках, в каждом сообщении может содержаться информация максимум о 4 спутниках. Строки содержат данные:

  •  Общее количество сообщений (в нашем случае 3);
  • Номер текущего сообщения (обратите внимание на каждую строку, эти значения идут по порядку);
  • Общее количество видимых спутников (во всех трех сообщениях это значение одинаково);
  • ID номер спутника;
  • Угол места в градусах (макс. 90);
  • Азимут в градусах (0-359);
  • SNR (00-99 дБГц)4

Последние 4 значения встречаются в строке 4 раза подряд, если строка содержит информацию о 4 спутниках. Если строка содержит информацию менее чем о 4 спутниках, то нулевые поля (,,,,) не используются.

Далее идут очень похожие строки

$GLGSV,3,1,10,68,39,170,23,69,71,267,,70,22,325,,77,06,051,27*6B

$GLGSV,3,2,10,78,54,044,40,79,75,254,,80,13,235,,86,10,350,15*63

$GLGSV,3,3,10,87,16,044,37,88,03,088,27*6E которые содержат такие же данные о местоположении видимых спутников, но обратите внимание на первые символы $GPGSV и $GLGSV. В первом случае передаются данные о спутниках GPS, во втором о спутниках ГЛОНАСС. В этом вся разница.

 

И наконец, последняя строка $GNGLL,5217.37114,N,05629.32522,E,133028.00,A,A*71 снова содержит координаты. Данные представлены в следующем порядке:

  • широта в формате ddmm.mmmm;
  • полушарие, N для северного, S для южного;
  • долгота в формате ddmm.mmmm;
  • полушарие, W  для западного, E для восточного;
  • время определения координат в формате ччммсс.сс по UTC;
  • статус, А если данные достоверны или V если не достоверны;
  • индикатор режима (значения рассмотрены ранее).

Эта строка не содержит уже ничего нового, все эти данные встречаются и в строке RMC и в GGA.

В чем же особенность данного модуля? Наличие ГЛОНАСС вносит некоторые коррективы в программу обработки данных. Я не буду рассматривать конкретные примеры получения данных по UART, и не буду показывать как «парсить» полученные данные. Это зависит от конкретного устройства и языка программирования, да и задача эта тривиальная. К тому же если вы решите написать свой собственный парсер, то наверняка будете опираться на полученные данные  наряду с описанием протокола NMEA. А если же вы решите воспользоваться готовыми библиотеками (привет ардуинщикам), то у вас могут возникнуть проблемы. Я заглянул в исходные коды некоторых библиотек для ардуино, предназначенные для работы с GPS, и обнаружил что библиотека парсит полученные строки конкретно для GPS, то есть ищет начало строки, начинающиеся с символов $GP. Это справедливо для модулей, работающих только с GPS. Но большинство данных с этого модуля приходят в формате GPS+ГЛОНАСС, некоторые только с ГЛОНАСС и только с GPS (это данные о количестве и местоположении спутников). Поэтому, если библиотека не выдает данные, то необходимо найти в исходных кодах все $GP* и заменить на $GN*. Я не смог проверить все библиотеки для работы с GPS, только несколько, поэтому будьте начеку и проверяйте исходные коды библиотек перед использованием.

Протокол NMEA подразумевает не только получение данных по UART, но и отправку команд в модуль (главным образом для настройки модуля). Например, команда $PSRF103 позволяет настроить, какие данные должен присылать модуль и с какой периодичностью. Полный синтаксис команды выгладит так $PSRF103,<msg>,<mode>,<rate>,< cksumEnable >*CKSUM<CR><LF> , где

> msg  - сообщение:

  • 0 GGA
  • 1 GLL
  • 2 GSA
  • 3 GSV
  • 4 RMC
  • 5 VTG
  • 6 MSS (If internal beacon is supported)
  • 7 Not defined
  • 8 ZDA (if 1PPS output is supported)
  • 9 Not defined

> mode – режим, 0 = периодично, 1 = по запросу

> rate – период отправки сообщений в секундах, 0 =отключено, 255 = максимальное количество секунд

> cksumEnable –вывод контрольной суммы, 0 – отключено, 1 – включено.

Например, что бы отключить строку GSV, необходимо отправить $PSRF103,3,0,0,1*27

Что бы получить контрольное число воспользуйтесь онлайн калькулятором https://www.scadacore.com/tools/programming-calculators/online-checksum-calculator/

image7.GIF.8a24c01856e20f3924a04bda83e94c15.GIF

Так же удобная программа для работы с GPS-приемниками Trimble studio v 1.74.0 позволяет рассчитывать контрольную сумму (да и вообще программа для работы с GPS-приемниками отличная).

image8.GIF.ead2584fa02d05d1b0a4c4e9475f3c1e.GIF

Возможность управлять приемником протоколом NMEA предусмотрена, но ни на одну отправленную мной команду приемник никак не отреагировал. В общем, это не мешает пользоваться приемником по назначению, информации полученной от приемника достаточно и для определения координат, времени, скорости и направления движения, высоты. А вот от списка спутников я бы отказался совсем или увеличил периодичность отправки этих сообщений.  Но не получается.

Подведу итог. Модуль довольно компактный, быстро вылавливает сигналы спутников, выдает все, что необходимо для навигации. Из недостатков можно отметить только то, что его невозможно настроить (хотя если не получилось у меня, то это не значит что его вообще невозможно настроить,  программа U-cemter предоставляет большие возможности для работы с gps-приемниками, в том числе и для настройки).

P.S. И конечно же огромная благодарность сайту Паяльник за предоставленный на обзор GPS-Глонасс приемник.

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

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

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

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

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

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

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

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

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...