NEO-6M — GPS-модуль u-blox 6
NEO-6M — приёмник GPS u-blox 6 в модуле 16 × 12,2 × 2,4 мм, на котором построены самые распространённые платы GPS для Arduino и ESP32. Карточка по даташиту NEO-6 и описанию протокола u-blox 6: варианты NEO-6G/6Q/6M/6P/6V/6T, чувствительность и время старта, выводы, питание и уровни, настройки по умолчанию, сообщения RMC и GGA, кадр UBX.
Обновлено Редакция GAW
NEO-6M — модуль GPS-приёмника на движке u-blox 6: 50 каналов, 2 миллиона корреляторов для поиска спутников, антенный вход, UART, USB, SPI и I²C-совместимый DDC в корпусе 16 × 12,2 × 2,4 мм для пайки на плату. Именно он стоит на недорогих платах GPS с керамической антенной для Arduino и ESP32. Модуль сам считает координаты, скорость и время и раз в секунду отправляет их строками NMEA по UART на 9600 бит/с. Подключение готовых плат, антенна и батарейка разобраны в статье «GPS-модули NEO-6M и NEO-M8N»; здесь — характеристики и выводы модуля по документам u-blox.
Коротко
- Приёмник — GPS L1 C/A, 50 каналов, SBAS; точность 2,5 м (CEP), с SBAS — 2,0 м.
- Старт — холодный и тёплый 27 с, горячий 1 с, с A-GPS менее 3 с (при −130 дБм).
- Чувствительность — слежение −161 дБм, повторный захват −160 дБм, холодный старт −147 дБм.
- Обновление — до 5 Гц, таймпульс 0,25 Гц – 1 кГц, по умолчанию 1 Гц.
- Питание — 2,7–3,6 В, 39 мА при слежении, 47 мА при поиске, 67 мА пиковый; резерв V_BCKP 1,4–3,6 В, 22 мкА.
- Интерфейсы — UART (9600 8N1 по умолчанию), USB 2.0 FS, SPI и DDC до 100 кбит/с; NMEA 0183 2.3, UBX, RTCM 2.3 на вход.
Варианты NEO-6
| Модуль | Отличие | Старт холодный / горячий | Слежение | Обновление |
|---|---|---|---|---|
| NEO-6M | кварцевый генератор, базовый | 27 с / 1 с | −161 дБм | 5 Гц |
| NEO-6G | TCXO, питание 1,8 В | 26 с / 1 с | −162 дБм | 5 Гц |
| NEO-6Q | TCXO | 26 с / 1 с | −162 дБм | 5 Гц |
| NEO-6T | TCXO, точное время, таймпульс до 10 МГц | 26 с / 1 с | −162 дБм | 5 Гц |
| NEO-6P | PPP, точность < 1 м (2D) с SBAS | 32 с / 1 с | −160 дБм | 1 Гц |
| NEO-6V | счисление пути по датчикам автомобиля | 27 с / 1 с | −161 дБм | 1 Гц |
Данные — таблица 2 даташита при сильном сигнале. TCXO у 6G/6Q/6T ускоряет захват слабого сигнала; NEO-6M обходится кварцем, поэтому на 1 дБ менее чувствителен и на секунду медленнее стартует. Режим Power Save есть у 6G/6Q/6M, но не у 6P/6T/6V.
Выводы
Модуль — 24 контакта по периметру (табл. 8 даташита); готовые платы выводят наружу обычно только VCC, GND, TXD, RXD и иногда PPS.
| № | Название | Направление | Назначение |
|---|---|---|---|
| 1 | Reserved | вход | не использовать |
| 2 | SS_N | вход | выбор ведомого SPI |
| 3 | TIMEPULSE | выход | таймпульс 1PPS: 1 Гц, фронт по секунде, длительность 100 мс по умолчанию |
| 4 | EXTINT0 | вход | внешнее прерывание |
| 5 | USB_DM | вход/выход | USB D− |
| 6 | USB_DP | вход/выход | USB D+, подтяжка встроена |
| 7 | VDDUSB | вход | питание USB 3,0–3,6 В |
| 8 | Reserved | — | соединить с выводом 9 |
| 9 | VCC_RF | выход | питание ВЧ-части и активной антенны, VCC − 0,1 В, до 50 мА; соединить с выводом 8 |
| 10 | GND | — | общий |
| 11 | RF_IN | вход | антенна, 50 Ом; не больше 15 дБм |
| 12 | GND | — | общий |
| 13 | GND | — | общий |
| 14 | MOSI/CFG_COM0 | выход/вход | SPI MOSI или бит конфигурации порта; не используется — оставить свободным |
| 15 | MISO/CFG_COM1 | вход | SPI MISO или бит конфигурации порта; не используется — оставить свободным |
| 16 | CFG_GPS0/SCK | вход | режим питания при старте или SCK SPI; не используется — оставить свободным |
| 17 | Reserved | вход | не использовать |
| 18 | SDA2 | вход/выход | данные DDC (I²C) |
| 19 | SCL2 | вход/выход | такт DDC (I²C) |
| 20 | TxD1 | выход | UART, передача |
| 21 | RxD1 | вход | UART, приём |
| 22 | V_BCKP | вход | резервное питание 1,4–3,6 В: батарейка или суперконденсатор |
| 23 | VCC | вход | питание 2,7–3,6 В |
| 24 | GND | — | общий |
Вывода RESET у NEO-6 нет: сброс и типы старта (горячий, тёплый, холодный) делаются командой UBX-CFG-RST. Выводы 14–16 при старте читаются как биты конфигурации: CFG_COM1 = CFG_COM0 = 1 (свободные выводы) даёт NMEA на 9600 бит/с; 1 0 — 38 400; 0 1 — 4800 с GSV каждый пятый цикл; 0 0 — UBX на 57 600 бит/с. CFG_GPS0 = 1 — режим максимальной производительности (по умолчанию), 0 — Eco. Статическая установка этих выводов несовместима с SPI.
Электрические характеристики
| Параметр | Мин. | Тип. | Макс. | Условия |
|---|---|---|---|---|
| Питание VCC (NEO-6Q/M/P/V/T) | 2,7 В | 3,0 В | 3,6 В | NEO-6G: 1,75–1,95 В |
| Резерв V_BCKP | 1,4 В | 3,6 В | 22 мкА при 1,8 В и VCC = 0 | |
| Напряжение на входах | 0 | VCC | ||
| Низкий / высокий уровень входа | 0,2 · VCC / от 0,7 · VCC | |||
| Низкий / высокий уровень выхода | 0,4 В / от VCC − 0,4 В | 4 мА | ||
| VCC_RF | VCC − 0,1 В | до 50 мА | ||
| Пиковый ток | 67 мА | для расчёта источника | ||
| Ток при поиске / слежении | 47 / 39 мА | VCC = 3,0 В; Eco — 37 мА | ||
| Ток в Power Save, 1 Гц | 11 мА | NEO-6M | ||
| Рабочая температура | −40 °C | +85 °C |
Предельные значения (табл. 9): VCC, V_BCKP, VDDUSB и входы −0,5…3,6 В, ток любого вывода 10 мА, мощность на RF_IN 15 дБм; защиты от перенапряжения и переполюсовки нет. Антенна — пассивная или активная с усилением 15–50 дБ и шумом не более 1,5 дБ; активную питают от VCC_RF.
Подключение
- Питание. 3,3 В с запасом по току 70 мА. У готовых плат стабилизатор 3,3 В обычно стоит на плате — проверить по её описанию; сам модуль 5 В не переживёт.
- Уровни. Входы — не выше VCC, значит TX 5-вольтового микроконтроллера на RxD1 — через делитель или преобразователь уровней; с 3,3-вольтовыми микроконтроллерами — напрямую. Кадр 9600 8N1 — в статье «Интерфейс UART» и термине «Скорость передачи».
- Батарейка. V_BCKP хранит эфемериды, время и сохранённую конфигурацию: 22 мкА при 1,8 В — литиевая батарейка или суперконденсатор, как резервный домен микроконтроллера.
- Таймпульс. На выводе 3 — 1PPS: фронт в начале секунды, импульс 100 мс, частота настраивается от 0,25 Гц до 1 кГц, точность 30 нс (скз).
NMEA и UBX
По умолчанию модуль выдаёт GGA, GLL, GSA, GSV, RMC, VTG и TXT и принимает NMEA и UBX вперемешку без настройки. Два главных сообщения:
- RMC — рекомендуемый минимум:
$GPRMC,hhmmss,status,latitude,N,longitude,E,spd,cog,ddmmyy,mv,mvE,mode*cs. Время UTC, флаг A (данные верны) или V (данные недействительны), широта и долгота в формате ггмм.мммм, скорость в узлах, курс в градусах, дата. - GGA — данные решения:
$GPGGA,hhmmss.ss,Latitude,N,Longitude,E,FS,NoSV,HDOP,msl,m,Altref,m,DiffAge,DiffStation*cs. Статус решения, число используемых спутников (до 12), HDOP, высота над уровнем моря и поправка геоида.
Координаты записаны как градусы и минуты (4717,11399 = 47° 17,11399′), а не десятичные градусы; перевод и проверку контрольной суммы делает разбор NMEA онлайн. Для настройки служит двоичный протокол UBX: кадр начинается с байтов 0xB5 0x62, дальше класс (NAV 0x01, CFG 0x06, ACK 0x05), ID, длина нагрузки (2 байта, младший первым), нагрузка и контрольная сумма CK_A, CK_B; на команды CFG приёмник отвечает ACK или NAK. Текущая конфигурация живёт до выключения; UBX-CFG-CFG с маской save переносит её в батарейную память BBR, с маской clear — сбрасывает сохранённую к заводской. Другие модули — в разделе «Модули».
Частые вопросы
Можно ли подключить NEO-6M к Arduino на 5 В?
Питание — только через стабилизатор: сам модуль работает от 2,7 до 3,6 В, абсолютный максимум на VCC — 3,6 В; у большинства готовых плат стабилизатор 3,3 В уже стоит, что нужно проверить по описанию платы. Линию RX модуля к выходу TX Arduino напрямую подключать нельзя: напряжение на любом входе по даташиту не выше VCC — нужен делитель или преобразователь уровней. Выход TX модуля даёт не меньше VCC − 0,4 В при 4 мА; хватит ли этого входу 5-вольтового микроконтроллера — по его порогу VIH.
Почему NEO-6M долго ищет спутники?
Холодный старт без сохранённых данных занимает по даташиту 27 с при сильном сигнале от всех спутников (−130 дБм) и открытом небе; чувствительность холодного старта — всего −147 дБм против −161 дБм при слежении, поэтому у окна или под деревьями старт растягивается на минуты. Горячий старт — 1 с, если эфемериды и время сохранены в памяти с батарейкой на V_BCKP (1,4–3,6 В, ток 22 мкА). Без батарейки каждое включение — холодный старт.
Какие строки NMEA выдаёт NEO-6M по умолчанию?
На UART 9600 бит/с, 8N1, раз в секунду: GGA, GLL, GSA, GSV, RMC, VTG и TXT (NMEA 0183 версии 2.3). Координаты и время — в RMC и GGA; в GGA также число спутников, HDOP и высота над уровнем моря. Пример из описания протокола u-blox: $GPGGA,092725.00,4717.11399,N,00833.91590,E,1,8,1.01,499.6,M,48.0,M,,0*5B. Разобрать строку по полям можно в онлайн-разборе NMEA.
Как изменить скорость UART или частоту обновления NEO-6M?
Командами UBX: UBX-CFG-PRT задаёт порт и скорость, UBX-CFG-RATE — период решения (до 5 Гц у NEO-6M), UBX-CFG-MSG — набор сообщений. Настройки действуют до выключения; чтобы сохранить, отправляют UBX-CFG-CFG с маской save — в память с батарейным питанием BBR, которая живёт, пока есть напряжение на V_BCKP. Без батарейки и без внешней EEPROM после выключения модуль вернётся к заводским 9600 бит/с.
Источники
- u-blox. NEO-6 u-blox 6 GPS Modules. Data Sheet (GPS.G6-HW-09005-E, 05/12/2011, Released) — разд. 1.1 — 50 каналов, 2 млн корреляторов, 16 × 12,2 × 2,4 мм; табл. 2 — время старта, чувствительность, частота обновления, точность, таймпульс, пределы; табл. 4 — протоколы; разд. 1.12 — UART, USB, SPI, DDC; табл. 5 — антенна; табл. 6–7 — выводы CFG_COM и CFG_GPS0; табл. 8 — выводы модуля; табл. 9 — предельные значения; табл. 10 — рабочие условия; табл. 11 — токи; табл. 15 — настройки по умолчанию; табл. 18 — коды заказа
- u-blox. u-blox 6 Receiver Description Including Protocol Specification (GPS.G6-SW-10018-F, 18 Apr 2013, Public Release, FW 7.03) — разд. 20.3 GGA и 20.10 RMC — структура и примеры строк; разд. 23 — кадр UBX (0xB5 0x62, класс, ID, длина, контрольная сумма); разд. 24 — классы UBX; разд. 5 — текущая и постоянная конфигурация, UBX-CFG-CFG, BBR; разд. 7 — типы старта и UBX-CFG-RST
Нашли ошибку? ·
Смотрите также
- МодулиWi-Fi и другие модули: выводы, питание, уровни, подключение
- GPS-модули NEO-6M и NEO-M8Nu-blox NEO-6M и NEO-M8N: параметры, питание, подключение к МК, антенна, NMEA
- Разбор NMEAПоля GGA, RMC, GSV и других, контрольная сумма, координаты
- UARTКадр 8N1, скорость и допуск, TX и RX, уровни, USB–UART, AVR и STM32
- Скорость передачи (бод)Бит/с и бод: стандартные скорости и допуск UART
- Делитель напряженияВыход, ток, нагрузка, подбор пары резисторов
- ESP-01 и ESP-01SWi-Fi на ESP8266EX: выводы 2 × 4, питание 3,3 В, режимы загрузки, отличия ESP-01S
- Резервный домен (backup domain)Часть STM32 с питанием от VBAT: RTC, LSE и резервные регистры