Кастомизированная FlySky NB4 Pro
Мужики ля какая цаца эта кастомизированная аппа FlySky NB4 Pro, про то сколько она стоить может даже думать не хочется, наверняка дороже последней модели айфона
Мужики ля какая цаца эта кастомизированная аппа FlySky NB4 Pro, про то сколько она стоить может даже думать не хочется, наверняка дороже последней модели айфона
С одной сервой планер летает не долго и не далеко, можно кинуть с горки и постараться волной провести его подальше. Но это нужно ходить подымать и забираться обратно. Лениво, напрашиваются элероны и моторчик.
Для элеронов нужно еще 2 сервы и резка крыла. А это дополнительный вес и уменьшение прочности. Гемини подсказал вариант реализации поворота без руля направления и элеронов только за счет дифференциальной тяги двух моторов.
По идее при разном газе получится не только управлять рысканием, но еще и креном за счет разных реактивного момента и подъемной силы. Собственно китайский SU-35 только двумя моторами и управляется.
Моторы выбирал между коллекторными 8520 и бесколлекторными от тинивупов. Вторые будут меньше по весу, тяги должно быть больше, предсказуемей поведение при разрядке. На алике для них заказал микро регуляторы, так как те что есть тяжелые, а плату от вупа пихать в самолет жалко. Плюс аликовские копеечные. На странице товара указана неправильная распиновка, нужно смотреть по шелкографии на плате.
Управляются регуляторы той же библиотекой, что и сервоприводы, значения передаются в микросекундах. Гемини присоветовал добавить сглаживание чтобы сильно не дергать питание. Также на приемнике нужно выставить Failsafe(PULSE_MIN) для обоих каналов к котором подключены моторы, тогда при потере связи самолет не улетит, а если сядет не станет наматывать траву винтами.
На Thingiverse попалась идея крепления сборки такого регулятора с мотором на передней кромке крыла. Немного переделал под себя и распечатал несколько вариантов на пробу. Удачный выложил на Github проекта в папку STL.



Крепление мотора и регулятора на крыло
В хозяйстве нашлись несколько моторов TC0803 от подбитого вупа Eachine Trashcan. Один целый, один со сломаным валом и два с погнутым. Надо два, поэтому пришлось один выпрямлять.


Выпрямление вала на моторе
Для этого разобрал мотор, снял колокол, зажал вал в патроне гравера и надел на внутреннюю часть вала стержень шариковой ручки. Нужно осторожно надавливать на стержень и после этого проверять по линейке биение противоположного конца стержня во время прокручивания патрона.
Когда вал выпрямлен, можно собирать мотор и прикручивать его вместе с ESC к креплению.
Для Dart 250G в свое время делал миниатюрные PDB под 2S аккумулятор. Одна сопля и можно ее использовать с 1S в этом проекте.


Самолетная микро PDB
Вырезал под нее отсек над крылом с доступоми к разъемам питания и сигнальному из носовой части. После установки PDB заклеил крыло: для сохранения геометрии, прочности и чтобы при падении не вылетали провода моторов.



Отсек для распределительной платы
Тестировать моторы с регуляторами нужно обязательно с надетыми пропеллерами, иначе мотор быстро раскрутится и процессор простенького ESC захлебнется в эвентах, мотор начнет троить и остановится.
Проверил силовую установку на столе, всё работает. Но после сборки выяснилось что 250mAh аккумулятор сильно греется и быстро садится. Решил открыть калькулятор ecalc и пересчитать сетап.
Подставил примерные комплектующие и посмотрел каких вообще характеристик стоит ожидать от самолета. Вышло что эффективней будет поставить двойные 55мм пропеллеры от Walkera Ladybird, а аккумулятор можно взять помощнее. Батарейка 600мАч от Eachine QX90C весит почти в 2 раза больше 250мАч, но взлетный вес не прибавился, потому что снялись носовые утяжелители.
Собрал самолет с новыми винтами и аккумом, подвесил на веревке к сушилке и потестил. Электроника хорошо отрабатывает дифференциальную тягу: при отклонении джойстика один пропеллер заметно ускоряется, создавая нужный момент для разворота. Триммировать по Yaw не пришлось, при равных значениях сигнала на моторах направление удерживается.
Сейчас самолет весит 77г и готов к полевым испытаниям. В следующей части мы наконец-то выберемся на улицу, проверим стабильность связки Bluetooth + ESP-NOW в чистом поле и узнаем, как этот малыш покажет себя в реальном полете под управлением VR-контроллера.
После тестов планера с приемником на улице стало понятно что дальность Bluetooth у VR контроллера никакая. Пара метров - и сервы начинают подлагивать, в 5 метрах связи уже нет. Запустить с определенным положением руля можно, но управлять полетом уже не получится.
Решил пускать сигнал с VR пульта через ретранслятор. Тем более что изначально планировалось ставить на самолёт более лёгкую плату - двухграмовую ESP32C3 Pro Mini с выносной антенной, но из-за того что пульт не поддерживал BLE пришлось делать на Lolin32 Lite с обычным ESP32.
Гемини подсказал, что связать две платы ESP32 можно по протоколу ESP-NOW и это будет прям очень быстро (единицы миллисекунд) и далеко (сотни метров).
Схема такая получается: сигнал с VR контроллера отправляется по Bluetooth на плату ESP32, которая висит с павербанком где-то рядом на дереве. Миксуем каналы так как нам нужно и сразу же отправляем пакет дальше по ESP-NOW на приемник самолёта.
Плату ESP32 для работы ретранслятором доделывать не нужно, возможно потом добавлю буззер для оповещений и всё. А вот на плате приемника надо закоротить диод для питания от 1S аккумулятора, иначе будет вырубаться уже при 3.9В. Если использовать внешнюю антенну через IPX разъем, то перепаять переключатель рядом с SMD антенной на сторону разъема.
Чтобы связать приемник с ретранслятором нужно включить платы с прижатым к земле контактом Bind (pin6 на приемнике, pin13 на ретрансляторе). Приемник в состоянии бинда шлёт в эфир свой мак адрес, а ретранслятор ждет такое сообщение и получив запишет его.
Далее от приемника требуется только принять пакет с каналами управления и выдать PWM на пины сервам/моторам. Весь тюнинг будет делаться через прошивку ретранслятора, так что приемник можно паковать внутрь самолёта.
Скетчи для ретранслятора и приемника загрузил на Github. В папке со скетчем нужно переименовать config_template.h в config.h и внести нужные настройки. Для приемника это например значения каналов при Failsafe, а для ретранслятора - калибровки контроллера и выбор микшера.
На кнопки VR контроллера ABCD повесил через микшер трим Yaw/Pitch чтобы можно было компенсировать потенциальную разницу в установке моторов и начальный угол руля высоты.
На этом программная и аппаратная часть ретранслятора готовы. Сервопривод на столе откликается мгновенно, лаги исчезли, а связка Bluetooth + ESP-NOW работает стабильно. Дальность приема в поле на штатных антеннах составила не менее 100м, что для визуального полета мне пока будет достаточно. В следующей статье расскажу про подключение и тест моторов.
Во время проверки выяснилось что одна из вертолетных серв сдохла – все время грелась, жужжала и дергалась. Из-за удара об землю или может стёрся проводящий слой на резисторе. Решено было ограничиться управлением одним рулём высоты, провести тесты, а креном заняться потом.
Сначала канцелярским ножом отрезал кусок потолочной плитки, зашкурил рисунок и вклеил 1мм карбоновый пруток. Затем обтянул цветным скотчем. Всё это должно усилить руль.



Потолочка с карбоновым прутком (карусель)
Весь пенопласт и самолетную пену режу 9мм канцелярским ножом со свежим лезвием.
Из пачки соуса швейным ножом вырезал петли.
На thingiverse не нашел качалок от своей сервы, начал переделывать то что есть, в итоге нарисовал собственный комплект под свои сервы. Модели положил на Github проекта.
Сделал прорези посередине торцов руля и вклеил туда ухупором петли.
Вырезал лезвием позади крыла сквозной отсек под серву и после установки забил оставшуюся полость.


Серва установлена на свое место
Из 1мм карбонового прутка и канцелярской скрепки изготовил тягу.



Сборка тяги (карусель)
Примотал к прутку куски скрепки с помощью нитки и смочил ее клеем. Циакринового не нашлось, весь высох, зато нашелся китайский двухкомпонентный, тоже просроченный, но удерживать нитку на месте способен.
Длина тяги вышла 22см, что немало, но так как усилие у нас идёт под прямым углом да и не такое оно большое получается, решил обойтись без боуденов и направляющих.
Канцелярским ножом вырезал отсек под плату ESP32 с аккумулятором.
Так же прорезал спереди углубления для грузов, с помощью которых можно будет плавно управлять центром тяжести.
Подбирал разные грузы для смещения ЦТ ближе к носу, попробовал припой, стальные шарики, болты и гайки M6, свинцовые пломбы, в итоге остановился на 10р монетах.


Приемник и аккумулятор на своих местах
Фиксирую кабину куском велосипедной камеры.
Самолет стал весить 70г, немного увеличилась площадь крыльев. Покидал тушку с выключенной электроникой для проверки летных качеств и такое ощущение что немного отклонив сервой хвост вверх он начинает парить лучше чем до переделки.
В следующей части расскажу про прошивку ESP32 и подключение VR контроллера.
Возникла идея скрестить пульт от VR шлема и детский метательный планер.
Чтобы не вышло слишком длинно сделаю несколько отдельных статей для каждого этапа эксперимента.
Всё должно быть легально, легко переноситься и управляться одной рукой.
Буду использовать то что есть в наличии дома либо максимально доступные и дешёвые комплектующие с Авито и Алика.
Выбрал обычный планер из EPP, это доступно и конструкция легко воспроизводима.
Немаловажно ещё то, что прохожим внешний вид самолёта знаком по витринам Союзпечати и вопросов у них не должно возникать. Остановился на размахе крыльев 48см. Есть еще 36см и 85см. Маленький будет хуже летать, а большой с обвесом уже не влезет в 150г.
С давних пор валяется кучка запчастей от вертолётика Pilotage Стрекоза Мини.
Аппаратура была переделана под использование с симулятором FPV Freerider, а вот две сервы ждали своего часа.
Сервы с маркировкой PL0609-02D, 4 грамовые, на 20 зубьев, разъем JST 1.25мм, питаются напрямую от 1S аккума.
Аккумулятор буду использовать 6 грамовый от Mobula6 на 250mAh.
Приемником будет выступать плата с ESP32. Если пульт будет с BLE, то подойдёт любая плата: ESP32S, ESP32H, ESP32C и обычная. Если пульт с Bluetooth, то заработает только обычная ESP32.
Одна из самых легких плат на ESP32 - Lolin32 lite. На ней есть запаяный разъем под аккумулятор, но если решите подключать батарейку от тинивупа с таким же разъемом проверяйте полярность.
У меня нашелся самый простой восьмикнопочный с аналоговым джойстиком, именно этот с Bluetooth, но вроде как бывают в таком же корпусе с BLE.
Полноценный AETR из него не достанешь, но для начала пойдет. Можно например джойстиком влево-вправо отклонять элероны, вверх-вниз - руль высоты, а двумя передними кнопками прощелкивать заданные значения газа.
Проект (пока) несложный, поэтому код буду писать для Arduino в какой-нибудь простой бесплатной иишке, например DeepSeek. Рабочий вариант получается быстро и с первого раза. Код буду выкладывать на Github, там же лежат файлы stl от качалок и кабанчиков.
На этом первая часть закончена. Выбор основных компонентов закрыт, осталось собрать это в кучу и заставить работать. Следующая часть будет про подключение VR контроллера к ESP32. Если появятся вопросы по текущему этапу — напишу дополнение к этой части.
Я бы в детстве всё что угодно бы отдал чтобы так погонять...
ПС:
-Сколько FPV‑пилотов нужно, чтобы собрать машинку?
-Один. Но ещё трое должны стоять рядом и говорить: «А если вот тут чуть-чуть поджать…»
