MultiWii

mahowik
Владимир#:

Думаете без описания не разобраться?

и с описанием было много вопросов у пользователей, а если без, то будет беда… 😃

mahowik

всем привет! Получил очередной отзыв от Артема по почте:

Art_Nesterov:

“Привет! Еще немного статистики в “копилку” прошивки. Сегодня был хороший день, пасмурный и без ветра. Отлетал три аккума. Очень хорошо держит горизонт, я его настраивал последний раз месяца два назад. После этого было много полетов и все четко держит, не плывет. Это очень радует. На прошлых прошивках приходилось его перекалибровывать время от времени.
На двух первых аккумуляторах летал миссии. Первая миссия: ломаная линя в начале, и потом круг радиусом 50м. Вся миссия из 26 точек. В конце автопосадка. Вторая миссия: ломаная линия, похожая на елку - 10 точек.
Все супер! Ни одного глюка. Все четко пролетел, и приземлился.
Третий аккумулятор высадил просто в висении перед собой в удержании высоты и позиции. Тут тоже гуд. Высота за 10 мин менялась в общей сложности на 0,5м (примерно). При чем сначала, 5-6мин колебалась чуть-чуть в пределах 5-10 см. Потом просел на 0,5м, минуты на 2-3 и потом вышел на начальную высоту.
Был полный штиль, позиция плавала примерно в квадрате 1мх1м.”

8 days later
jeka101

Всем привет.
У меня тут возникла не понятная проблема…
Полетел я вообщем, держал высоту не большую от 1 метра до 5-10. Из-за неидеально ровных моторов его немного подколбашивало(без балансировки).
Вдруг на высоте примерно 5-7 метров я заметил что коптер стало сильнее тянуть в определенную сторону, я решил его посадить НО он не слушался руля высоты и продолжал держать какую-то высоту, рули крена работали…Я испугавшись стал его пытаться удерживать над собой…Вроде вывел и тут вдруг новый прикол, квадрик выключает все моторы(Хотя Тхроттл задран выше минимального сигнала и движки даже при полном опускании стика должны работать на минимальных оборотах…) и камнем падает на землю.
Я так и не понял в чем дело?
Совсем недавно я настраивал failsafe точнее просто активировал его с изменением минимального Тхроттла, после этого произошла у меня такая проблема.
Еще баловался с Gyro filters, активировал вот этот фильтр //#define GYRO_LPF_10HZ, после его активации коптер вообще себя как-то странно вел, его стало сильно дергать…
Прошивка MW 2.4.
ПК MW Se 2.5.
Режим полета был Angle. В этом режиме я отлетал 10-15 полетов До этого случая и таких глюков не замечал.
Стоит L2C GPS, спутники были на связи. Кстати я его еще подозреваю так как разъем не идеальный иногда при подключенном ПК к компу вылезают ошибки L2C error, 1 раз даже что-то адское после ошибки происходило с графиками.

Все полностью заряженно, пульт так-же полностью заряженный.
Калибровки были произведены.

Patriarch

jeka, ну так если по i2c сыплет ошибками, то начните с этого. I2C- шина обмена данными, на которой висят все датчики. Вполне вероятно, что сыплет мусором ваш гпс-модуль, отключите и пробуйте без него.
Кроме этого, могут быть проблемы с питанием и ошибка либо невнимательность пилота.

jeka101
Patriarch:

jeka, ну так если по i2c сыплет ошибками, то начните с этого. I2C- шина обмена данными, на которой висят все датчики. Вполне вероятно, что сыплет мусором ваш гпс-модуль, отключите и пробуйте без него.
Кроме этого, могут быть проблемы с питанием и ошибка либо невнимательность пилота.

Я дома смотрел, L2C сыплет ошибками когда я шевелю провода, там проблема в разъеме…
Невнимательность исключена так как я все делал правильно и нечего лишнего не клацал…

jeka101

I2C*
На счет питания а что может быть с ним? Я даже не представляю как его проверить, ПК питается от 4х Регулей…

mw_2015

Озаботился перепрошивкой те переходом с MultiWii_2_3 либо на MultiWii_2_1_base (Mahowik), либо на MultiWii_2_4.
Имею ПК - Crius MWC MultiWii SE V2.5 те Atmega 328. Как я понял из прочитанного на ветке MultiWii_2_1_base заточен на aiop и в confige даже отсутствует "define CRIUS_SE_v2_0 ".Что посоветуете, прошить MultiWii_2_4 или попытаться пристегнуть MultiWii_2_1_base и если пристегнуть, то что для этого нужно отдефайнить в confige? Вроде кто то прошивал
MultiWii_2_1_base на Atmega 328.

Владимир#
mw_2015:

Вроде кто то прошивал
MultiWii_2_1_base на Atmega 328.

На сколько я помню, нужно просто раскомментировать датчики, которые на плате стоят. Все должно заработать. Там если с компасом, то вроде не лезет по объёму.

Patriarch
jeka101:

ПК питается от 4х Регулей…

это не есть гуд. Питайте от отдельного UBEC.

alvleal

Crius MWC MultiWii SE V2.5. Летал на маховике, все нормально (только GPS не влезает).
Поставил MultiWii_2_4 моторы стартуют с 50%. Подскажите что я пропустил, что не настроил?
Большое спасибо!

jeka101
alvleal:

Поставил MultiWii_2_4 моторы стартуют с 50%. Подскажите что я пропустил, что не настроил?
Большое спасибо!

Мб откалибровать моторы?

А у меня тоже вопрос.
У меня включен: GPS, fail safe, AUX8.
И я выходит только этим могу пользоваться?
Я просто пытался скомпилить скетч с LED_FLASHER и HEADFREE, в итоге я ловлю ошибку что скетч слишком большой бла бла бла…
Есть какой-то вариант как-то урезать ненужный код в скетче если он есть что-бы запихать на 328 атмегу все что мне необходимо?

Вот ошибка

Размер скетча в двоичном коде: 31 200 байт (из 30 720 байт максимум)

Всего-то 480кб 30мб…

BigWheeelS
jeka101:

Есть какой-то вариант как-то урезать ненужный код в скетче

Да, есть такой вариант. Секция “Memory savings” в config.h

jeka101:

Всего-то 480кб 30мб…

Это вы про что?

jeka101:

Хотя Тхроттл задран выше минимального сигнала и движки даже при полном опускании стика должны работать на минимальных оборотах…

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

alvleal
jeka101:

Мб откалибровать моторы?

Все откалибровано. Где я мог вместо 1000 - 1500 поставить? Или где я мог 50% пропустить?

JuiceRC

Мне кажется или мультивии превышает по функционалу назу?

jeka101
BigWheeelS:

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

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

Опять-же решил еще раз попробовать задействовать баро фильтр, режим 98HZ, неадыкватное поведение при взлете…

BigWheeelS:

Это вы про что?

Это я писал про то что мне не хватает 480кб места =)

BigWheeelS:

Да, есть такой вариант. Секция “Memory savings” в config.h

А пагубные влияния есть или весь функционал который при дефолтных настройках был и тот что я задействовал сохранятся?
Точнее из того что я понял.
//#define SUPPRESS_ALL_SERIAL_MSP - выключает GUI, то есть на компе фиг настроишь…Нужен дисплей для MW.
//#define SUPPRESS_OTHER_SERIAL_COMMANDS - Выключает GPS телеметрию на FPV.
//#define SUPPRESS_DEFAULTS_FROM_GUI - Выключает настройки в GUI, я могу только наблюдать.
И последний участок…
//#define DISABLE_SETTINGS_TAB - Что он дает?

Dikario
alvleal:

Crius MWC MultiWii SE V2.5. Летал на маховике, все нормально (только GPS не влезает).

Все замечательно влезает, и летает, выставляется плата ардуино нано.
" Размер скетча в двоичном коде: 30 166 байт (из 30 720 байт максимум)"

alvleal
Dikario:

Все замечательно влезает, и летает, выставляется плата ардуино нано.
" Размер скетча в двоичном коде: 30 166 байт (из 30 720 байт максимум)"

Нано выставлял. Наверно что то не закомментил.
В мультивии не силен, что раскомментить, что закомментить. А в 2.4 так и не понял почему моторы с 50% стартуют, зато GPS отлично пашет.
Подскажите что в Маховике закомментить нужно, что лишнее для MWC SE 2.5? Буду очень благодарен.

Dikario

Шьюсь через программатор USBasp от капитана кука, Ардуино 1.0.5 ,выбрал плату Arduino Nano 328,прошил загрузчик, почистил скетчем память, ничего не закрывал в первоначальной прошивке, открыл только I2C для GPS, и Fail Safe.

jeka101

Как сделать так что-бы OSD mini 1.1 показывала корректно напряжение на аккуме? Через ПК я так понял это довольно геморный процесс, можно это как-то аналогово настроить?
Вот это рабочая схема?

Art_Nesterov
jeka101:

Как сделать так что-бы OSD mini 1.1 показывала корректно напряжение на аккуме?

Есть несколько вариантов, в зависимости от того, какая прошивка МВ и какой сам контроллер. Если контроллер имеет аналоговый вход, измеряемое напряжение (через делитель) подается прямо в контроллер. В прошивке нужно раскомментировать //#define VBAT и в принципе все. Дальше (если прошивка 2.4), в Гуи выставляется напряжение… В общем то ни какого “гемора”.

Если контроллер не имеет аналоговых входов, то можно измерять напряжение и RSSI, подавая сигнал на ОСД. Вот, как раз через такой делитель, как на вашей картинке. В Гуи ОСД выставляете коэффициенты методом проб и ошибок. Это занимает 15 мин.

И третий вариант, что бы не лезть в ГУИ, можно вместо делителя из двух сопротивлений поставить потенциометр, и руками выставить его положение, так, что бы напряжение на экране отображалось корректно. Тут главное не сжечь вход меги, (больше 5В на входе быть не должно!). Потом меряете мультиметром сопротивление потенциометра и заменяете его постоянными резисторами. Сопротивление потенциометра лучше выбирать больше 15-20ком.

BigWheeelS
jeka101:

//#define SUPPRESS_ALL_SERIAL_MSP - выключает GUI, то есть на компе фиг настроишь…Нужен дисплей для MW.

Да, именно так.

jeka101:

//#define SUPPRESS_OTHER_SERIAL_COMMANDS - Выключает GPS телеметрию на FPV.

Нет, этот дефайн судя по всему выключаем какие-то остальные команды, нужные для навигации в lcd меню и что-то подобное…

jeka101:

//#define SUPPRESS_DEFAULTS_FROM_GUI - Выключает настройки в GUI, я могу только наблюдать.

Нет. При включении этого дефайна, в код MultiWii не будут включены дефолтные значения параметров. Все значения после прошивки придётся заного настраивать.

jeka101:

//#define DISABLE_SETTINGS_TAB - Что он дает?

Без понятия.

Вам кстати можно сохранить ваш конфиг в файл, и применять его каждый раз после прошивки. В этом случае можно включить SUPPRESS_DEFAULTS_FROM_GUI.