10 февраля 2018

Matek F722-STD + DALRC Engine 40A = круче некуда!

Растянулась сборка квадрика на раме MCHeli-200 на длительное время. Сначала ждал регуляторы X-Racer Quadrant 35A. Потом, когда их получил и собрал в единый блок, обнаружил, что блок не влезает под канопу от Lumenier. Стал искать, чем заменить блок регуляторов. К тому времени уже приехал полетный контроллер Matek F722-STD, его и поставил на новый квадрик. Недавно появились в продаже регуляторы DALRC Engine 40A. Мне показалось, что уж они-то должны поместиться под канопу. Когда регуляторы приехали, так и случилось, даже еще небольшой зазор остался!


Кратко о полетном контроллере Matek F722-STD:
  • Процессор: 216MHz STM32F722RET6
  • Гироскопы: ICM20602 на 32К
  • Барометр: BMP280 на I2C-шине
  • OSD: BetaFlight OSD на низковольтном чипе AT7456E
  • Слот SD-карты для записи логов
  • 5 UART-портов
  • Датчик напряжения
  • Доступна I2C-шина на SDA и SCL
  • Управление настройками курсовой камеры
  • Поддержка светодиодов
  • Подключение пищалки
  • Вход RSSI
  • Три цветных индикатора статуса
  • Семь выводов под моторы с поддержкой DShot
  • Группа контактов для подключения регуляторов 4-в-1
  • Коннектор для соединения с платами FCHUB-6S или FCHUB-VTX
  • Вес: 7г
  • Габариты: 36x36мм с посадочными отверстиями 30.5x30.5мм
Теперь о регуляторе DALRC Engine 40A:
  • Максимальный ток: 40А
  • Пиковый ток(10с): 50А
  • Входное напряжение: 3-5S
  • Процессоры: STSPIN32FOA
  • Стабилизатор питания: 5В/3А
  • Прошивка: BLHeli_32
  • Поддерживаемые протоколы: DSHOT300-1200/MULTISHOT/PWM/ONESHOT
  • Датчик тока
  • Вес: 16г
  • Габариты: 39.6x42.5мм с посадочными отверстиями 30.5x30.5мм
Как обычно, сначала покажу упаковку деталей. Полетный контроллер Matek F722-STD приехал в простом пакетике с фирменной этикеткой.


Блок регуляторов DALRC Engine 40A прибыл в пластиковой коробочке. Коробочка потом под мелкие детальки пойдет:)


В комплекте с полетным контроллером Matek F722-STD были только мягкие стоечки высотой 7мм и шлейф для соединения с PDB той же фирмы. Небогатый комплект:)


Блок регуляторов DALRC Engine 40A, напротив, порадовал комплектацией! Мало того, что в коробочке все было уложено в свои гнезда, так и в комплекте было все необходимое: провода в силиконовой изоляции для соединения с полетным контроллером, демпферы, длинные стальные болтики M3x25 с пластиковыми стоечками высотой 6мм, LowESR-конденсатор на 470мкФ/25В.


Полетный контроллер Matek F722-STD внешне очень похож на своего предшественника Matek F450-OSD, но с небольшими отличиями. Добавился вывод PWM для любых целей: управление светодиодами, мотором или настройками видеокамеры.


Дополнительным элементом на плате стал барометр BMP280. Для гоночного квадрика его полезность сомнительна, разве только высоту на OSD приблизительно показывать. С нижней стороны платы площадки для подключения регуляторов 4-в-1 стали крупнее и удобнее. Соединять с блоком регуляторов буду по схеме из документации.


Блок регуляторов DALRC Engine 40A прекрасен! Благодаря радиатору выглядит, как законченная вещь. Если сгорит (тьфу-тьфу-тьфу через левое плечо) - повешу на брелок:) Под радиатором, кроме силовых ключей, расположены 55 конденсаторов!


Нижняя сторона платы покрыта лаком. Крепежные отверстия диаметром 4мм, но размер платы по углам остался стандартным 36x36мм. По бокам выступают площадки для подключения моторов. Меня как раз больше всего интересовало на сколько они выступают. Оказалось, что ширина блока в этом месте составляет 39.6мм. Этого достаточно, чтобы разместить регуляторы под канопу от Lumenier. На блоке регуляторов разместился мощный стабилизатор напряжения на 5В/3А. Его вполне достаточно для питания полетного контроллера и камеры. Датчик тока спрятался под радиатором.


Управляющие выводы продублированы с торца и сверху. Сверху выводы потребуются для установки еще не выпущенного полетного контроллера от DALRC.


Схема выводов нашлась на официальном сайте. Все просто и понятно.


Обратите внимание, на сайте присутствует ошибка! На схеме силовых контактов плюс и минус перепутаны местами! На плате полярность отмечена правильно. И в этом есть одна проблема. Если устанавливать силовой разъем так, чтобы он входил в паз на канопе, то силовые выводы с блока регуляторов получаются не с той стороны. Плюс упирается в минус, а минус в плюс.


Вариантов решения проблемы не так много. Можно вывести силовой разъем на проводах, а провода закрепить стяжкой к раме - это самое разумное решение. Вторым вариантом можно попробовать перевернуть блок регуляторов вверх ногами, радиатором вниз. Тогда придется поднимать регулятор выше на стойках, ибо радиатор упрется в ремешок фиксации аккумуляторов. Все же попробую сделать так, как оно есть:)

Прикинул, как будет выглядеть весь стек в сборе. Снизу идут пластиковые болтики M3x12, на них накручены стойки высотой 4мм, установлен блок регуляторов без демпферов, потом идут мягкие стойки высотой 7мм, полетный контроллер, стойки высотой 8мм и передатчик Matek VTX-HV. Между передатчиком и полетным контроллером разместится приемник FrSky XSR-M.


С высотой расположения полетного контроллера едва угадал - USB-разъем пока еще попадает в вырез канопы, но гайки в стеке уже слегка задевают стенки канопы сзади. Придется гайки немного уменьшить по высоте или просто закруглить сверху. Блок регуляторов фиксируется за счет мягких стоек, на которые ставится полетный контроллер. Они упираются в радиатор и центрируют блок в стеке.

Одел провода от моторов в "змеиную кожу" кусочками по 60мм. Долго прикидывал, как припаять провода к блоку регуляторов так, чтобы еще и кабинка налезла. Провода от моторов толстые, неудобные. Если просто все провода кучей к выводам припаять, то кабинка точно не налезет, не хватит ее ширины.


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


Силовой TX60-разъем припаял так, чтобы короткие силовые провода не пересекались. Плюсовой провод ушел вниз, минусовой - вверх. Сам разъем закрепил стяжкой к раме. Под разъем подклеил полоску толстого двухстороннего скотча, чтобы оно не болталось относительно рамы.


Сразу же предусмотрел выводы для установки конденсатора и для питания передатчика Matek VTX-HV. Поставил конденсатор не из комплекта блока регуляторов, а на 1000мкФ/25В.


Просто притянул его резиновым колечком к разъему. Когда будет установлена кабинка, то конденсатор сам встанет внутри по месту, но не будет болтаться.

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


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

Установил приемник FrSky XSR-M и пищалку от Lantian. Если посмотреть на фотографию, то видно, что приемник подключен всего тремя проводами. Отсутствует сигнальный провод, идущий с S.BUS-выхода приемника на UART-RX полетного контроллера.


Дело в том, что в приемник загружена новая прошивка с поддержкой экспериментального FPort-протокола. Его суть в том, что по одному проводу идут как полученные данные, так и передаваемая телеметрия. Провод со Smart-порта припаивается на UART-TX полетного контроллера. Припаял его к выводу TX2. О настройке приемника расскажу ниже, когда квадрик будет окончательно собран.

Провода от камеры разделил на два пучка по три провода. В первом пучке: общий, видеосигнал и провод для управления настройками камеры. Этот жгутик идет к полетному контроллеру. К выводу S6 прямо на полетном контроллере припаял SMD-резистор на 470Ом, а к нему - провод для управления настройками камеры. Позже, когда все уже было собрано, подумал, что не будет лишним капнуть на резистор немного термоклея. Забегая вперед, скажу - не пытайтесь вывести управление камерой на выход S5, отвалится управление первым мотором. Мотор не будет работать по цифровому протоколу DShot и управление камерой тоже не заработает, но по аналоговому MultiShot мотор работать будет:)


Во втором жгутике: общий, плюсовой и аудио. Этот пучок проводов пойдет к передатчику. Решил подать питание на камеру от передатчика, чтобы не нагружать стабилизатор на блоке регуляторов. Чтобы не было помех по видео, все провода, по которым работает камера и передатчик, обязательно надо закручивать в жгутик вместе с общим проводом!

Оставалось только установить передатчик Matek VTX-HV. Тут никаких сюрпризов не было, все сделал так, как рассказывал ранее. Управление передатчиком повесил на вывод TX4 полетного контроллера.


Между передатчиком и приемником приклеил кусочек каптона. Передатчик плотненько прижимает приемник к полетному контроллеру.


Антенну передатчика закрепил к стойке стяжкой, чтобы не вырвало. Суровый бутерброд получился! Как же знатно оно все греться будет внутри кабинки:)


На квадрик поставил камеру Foxeer Arrow V3 с полюбившейся линзой от Runcam на 2.3мм. Линзу традиционно обмотал изолентой, чтобы не откручивалась. Иначе, как не затягивай стопорное кольцо, все равно рано или поздно линза открутится и собьется фокусировка.


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


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


Вес готового квадрика получился 318 грамм. Не намного легче, чем хламолет. Рассчитывал уложиться в вес до трехсот грамм.


Осталась настройка. Первым делом заливаю прошивку в полетный контроллер через BetaFlight Configurator, выбираю MATEKF722. Можно использовать последнюю стабильную прошивку BetaFlight, но я попробую собранную самостоятельно из свежих исходников с фильтрами Калмана и прочими новыми плюшками. Собирал прошивку с такими опциями:

make OPTIONS=USE_GYRO_FAST_KALMAN MATEKF722

Сразу после прошивки полетного контроллера, настраиваю регуляторы и обновляю прошивку в них. Для этого скачиваю свежую версию BLHeliSuite, устанавливаю и подключаю квадрик.


В регуляторах оказалась свежая прошивка версии 32.3 и обновление не потребовалось. Только изменил направление вращения двух моторов, уменьшил время бездействия до двух минут и увеличил частоту работы до 48кГц.

Для настройки полетного контроллера запускаю BetaFlight Configurator и сразу перехожу в порты. Там на UART2 назначаю приемник, а на UART4 - управление передатчиком через протокол 'IRC Tramp'.


В настройках включил реверс моторов, выбрал протокол управления регуляторами DShot1200, включил поворот полетного контроллера на 180 градусов, выставил частоту работы гироскопов 16/8кГц. К сожалению, пока что быстрее полетный контроллер на F7-процессоре не удается заставить работать, прошивка не оптимизирована. Разработчики обещают провести оптимизацию только в BetaFlight версии 3.4, которая выйдет аж только в июне!


В тестовой версии прошивки уже доступен FPort-протокол, его и выбрал. Чуть ниже покажу, какие надо включить опции для его работы. Ради смеха включил барометр, чтобы высоту на OSD показывал:) Включил динамические фильтры, они отлично работают совместно с калмановскими. В настройках питания приподнял немного максимальное напряжение. Встал вопрос, какой делитель указывать для датчика тока. Так и не нашел информации, оставил как есть.


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


Настройку PID-ов еще не делал, просто выдернул данные из прошлого квадрика. Надо обратить внимание, что с динамическими фильтрами не стоит поднимать D выше 20-22, иначе у моторов появится неприятный дребезжащий звук при старте. Если он есть, значит D надо сделать пониже и в фильтрах уменьшить значение D Term Lowpass.


Остальные параметры выставляются по желанию. В фильтрах включил PT1 и снизил до 80 частоту D Term Lowpass. Отключил все режекторные фильтры.


По рекомендации Джошуа, стараюсь не использовать больше восьми каналов в передатчике. Это позволяет быстрее передавать данные от передатчика приемнику. На восьмом канале настраиваю вывод RSSI. Так же включаю ручную интерполяцию входящего сигнала.


Не использую мертвые зоны, так как у передатчика стики на датчиках Холла и они отлично держат центральное положение.

Оставшихся трех AUX-каналов вполне хватает для настройки всех основных функций квадрика.


В настройках BetaFlight OSD нет ничего сложного. Включил и расставил по экрану нужные значения.


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

resource MOTOR 6 NONE
resource CAMERA_CONTROL 1 A08
set camera_control_key_delay = 125

Подробнее об этом можно почитать о моем первом опыте такой операции или обратиться к официальному руководству. Затем включаю сглаживание на всех каналах управления:

set rc_interp_ch = RPYT

Ограничиваю максимальное число AUX-каналов до четырех:

set max_aux_channels = 4

При подключении приемника через FPort-протокол, надо почитать официальное руководство, где указано, что для полетных контроллеров на F7-процессоре надо ввести в консоли следующие опции:

set serialrx_provider = FPORT
set serialrx_inverted = ON
set serialrx_halfduplex = ON

Тогда приемник заработает без проблем, если до этого в него была установлена прошивка с поддержкой FPort-протокола, которую можно найти на официальном сайте FrSky.

Кратко остановлюсь на фильтрах Калмана, используемых в прошивке. Они управляются следующими опциями:

gyro_filter_q = 300
gyro_filter_r = 80
gyro_filter_p = 0

Подробнее по их настройке можно почитать на зарубежном форуме. К сожалению, не удалось ни настроить фильтры, ни полноценно опробовать их в полете, так как были проблемы с видеосигналом.

Полный дамп настроек можно скачать по ссылке.

Выбрался на полеты, чтобы испытать новый квадрик в деле. Но случилось непредвиденное - видеосигнал стал пропадать, стоило отлететь метров на десять. Закрались подозрения, что когда обновлял прошивку в передатчике Matek VTX-HV, то случайно подал на него питание 5В, а антенна в это время не была подключена, вот он и сгорел. С грустью повез квадрик домой. Это теперь еще месяц ожидания, когда из Китая приедет новый передатчик:( Удалось только визуально немного полетать, проверить, все ли работает.


Удивил звук от моторов. Они работают очень тихо, шуршат. Никакого неадекватного поведения не выявил. Квадрик полетел так, как и должно быть. Для себя вывел некоторый список того, что нужно сделать, чтобы квадрик летал отлично: обязательно нужен конденсатор по питанию, демпферы для полетных контроллеров с быстрыми гироскопами и мягкие подкладки под моторы.

Немного дополню. На следующий день отпаял передатчик Matek VTX-HV и хотел его выбросить. Случайно обратил внимание, что разъем антенны как-то кривовато стоит. Пригляделся и увидел, что центральный пин разъема просто не припаян к передающему модулю!


Ага, причина-то нашлась, но где теперь гарантия, что усилитель передатчика не подпален? По сути, все это время передатчик работал без антенны:(

В заключении хочу сказать, что блок регуляторов DALRC Engine 40A работает идеально. Он из серии 'поставил и забыл'. А полетный контроллер Matek F722-STD - неплохой задел на будущее. Жаль, что в полной мере он сможет раскрыться в лучшем случае через полгода, а то и позже. Да и с современными темпами развития 'железа' до лета полетный контроллер может морально устареть. Уже появился анонс полетного контроллера с двумя процессорами: один для работы периферии, а второй - для обработки сигнала с гироскопов. Все идет к тому, что настройка PID-ов скоро не потребуется:) Ну, а пока остается только ждать...