MultiWii
Система стабилизации многороторных систем (на момент написания данного текста возможно управление трикоптером, “+” и “Х” квадкоптером, а также Y6 и HEX6 конфигураций). Также возможно использование как стапилизированного подвеса камеры) с открытым кодом, изначально основанная на ArduinoProMini 5V 16MHz, и использующая датчики (гироскопы и акселерометры), расположенные на аксессуарах игровой приставки Wii: WiiMotionPlus (WMP) и опционально - Nunchak (NK).
Алгоритмы стабилизации используют PID (ПИД) регулятор, совмещенный с фильтром Калмана.
Получила свою популярность за счет своей дешевизны (дешевле т.н. “безмозглых” , использующих 4 готовых модельных гироскопа), а также простоты сборки, обусловленной модульностью конструкции с широко распространенными и дешевыми модулями: Arduino (15-25$), WMP (7-25$), NK (4-15$). Смена прошивки также не требует специального оборудования и навыка работы со специализированным программным обеспечением.
Сейчас возможно использовать различные датчики совместно с исходным программным обеспечением и платами.
Основная ветка обсуждения на rcgroups
Build log от kinderkram
Основные настройки в подробностях
HOWTO
В этих обсуждениях есть ВСЯ необходимая для понимания и повторения информация, рассмотрены разные проблемы и методы их решения. Не ленитесь пользоваться поиском!
Физические схемы подключения элементарны и не представляют сложностей для повторения.
Подключение опционального NK к WMP
Схема подключения в трикоптере
“+” Квадкоптер
Для простоты подключения элементов, существуют различные вспомогательные платы.
Из готовых следует отметить плату от мастера пилотажа Warthox
Также существует большое количество плат не доступных коммерчески, но доступных бесплатно в виде разводки и картинок. Их список также доступен по ссылкам, указанным выше.
Ну наконецто 😃
От себя добавлю: покупка клонов WM+ и нунчак лотерея еще та, закупайтесь в проверенных местах, а для этого придется всетаки перелопатить все указанные ссылки хотя бы поиском.
Кстати, ссылка на репозиторий всех версий кода для multiwii.
Из доступных к заказу в РФ ищите carduino nano, freeduino с USB интерфейсом. Из-за границы seeeduino. Желательно сразу на Атмеге 328 и выше!
Леонид спасибо за тему и подробный фак.
от меня метод настройки ПИДов
выставляем экспоненты, расходы, так чтобы моторы запускались
начинаем настройки PID
изначально все по нулям.
начинам увеличивать Р до момента появления осциляций. я настраивал держа в руке на весу. иногда для принудительного возникновения осциляций нужно с хорошей амплитудой и резко наклонять коптер. далее настраиваем I и D , Увеличиваем но без явного фанатизма. советую проверять на предмет возникновения осциляций. если при резких кренах коптер начинает прыгать и моторы обрубаются- уменьшить P.
если у вас есть нунчак, причиной осциляций может быть сильно завышенное автовыравнивание. советую так же начинать с минимума.
если в комнате коптер летает хорошо а на улице дергается- уменьшать либо чувствительность либо автовыравнивание.
хорошей “аэродинамической трубой” для выявления дерганий у меня служит пылесос. включаем его и летаем выходящим из него воздухом
лотерея еще та, закупайтесь в проверенных местах
Нет гарантий. Сегодня в этом месте одни платы, завтра другие…
У меня плата - вообще не рассматриваемая на 560 страницах форума . Но работает …
от меня метод настройки ПИДов
Что сделали? А были против…
сильно против WII? был против в начальной стадии постройки коптеров. потом подрос повзрослел понял что надо расти дальше. кстати безмозглый вариант мне нравился больше
MWC (MultiWiiController) с настройками только по P каналу PID регулятора абсолютно точно повторяет поведение безмозглого варианта…
Единственно что, MEMS датчики (стоящие в WMP) значительно чувствительнее к вибрациям, чем пьезо-датчики в обычных гироскопах, поэтому требуют виброизоляции и виброразвяки.
Чуть дополню:
Для плат ArduinoProMini 5V 16MHz и некоторых других, не имеющих на борту USB-адаптера, нужен еще USB-Serial adapter www.sparkfun.com/commerce/product_info.php?product… .
Для последних версий прошивок 1.5 и 1.6 можно применять и 168-ю атмегу, при условии отключения в программе настройки через ЛСД дисплей. Более ранние прошивки не проверял.
rcopen.com/forum/f123/topic156768/1774
Перемычку для работы нунчака на плате WMP поставил? На моей плате 1 с 3 контактом.
Спасибо Сергей!! Слона то я и не заметил 😃
Пошел курить форум дальше, на тему:
Почему уровни акселерометра на разной высоте в окне просмотра,
Нормально ли что cycle time в районе 6000 независимо от скорости I2C…
Вот хороший магазинчик на ebay по ардуинам платкам и аксессуарам к ней.
shop.ebay.com/ge-th2009/m.html
Почему уровни акселерометра на разной высоте в окне просмотра,
Нормально ли что cycle time в районе 6000 независимо от скорости I2C…
ACC_PITCH, ACC_ROLL должны быть по нулям, ACC_Z в районе 200
6000 нормально, можно понизить на свой страх и риск выставив частоту 400khz и снизить задержку interleaving_delay с 3000 до 2000 или даже 1000.
Питание WMP & Nunchak - 5 вольт? А ардуины легко делать и самому.
А вот AlexInParis мне ответил, что cycle time выше 4500 - это плохо.
Мне помог переход на питание 3.3В со стандартных 5В.
Подскажите кто знает, такого ардуино нано будет достаточно для WMP + BMA020?
А вот AlexInParis мне ответил, что cycle time выше 4500 - это плохо.
Мне помог переход на питание 3.3В со стандартных 5В.
Тоесть просто перешел и цикл уменьшился ничего не меняя в скетче? У меня такой фокус прошел только уменьшив INTERLEAVING_DELAY до 1200. Сейчас у меня цикл 2300 с копейками при частоте 400khz и 3.3v. Когда сильно трясу платку то цикл разово может поднятся до 3700 .
Подскажите кто знает, такого ардуино нано будет достаточно для WMP + BMA020?
Алил, конечно подойдет, только за теже деньги можно купить Кардуино Нано 328, уже в Москве, с возможностью замены если что. Парни находятся в районе Шуваловского, можно договорится о самовывозе и не платить за доставку.
Тоесть просто перешел и цикл уменьшился ничего не меняя в скетче?
Практически да.
Почему уровни акселерометра на разной высоте в окне просмотра,
Нормально ли что cycle time в районе 6000 независимо от скорости I2C…
Видимо приемник не подключали… После процедуры обнуления-нормализации - придет в норму.
От скорости I2C практически не зависит.
Цикл с акселлерометром около 6000. Без оного - около 3000
Практически да.
Всмысле практически, были еще какието доработки? )) А версия скетча какая?
Практически да.
С 12- пина ушли?
Т.е уменьшили время цикла все же снижением питания или уходом от принудительных сбросов нунчака?