MultiWii на самолете

Shual
fat_hamster:

а в гуе нет инвертирования хвостовых серв? я просто уже не помню мвии гуй да и с мвии у меня все крылья были

ну или в исходниках можно покопаться - от массива в 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

до своих миксов в Output.cpp (функция mixTable, там есть большой блок "* AIRPLANE *)

дык мне кажется что просто инвертирование будет не то в “элеронном режиме” элевоны должны работать как обычно а рулении по высоте “наизнанку” если я их буду инвертировать через конфиг или гуи они ж
наверное и в "элеронном режиме свое направление поменяют… или нет ?

fat_hamster

упс, я не вчитался

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

т.е. аппой настраиваем правильные отклонение в “мануале”, а для стабилизации инвертируем для “nick” (блин, я могу неправильно называть… не помню уже)

а то, что (вдруг) меняем настройки а внешне ничего не меняется - еще ничего не значит… у меня (да и не только у меня) настройки серв через гуй - всегда какие-то танцы с бубнами, вплоть до очистки eeprom (или резета из гуя) перед каждой настройкой

John_Locke

Что делать. При включении стабилизации в полёте, хвост начинает дёргаться вправо-влево

gena_g
John_Locke:

Что делать. При включении стабилизации в полёте, хвост начинает дёргаться вправо-влево

Попробуй I yaw убрать в ноль

gena_g

Через GUI. PID по yaw параметр I поставь 0

STRIMSS

где-то читал, что компас на самолете для автовозврата не работает, т.к. на скорости “рулит” всем gps, для мультивии это тоже относится?

fat_hamster

Чисто логически - уверен что нет

Хотя бы потому - как без компаса контроллер определит куда носом лететь?

Scott_Tiger
fat_hamster:

как без компаса контроллер определит куда носом лететь?

Патриков мультивий как раз определяет курс по данным GPS, если компаса нет или если показания компаса и GPS в части курса расходятся более, чем на 10 градусов, а скорость по GPS - более 2 м/с.

STRIMSS
fat_hamster:

Хотя бы потому - как без компаса контроллер определит куда носом лететь?

Про отключение компаса при наборе скорости писали в ArduPlane если не ошибаюсь, почему бы и на вие такое не испльзовать тогда?! снова решил сделать крыл с маховием 😃

Scott_Tiger

А чем так страшен компас? Вероятность отказа поменьше, чем у GPS - в силу относительной простоты, а вероятность потери сигнала при исправном модуле - почти нулевая.

Chip=

Все сервы заработали только в инверте, но это уже хорошо, и у серв очень маленькое отклонение ( по сравнению с стандартной multiwii 2.3), куда смотреть? что менять? Кстати wingui 2.2 и multiwiiconf работает, а wingui 2.3 нет, в чем может быть проблема? И GPS работает, правельно показывает местоположение на карте, значит I2C перешивать не нужно? И последний вопрос возможен ли полет по точкам на вие с прошивкой патрика.

Доброго дня. Всетаки сервы спульта на прошивке 140402 не работают, стабилизация отрабатывает при наклонах и все . Может у кого есть заведомо рабочая прошивка на пробу, напомню что в стандартной 2,3 все работает, все летает, значит подключение верное. Ух не хватает нервов.

Scott_Tiger

Андрей, там решительно нечему не работать. Да и код этот в 140402 такой же, как и в базовой версии. У Вас #define AIRPLANE выставлен?

if(f.PASSTHRU_MODE){ // Direct passthru from RX
servo[3] = rcCommand[ROLL] + flapperons[0]; // Wing 1
servo[4] = rcCommand[ROLL] + flapperons[1]; // Wing 2
servo[5] = rcCommand[YAW]; // Rudder
servo[6] = rcCommand[PITCH]; // Elevator
}else{
// Assisted modes (gyro only or gyro+acc according to AUX configuration in Gui
servo[3] = axisPID[ROLL] + flapperons[0]; // Wing 1
servo[4] = axisPID[ROLL] + flapperons[1]; // Wing 2
servo[5] = axisPID[YAW]; // Rudder
servo[6] = axisPID[PITCH]; // Elevator
}

Chip=

Все вроде победил. Дело было в том что нужно очищать память перед заливкой прошивки. Появилась новая проблема не могу прошить I2C платку, прошивкой которая идет с прошивкой 140402, выскакивает ошибка stk500_getsync(): not in sync: resp=0x00. Подскажите что делаю не так?

Scott_Tiger

Вариантов несколько:

  1. Неправильно подключаете кабели
  2. Не отключаете GPS-приемник от платы I2C-GPS, если шьёте через последовательный порт
  3. Напряжение питания I2C-GPS платы сильно отличается от напряжения USB-TTL переходника
  4. Неправильно выбираете тип платы, в т.ч. и загрузчик (Optiboot или станартный)
  5. При программировании через вторую ардуину, используюемую как ISP, не отключаете Reset на ISP-плате
  6. Неисправна плата или программатор
Chip=

А кокой тип платы нужно выбирать если платка моя CRIUS I2C-GPS NAV Module, программатор рабочий он же контроллер шьет, а вот по питанию не знаю, как узнать сколько вольт нужно для моей CRIUS I2C-GPS NAV Module?

Scott_Tiger

Тип платы, по идее, Nano w/Atmega 328, питать от программатора (там или 3.3 или 5 вольт - подойдёт любой), программатор подключать, соответственно, на соответствующие пины на боковой стороне платки.

STRIMSS

Кто-нибудь пробовал удержание позиции на крыле с маховием делать? да или хотя бы вообще оно работает?

zavtrak

Ребят, привет, решил я сделать всё то же что описывается в этой теме, т.к. стабилизатор - это довольно полезно для начинающих, но в процессе сборки\настройки возникла проблемма - не работают сервы (при том условии что они рабочие и правильно подключены)
arduino pro mini, mpu 6050, LM 2576 - питание, приёмник\передатчик я думаю значения не имеют, сервы - девятиграмовые TG9E,

на ардуину зашито MultiWii 2.3 датчик датчик и приёмник работают исправно и данные с них отображаются в GUI.
возможно я что то упустил из виду, но заставить работать сервы, подключённые согласно этой схеме у меня не получилось

jel_a
zavtrak:

подключённые согласно этой схеме


так подключены сервы?