Серия «VR, AI, провода и пена»

16

VR, AI, провода и пена

Серия VR, AI, провода и пена

Возникла идея скрестить пульт от VR шлема и детский метательный планер.

Детский метательный планер с VR пультом

Детский метательный планер с VR пультом

Чтобы не вышло слишком длинно сделаю несколько отдельных статей для каждого этапа эксперимента.

Концепция и выбор запчастей

Всё должно быть легально, легко переноситься и управляться одной рукой.

Буду использовать то что есть в наличии дома либо максимально доступные и дешёвые комплектующие с Авито и Алика.

Тушка

Выбрал обычный планер из EPP, это доступно и конструкция легко воспроизводима.

Метательный планер на Авито

Метательный планер на Авито

Немаловажно ещё то, что прохожим внешний вид самолёта знаком по витринам Союзпечати и вопросов у них не должно возникать. Остановился на размахе крыльев 48см. Есть еще 36см и 85см. Маленький будет хуже летать, а большой с обвесом уже не влезет в 150г.

Электроника

С давних пор валяется кучка запчастей от вертолётика Pilotage Стрекоза Мини.

Вертолет Пилотаж Стрекоза Мини (Avito)

Вертолет Пилотаж Стрекоза Мини (Avito)

Аппаратура была переделана под использование с симулятором FPV Freerider, а вот две сервы ждали своего часа.

Сервопривод вертолета

Сервопривод вертолета

Сервы с маркировкой PL0609-02D, 4 грамовые, на 20 зубьев, разъем JST 1.25мм, питаются напрямую от 1S аккума.

Аккумулятор буду использовать 6 грамовый от Mobula6 на 250mAh.

Приемник

Приемником будет выступать плата с ESP32. Если пульт будет с BLE, то подойдёт любая плата: ESP32S, ESP32H, ESP32C и обычная. Если пульт с Bluetooth, то заработает только обычная ESP32.

Lolin32 Lite на обычной ESP32

Lolin32 Lite на обычной ESP32

Одна из самых легких плат на ESP32 - Lolin32 lite. На ней есть запаяный разъем под аккумулятор, но если решите подключать батарейку от тинивупа с таким же разъемом проверяйте полярность.

Пульт

У меня нашелся самый простой восьмикнопочный с аналоговым джойстиком, именно этот с Bluetooth, но вроде как бывают в таком же корпусе с BLE.

VR контроллер

VR контроллер

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

Прошивка

Проект (пока) несложный, поэтому код буду писать для Arduino в какой-нибудь простой бесплатной иишке, например DeepSeek. Рабочий вариант получается быстро и с первого раза. Код буду выкладывать на Github, там же лежат файлы stl от качалок и кабанчиков.


На этом первая часть закончена. Выбор основных компонентов закрыт, осталось собрать это в кучу и заставить работать. Следующая часть будет про подключение VR контроллера к ESP32. Если появятся вопросы по текущему этапу — напишу дополнение к этой части.

Показать полностью 6
16

Сборка планера

Серия VR, AI, провода и пена

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

Сначала канцелярским ножом отрезал кусок потолочной плитки, зашкурил рисунок и вклеил 1мм карбоновый пруток. Затем обтянул цветным скотчем. Всё это должно усилить руль.

Потолочка с карбоновым прутком (карусель)

Весь пенопласт и самолетную пену режу 9мм канцелярским ножом со свежим лезвием.

Из пачки соуса швейным ножом вырезал петли.

Порезанный пакет от соуса Тар-Тар

Порезанный пакет от соуса Тар-Тар

На thingiverse не нашел качалок от своей сервы, начал переделывать то что есть, в итоге нарисовал собственный комплект под свои сервы. Модели положил на Github проекта.

Комплект кабанчиков

Комплект кабанчиков

Сделал прорези посередине торцов руля и вклеил туда ухупором петли.

Вклееный руль высоты

Вклееный руль высоты

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

Серва установлена на свое место

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

Сборка тяги (карусель)

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

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

Канцелярским ножом вырезал отсек под плату ESP32 с аккумулятором.

Вырезаные в корпусе самолёта отсеки

Вырезаные в корпусе самолёта отсеки

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

Подбирал разные грузы для смещения ЦТ ближе к носу, попробовал припой, стальные шарики, болты и гайки M6, свинцовые пломбы, в итоге остановился на 10р монетах.

Приемник и аккумулятор на своих местах

Фиксирую кабину куском велосипедной камеры.

Планер с рулём высоты

Планер с рулём высоты

Самолет стал весить 70г, немного увеличилась площадь крыльев. Покидал тушку с выключенной электроникой для проверки летных качеств и такое ощущение что немного отклонив сервой хвост вверх он начинает парить лучше чем до переделки.

В следующей части расскажу про прошивку ESP32 и подключение VR контроллера.

Показать полностью 15
11

Подключение VR контроллера к ESP32

Серия VR, AI, провода и пена

Чтобы управлять сервами на нашем самолете нужно передать с VR контроллера на ESP32 аналоговые значения c двух осей джойстика.

Так как контроллер у меня с Bluetooth, буду использовать библиотеку Bluepad32 для Arduino. Устанавливается она через менеджер плат, для этого нужно добавить в настройках ссылку на json.

Последняя доступная через Arduino версия Bluepad32 - 4.1.0

Последняя доступная через Arduino версия Bluepad32 - 4.1.0

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

Настройки платы

Скетч собрал в DeepSeek и выложил на Github. Можно просто скопировать и залить на плату.
После прошивки порядок действий такой:

  1. Ресет ESP32 с кнопки

  2. Включить VR контроллер

  3. Нажать одновременно @+A

  4. Подождать несколько секунд, плата ищет беспроводной gamepad, когда найдет включается LED (pin22)

  5. Нажать одновременно @+B

После этого в терминал Arduino будут сыпаться значения с осей и кнопок VR контроллера, а на пины 12 и 14 начнет подаваться сигнал управления сервами.

Припаял землю и сигнал сервы к контактам G и 12, а питание к ноге разъема аккумулятора.

Lolin32 Lite

Lolin32 Lite

Закрываю и проверяю.

Показать полностью 4 1
9

Ретранслятор

Серия VR, AI, провода и пена

Продолжение. Начало: 1, 2, 3.

После тестов планера с приемником на улице стало понятно что дальность Bluetooth у VR контроллера никакая. Пара метров - и сервы начинают подлагивать, в 5 метрах связи уже нет. Запустить с определенным положением руля можно, но управлять полетом уже не получится.

Решил пускать сигнал с VR пульта через ретранслятор. Тем более что изначально планировалось ставить на самолёт более лёгкую плату - двухграмовую ESP32C3 Pro Mini с выносной антенной, но из-за того что пульт не поддерживал BLE пришлось делать на Lolin32 Lite с обычным ESP32.

ESP32C3 Pro Mini

ESP32C3 Pro Mini

Гемини подсказал, что связать две платы ESP32 можно по протоколу ESP-NOW и это будет прям очень быстро (единицы миллисекунд) и далеко (сотни метров).

VR контроллер, ретранслятор и приемник

VR контроллер, ретранслятор и приемник

Схема такая получается: сигнал с VR контроллера отправляется по Bluetooth на плату ESP32, которая висит с павербанком где-то рядом на дереве. Миксуем каналы так как нам нужно и сразу же отправляем пакет дальше по ESP-NOW на приемник самолёта.

Ретранслятор из ESP32 с павербанком

Ретранслятор из ESP32 с павербанком

Плату ESP32 для работы ретранслятором доделывать не нужно, возможно потом добавлю буззер для оповещений и всё. А вот на плате приемника надо закоротить диод для питания от 1S аккумулятора, иначе будет вырубаться уже при 3.9В. Если использовать внешнюю антенну через IPX разъем, то перепаять переключатель рядом с SMD антенной на сторону разъема.

ESP32C3 с закороченым защитным диодом

ESP32C3 с закороченым защитным диодом

Чтобы связать приемник с ретранслятором нужно включить платы с прижатым к земле контактом Bind (pin6 на приемнике, pin13 на ретрансляторе). Приемник в состоянии бинда шлёт в эфир свой мак адрес, а ретранслятор ждет такое сообщение и получив запишет его.

Далее от приемника требуется только принять пакет с каналами управления и выдать PWM на пины сервам/моторам. Весь тюнинг будет делаться через прошивку ретранслятора, так что приемник можно паковать внутрь самолёта.

Средняя задержка на приемнике 12мс

Средняя задержка на приемнике 12мс

Скетчи для ретранслятора и приемника загрузил на Github. В папке со скетчем нужно переименовать config_template.h в config.h и внести нужные настройки. Для приемника это например значения каналов при Failsafe, а для ретранслятора - калибровки контроллера и выбор микшера.

На кнопки VR контроллера ABCD повесил через микшер трим Yaw/Pitch чтобы можно было компенсировать потенциальную разницу в установке моторов и начальный угол руля высоты.

Раскладка кнопок на контроллере VR Box

Раскладка кнопок на контроллере VR Box

На этом программная и аппаратная часть ретранслятора готовы. Сервопривод на столе откликается мгновенно, лаги исчезли, а связка Bluetooth + ESP-NOW работает стабильно. Дальность приема в поле на штатных антеннах составила не менее 100м, что для визуального полета мне пока будет достаточно. В следующей статье расскажу про подключение и тест моторов.

Показать полностью 6
Отличная работа, все прочитано!

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества