Подключение адресной светодиодной ленты
Введение
Штатной индикации (светодиоды на полётном контроллере) во многих случаях недостаточно по нескольким причинам: малая информативность, а в некоторых случаях и полная невозможность наблюдения в связи со скрытием полётного контроллера элементами конструкции и защиты квадрокоптера. Хорошим решением в таком случаем может стать подключение дополнительной светодиодной ленты, которая будет подробно отображать различные события.
Подключение
Для подключения ленты к Жуже нам понадобятся:
сам квадрокоптер
отрезок адресной светодиодной ленты
три провода
несколько кабельных стяжек
паяльник и принадлежности
Концы проводов необходимо зачистить и залудить:
Теперь подготовим саму ленту. Для этого нужно найти конец ленты, центральный контакт которого обозначен как Din, освободить его от защитного силиконового покрытия (будьте осторожны! можно повредить проводящие дорожки ленты) и аккуратно лезвием ножа или наждачной бумагой зачистить контакты. После этого контакты покрываем слоем олова. Не забывайте использовать и смывать флюс!
Теперь подготовленные провода нужно припаять к плате Жужи:
Контакт S (signal) обеспечивает управление лентой с полётного контроллера, а контакт V (Vcc) - подводит питание для ленты. Контакт G (ground) - общий для силовых и сигнальных цепей коптера.
Приципиальная схема подключения светодиодной ленты
Ленту необходимо закрепить на коптере. Мы предлагаем сделать это на защите, но вы можете придумать свой вариант. Крепить ленту можно с помощью штатного клеевого слоя на обратной стороне, но также не будет лишним дополнительно усилить крепление кабельными стяжками:
Подключим ленту. Для этого протянем провода от платы, и соединим их с лентой в следующем порядке: V к +5V, G к GND, S к Din.
Чтобы провода не болтались, так же закрепим их стяжками:
Теперь необходимо настроить полётный контроллер на работу с лентой. Для этого подключаемся к Betaflight configurator и переходим на вкладку Configuration и включаем опцию Led_strip.
После этого на левой стороне экрана станет доступна вкладка Led strip. Переходим на неё.
Нажимаем кнопку Wire Ordering mode и отмечаем подряд количество квадратиков, соответствующее кол-ву светодиодов на вашей ленте и подтверждаем выбор повторным нажатием кнопки.
Далее выделяем все светодиоды, зажав ЛКМ и проведя по ним, в поле Led Function выбираем Arm State. При этом ниже в разделе Special color мы можем выбрать цвет для каждого состояния.
Теперь лента в состоянии disarmed будет гореть зелёным:
А при armed загораться красным:
Проверим нашу конструкцию в деле. (Пример полета на видео здесь.)
Здесь мы видим, что коптер явно имеет какие-то проблемы. Если проверить температуру моторов после непродолжительного полёта, то можно обнаружить их повышенный нагрев. Это является признаком избыточных вибраций. Проверим это. Для этого подключимся к полётному контроллеру и на вкладке CLI введём следующие команды: > set debug_mode = gyro_scaled > save
Команда set debug_mode = gyro_scaled сообщат полётному контроллеру, что нужно дополнительно записывать в лог файл “сырые” данные с гироскопа, сразу после расшифровки, до применения к ним алгоритмов фильтрации. Командой save мы подтверждаем введённую команду.
Повторим полёт, сохраним лог полёта и откроем его с помощью Betaflight Blackbox Explorer. Чтобы сохранить лог файл, нужно в Betaflight Configurator перейти на вкладку Blackbox и нажать кнопку Activate Mass Storage Device Mode.
Контроллер перезагрузится, и в проводнике появится новый диск, на котором и будут находиться все записанные логи. Двойным щелчком откроем наш файл в Blackbox Explorer.
Контроллер перезагрузится, и в проводнике появится новый диск, на котором и будут находиться все записанные логи. Двойным щелчком откроем наш файл в Blackbox Explorer.
Теперь необходимо настроить окружение для работы. По щелчку Graph setup откроется меню настройки графиков. Здесь можно выбрать, как и какие данные отображать. Если ранее были настроены какие либо графики, нужно нажать Remove all graphs. Далее нажмём кнопку Add graph, выберем пункт Custom graph. В поле Field выбираем Gyro [roll], затем нажимаем кнопку Add field и выбираем для этого поля Gyro scaled [roll]. Нажимаем Save changes. Чтобы оценить характер вибраций, нам потребуется инструмент Analyser Display. Включается в панели Overlay в верхней части экрана.
Для удобства анализатор можно развернуть на весь экран. Теперь проанализируем вибрационную картину. Для этого выведем на экран анализатора спектр данных с гироскопа по оси ROLL до применения алгоритмов фильтрации.
Разберёмся, что показывает анализатор.
По горизонтали располагаются частоты, по вертикали - амплитуда колебаний. Мы видим узкий высокий пик на частоте ~36Гц, это типичная картина резонанса. В нашем случае резонанс возник из-за размещения достаточно большой массы (лента) на гибком упругом элементе конструкции (защита). Посмотрим, справились ли фильтры с такой вибрацией. Переключим анализатор на данные с гироскопа после фильтров.
Видим, что картина практически не изменилась. Вспомним, как были настроены фильтры перед этим полётом.
У нас были включены три фильтра: динамический режекторный и два фильтра низких частот. Если говорить простым языком, глядя на спектр вибраций, то полезные данные, которые требуются алгоритму стабилизации, находятся в полосе ~1-7 Гц, всё остальное - шум, который нужно отфильтровать. Фильтры низких частот имеют один параметр - частота среза (Cutoff frequency). Всё, что ниже этой частоты фильтр пропускает без изменений, а всё, что выше - подавляет, причём чем больше частота шума, тем сильнее происходит подавление. Такой фильтр подходит для фильтрации широкополосных высокочастотных шумов. Режекторный фильтр работает “ювелирно”, подавляя узкую полосу шума. Имеет центральную частоту и частоту среза. Подавление максимально на центральной частоте и ослабевает к частоте среза в обе стороны от центральной частоты. Динамический фильтр в betaflight в реальном времени находит пики вибраций и подавляет их с помощью режекторного фильтра. Почему же такой мощный пик вибраций от резонанса защиты остался незамеченным? Всё очень просто - динамический фильтр работает в диапазоне частот 200-400 Гц, это связано с тем, что чем ниже частота, тем большую задержку вызывает её фильтрация. В связи с этим в общем случае рекомендуется на частотах ниже 100 Гц устранять непосредственно причину вибраций, а не отфильтровывать их программно. Но в некоторых случаях можно попытаться подавить такие вибрации с помощью ручной настройки фильтров.
В Betaflight configurator на вкладке PID Tuning в разделе Filter Settings включим Notch фильтр и установим следующие настройки: центральная частота -35 Гц, частота среза - 25 Гц. Для сохранения настроек необходимо нажать кнопку Save.
Повторим полёт, снимем лог с полётного контроллера и аналогично описанному выше способу оценим разницу спектра вибраций до и после фильтрации. Полёт
До фильтров:
После: Как видно, режекторный фильтр эффективно подавляет узкополосные вибрации. Но характер конструкции защиты таков, что она даёт вибрационный “хвост” на низких частотах, который вплотную прилегает к полезным данным, и фильтровать его не представляется возможным. Из вышеописанного можно сделать вывод, что размещение каких-либо элементов на защите негативно влияет на лётные характеристики.
Попробуем перенести ленту с защиты на шасси квадрокоптера.Для того, что бы было удобнее крепить ленту, изменим 3D модель шасси, добавив площадку для крепления отрезков светодиодной ленты.
От ленты отрежем две части по три сегмента и закрепим их стяжками. Подключение осуществляется параллельно, т.е. контакт 5V обеих лент подключается к контакту V на плате, Din - к S, GND - к G.
В настройках Betaflight мы можем ничего не менять, т.к. два параллельно подключенных участка ленты по 3 сегмента будут нормально работать даже если полётный контроллер будет настроен на работу с лентой на 9 сегментов. Это связано с тем, что в ленту подаётся пакет данных, рассчитанный на заданное количество светодиодов, и каждый светодиод “откусывает” от этого пакета свою часть и отсылает оставшиеся данные дальше. В таком виде можно переходить к испытаниям и дальнейшим полета.
Last updated