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

Рис.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 бит/с. Поэтому
изменение скорости порта необходимо выполнять вручную. Первый способ настройки
подробно рассмотрен в источнике [2].
Рассмотрим второй
способ настройки. Для этого в программе U-center (ver. 8.21) необходимо перейти к Message view (View->messages view). При дальнейшей работе после каждого
изменения параметров в окне необходимо в нижнем левом угле окна нажимать на
кнопку Send (рис.3).
Далее выполняются
следующие действия:
1. Необходимо щелкнуть правой
кнопкой мыши на слове NMEA в верхней части дерева и выбрать Disable Child Message. Слово NMEA должно поменять черный цвет на
серый.
2. Выбрать Choose
UBX=>CFG=>NAV5 и установить модель динамической платформы для
использования: 3 - Pedestrian, а также установить Fix Mode 2 - 3D only. В этом случае приемник GPS начнет функционировать в трехмерной системе
координат.
3. UBX=>CFG=>PRT –
установить USART1 на скорость 38400бит/с и все протоколы UBX+NMEA!!
4. Изменить скорость порта
программы U-center на 38400бит/с.

Рис.3. Меню Message view программы
U-center (ver. 8.21)
5. UBX=>CFG=>RATE(Rates) – изменить период определения координат на 200мсек. Это позволит определять позицию с
частотой 5Гц, т.е. 5 раз в секунду. 6.
UBX=>CFG=>SBAS : Disable (выключить SBAS).
7. UBX=>NAV (но не
UBX=>CFG=>NAV): здесь необходимо два раза кликнуть клавишей мыши на
POSLLH, STATUS, VELNED. После этого их цвет должен измениться с серого на
черный.
8. UBX=>CFG=>CFG: выбрать save current config, нажать “send” в нижнем левом угле для
постоянного сохранения настроек в приемнике.
9. Перейти в общем меню
Receiver=> Action=> Save Config. Если этого не сделать, приемник после следующего включения перейдет к
первоначальным настройкам.
Для сохранения
настроек в конфигурационном файле u6_new.txt, необходимо выбрать имя этого
файла и нажать на кнопку GNSS > File:

Загрузить
полученный файл можно в соответствии с первым способом конфигурирования GPS модуля u-blox NEO-6M [2].
Выводы
1. Показана возможность настройки
GPS модуля u-blox NEO-6M без
прошивки его flash памяти с помощью конфигурационного файла.
2. Представлено получение
собственного конфигурационного файла с помощью программы U-center для прошивки GPS модуля u-blox NEO-6M.
3. Экспериментально установлено,
что использование некорректного конфигурационного файла для прошивки GPS модуля[2]
приводит к неправильному позиционированию БПЛА, и даже к его аварии.
Литература
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. Мясищев А.А. Два способа настройки GPS модуля u-blox NEO-6M для полетного контроллера БПЛА на базе Arduino с прошивкой MegapirateNG. [Electronic resource]. - Mode of access: https://sites.google.com/site/webstm32/config_gps,
2016
3. Ardupirates
- UbloxGPSTutorial.wiki. [Electronic resource]. - Mode of access:
https://code.google.com/archive/p/ardupirates/wikis/UbloxGPSTutorial.wiki,
2012