Ardupilot-GPS

Изготовление модуля навигации для Ardupilot и Ardupilot-MEGA своими руками.

В самом деле можно купить готовый модуль у Diydrones за 40$ на чипсете MT3389 и не заморачиваться,

но мы легких путей не ищем и не прочь съэкономить 30-50%

За основу был взят модуль quectel L10 на чипсете MT3389, выбор пал именно на эту модель по той причине что этот же чипсет использован авторами ардупилота, а в исполнении quectel он стоит менее 400руб при превосходном качестве исполнения. Однако этот модуль еще не готовое устройство, собственно процесс сборки своими руками и заключается в том чтобы подобрать к нему подходящую антену, стабилизатор питания, резервный источник памяти горячего старта, преобразователь уровней UART 3,3 -> 5,0 вольт, вытравить печатную плату, спаять все это и протестировать.

Список деталей:

  • L10 [MT3329; 22.4x17x3.0mm] QUECTEL

  • компактная GPS антенна ANT GPS BY-GPS-134 PCB BEYOND или более чувствительная ANT GPS A25-4T [YDRA-A25-1575]

  • Резистор 10К 0603 - 2 шт

  • Резистор 200К 0603 - 1 шт

  • Резистор 100Ом-1Ком 0603 - 1 шт

  • Конденсатор 0,1мкф 0603 - 3шт

  • Конденсатор 30пф 0603 - 1 шт

  • Smd диод 0603 - 1 шт

  • Стабилизатор 3,3 вольт в корпусе SOT23-5

  • Преобразователь уровней PCA9306D (в маленьком корпусе)

  • Ионистор 3,3В, плата разведена под этот

микросхема PCA9306D может быть заменена на PCA9306DС и PCA9306DС1

КРОМЕ PCA9306DС@NXP - этот чип именно этого производителя имеет иную цоколевку,

помимо этого в обсуждениях мне встречалось мнение что чипсет MT3389, используемый в модуле, прекрасно работает безо всякого преобразования с TTL (5V) уровнями на RX и TX (тем не менее питание не должно превышать 3,6 вольта) из чего следует что если этой микрухи нет в наличии то в принципе можно попарно замкнуть выводы 3 с 4, 2 с 5, а подтягивающие резисторы полклучить к 5V вместо 3,3V и таким образом обойтись без нее, что я и имел удовольствие наблюдать в одном из модулей китайского производства. (это решение я на практике, на своем модуле не проверял).

Печтаная плата:

Печатная плата изготавливается методом ЛУТ, файл для самостоятельного изготовления приложен внизу страницы.

Оригинальный и упрощенные варианты выглядят так:

Отличие от оригинального, варианта разработанного Александром Антоновым в сплошной заливке под модулем, изменена разводка земли ионистора, установлены разрезнЫе перемычки в положение для использования по основному назначению - для подключения к Ardupilot через Serial (модуль может передавать данные еще и по USB/ I2C ). Убраны неиспользуемые установочные места элементов антенного фильтра. Обратную сторону платы я оставил фольгированной и соединил перемычкой с GND

Процесс пайки:

На этот раз решился испортить одно игольчатое жало, изготовив из него жало "микроволна". Что могу сказать? это день и ночь! припой не стремиться слинять с конца жала куда-нибудь повыше а наоборот держится в зоне пайки, излишки припоя отлично дозируются между деталью и жалом - если надо побольше олова положить - превосходно удерживается большая капля, если надо убрать припой с детали - вытираем припой с жала о салфетку, макаем жало в канифоль и излишки припоя с удовольствием заполняют ямку на конце жала. В результате и смд компоненты и модуль быстро и аккуратно были запаяны паяльником без использования фена и подогревающего прожектора. Какой вариант платы вы бы не выбрали, рекомендую пространство под модулем электрически изолировать во избежание замыкания на переходные отверстия в плате модуля. это можно сделать покрыв лаком (или заклеив скотчем).

Тестирование:

Перед подключением питания я сначала проверил работу стабилизатора, запитав модуль от регулируемого источника напряжения 3,6 вольт, с тем чтобы убедиться что стабилизатор не перепутан и нет "залипонов" в цепи питания, иначе можно потерять и ионистор и модуль рассчитанные на 3,3 вольта,

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

Модуль был подключен к компьютеру посредством того же usb - uart преобразователя который используется для программирования "маленького ардупилота", remzibi osd, итд. В моем случае я воспользовался все той же ардуино- платой с извлеченным чипом atmega168.

Программа MiniGPS (см. приложения) соединилась с модулем на запрограммированной с завода скорости 9600, определила что версия прошивки даже выше чем предлагаемая к скачиванию командой разработчиков Ardupilot (1.33 006) поэтому прошивку даунгрейдить смысла небыло,

Задал для модуля настройки

  • скорость 38400 (оптимально для маленького Ardupilot )

И сохранил их по умолчанию (последняя закладка программы MiniGPS). Остальные настройки роли не играют, ибо ардупилот (или плата сенсоров) настроят их при инициализации

Тестирование показало невероятный результат, модуль подключенный "на холодную" в каменном доме, в значительном удалении от окон смог поймать более 5 спутников, получить 3D fix и достаточно точно определить координаты. Такого не было ни с китайским модулем с оригинальной прошивкой, ни после его перепрошивки, ни с побывавшими в моих руках готовыми туристическими и автомобильными навигаторами на самых "крутых" чипсетах! (обычно внутри каменного помещения навигаторы получают lock - захват только "на горячую" - если незадолго до того как навигатор попал в помещение он захватил спутники будучи под открытым небом или хотя бы вблизи окна )

Примечания:

  • Печатную плату заводского качества можно приобрести у меня или заказать самостоятельно по файлам приложенным в разделе "Продукция"

  • К этой плате может подойти не только модуль L10 компании QUECTEL, но и множество модулей других производителей, это весьма популярный форм-фактор, однако мною был испытан именно этот модуль, если вы решите использовать другой, внимательно изучите datasheet на предмет соответствия выводов, в случае успешных экспериментов я буду благодарен если вы напишете мне о ваших модификациях и доработках. Если в дальнейшем вы хотите оставить возможность подключения активной антенны то на заводской плате следует подрезать соединение с землей контакта 19 со стороны белой подложки, в этом случае когда вы решите подключить активную антенну будет достаточно отрезать соединение с землей с внешней стороны, не требующее выпайки модуля.

MiniGps 1.7.1

Собственно вышеуказанной информации вполне достаточно чтобы изготовить и настроить GPS плату для ардупилота, тем не менее я решил не останавливаться и продолжить эксперименты, цель которых выявить недорогие модули, оценить и сравнить их потребительские качества, собрать рекомендации по монтажу и выбору антенны

Продолжение следует..

Оригинальная прошивка Quectell, драйвер USB, прошивальщик тут