Специальные цены   новые товары
Закрытая тема
Страница 3 из 6 ПерваяПервая 1 2 3 4 5 ... ПоследняяПоследняя
Показано с 81 по 120 из 236

MultiWii - обсуждаем и отлаживаем Alt Hold

Тема раздела Коптеры. Комплектующие, сборка, настройка. в категории Квадрокоптеры и мультироторы; Сообщение от gensek Странно, по этой ссылке у меня та же ошибка http://nekaka.com/d/goCWk9pImD при компиляции, попробую скачать ArduinoIDE 1.0 , ...

  1. #81

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,016
    Записей в дневнике
    2
    Цитата Сообщение от gensek Посмотреть сообщение
    Странно, по этой ссылке у меня та же ошибка http://nekaka.com/d/goCWk9pImD при компиляции, попробую скачать ArduinoIDE 1.0 , Можно просто переименовать файл с расширением MultiWii_1_alexmos.ino в MultiWii_1_alexmos.pde и запускать в 022 ИДЕ - это не помогло.
    Проверил содержимое своего архива в Arduino022, Arduino023 - нормально компилируется. Необходимо соблюдать стандратные условия для скетчей - все файлы должны быть в папке MultiWii (по имени скетча) и окрывать MultiWii.pde через меню File (или при по расширению, если настроено).

    По вашему скриншоту видно, что вы неправильно открыли (первая вкладка явно лишняя).

  2.  
  3. #82

    Регистрация
    06.10.2004
    Адрес
    Москва
    Возраст
    44
    Сообщений
    396
    Цитата Сообщение от alexmos Посмотреть сообщение
    все файлы должны быть в папке MultiWii (по имени скетча)
    Так и есть, дело оказалось в имени папки, после распаковки архива она имеет имя MultiWii_r15, убрал _r15 и все заработало.

  4. #83

    Регистрация
    06.10.2004
    Адрес
    Москва
    Возраст
    44
    Сообщений
    396
    Собираюсь сегодня залить, настроить и попробовать подлетнуть, кроме Алексея еще летает кто, как оно?

  5. #84

    Регистрация
    06.10.2004
    Адрес
    Москва
    Возраст
    44
    Сообщений
    396
    Ага, первый вопрос, в прошивке 1.9 использовал второй тумблер передатчика на пин 8 #define RCAUXPIN8, если раскоментировать в MultiWii_r15 вместе #define RCAUXPIN8 и #define SONAR
    вылазит ошибка ( echo повесил на D12) , как вернуть работу второго тумблера?


  6.  
  7. #85

    Регистрация
    06.10.2004
    Адрес
    Москва
    Возраст
    44
    Сообщений
    396
    Залил, настроил, в GUI все работает отлично, аксель по шести точкам показывает примерно +-255, сонар точно показывает высоту, при запуске в руках и небольшом газе задний левый мотор пуляет и ставит коптер под 45 градусов и успокаивается, онлайн в GUI посмотреть в чем дело не могу, с этой прошивкой почему то не работает блютус. Похоже на неправильную калибровку акселя, но в статике в гуи то все нормально , рол и питч стоят ровно.

  8. #86

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,016
    Записей в дневнике
    2
    Цитата Сообщение от gensek Посмотреть сообщение
    вылазит ошибка ( echo повесил на D12) , как вернуть работу второго тумблера?
    Видимо Aux2 заведен через неиспользуемое ранее прерывание, которое нужно сонару. У меня использует SumPPM и прерывание свободно, я его и взял на сонар. Насколько я знаю, на 328p больше их не осталось. Давайте посмотрим как зарулят сонар в официальной версии. Сейчас - либо SumPPM либо отказаться от AUX2


    Цитата Сообщение от gensek Посмотреть сообщение
    Залил, настроил, в GUI все работает отлично, аксель по шести точкам показывает примерно +-255, сонар точно показывает высоту
    Тут все правильно.


    Цитата Сообщение от gensek Посмотреть сообщение
    при запуске в руках и небольшом газе задний левый мотор пуляет и ставит коптер под 45 градусов и успокаивается, онлайн в GUI посмотреть в чем дело не могу, с этой прошивкой почему то не работает блютус. Похоже на неправильную калибровку акселя, но в статике в гуи то все нормально , рол и питч стоят ровно.
    А зачем блютус, я тестирую через кабель (если держать в руках). Если AltHold не включен, то все остальные алгоритмы работают как и в стандртной прошивке, туда я не лез. Если ROLL и PITCH ровно стоят и отражают реальные налоны, то и аксель откалиброван верно. Нужно обязательно смотреть что происходит в GUI при включенных моторах.

  9. #87

    Регистрация
    06.10.2004
    Адрес
    Москва
    Возраст
    44
    Сообщений
    396
    Цитата Сообщение от alexmos Посмотреть сообщение
    Видимо Aux2 заведен через неиспользуемое ранее прерывание, которое нужно сонару. У меня использует SumPPM и прерывание свободно, я его и взял на сонар
    Понял, приемник с РРМ имеется, воткну его, ну а блютус как бы уже установлен и прекрасно работает, с ним гораздо удобней!
    Цитата Сообщение от alexmos Посмотреть сообщение
    Давайте посмотрим как зарулят сонар в официальной версии.
    Сонар будет в официалке?! Барометр до сих пор в официалке никакой, почувствовал работу барометра пока что только в MultiWii_1_9_a2 от mahowik.

  10.  
  11. #88

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,016
    Записей в дневнике
    2
    Цитата Сообщение от gensek Посмотреть сообщение
    блютус как бы уже установлен и прекрасно работает, с ним гораздо удобней!
    И заливать прошивку с ним научился? Я тоже прикрутил блютус для отладки, но на поле когда отошел подальше от ноута, коптер пару раз сходил с ума (хорошо что в руках был на тот момент). Подозреваю что при увеличенни дистанции блютус увеличивает мощность и забиавает р/у канал (частоты то одинаковые). Так что очень настороженно теперь к нему отношусь.






    Цитата Сообщение от gensek Посмотреть сообщение
    Сонар будет в официалке?! Барометр до сих пор в официалке никакой, почувствовал работу барометра пока что только в MultiWii_1_9_a2 от mahowik.

    Рано или поздно будет, сейчас на оф.форуме обсуждается активно.

  12. #89

    Регистрация
    06.10.2004
    Адрес
    Москва
    Возраст
    44
    Сообщений
    396
    Цитата Сообщение от alexmos Посмотреть сообщение
    И заливать прошивку с ним научился? Я тоже прикрутил блютус для отладки, но на поле когда отошел подальше от ноута, коптер пару раз сходил с ума (хорошо что в руках был на тот момент). Подозреваю что при увеличенни дистанции блютус увеличивает мощность и забиавает р/у канал (частоты то одинаковые). Так что очень настороженно теперь к нему отношусь.
    Нее, когда лью прошивку выдергиваю блютус из Crius MultiWii и пихаю USB-UART FT232RL , на поле не знаю как (холодно и не удобно с нотиком), в помещении отпускал не более чем на 5 метров, блютус не дурил.
    Чет не получается у меня с акселем в MultiWii_r15, коптер встает криво и все тут, кстати заметил что после калибровки по шести точкам в GUI тоже стоит криво, нужно прогнать еще кажется по двум-трем дополнительно, наверно в этом дело, буду ждать официалку, очень понравилось как сонар точно выдает высоту в GUI.

  13. #90

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,016
    Записей в дневнике
    2
    Можете не калибровать по 6 точкам, можно как и раньше, по Z один раз. Попробуйте так и напишите что получится.

  14. #91

    Регистрация
    06.10.2004
    Адрес
    Москва
    Возраст
    44
    Сообщений
    396
    Цитата Сообщение от alexmos Посмотреть сообщение
    Можете не калибровать по 6 точкам, можно как и раньше, по Z один раз. Попробуйте так и напишите что получится.
    Отцепил я уже сонар, пришло недостающее крепление к давно собранному подвесу, буду экспериментировать с ним.

  15. #92

    Регистрация
    13.03.2011
    Адрес
    Montreal, Canada
    Возраст
    39
    Сообщений
    2,299
    Записей в дневнике
    19
    Привет Алексей!

    Сорри за паузу... выпал немного из контекста...
    Неделю назад вмержил r15 в MultiWii_dev_20120225, но без калибровки по 6-ти осям...
    в ГУИ скрость ведет себя не стабильно, т.е. при полном покое (0, 0, +128) иногда плавно уходит в +/-60..100. Такое ощущение что ПИД регулятор в интеграторе не может стабилизироваться. Предположив что в динамике/полете этого не будет, чуть не улетел в небо пару раз )), т.е. примерно тоже поведение, как описывал чел на офф. форуме...
    Я когда ранее переводил твой интегратор (его более раннюю и простую версию) на 50гц, наблюдал похожее поведение "по скорости" при определенних сочетаниях коэф-в. Т.е. я к тому что вероятно коэф-ы интегратора не оптимальны сейчас, либо у тебя сейчас жесткая привязка к +/-255, т.к. у меня acc_1g=128.
    Могу выложить результат мержа, не исключено что я накосячил гдето...

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

    з.ы. твои идеи однозначно сильны, потому есть смысл довести до конца... марбалоновский альт холд у меня вообще не работает, при малейшем ветерке носит коптер как Г в проруби...
    т.е. доведем до конца тогда мот и в офф. прошиву пропихнем, т.к. "для себя" это круто конечно, но отдача будет многократной, когда на этом будет летать все вии сообщество

  16. #93

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,016
    Записей в дневнике
    2
    Я тоже выпал - то работа, то здоровье шалит, то новый квадрик делал помельче (чтоб в ограниченном пространстве летать). Сейчас все готово и даже камеру прикрутил, так что скоро будет видео, как погода наладится.

    Цитата Сообщение от mahowik Посмотреть сообщение
    в ГУИ скрость ведет себя не стабильно, т.е. при полном покое (0, 0, +128) иногда плавно уходит в +/-60..100
    Во первых новость, что бывает 1G = 128. Надо посмотреть код, может я где константу 255 (или что то подразумевающее 255) использую.
    Я залил на новую платформу прошивку, там все абсолютно другое, датчики и электроника (Crius MWC) но так же с первого раза с первыми же PID стабилизирует высоту отлично.

    Цитата Сообщение от mahowik Посмотреть сообщение
    иногда плавно уходит в +/-60..100
    А что показывает барометр при этом? Сейчас фактически два набора внутренних PID - когда AltHold режим не включен, высота почти что чисто с барометра берется и следует за ним. Этого достаточно чтобы при включении и подлете устранить постоянную ошибку. Когда включается режим, то PID меняется и работает акселерометр уже более "чисто". Т.е. коптер даже с сильной привязкой к высоте плавает медленно, и любое возмущеие отслеживает агрессивно.

    Цитата Сообщение от mahowik Посмотреть сообщение
    Могу выложить результат мержа, не исключено что я накосячил гдето...
    Выложи, я ужее давно просил. На SVN удобно.
    Кстати я тоже планирую мержить, как новая версия, уже достаточно стабильна? прежняя 1.9 мне нравится, не хочется рисковать


    Цитата Сообщение от mahowik Посмотреть сообщение
    Вообще если не трудно, опиши изменения в алгоритме, т.к. ты его значительно усложнил (сейчас он менее прозрачен) и возможно там бомба в коде... ))
    Изменения описывал: MultiWii - обсуждаем и отлаживаем Alt Hold Новых пока нет.



    Цитата Сообщение от mahowik Посмотреть сообщение
    з.ы. твои идеи однозначно сильны, потому есть смысл довести до конца... марбалоновский альт холд у меня вообще не работает, при малейшем ветерке носит коптер как Г в проруби...
    Неудивительно, неоткуда взять D-часть. хотя может силная привязка и не всем нужна.


    Цитата Сообщение от mahowik Посмотреть сообщение
    т.е. доведем до конца тогда мот и в офф. прошиву пропихнем
    Ну это было бы здорово т.к. чем меньше различий тем мне проще потом мержиться Но боюсь в таком виде не примут (и цикл надо уменьшать и оТ такого кол-ва float избавляться). Все в планах, но вот времени маловато.

  17. #94

    Регистрация
    19.01.2012
    Адрес
    Киев, украина
    Возраст
    63
    Сообщений
    253
    Я вот потестировал платку с Гудлака. Со своим кодом пробовал отлаженный алгоритм по фильтрации баро с акселерометром. Алгоритм испытан на MPU6050 c MS5611. Так вот на этой платке из-за медленного акселя результат отрицательный. То есть сам баро с частотой считывания 40 Гц с алгоритмом - раз читаем температуру 4 раза баро работает лучше без акселерометра.

  18. #95

    Регистрация
    13.03.2011
    Адрес
    Montreal, Canada
    Возраст
    39
    Сообщений
    2,299
    Записей в дневнике
    19
    Цитата Сообщение от alexmos Посмотреть сообщение
    то работа, то здоровье шалит
    tazhe fignya...
    Цитата Сообщение от alexmos Посмотреть сообщение
    Во первых новость, что бывает 1G = 128
    nu tak da, dlya kazhdogo akselya svoy acc_1g... seychas dlya adxl345 i bma180 eto 256 (dlya bma180 ranshe bilo 512), a dlya bma020 64 vsego, t.k. pri range 8g eto max resolushn dlya nego... a u menya dlya bma020 eto 128 (+ oversampling v IMU dlya podnyatiya razresheniya) t.k. 64 malo dlya ustoychivogo level mode...
    Цитата Сообщение от alexmos Посмотреть сообщение
    с первыми же PID стабилизирует высоту отлично.
    povtori kakie PID pls...
    Цитата Сообщение от alexmos Посмотреть сообщение
    А что показывает барометр при этом? Сейчас фактически два набора внутренних PID - когда AltHold режим не включен, высота почти что чисто с барометра берется и следует за ним. Этого достаточно чтобы при включении и подлете устранить постоянную ошибку. Когда включается режим, то PID меняется и работает акселерометр уже более "чисто". Т.е. коптер даже с сильной привязкой к высоте плавает медленно, и любое возмущеие отслеживает агрессивно.
    barometr vrode ne prigaet pri etom... nado pereproverit'...
    Цитата Сообщение от alexmos Посмотреть сообщение
    Выложи, я ужее давно просил. На SVN удобно.
    nu da, svn rulit, sedlay mne branch pls...
    Цитата Сообщение от alexmos Посмотреть сообщение
    Кстати я тоже планирую мержить, как новая версия, уже достаточно стабильна? прежняя 1.9 мне нравится, не хочется рисковать
    proveryal level mode poka na MultiWii_dev_20120225 - vse ok,
    no sudya po anonsu k 2.0pre1 tam ochen mnogo vkusnogo http://www.multiwii.com/forum/viewtopic.php?f=8&t=1290
    mozhno podozhdat' konechno nemnogo poka bagi utryasut
    Цитата Сообщение от alexmos Посмотреть сообщение
    Но боюсь в таком виде не примут (и цикл надо уменьшать и оТ такого кол-ва float избавляться). Все в планах, но вот времени маловато.
    esli budet 100% rabochiy algoritm to i s float prokatit dumayu, t.k. te komu nuzhen alt hold za cycle time ne gonyatsya... min cycle time principialen tol'ko dlya acro mode...

    p.s. tut merzhe v MultiWii_dev_20120225

  19. #96

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,016
    Записей в дневнике
    2
    Только что отлетал 4 пака на улице, в целом все нормально - по барометру высоту держит в пределах метра иогда медленно дрейфует до 2.
    При ускорениях, быстром полете, болтанке на месте, высота сильно не меняется.

    Абсолютно необходимая доработка - сигнализация коррекции высоты. Т.е. когда выводим ручку газа из alt hold deadband, коптер должен мигать и пищать, чтобы было понятно. А то подруливая по курсу, сбивается газ, и из-за экспоненты на нем сразу не видно, что уже вышли из допуска и высота начала меняться.. И когда необходимо поменять высоту, трудно вернуть газ в то же место.

    С сонаром вообще сказка, на 10см можно летать с высокой скоростью, и до 2 метров держит практически любые маневры. На высоте 4 метра при переходе на барометр, заметил какую то нестабильность но были неподходящие уловия, чтобы отследить что не так, по GUI. Нужен второй человек
    Ещё сонар абсолютно не перенес цифровую серву, которая подруливала подвесом камеры. Выдает гребенку, когда она включается. Попробую перенести ее на другой BEC.

  20. #97

    Регистрация
    29.01.2011
    Адрес
    Окленд, Новая Зеландия
    Возраст
    30
    Сообщений
    4,911
    Записей в дневнике
    78
    Раз всё так хорошо с сонаром, может пора автовзлет (увеличение высоты удержание несколько циклов)/автопосадку(аналогично, но уменьшать высоту) сделать? и подумать над ограничением высоты? =) скоро детальки дойдут - соберу пепелац и буду мучить его

  21. #98

    Регистрация
    13.03.2011
    Адрес
    Montreal, Canada
    Возраст
    39
    Сообщений
    2,299
    Записей в дневнике
    19
    В общем разобрался в чем проблема была с мержем в dev_20120225. Там изменили механизм вызова getEstimatedAltitude() на каждую четвертую итерацию цикла. Таким образом цикл тайм для алт-холд интегратора был в 4 раза больше и соот-но коэф. не подходили. В общем запустил, работает. В среднем держит +/-1м, но иногда прыгает до 2-х...
    THROTTLE_ANGLE_CORRECTION только мешает. Точнее в началее движения компнсация правильная (только 100 для моего конфига оч. много), НО при маневрах (при смене направления двиения к примеру), его и так подкидывает по инерции, а если еще THROTTLE_ANGLE_CORRECTION включен, то скачки до 3-4м...
    Остальное потом опишу... надо бежать...

  22. #99

    Регистрация
    19.01.2012
    Адрес
    Киев, украина
    Возраст
    63
    Сообщений
    253
    Цитата Сообщение от SovGVD Посмотреть сообщение
    Раз всё так хорошо с сонаром, может пора автовзлет (увеличение высоты удержание несколько циклов)/автопосадку(аналогично, но уменьшать высоту) сделать? и подумать над ограничением высоты? =) скоро детальки дойдут - соберу пепелац и буду мучить его
    С взлетом проблем нет, но газ надо набирать быстро и подпрыгивать надо, чтобы ветром на старте с раскрученными винтами не завалило. При посадке та же проблема при ветре - выключение моторов на высоте 40 см не помогает. Наверно в регулях лучше тормоз включать, иначе ветром переворачивает. Прошлой весной игрался.

  23. #100

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,016
    Записей в дневнике
    2
    Цитата Сообщение от SovGVD Посмотреть сообщение
    Раз всё так хорошо с сонаром, может пора автовзлет (увеличение высоты удержание несколько циклов)/автопосадку(аналогично, но уменьшать высоту) сделать? и подумать над ограничением высоты? =) скоро детальки дойдут - соберу пепелац и буду мучить его
    Честно говоря не вижу смысла.. Какие могу быть проблемы при взлете? С удержанием высоты есть один нюанс - нужно выставить газ на зависание и потом газ должен быть только в этой точке (это необходимо т.к. пр отключении режима коптер не должен рухнуть камнем вниз). Можно что то придумывать, но результат не стоит усилий - сама процедура взлета не проблемная.

    А посадка в режиме alt hold и сейчас работает - просто начинаем медленное снижение и с сонаром оно проходит достаточно линейно до полного приземления. С барометром похуже - он может подпрыгнуть у земли, т.к. создается подушка, но тоже садиться можно.

  24. #101

    Регистрация
    29.01.2011
    Адрес
    Окленд, Новая Зеландия
    Возраст
    30
    Сообщений
    4,911
    Записей в дневнике
    78
    Цитата Сообщение от alexmos Посмотреть сообщение
    Честно говоря не вижу смысла..
    начало автономного полета, позицию по GPS говорят уже держит и домой летает, значит и до полета по маршруту не далеко

  25. #102

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,016
    Записей в дневнике
    2
    Цитата Сообщение от mahowik Посмотреть сообщение
    В общем разобрался в чем проблема была с мержем в dev_20120225. Там изменили механизм вызова getEstimatedAltitude() на каждую четвертую итерацию цикла. Таким образом цикл тайм для алт-холд интегратора был в 4 раза больше и соот-но коэф. не подходили. В общем запустил, работает. В среднем держит +/-1м, но иногда прыгает до 2-х...
    Спасибо, учту. Ну если держит, то уже хорошо. У меня кстати, как только вышел на из дома на мороз и взлетел, тоже какая то фигня творилась. Перекалибровал аксель, дал время "остыть" - и тогда начал зависать нормально.


    Цитата Сообщение от mahowik Посмотреть сообщение
    THROTTLE_ANGLE_CORRECTION только мешает. Точнее в начале движения компнсация правильная (только 100 для моего конфига оч. много), НО при маневрах (при смене направления двиения к примеру), его и так подкидывает по инерции, а если еще THROTTLE_ANGLE_CORRECTION включен, то скачки до 3-4м...
    Думаю, что не в нем причина, я пробовал этот режим без alt hold в level mode - он практически не ощущается. Т.е. эффект от неправильной калибровки акселя намного сильнее. Но сегодня при правильной калибровке, провалов при начале и подскока в конце не было. Я гонял достаточно энергично вперед и назад на одном барометре на высоте 1.5 метра, а также вбок +-45градусов - тоже держит на месте. Но точно сказать, что помогло - THROTTLE_ANGLE_CORRECTION или новая калибровка, не могу.

    Цитата Сообщение от SovGVD Посмотреть сообщение
    начало автономного полета, позицию по GPS говорят уже держит и домой летает, значит и до полета по маршруту не далеко
    Тогда это уже совсем другая история. Я честно говоря, не стал бы в Multiwii делать полет по точкам, тут нужен помощнее мозг, + переферии побольше типа OSD или линка с обратным каналом.
    Последний раз редактировалось alexmos; 12.03.2012 в 00:21.

  26. #103

    Регистрация
    13.03.2011
    Адрес
    Montreal, Canada
    Возраст
    39
    Сообщений
    2,299
    Записей в дневнике
    19
    Цитата Сообщение от alexmos Посмотреть сообщение
    Спасибо, учту. Ну если держит, то уже хорошо. У меня кстати, как только вышел на из дома на мороз и взлетел, тоже какая то фигня творилась. Перекалибровал аксель, дал время "остыть" - и тогда начал зависать нормально.
    именно по этому я пока не пробовал и не планирую скорее всего использовать 3-х осевую калибровку, т.к. если уж и bma180 (с внутренней t-компесацией) педалит, то что говорить про остальные аксели, хотя летом может и имеет смысл...
    Цитата Сообщение от alexmos Посмотреть сообщение
    Думаю, что не в нем причина, я пробовал этот режим без alt hold в level mode - он практически не ощущается. Т.е. эффект от неправильной калибровки акселя намного сильнее. Но сегодня при правильной калибровке, провалов при начале и подскока в конце не было. Я гонял достаточно энергично вперед и назад на одном барометре на высоте 1.5 метра, а также вбок +-45градусов - тоже держит на месте. Но точно сказать, что помогло - THROTTLE_ANGLE_CORRECTION или новая калибровка, не могу.
    Я вешал THROTTLE_ANGLE_CORRECTION на тумблер с аппы и тестил его без аль-холд. Если выкл, то на старте снижение ~30гр. и при описанном маневре (смена направления движения) подлетает на 1-2м. Проверял в Феникс СИМе, так и есть, при смене направления движения его подкидывает по инерции, т.е. тут все ок. Включаем с пульта THROTTLE_ANGLE_CORRECTION. В начале движения набор высоты ~30гр. Т.е. для моего конфига 100 многовато... со значениями не игрался. Далее при маневре смены направления движения: инерция+компенсация=скачки 3-4м.

    Теперь по новому алгоритму:
    1. зачем вычислять ошибку для каждой из осей, а потом при расчете accZ "собирать" ее обратно (применение описанное в TODO в расчет не берем)? Визуально без трех осевой калибровки и без разложения ошибки по осям (старая версия алгоритма), кривая скорости и ускорения более плавная (или красивая чтоль) + время вычисления меньше, что актуально при интегрировании не в каждой итерации цикла...

    Код:
    tmp = err*ACC_BARO_I*InvG;
      for(axis=0; axis<3; axis++) {
          errI.A[axis]+= EstG.A[axis] * tmp; 
      }
      
      // Project ACC vector A to 'global' Z axis (estimated by gyro vector G) with I term taked into account
      // Math: accZ = (A + errI) * G / |G| - 1G
      accZ = get_accZ(&(errI.V));
    2. есть идея ITerm (PID "I") составляющую ПИД регуля отключать в баро режиме, т.к. она довольно медленная и только вносит путаницу в результат AltPID, т.к. даже на выходе интегратора высота шумит в диапазоне метра (с bmp085) и шумит гораздо быстрее результата ITerm. В итоге I стремится непонятно к чему и имеет неактуальное значение, т.к. целевая величина прыгает постоянно... В общем я занулил ее и вроде как диапазон плавания уменьшился...
    Второй вариант пробовать повысить "скорость" I составляющей...
    з.ы. для сонара или более точного баро I безусловно полезна, т.к. целевая величина явно присутствует

    3. P=10 слишком много, т.к. опять же вычисленная высота постоянно плавает +/- полметра-метр и это дает оч. большую компенсацию, хотя физически высота не меняется, отсюда большое беспричинное упр-е воздействие на моторы и дерганье постоянное вниз-вверх. На моем конфиге Р=2-3 получилось оптимально... Интересно если поставить НЧ фильтр в ПИД регуле уже на вычисленную высоту?

    4. с D параметром дела обстоят получше и я отвязал его от P8[PIDALT] для более понятно тюнинга.
    Код:
    //DTerm = ((int32_t)D8[PIDALT]) * P8[PIDALT] * constrain(EstVelocity, -100, 100) / 1000;
    DTerm = D8[PIDALT] * constrain(EstVelocity, -100, 100) / 10;
    D=6-10 оптимально

    вот текущая версия если интересно:

  27. #104

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,016
    Записей в дневнике
    2
    Цитата Сообщение от mahowik Посмотреть сообщение
    именно по этому я пока не пробовал и не планирую скорее всего использовать 3-х осевую калибровку, т.к. если уж и bma180 (с внутренней t-компесацией) педалит, то что говорить про остальные аксели, хотя летом может и имеет смысл...
    Но без калибровки, на акселе можно только висеть неподвижно. Если его показаниям нелзя верить пр наклоне, это плохо и для обычного полета - будет постоянно уходить level после долгого пролета и остановки.


    Цитата Сообщение от mahowik Посмотреть сообщение
    Я вешал THROTTLE_ANGLE_CORRECTION на тумблер с аппы и тестил его без аль-холд. Если выкл, то на старте снижение ~30гр. и при описанном маневре (смена направления движения) подлетает на 1-2м. Проверял в Феникс СИМе, так и есть, при смене направления движения его подкидывает по инерции, т.е. тут все ок. Включаем с пульта THROTTLE_ANGLE_CORRECTION. В начале движения набор высоты ~30гр. Т.е. для моего конфига 100 многовато... со значениями не игрался. Далее при маневре смены направления движения: инерция+компенсация=скачки 3-4м.
    Да, все верно эта коререкция при торможении работает неправильно. Сложный аэродинамичский эффект. Но я знаю как его скомпенсировать правильно - ведь информация, ускоряемся ли мы или тормозим, у нас есть по углу между акселем и гирой. При торможении надо даже обращать знак у коррекции по углу, т.к. выброс тяги очень сильный.

    Эта фича конечно не так важна для полетов, но интересно с ней все же разобраться.



    Цитата Сообщение от mahowik Посмотреть сообщение
    1. зачем вычислять ошибку для каждой из осей, а потом при расчете accZ "собирать" ее обратно (применение описанное в TODO в расчет не берем)? Визуально без трех осевой калибровки и без разложения ошибки по осям (старая версия алгоритма), кривая скорости и ускорения более плавная (или красивая чтоль) + время вычисления меньше, что актуально при интегрировании не в каждой итерации цикла...

    Это мое ноу-хау, и оно очень полезно на самом деле. Только с ней я получил полную инвариантность высоты при наклонах на НЕ ОТКАЛИБРОВАННОМ акселерометре.
    Смысл в том, что при наклоне например на 90 град. уже нет смысла отнимать I-часть от оси Z - она уже не участвует в опредении высоты. Зато участвет ось X, у которой ноль может быть смещен с гораздо большей вероятностью (из-за специфики старой процедуры калибровки).

    А откалибровать нули с этой штукой очень просто - включи питание и наклони на 90гр на одну из осей. Подожди секунд 10 - ноль выставится по барометру сам. Потом наклони на другуй ось. Потом опять в центр. И все, все три I-части у нас содержат ошибку по нулям! Правда она не сохранится в EEPROM и нужно будет при замене батареи повторять.
    Цитата Сообщение от mahowik Посмотреть сообщение
    2. есть идея ITerm (PID "I") составляющую ПИД регуля отключать в баро режиме, т.к. она довольно медленная и только вносит путаницу в результат AltPID, т.к. даже на выходе интегратора высота шумит в диапазоне метра (с bmp085) и шумит гораздо быстрее результата ITerm. В итоге I стремится непонятно к чему и имеет неактуальное значение, т.к. целевая величина прыгает постоянно... В общем я занулил ее и вроде как диапазон плавания уменьшился...
    Второй вариант пробовать повысить "скорость" I составляющей...
    з.ы. для сонара или более точного баро I безусловно полезна, т.к. целевая величина явно присутствует
    Ты неправильно понмаешь смысл алгоритма. Основная цель внутреннего PID - найти I и не трогать ее! Это и будет истинный ноль акселерометра. Перечитай абзац выше. Если бы мы имели абсолютно точный акселерометр - внутренний PID не нужн вообще и достаточно комплементарного фильтра.
    Цитата Сообщение от mahowik Посмотреть сообщение
    3. P=10 слишком много, т.к. опять же вычисленная высота постоянно плавает +/- полметра-метр и это дает оч. большую компенсацию, хотя физически высота не меняется, отсюда большое беспричинное упр-е воздействие на моторы и дерганье постоянное вниз-вверх. На моем конфиге Р=2-3 получилось оптимально... Интересно если поставить НЧ фильтр в ПИД регуле уже на вычисленную высоту?
    У меня на одном аппарате P=10 было замечателно (я видео выкладывал), на втором оказалось много - были осцилляции. Нормально стало с 5..7 и более меньшим I. guru_florida писал что P=10 у него тоже заработало сразу. Тут все зависит от характеристик ESC, моторов и винтов, и ручную настройку нкто не отменял.

    НЧ фильтр уже стоит - обрати внимание на работу алгоритма когда ВКЛЮЧЕН Alt Hold. Тогда PID сразу ослабляется и график высоты становится пологим (шум барометра уже не виден практически). Но вообще, можно попробовать добавить опционально несильный фильтр, если из-за высоты идет сильный шум на моторы., по идее хуже не будет.

    Цитата Сообщение от mahowik Посмотреть сообщение
    4. с D параметром дела обстоят получше и я отвязал его от P8[PIDALT] для более понятно тюнинга
    Я тоже отвяжу. Все таки все остальные PID сделаны несвязными в MultiWii, не буду нарушать традицию

  28. #105

    Регистрация
    13.03.2011
    Адрес
    Montreal, Canada
    Возраст
    39
    Сообщений
    2,299
    Записей в дневнике
    19
    Цитата Сообщение от alexmos Посмотреть сообщение
    Но без калибровки, на акселе можно только висеть неподвижно. Если его показаниям нелзя верить пр наклоне, это плохо и для обычного полета - будет постоянно уходить level после долгого пролета и остановки.
    почему левел будет плыть? если ты про температурный дрейф, то да, а так не вижу причин... т.е. вектор вычисленный по гиро будет скоректирован акселем, который четко видит землю после остановки...

    Цитата Сообщение от alexmos Посмотреть сообщение
    Да, все верно эта коререкция при торможении работает неправильно. Сложный аэродинамичский эффект. Но я знаю как его скомпенсировать правильно - ведь информация, ускоряемся ли мы или тормозим, у нас есть по углу между акселем и гирой. При торможении надо даже обращать знак у коррекции по углу, т.к. выброс тяги очень сильный. Эта фича конечно не так важна для полетов, но интересно с ней все же разобраться.
    все верно. по идее знак тяги нужно менять, когда детектим торможение... осталось правильно задетектить

    Цитата Сообщение от alexmos Посмотреть сообщение
    Смысл в том, что при наклоне например на 90 град. уже нет смысла отнимать I-часть от оси Z - она уже не участвует в опредении высоты. Зато участвет ось X, у которой ноль может быть смещен с гораздо большей вероятностью (из-за специфики старой процедуры калибровки).
    в теории да, тут все верно. у каждой оси акселя свой ноль и коректировка должна быть раздельная. НО на парактике макс. рабочие углы 30-45гр. с погрешностью в ~10-20%. Т.е. как ты увидел профит от этого в динамике я не понимаю

    Цитата Сообщение от alexmos Посмотреть сообщение
    А откалибровать нули с этой штукой очень просто - включи питание и наклони на 90гр на одну из осей. Подожди секунд 10 - ноль выставится по барометру сам. Потом наклони на другуй ось. Потом опять в центр. И все, все три I-части у нас содержат ошибку по нулям! Правда она не сохранится в EEPROM и нужно будет при замене батареи повторять.
    Ну тут наверное при калибровке тогда и баро мод надо врубить, т.к. при выключенном баро ошибка без делителя...

    if(baroMode && avgError < 5000 && sonarUsed == 0) {
    err/= (6 - avgError/1000); // CMPF multiplyer 1..5
    }

    Цитата Сообщение от alexmos Посмотреть сообщение
    Ты неправильно понмаешь смысл алгоритма. Основная цель внутреннего PID - найти I и не трогать ее! Это и будет истинный ноль акселерометра. Перечитай абзац выше. Если бы мы имели абсолютно точный акселерометр - внутренний PID не нужн вообще и достаточно комплементарного фильтра.
    я специално писал ITerm (PID "I") т.к. говорил об основном/конечном PID регуляторе (который в MultiWii.ino файле), а не внутреннем. Т.е. там по делу написанно
    посмотри еще раз плз.

    Цитата Сообщение от alexmos Посмотреть сообщение
    НЧ фильтр уже стоит - обрати внимание на работу алгоритма когда ВКЛЮЧЕН Alt Hold. Тогда PID сразу ослабляется и график высоты становится пологим (шум барометра уже не виден практически). Но вообще, можно попробовать добавить опционально несильный фильтр, если из-за высоты идет сильный шум на моторы., по идее хуже не будет.
    Ну с этим все понятно. Я давольно подробно изучил алгоритм и просидел ни один час с графиками в ГУИ... Тут сглаживание барометра идет за счет использования компл. филтра, НО в вычисленной высоте все равно есть немалый шум, т.к. исползуется вн. пид регулятор, где его ошибка (разность баро и выч. высота) довольно сильно шумит, что накладывает шум на вычесленную скорость и на вычесленную высоту на выходе соот-но...
    В общем я имелл ввиду НЧ фильтр на высоту в конечном пид регуле...

  29. #106

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,016
    Записей в дневнике
    2
    Цитата Сообщение от mahowik Посмотреть сообщение
    почему левел будет плыть? если ты про температурный дрейф, то да, а так не вижу причин... т.е. вектор вычисленный по гиро будет скоректирован акселем, который четко видит землю после остановки...
    Сложно объяснить. Если аксель калиброван только по оси Z, то при наклоне он не будет точно указывать землю. А гироскоп под него подстроится. Но когда наклон кончится, гироскоп покажет неправильный уровень и опять понадобится время на подстройку.

    Цитата Сообщение от mahowik Посмотреть сообщение
    все верно. по идее знак тяги нужно менять, когда детектим торможение... осталось правильно задетектить
    Уже сделал, оказалась простая формула - взаимная проекция ACC на GYRO по осям X,Y: Ax*Gx + Ay*Gy. Очень приблизительно отражает аэродинамику коптера в боковом ветре при движении в разных фазах. Если выводить точную формулу - то это кандидатскую писать В руках погонял - работает вроде, надо только пропорцию подогнать.

    Цитата Сообщение от mahowik Посмотреть сообщение
    Т.е. как ты увидел профит от этого в динамике я не понимаю
    Ну вот ты писал у тебя коптер на 5 метров улетает когда наклоняется. Это как раз из-за неточных нулей по X, Y. Профит небольшой но есть, а сложности не сильно добавляет (на четтыре вычисления больше).


    Цитата Сообщение от mahowik Посмотреть сообщение
    я специално писал ITerm (PID "I") т.к. говорил об основном/конечном PID регуляторе (который в MultiWii.ino файле), а не внутреннем. Т.е. там по делу написанно
    посмотри еще раз плз.
    Да, извини не понял. Я тоже заметил, что с большим I осцилляции сильнее. Согласен насчет баро, но подумай, может его вообще убрать - сонару он тоже не сильно нужен. Iterm нужен для достижения точного целевого значения, но у нас целевое значение не так важно, можно зафиксироваться и чуть выше/ниже. Я оставлю код, а занулить его можно в GUI. Ещё он важен, если изменится отдача моторов или масса в режиме удержания. Например на коптер рюмку водки поставить Без I просядет сильно и не вернется





    Цитата Сообщение от mahowik Посмотреть сообщение
    Ну тут наверное при калибровке тогда и баро мод надо врубить, т.к. при выключенном баро ошибка без делителя...

    if(baroMode && avgError < 5000 && sonarUsed == 0) {
    err/= (6 - avgError/1000); // CMPF multiplyer 1..5
    }
    этого не понял. Наоброт при калибровке нужен сильный PID чтоы быстро найти Iterm, а при реалном исползовании уже надо ослаблять барометр. Сонар можно оставить на сильном PID, т.к. он достаточно точен (точнее акселерометра).

    Цитата Сообщение от mahowik Посмотреть сообщение
    В общем я имелл ввиду НЧ фильтр на высоту в конечном пид регуле...
    А насколько НЧ? Например при начале движения или порыве ветра, а также пр турбуленциях на посадке, надо достаточно быстро отрабатывать высоту, а НЧ внесет задержку фазы.

  30. #107

    Регистрация
    13.03.2011
    Адрес
    Montreal, Canada
    Возраст
    39
    Сообщений
    2,299
    Записей в дневнике
    19
    Цитата Сообщение от alexmos Посмотреть сообщение
    Сложно объяснить. Если аксель калиброван только по оси Z, то при наклоне он не будет точно указывать землю. А гироскоп под него подстроится. Но когда наклон кончится, гироскоп покажет неправильный уровень и опять понадобится время на подстройку.
    При высоком GYR_CMPF_FACTOR (у меня 400) КФ почти не смотрит на аксель. И после долгих "крутых пике" погрешность будет практически полностью обусловленна дрейфом гиро... всего 2-5гр обычно, что корректится в итоге за 2-3 сек в покое по акселю...
    А если уж говорить сугубо про погрешность, которая вносится акселем, то при сложных и затяжных маневрах серия ускорений (которая будет восприниматься в ИМУ как наклон) может дать гораздо больший эффект. Хотя и от этого эффекта есть защита в ИМУ:
    Код:
      // Apply complimentary filter (Gyro drift correction)
      // If accel magnitude >1.4G or <0.6G and ACC vector outside of the limit range => we neutralize the effect of accelerometers in the angle estimation.
      // To do that, we just skip filter, as EstV already rotated by Gyro
      if ( ( 36 < accMag && accMag < 196 ) || smallAngle25 )
    но даже она вроде как не нужна при высоком GYR_CMPF_FACTOR...
    Помнится когда мы с ziss_dm давили бенефитами использования флоат фильтра для акселя на АлексаВПариже, смотрел его (ziss_dm) версию ИМУ. Он убрал эту защиту за ненадобностю при GYR_CMPF_FACTOR=500...

    Цитата Сообщение от alexmos Посмотреть сообщение
    Уже сделал, оказалась простая формула - взаимная проекция ACC на GYRO по осям X,Y: Ax*Gx + Ay*Gy. Очень приблизительно отражает аэродинамику коптера в боковом ветре при движении в разных фазах.
    тут мало что понял... распиши подробнее... при торможении/резком маневре по идее невозможно распознать где угол наклона, а где ускорение... этож вроде известная нерешаемая задача... или не так?

    Цитата Сообщение от alexmos Посмотреть сообщение
    Да, извини не понял. Я тоже заметил, что с большим I осцилляции сильнее. Согласен насчет баро, но подумай, может его вообще убрать - сонару он тоже не сильно нужен. Iterm нужен для достижения точного целевого значения, но у нас целевое значение не так важно, можно зафиксироваться и чуть выше/ниже. Я оставлю код, а занулить его можно в GUI. Ещё он важен, если изменится отдача моторов или масса в режиме удержания. Например на коптер рюмку водки поставить Без I просядет сильно и не вернется
    ну с сонаром как раз таки имеет смысл на мой взгляд, т.к. целевая велечина довольно точна... а если точна, тогда и применение можно легко найти... например рюмку зафиксировать на удобной высоте для принятия на грудь!

    Цитата Сообщение от alexmos Посмотреть сообщение
    этого не понял. Наоброт при калибровке нужен сильный PID чтоы быстро найти Iterm, а при реалном исползовании уже надо ослаблять барометр. Сонар можно оставить на сильном PID, т.к. он достаточно точен (точнее акселерометра).
    согласен... терь понял... спасибо

    Цитата Сообщение от alexmos Посмотреть сообщение
    А насколько НЧ? Например при начале движения или порыве ветра, а также пр турбуленциях на посадке, надо достаточно быстро отрабатывать высоту, а НЧ внесет задержку фазы.
    ну с макс. задержкой в 0.3-0.5 сек, т.е. частота среза 1-3гц...
    + для таких порывов у нас Д есть (+ в него можно добавить ускорение для крутизниы и более резкого спада... как писал ранее), а П с учетом того что оно шумит (на bmp085) можно сделать доволно плавним и тормозным...

  31. #108

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,016
    Записей в дневнике
    2
    Цитата Сообщение от mahowik Посмотреть сообщение
    При высоком GYR_CMPF_FACTOR (у меня 400) КФ почти не смотрит на аксель. И после долгих "крутых пике" погрешность будет практически полностью обусловленна дрейфом гиро... всего 2-5гр обычно, что корректится в итоге за 2-3 сек в покое по акселю...
    Этот высокий фактор хорошо отвязывает гиру, у меня тодже 500 стоит. Но если лететь достаточно долго - 3-4 сек, то гира все равно совместится с акселем. А тут уж все зависит от его калибровки. Если реальный ноль по XY не совпал с калиброванным, то его "сфера" возможных перемещений смещена и наклонена, и совпадает с реальностью только в точке калибровки по Z. Но стоит отметить, что для угла это не столь критично, а вот для длины вектора - ошибка калибровки по оси X,Y вылазит с пропорцией ~ err*Cos(angle). (при условии совпадения чувствительностей по осям и точной калибровки по Z). В реальности и чувтвителность не совпадает и ноль по Z плывет, что делает ошибку ещё больше.

    Из-за несовпадения измеренной и истинной сфер при наклоне ускорение вылазит +-5 (мои реалные оптыты), что дает большой дрейф высоты пока не
    стабилизируется.


    Цитата Сообщение от mahowik Посмотреть сообщение
    тут мало что понял... распиши подробнее... при торможении/резком маневре по идее невозможно распознать где угол наклона, а где ускорение... этож вроде известная нерешаемая задача... или не так?
    Это пока только предположение. Я разложил все векторы сил на трех этапах (ускорение - равномерное движение - торможение) и посморел, что показывает акселерометр и что гироскоп. Оказалось, что их проекции на локальную XY различаются на каждом этапе. А перемножение дает нужную коррекцию (по крайней мере совпадают 0, + и -). Я потом нарисую картинку как время будет.

    Цитата Сообщение от mahowik Посмотреть сообщение
    ну с сонаром как раз таки имеет смысл на мой взгляд, т.к. целевая велечина довольно точна... а если точна, тогда и применение можно легко найти... например рюмку зафиксировать на удобной высоте для принятия на грудь!
    Это если рассматривать сонар на идеальной плоскости. А если лететь над пересеченной местностью (что обычно и бывает), он также будет выдавать шум непредсказуемого спектралного состава.. И рассматривать I-часть можно также как и для барометра - есть свои плюсы и минусы. Надо затестить, ведь его достаточно просто в ГУИ обнулить.


    Цитата Сообщение от mahowik Посмотреть сообщение
    ну с макс. задержкой в 0.3-0.5 сек, т.е. частота среза 1-3гц...
    + для таких порывов у нас Д есть (+ в него можно добавить ускорение для крутизниы и более резкого спада... как писал ранее), а П с учетом того что оно шумит (на bmp085) можно сделать доволно плавним и тормозным...
    Т.е. предлагаешь фильтровть только P (т.е. фактически EstAlt), а EstVel оставить? Минусов вроде не вижу, но и плюсов тоже. Нужно точно определить, зачем это нужно. У меня с барометром на графике EstAlt довольно плавная, и никакой паразитной перекомпенсаци в +/- на моторы не идет (гораздо сильнее например обычная стабилизаия угла их дергает). Пришли скриншот или видео своего GUI в момент стабилизации по барометру.

  32. #109

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,016
    Записей в дневнике
    2
    Цитата Сообщение от mahowik Посмотреть сообщение
    2. есть идея ITerm (PID "I") составляющую ПИД регуля отключать в баро режиме, т.к. она довольно медленная и только вносит путаницу в результат AltPID, т.к. даже на выходе интегратора высота шумит в диапазоне метра (с bmp085) и шумит гораздо быстрее результата ITerm. В итоге I стремится непонятно к чему и имеет неактуальное значение, т.к. целевая величина прыгает постоянно... В общем я занулил ее и вроде как диапазон плавания уменьшился...
    Повисев сегодня ещё минут 30, выяснил пользу от I - она нужна для перехода с соанара на барометр. Из-за разных PID
    P-часть может достаточно сильно увеличиваться при проседании батаери со временем, и при переходе и смене коэффициента усиления, проиcходит прыжок вверх или вниз.
    Если будет I, то P останется в районе 0 даже при падении напряжения, только I-часть не надо умножать на SONAR_BARO_PID_GAIN. Ещё разделил её на 5, чтобы сделать её достаточно медленной (тогда она вроде не будет осциллировать).

  33. #110

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,016
    Записей в дневнике
    2
    Долго не мог понять, почему при полете по барометру при посадке или приближении к земле на 30 см начинает кобасить вверх-вниз до полутора метров.. Сегодня посмотрел, что же показывает барометр у земли - он думает, что высота падает на 1м ниже пола Это из-за зоны повышенного давления под коптером при приближении к земле. Так что взлет и посадка - только по сонару.

  34. #111

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,016
    Записей в дневнике
    2
    Ещё нашел проблемку с сонаром: чем выше высота, тем больше вероятность подлянки с его стороны. Если сонар начнет выдавать постояную высоту скажем в 1 метр на высоте в три метра, то коптер очень бодро устремится в небо и ничего его не остановит Буду делать ограничитель "земли по барометру", т.е. барометр по прежнему необходимо корректировать сонаром, но в ограниченных пределах (+/-1 метр) от точки отсчета при старте.

  35. #112

    Регистрация
    31.12.2011
    Адрес
    Днепропетровск, украина
    Возраст
    33
    Сообщений
    804
    в кролике прошивке до 1.101 сонар работает до 1500см, в 1.200 2000, дальше вырубается)

  36. #113

    Регистрация
    29.01.2011
    Адрес
    Окленд, Новая Зеландия
    Возраст
    30
    Сообщений
    4,911
    Записей в дневнике
    78
    начал лепить OSD Сайбериановый в MultiWii, и не пойму откуда взять высоту от земли и в каких она попугаях (EstAlt?) и есть ли она вообще?

  37. #114

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,016
    Записей в дневнике
    2
    Цитата Сообщение от SovGVD Посмотреть сообщение
    начал лепить OSD Сайбериановый в MultiWii, и не пойму откуда взять высоту от земли и в каких она попугаях (EstAlt?) и есть ли она вообще?
    В оригинале высота - это показания барометра в см (вроде бы). Но высота не выверена по земле, и может быть например -70м. Так что при старте моторов нужно сохранить текущее значение EstAlt и потом отнимать его от новых показаний. Это и будет высота над землей. http://www.multiwii.com/forum/viewtopic.php?f=8&t=1351

    В моей версии, EstAlt в см. Она обнуляется при запуске системы, только если включен сонар. Если сонара нет, от и смысла не было барометр к чему то привязывать.

  38. #115

    Регистрация
    17.06.2011
    Адрес
    Минск
    Возраст
    40
    Сообщений
    1,941
    В ардукоптере собираются заюзать аксель для Loiter'a, мот и вам пригодится

  39. #116

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,016
    Записей в дневнике
    2
    Цитата Сообщение от Sir Alex Посмотреть сообщение
    В ардукоптере собираются заюзать аксель для Loiter'a, мот и вам пригодится
    Что такое loiter?

  40. #117

    Регистрация
    17.06.2011
    Адрес
    Минск
    Возраст
    40
    Сообщений
    1,941
    Цитата Сообщение от alexmos Посмотреть сообщение
    Что такое loiter?
    Режим LOITER - удержание позиции.

  41. #118

    Регистрация
    29.01.2011
    Адрес
    Окленд, Новая Зеландия
    Возраст
    30
    Сообщений
    4,911
    Записей в дневнике
    78
    Цитата Сообщение от Sir Alex Посмотреть сообщение
    В ардукоптере собираются заюзать аксель для Loiter'a, мот и вам пригодится
    это акселем ускорение по всем осям чтоли будут смотреть и корректировать GPS?

  42. #119

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,016
    Записей в дневнике
    2
    Цитата Сообщение от alexmos Посмотреть сообщение
    В ардукоптере собираются заюзать аксель для Loiter'a, мот и вам пригодится
    Это помогает, если сливать аксель с GPS (тут почти те же алгоритмы что и у меня для althold). Если сливать с optical flow - уже хуже и вряд ли аксель тут поможет (оба измерения относительные). Если чистый аксель - то абсолютно никакого смысла нет.

  43. #120

    Регистрация
    17.06.2011
    Адрес
    Минск
    Возраст
    40
    Сообщений
    1,941
    Цитата Сообщение от SovGVD Посмотреть сообщение
    это акселем ускорение по всем осям чтоли будут смотреть и корректировать GPS?
    Видимо - да. Jason Short сказал что тестирует эту фичу, но в GIT'e пока нету.

Закрытая тема

Похожие темы

  1. Crius Hobby MultiWii
    от leprud в разделе Коптеры. Комплектующие, сборка, настройка.
    Ответов: 2931
    Последнее сообщение: 24.02.2017, 03:34
  2. futaba 8, функция hold
    от midiant в разделе Аппаратура, гироскопы, гувернеры, электроника
    Ответов: 5
    Последнее сообщение: 27.12.2011, 14:21

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения