MultiWii на самолете
Multiwii с настройками по дефолту прекрасно летает на самолете.
Вышла новая прошивка с возвратом, но я ее не тестировал, не на чем. Самолет мой улетел. Отказал мотор после того, как отрубилось управление, и самолет унесло ветром хвостом вперед. Последние координаты по видеоканалу я видел на расстоянии 7-8км и 500м высоты от места взлета. Это максимум, что пробил 200мВт передатчик на 5.8Г. Найти самолет не удалось.
Печаль.
В декабре подключил Remzibi и на этом успокоился. А на днях попытался настроить Вия, и оказалось, что работают не все сервы. Подробнее тут. Буду рад любой помощи.
это мне удачно ссылку дали 😃
вчера наконец кроме размышлений заставил себя что-то сделать - а именно подключил контроллер от коптера к самолету. Контроллер Crius SE v2, самолет - пушер с V- хвостом
собрал, код чуть подправил, что-то заработало (лежит на столе в куче, самолет собрать не было ни метса, ни времени… час ночи однако) - плату наклоняю, сервы отрабатывают что-то
слегка “истерично”, настройку для чувствительности видел, но то на потом
я туплю, но не могу найти в коде (2.3 мультивии), где инвертировать сервы?! для элеронов инвертировал в гуе одну машинку, но то не дело, если перешью со сбросом eeprom и забуду про донастроить
для хвоста вообще пока хардкодом микс сделал
с одной стороны, делаю себе, хардкоды - не страшно; кроме того, там же есть деф MY_PRIVATE_MIXING, можно свой код в отдельный файлик, тогда и проблем с обновлением исходников никаких
а с другой - “абидно, слушай”… все цитируют строчку для раскомментирования реверса серв, но ее в коде нет (правда мне лень было исходники 2.2 посмотреть, может поменялось что-то в коде)
кажется мне я вчера зря поленился и не посмотрел, что вот это в config.h делает
/* if you want to preset min/middle/max values for servos right after flashing, because of limited physical
* room for servo travel, then you must enable and set all three following options */
//#define SERVO_MIN {1020, 1020, 1020, 1020, 1020, 1020, 1020, 1020}
//#define SERVO_MAX {2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000}
//#define SERVO_MID {1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500} // (*)
//#define FORCE_SERVO_RATES {30,30,100,100,100,100,100,100} // 0 = normal, 1= reverse
(у меня есть оправдание конечно - спать хотелось)
FORCE_SERVO_RATES наверно надо раскоментить и править; из комента правда непонятно, какие 0, какие 1, если там число до 100, наверное просто “-” добавлять для реверса
у меня затык с окончательной деталью перед запуском - с этим *** армингом двигателя
по разным причинам хочу, чтобы двигатель сразу со старта был “армирован” - у меня мотор отключается в аппе тумблером и меня более чем устраивает
но что надо для этого сделать - хз
вроде очевидный вариант - в гуи поставить “галочки” на arm для всех 3-х положений какого-нибудь AUX - а вот болт; работает один раз, после перезагрузки контроллера галки стоят, а арм не активен (не подсвечен зеленым), ну и мотор не работает естественно
Вий, с включенным армингом, при подаче питания, залипает. Он стартовать должен с выключенным армом.
Вий, с включенным армингом, при подаче питания, залипает. Он стартовать должен с выключенным армом.
инфа 100%? 😉
ибо печаль тогда 😦 у меня закончились порты ввода на контроллере - похоже я сжег D8 случайно, так что на aux повесить не получиться…
у меня закончились порты ввода на контроллере
Завести по PPM?
Вот тут я немного туплю 😃
Надо читать про этот Ваш РРМ; это вообще применимо к любой аппе? К 9rx в частности?
у меня затык с окончательной деталью перед запуском - с этим *** армингом двигателя
по разным причинам хочу, чтобы двигатель сразу со старта был “армирован” - у меня мотор отключается в аппе тумблером и меня более чем устраивает
но что надо для этого сделать - хзвроде очевидный вариант - в гуи поставить “галочки” на arm для всех 3-х положений какого-нибудь AUX - а вот болт; работает один раз, после перезагрузки контроллера галки стоят, а арм не активен (не подсвечен зеленым), ну и мотор не работает естественно
Я добавил в multiwii.cpp
#if defined(FIXEDWING)
if ((rcData[THROTTLE] < MINCHECK) && (calibratingG == 0) && f.ACC_CALIBRATED) go_arm();
#endif
Надо читать про этот Ваш РРМ; это вообще применимо к любой аппе? К 9rx в частности?
Он не мой 😃 Смысл - передача нескольких каналов(чаще 8) через один провод. Аппа не важна, важно чтобы приёмник умел его отдавать.
if ((rcData[THROTTLE] < MINCHECK) && (calibratingG == 0) && f.ACC_CALIBRATED) go_arm();
2-е и 3-е условия и так проверяются в go_arm; а в каком месте вставлять? что-то у меня пока не получается 😦
2-е и 3-е условия и так проверяются в go_arm; а в каком месте вставлять? что-то у меня пока не получается 😦
Я ставил перед
//**** PITCH & ROLL & YAW PID ****
Я ставил перед
все, получилось вроде, тупил (ненавижу этот чисто сишный код с миллиардом дефайнов)
вчера наконец доделал прошивку - сделал как: после рестарта мотор дизармленный, так что работает настройка через гуй/блютуз; а если двинуть газ вверх (+у меня надо тумблер переключить, иначе двигай - не двигай, мотор не включится) - мотор армится
пара непоняток:
- со временем наростает какая-то погрешность “курсовая”: включаю, переключаю на angle или hor (самолет стоит на столе) - плоскости не меняют положения; но если пройдет какое-то время и переключится на стабилизацию - рулевые плоскости перемещаются
у меня V-микс на хвосте, так что так сразу не скажешь, какая и в какую сторону, вечером буду играться
но если тронуть руль направления и отпустить - рулевые плоскости становятся в нейтральное положение
включен или выключен компас - мне показалось, что разницы никакой; барометр отключен - самолет лежал на идеально горизонтальном столе (проверял пузырьком); откалибровал аккселерометр - после этого ведь самолет должен пытаться удерживать вот такое положение в полете? а он у меня в воздухе при включении стабилизации летит идеально ровно (видно визуально), НО слегка наклонив нос вниз 😦
удачный запуск (после нескольких неудачных) произошел уже когда начало резко темнеть, так что уже не разбирался, оставил “на потом” (всю неделю никаких вариантов выйти попускать, буду на кухне крыльями махать 😃 )
в субботу полетал, со стабилизацией, работает; сделал наконец какие-то выводы
со временем у меня нарастает погрешность, которая проявляется в том, что если через какое-то время после включения питания включить стабилизацию (неважно, angle или hor), то на хвосте (у меня V-хвост на самолете) одна плоскость приподнимается вверх, другая опускается вниз; на немного
эквивалентно рулению руддером (если кстати двинуть немного руль направления в любую сторону и вернуть назад - плоскости становятся в “нулевое” положение)
уверен более чем, что это именно то, что есть - контроллер пытается “подрулить” руддером, курс держит… а почему решает, что уходит с курса - потому что силовые провода действуют на компас
вот самолет
мотор - в хвосте толкающий, под (3) прячется контроллер и приемник, плюс-минус аккселерометр находится в цт самолета; (2) - это аккумулятор
силовые провода от акка идут к esc (5), мимо контроллера естественно
и ничего-то с этим не сделать 😦
Выложили бы прошивку попробывать.
Попробовать что?
Я взял 2.3 прошивку, только дописал кусок для v - хвоста и чуть изменил арминг… Могу и выложить, секретного ничего там
Могу и выложить, секретного ничего там
Если можно.
замотался-запамятовал, что обещал! исправляюсь
там в конфиге уже мои настройки, надо перепроверить - расходы у серв, где какая; какие-то коменты себе оставлял
с армом я выкрутился как - нельзя все время чтоб мотор был “заармлен” - тогда конфигуратор не конфигурит ничего
так что после рестарта контроллера мотор дизармлен, можно через гуи настраивать; а если дать газ (у меня тумблер надо для этого переключить) - то мотор армится раз и навсегда
так что и в поле настраивать с планшетом/ноутом можно, и проблемы с армингом вроде нет
пара непоняток: 1) со временем наростает какая-то погрешность “курсовая”: включаю, переключаю на angle или hor (самолет стоит на столе) - плоскости не меняют положения; но если пройдет какое-то время и переключится на стабилизацию - рулевые плоскости перемещаются у меня V-микс на хвосте, так что так сразу не скажешь, какая и в какую сторону, вечером буду играться но если тронуть руль направления и отпустить - рулевые плоскости становятся в нейтральное положение включен или выключен компас - мне показалось, что разницы никакой; барометр отключен
Столкнулся с той же проблемой увода хвоста в режиме стаба на multiwii 2.3. Нашел решение Yaw I = 0. Хвост перестал дрейфовать.
Вернулся ко мне через полтора месяца улетевший самолет, зимовал в лесу на дереве. Сейчас решил восстановить самолет и разобраться с новой версией прошивки RTH. Думаю возобновить полеты.