MultiWii

mahatm

Пропы точно соответствуют направлению вращения моторов. Исходя из показаний датчиков, и индикаторов в ГУИ, контроллер и датчики сориентированы верно, из чего я делаю вывод что наверное контроллеру виднее где у него какой мотор. 😃 И раз все пропы вращаются в правильную сторону… И кроме того, коптер абсолютно верно реагирует как на стики управления, так и на “ручной” тест, - т.е. правильно определяет куда я его клоню/вращаю и сопротивляется соответственно. Единственное что, на крены по pitch/roll он реагирует мгновенно, т.е. ваще как прибитый держит эти углы, хрен сдвинешь, а вот по YAW он как бы с опозданием, т.е. не “прибитый”, а скорее просто возвращает на место нос, но уже после того как его повернёшь скажем на 90 градусов.

Что касается взлёта, то тут я в общем и целом не вижу ни малейших вариантов, что либо сделать “двумя” способами. 😃 Но раз спрашиваете мало ли:

Включателем включаю коптер,(3S-11.1V), запускаются:
ESC(напоминаю откалиброванные все вместе)

контроллер с датчиками, о чем контроллер круто вымигиает лампочками. 😃

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

Выполняю арм(тротл-,яв в право до упора), на контроллере загорается лед.

После чего, убедившись что все стики кроме тротла попали в центр, начинаю поднимать тротл.

Примерно на 40-50% в зависимости от установленной батареи(бывает я для экспериментов дома ставлю 2S), коптер отрывается и взлетает.

И тут же закручивается в строго рандомную сторону. 😃

Если убавить тротл ниже точки взлёта, и сдвинуть яв существенно в любую сторону, более чем на 10%, то закрутка будет строго в сторону сдвинутого ява.

Если ПИД для яв в нулях, или около того, то коптер совершено спокойно и ровно взлетает. Закрутка если и присутствует, то в пределах условий среды.

Мне собственно непонятны два конкретных вопроса:

  1. Почему в 2.4 прошивке, ПИД для яв, в D имеет значение 0, при очень высоких(P=6.8 I=0,045), пропорциональных и накопительных(интегральных) значениях? Для сравнения, по пич и рол например P=5.5 примерно.
  2. Как именно следующие варианты установок PID YAW, приводят к описанной закрутке:
    Чем выше P и/или D, тем быстрее и сильнее закрутка.
    При значениях P выше 4 и/или D выше 8, наступает пере регулирование.(при ручном тесте, чем выше тротл, тем сильнее раскачка по YAW)

Ну и вытекающий вопрос: какое же чёрт возьми соотношение PID YAW правильное(хотя бы в среднем, для большинства моделей)?!

Art_Nesterov
mahatm:

Мне собственно непонятны два конкретных вопроса:

На самом деле, почитав форум, можно увидеть, что много людей даже не подозревает о калибровках гироскопов при включении и наводках от силовых проводов. По этому я спрашивал, “как вы взлетаете, и что включено”. В мультивие гироскопы калибруются сразу после подачи питания. С неоткалиброванными гироскопами коптер может быть неадекватным. И от того что у вас включено при взлете (чекбоксы в ГУИ), тоже кое что зависит… например, если вы активировали компас - стабилизация курса по компасу, то все наводки от силовых проводов будут вносить сильные ошибки. Результат - именно кручение по ЯВ. Что бы этого не было, конструкция должна быть правильная.
А то что вы меняете пиды и видите изменение реакции, совершенно адекватный результат. При уменьшении P, вы просто отключаете стабилизацию по курсу и все. Мозги не видят ошибки и не подают команды на компенсирующий разворот. Сильно вникать в расчеты Пидов не стоит, если вы не собираетесь корректировать код на уровне математических расчетов. Стандартные значения абсолютно нормальные и с ними коптер летает “из коробки”.

На 100% уверен, что в вашем случае виновата сборка. Если можно фото конструкции…

20 days later
semen_nedam

Добрый день!
На самолете Bixler со стиков всё сервы работает правильно, а в стабилизации разброд какой-то. Крутишь вокруг оси, работает руль высоты, меняешь тангаж, работают закрылки на крыльях, делаешь наклон на крыло, хвостовой руль поворота работает. Что-то даже сообразить не могу, почему так происходит.
Читаю, аж зрение садится. Уверен, что проблема на поверхности, но я ее уже не вижу. Может кто подскажет причину?
Заранее спасибо!

ЗЫ. Понимаю, что тут про коптеры, ну, а вдруг…

Владимир#

Думаю нужно начать с того, что посмотреть в GUI, правильно по осям отрабатывает или нет. Ну и калибровку я надеюсь делали.

semen_nedam
Владимир#:

Думаю нужно начать с того, что посмотреть в GUI, правильно по осям отрабатывает или нет. Ну и калибровку я надеюсь делали.

Спасибо за быстрый ответ. Калибровку делал, в GUI отображается правильно. Повторил калибровку. Изменений нет. Но интуиция подсказывает, что решение где-то рядом (у других всё нормально ведь), но где?

Владимир#

А что показывает в GUI правильно, и наклоны по осям и сигнал на сервоприводы? Или что там, если самолет загружен, я ни разу не загружал не знаю. Если оси в GUI правильно на самолете именно оси не должен путать, реверсы может , но не оси. В пульте никаких миксов нет.

semen_nedam
Владимир#:

А что показывает в GUI правильно, и наклоны по осям и сигнал на сервоприводы?

Вот, что я увидел:
на пульте 1-й канал – WING 1 и 2, 2-й канал – ELEV и 4-й – RUDD, т.е. всё правильно вроде двигается,
а вот в GUI 1-й – ELEV, 2-й – RUDD, 4-й – WING 1 и 2
и как переключить и где сообразить не могу.

Art_Nesterov
semen_nedam:

где сообразить не могу.

Ну можно на аппе переназначить каналы, если у вас она так может или просто провода от приемника к ПК перекинуть, как надо.

semen_nedam

Спасибо неравнодушным! Без вашей помощи я бы не справился. Проблема решена. Как и предполагал, решение на поверхности.
Всё переподключил.

  1. В GUI добился правильной реакции на наклоны самолета и соответствия с управляющимися плоскостями.
  2. После этого подключил приемник на правильные каналы.
    Всё заработало как надо.
    Теперь следующая задача – как изменить чувствительность реакции на изменение положения самолета. Стабилизация отрабатывает при достаточно больших изменениях положения в пространстве. Как мне кажется, малая чувствительность.
    Может и тут кто, что подскажет. Заранее спасибо.
Art_Nesterov

Я так думаю, так же, как и в коптере нужно крутить ПИДы. Выбирате ось, по которой нужна реакция, например питч и меняете значения Р. Большие значения должны приводить к более агрессивной стабилизации по оси. Самолет наверно более инертная штука с точки зрения изменения его положения относительно горизонтального положения, чем коптер. Наверно значения Р и D можно поднимать существенно больше, чем для коптера. И мне кажется, что такого же рода осцилляции , как в настройке коптера вы не увидите…

semen_nedam

PID влияют на реакцию системы на возмущение. Если нет реакции, настраивать PID бессмысленно. Но это моё мнение, могу быть неправ. Я говорю о “чувствительности”, о пороге, когда система начинает реагировать на возмущение. У меня, например, сейчас нужно отклонить ось градусов на 10-15, чтобы система начала балансировку. А это очень много. Потом можно и PID настроить, когда эта реакция наступает своевременно.

Владимир#

Так опять же смотрим GUI. Сигнал с гир и акселя реагирует сразу? Сигнал на сервы только при большом отклонении или как всё происходит?

Art_Nesterov
semen_nedam:

У меня, например, сейчас нужно отклонить ось градусов на 10-15, чтобы система начала балансировку.

Ну так поднимите Р… Аксели и гироскопы улавливают изменение очень малых углов - сотых долей градуса. И дельта всегда присутствует, независимо от того, видите вы это или нет. А настройка пид контроллера у вас, не позволяет реагировать на малые изменения.

4 months later
BigWheeelS

Всем привет. Я до сих пор летаю на MahoWii/MultiWii и переходить на свежие ПК не вижу причин для себя пока. Кто ещё пользует такое старье? 😃

27 days later
damian
BigWheeelS:

Всем привет. Я до сих пор летаю на MahoWii/MultiWii и переходить на свежие ПК не вижу причин для себя пока. Кто ещё пользует такое старье? 😃

На бикслере стабилизация неплохо прижилась

Владимир#
BigWheeelS:

Всем привет. Я до сих пор летаю на MahoWii/MultiWii и переходить на свежие ПК не вижу причин для себя пока. Кто ещё пользует такое старье?

Ой, пропустил тему. Нормально использую даже предыдущую версию. Новую взял. В деталях не тестил. Маховику респект, надеюсь проект не умрет.

1 month later
vladrw

Здравствуйте! Заранее прошу прощения, если решение этой проблемы уже тут было (ткните носом;)), но уже почти месяц не могу найти внятной информации ни на русском ни на англ. Проблема в магнитометре - QMC5883L c чипом DA5883 (i2c адрес - 0x0D, даташит wiki.epalsite.com/…/QMC5883L-Datasheet-1.0.pdf). Есть ли какая то возможность подружить его с прошивкой Multiwii?

AlexeyStn
vladrw:

Есть ли какая то возможность подружить его с прошивкой Multiwii?

Подозреваю, что без серьёзных переделок - никак. У вашего чипа по ссылке и у HMC5883L не только I2C адреса, но и регистры разные. Проще отыскать обычный HMC.

vladrw
AlexeyStn:

Подозреваю, что без серьёзных переделок - никак. У вашего чипа по ссылке и у HMC5883L не только I2C адреса, но и регистры разные. Проще отыскать обычный HMC.

Согласен насчет обычных НМС, заказал пару оригинальных плат, но придут они не быстро.
А что Вы подразумеваете под серьезными переделками?
Имеется ли какая-то возможность изменить программно адрес и регистры? Или же каким-то образом прикрутить библиотеку QMC (github.com/mechasolution/Mecha_QMC5883L) к прошивке?

SergDoc
vladrw:

Здравствуйте! Заранее прошу прощения, если решение этой проблемы уже тут было (ткните носом;)), но уже почти месяц не могу найти внятной информации ни на русском ни на англ. Проблема в магнитометре - QMC5883L c чипом DA5883 (i2c адрес - 0x0D, даташит wiki.epalsite.com/…/QMC5883L-Datasheet-1.0.pdf). Есть ли какая то возможность подружить его с прошивкой Multiwii?

Месяц? Мультивие открытый проект основанный на ардуино для самодельщиков, при чем довольно удобный и понятный. За месяц можно было ознакомится с ним, взять даташит и по образу и подобию нарисовать свой датчик в коде - как-то так мультивие развивается и “обрастает” новыми датчиками и приблудами…

На поверку - серьезное не всегда является серьезным

AlexeyStn
vladrw:

А что Вы подразумеваете под серьезными переделками?
Имеется ли какая-то возможность изменить программно адрес и регистры?

Имеется. Если в исходниках Мультивия, а конктретно здесь, переправить адреса и функции в разделе “I2C Compass HMC5883” в соответствии с библиотекой QMC. Похоже, что отличаются не только адреса, но и структуры регистров, поэтому так не только две константы подправить, но и функции немного поковырять надо.