- Настройка GPS модуля u-blox NEO-6M для прошивки MegapirateNG

Два способа настройки GPS модуля u-blox NEO-6M для полетного контроллера БПЛА на базе Arduino с прошивкой MegapirateNG

Практика для студентов. Мясищев А.А.

. Для построения полноценного беспилотного летательного аппарата (БПЛА) необходимо выполнить правильное конфигурирование GPS модуля. Благодаря этому модулю БПЛА может выполнять в автоматическом режиме полет по заданной траектории, удерживать заданную позицию, выполнять автоматический возврат в точку старта, выполнять заданные действия при достижении точки с заданными координатами и т.д. Настройка будет рассмотрена для распространенного GPS модуля u-blox NEO-6M, который подключен к полетному контроллеру на базе Arduino Mega256 с прошивками MegapirateNG, Ardupilot, Multiwii. Согласно литературным источникам возможны два способа настройки модуля, которые здесь и рассматриваются. Первый способ использует конфигурационный файл, который используется для прошивки flash памяти GPS модуля u-blox NEO-6M, а второй способ основан на конфигурировании этого модуля с помощью программы u-center (ver. 8.21) [1] с последующим формированием конфигурационного файла. На рисунке 1 показан конфигурируемый модуль.

Рис.1. GPS модуль u-blox NEO-6M с компасом

В обоих случаях необходима установка программы U-center текущей версии, ссылка на которую дана в источнике[1]. Требуется подключение USB выхода компьютера к выводам RXD, TXD GPS модуля. Здесь в качестве переходника используется USB TO TTL конвертер на основе микросхемы CH340(рис.2).

Рис.2. USB TO TTL конвертер.

Недостатком конвертера является его неспособность автоматически подстраиваться под изменение скорости связи с GPS модулем при его прошивке конфигурационным файлом. Во время прошивки flash памяти модуля GPS скорость передачи меняется с 9600 до 38400 бит/с. Поэтому изменение скорости порта необходимо выполнять вручную.

Подключение выполняется согласно таблице:

Рассмотрим первый способ настройки.

Выполняется запуск программы U-center. Устанавливается номер порта:

И скорость порта. Для нового модуля u-blox NEO-6M устанавливается обычно скорость 9600бит/с:

При правильном подключении в нижней части программы U-center должна зеленым цветом мигать пиктограмма установленной связи:

Далее необходимо получить 3DR-Ublox.txt конфигурационный файл для Ublox6 из источника [2]. Для загрузки этого файла необходимо в программе U-center перейти к меню Tools и выбрать пункт GNSS Configuration... :

Появиться окно:

В нем выбирается имя файла и выполняется нажатие на кнопку File > GNSS для записи в flash память. После этого появляется окно, в котором необходимо нажать на клавишу, показанную стрелкой:

Следующее окно показывает корректную загрузку конфигурационного файла до момента, пока не произойдет переключение приемника на скорость 38400бит/с:

После получения сообщения ... message rejected! необходимо быстро выполнить переключение программы U-center на скорость порта 38400бит/с. После этого должна продолжиться корректная загрузка файла.

Для появления спутников в программе U-center необходимо нажать на кнопку, как показано на рисунке:

После этого модуль u-blox NEO-6M готов к использованию в квадрокоптере.

Возможна корректная настройка GPS приемника без конфигурационного файла(второй способ настройки).

Для этого в программе U-center (ver. 8.21) необходимо перейти к Message view (View=>messages view). При дальнейшей работе после каждого изменения параметров в окне необходимо в нижнем левом угле окна нажимать на кнопку Send (обведена красным):

Далее выполняются следующие действия:

1. Необходимо щелкнуть правой кнопкой мыши на слове NMEA в верхней части дерева и выбрать Disable Child Message. Слово NMEA должно поменять черный цвет на серый.

2. Выбрать UBX=>CFG=>NAV5 и установить модель динамической платформы для использования: 3 - Pedestrian, также установить Fix Mode 2 - 3D only. В этом случае приемник GPS начнет функционировать в трехмерной системе координат. Нажать внизу на кнопку Send.

3. UBX=>CFG=>PRT – установить USART1 на скорость 38400бит/с и установить все протоколы UBX+NMEA!! Нажать внизу на кнопку Send.

4. Изменить скорость порта программы U-center на 38400бит/с. Нажать внизу на кнопку Send.

5. UBX=>CFG=>RATE(Rates) – изменить период определения координат на 200мсек. Это позволит определять позицию с частотой 5Гц, т.е. 5 раз в секунду. Нажать внизу на кнопку Send.

6. UBX=>CFG=>SBAS : Disable (SBAS перевести в состояние выключено, так как это вызывает серьезные случайные ошибки вычисления высоты). Нажать внизу на кнопку Send.

7. UBX=>NAV (но не UBX=>CFG=>NAV): здесь необходимо два раза кликнуть клавишей мыши на POSLLH, STATUS, VELNED. После этого их цвет должен измениться с серого на черный. Нажать внизу на кнопку Send.

8. UBX=>CFG=>CFG : выбрать save current config, нажать “send” в нижнем левом угле для постоянного сохранения настроек в приемнике.

9. Перейти в общем меню Receiver=> Action=> Save Config. Если этого не сделать приемник после следующего включения перейдет к первоначальным настройкам.

После этих настроек модуль GPS может быть использован на квадрокоптере.

Для сохранения настроек в конфигурационном файле u6_new.txt (аналог полученного конфигурационного файла файлу 3DR-Ublox.txt), необходимо выбрать имя этого файла и нажать на кнопку GNSS > File:

Загрузить полученный файл можно в соответствии с рассмотренным первым способом конфигурирования GPS модуля u-blox NEO-6M.

Выводы

1. Показана возможность настройки GPS модуля u-blox NEO-6M без прошивки его flash памяти с помощью конфигурационного файла.

2. Представлено получение собственного конфигурационного файла с помощью программы U-center для прошивки GPS модуля u-blox NEO-6M.

3. Экспериментально установлено, что использование некорректного конфигурационного файла для прошивки GPS модуля приводит к неправильному позиционированию БПЛА, и может привести к его аварии.

Литература

1. U-center Windows. GNSS evaluation software for Windows. [Electronic resource]. - Mode of access: https://www.u-blox.com/en/product/u-center-windows, 2016

2. 3DR-Ublox.txt. Конфигурационный файл для GPS модуля u-blox NEO-6M. [Electronic resource]. - Mode of access: https://github.com/ArduPilot/ardupilot/tree/master/libraries/AP_GPS/config, 2016

3. Ardupirates - UbloxGPSTutorial.wiki. [Electronic resource]. - Mode of access: https://code.google.com/archive/p/ardupirates/wikis/UbloxGPSTutorial.wiki, 2012

4. НАСТРОЙКА GPS U-BLOX NEO-6M. [Electronic resource]. - Mode of access: http://4vo.ru/2015/10/24/настройка-gps-u-blox-neo-6m/, 2015

Рис.3. Конфигурирование модуля GPS на квадрокоптере(БПЛА)

Написана 27.02.2017