MultiWii на самолете

Flutter

В декабре подключил Remzibi и на этом успокоился. А на днях попытался настроить Вия, и оказалось, что работают не все сервы. Подробнее тут. Буду рад любой помощи.

8 days later
fat_hamster

это мне удачно ссылку дали 😃

вчера наконец кроме размышлений заставил себя что-то сделать - а именно подключил контроллер от коптера к самолету. Контроллер 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, наверное просто “-” добавлять для реверса

fat_hamster

у меня затык с окончательной деталью перед запуском - с этим *** армингом двигателя

по разным причинам хочу, чтобы двигатель сразу со старта был “армирован” - у меня мотор отключается в аппе тумблером и меня более чем устраивает
но что надо для этого сделать - хз

вроде очевидный вариант - в гуи поставить “галочки” на arm для всех 3-х положений какого-нибудь AUX - а вот болт; работает один раз, после перезагрузки контроллера галки стоят, а арм не активен (не подсвечен зеленым), ну и мотор не работает естественно

lotophagi

Вий, с включенным армингом, при подаче питания, залипает. Он стартовать должен с выключенным армом.

fat_hamster
lotophagi:

Вий, с включенным армингом, при подаче питания, залипает. Он стартовать должен с выключенным армом.

инфа 100%? 😉
ибо печаль тогда 😦 у меня закончились порты ввода на контроллере - похоже я сжег D8 случайно, так что на aux повесить не получиться…

schs
fat_hamster:

у меня закончились порты ввода на контроллере

Завести по PPM?

fat_hamster

Вот тут я немного туплю 😃
Надо читать про этот Ваш РРМ; это вообще применимо к любой аппе? К 9rx в частности?

gena_g
fat_hamster:

у меня затык с окончательной деталью перед запуском - с этим *** армингом двигателя

по разным причинам хочу, чтобы двигатель сразу со старта был “армирован” - у меня мотор отключается в аппе тумблером и меня более чем устраивает
но что надо для этого сделать - хз

вроде очевидный вариант - в гуи поставить “галочки” на arm для всех 3-х положений какого-нибудь AUX - а вот болт; работает один раз, после перезагрузки контроллера галки стоят, а арм не активен (не подсвечен зеленым), ну и мотор не работает естественно

Я добавил в multiwii.cpp

#if defined(FIXEDWING)
if ((rcData[THROTTLE] < MINCHECK) && (calibratingG == 0) && f.ACC_CALIBRATED) go_arm();
#endif

schs
fat_hamster:

Надо читать про этот Ваш РРМ; это вообще применимо к любой аппе? К 9rx в частности?

Он не мой 😃 Смысл - передача нескольких каналов(чаще 8) через один провод. Аппа не важна, важно чтобы приёмник умел его отдавать.

fat_hamster
gena_g:

if ((rcData[THROTTLE] < MINCHECK) && (calibratingG == 0) && f.ACC_CALIBRATED) go_arm();

2-е и 3-е условия и так проверяются в go_arm; а в каком месте вставлять? что-то у меня пока не получается 😦

gena_g
fat_hamster:

2-е и 3-е условия и так проверяются в go_arm; а в каком месте вставлять? что-то у меня пока не получается 😦

Я ставил перед
//**** PITCH & ROLL & YAW PID ****

fat_hamster
gena_g:

Я ставил перед

все, получилось вроде, тупил (ненавижу этот чисто сишный код с миллиардом дефайнов)

fat_hamster

вчера наконец доделал прошивку - сделал как: после рестарта мотор дизармленный, так что работает настройка через гуй/блютуз; а если двинуть газ вверх (+у меня надо тумблер переключить, иначе двигай - не двигай, мотор не включится) - мотор армится

пара непоняток:

  1. со временем наростает какая-то погрешность “курсовая”: включаю, переключаю на angle или hor (самолет стоит на столе) - плоскости не меняют положения; но если пройдет какое-то время и переключится на стабилизацию - рулевые плоскости перемещаются
    у меня V-микс на хвосте, так что так сразу не скажешь, какая и в какую сторону, вечером буду играться
    но если тронуть руль направления и отпустить - рулевые плоскости становятся в нейтральное положение
    включен или выключен компас - мне показалось, что разницы никакой; барометр отключен
  2. самолет лежал на идеально горизонтальном столе (проверял пузырьком); откалибровал аккселерометр - после этого ведь самолет должен пытаться удерживать вот такое положение в полете? а он у меня в воздухе при включении стабилизации летит идеально ровно (видно визуально), НО слегка наклонив нос вниз 😦

удачный запуск (после нескольких неудачных) произошел уже когда начало резко темнеть, так что уже не разбирался, оставил “на потом” (всю неделю никаких вариантов выйти попускать, буду на кухне крыльями махать 😃 )

13 days later
fat_hamster

в субботу полетал, со стабилизацией, работает; сделал наконец какие-то выводы

со временем у меня нарастает погрешность, которая проявляется в том, что если через какое-то время после включения питания включить стабилизацию (неважно, angle или hor), то на хвосте (у меня V-хвост на самолете) одна плоскость приподнимается вверх, другая опускается вниз; на немного

эквивалентно рулению руддером (если кстати двинуть немного руль направления в любую сторону и вернуть назад - плоскости становятся в “нулевое” положение)

уверен более чем, что это именно то, что есть - контроллер пытается “подрулить” руддером, курс держит… а почему решает, что уходит с курса - потому что силовые провода действуют на компас

вот самолет

мотор - в хвосте толкающий, под (3) прячется контроллер и приемник, плюс-минус аккселерометр находится в цт самолета; (2) - это аккумулятор

силовые провода от акка идут к esc (5), мимо контроллера естественно

и ничего-то с этим не сделать 😦

1 month later
mbgr

Выложили бы прошивку попробывать.

fat_hamster

Попробовать что?
Я взял 2.3 прошивку, только дописал кусок для v - хвоста и чуть изменил арминг… Могу и выложить, секретного ничего там

mbgr
fat_hamster:

Могу и выложить, секретного ничего там

Если можно.

fat_hamster

замотался-запамятовал, что обещал! исправляюсь

mw2.3-airplane.zip

там в конфиге уже мои настройки, надо перепроверить - расходы у серв, где какая; какие-то коменты себе оставлял

с армом я выкрутился как - нельзя все время чтоб мотор был “заармлен” - тогда конфигуратор не конфигурит ничего
так что после рестарта контроллера мотор дизармлен, можно через гуи настраивать; а если дать газ (у меня тумблер надо для этого переключить) - то мотор армится раз и навсегда

так что и в поле настраивать с планшетом/ноутом можно, и проблемы с армингом вроде нет

7 days later
lotophagi
fat_hamster:

пара непоняток: 1) со временем наростает какая-то погрешность “курсовая”: включаю, переключаю на angle или hor (самолет стоит на столе) - плоскости не меняют положения; но если пройдет какое-то время и переключится на стабилизацию - рулевые плоскости перемещаются у меня V-микс на хвосте, так что так сразу не скажешь, какая и в какую сторону, вечером буду играться но если тронуть руль направления и отпустить - рулевые плоскости становятся в нейтральное положение включен или выключен компас - мне показалось, что разницы никакой; барометр отключен

Столкнулся с той же проблемой увода хвоста в режиме стаба на multiwii 2.3. Нашел решение Yaw I = 0. Хвост перестал дрейфовать.

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

flygreen

Александр, держите пжл в курсе про ваши наработки. Есть идея таки примостить вий на ская… Пока вот увлекся коптерами, летом планирую до самика добраться.

andreeww

У меня прошивка 2.3, руль направления не дрейфует, но при включении любого стабилизированного режима полета резко начинает поворачивается и будет в этом положении пока я не разверну самолет в определенное положение, тогда он становится ровно, кто знает как с этим бороться?