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

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

Тема раздела Коптеры. Комплектующие, сборка, настройка. в категории Квадрокоптеры и мультироторы; Потихоньку допиливаю свой алгоритм, с основном в плане быстродействия. Вот сегодня заснял "комнатные" тесты. Барометр, конечно, в помещении и близко ...

  1. #121

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,017
    Записей в дневнике
    2
    Потихоньку допиливаю свой алгоритм, с основном в плане быстродействия. Вот сегодня заснял "комнатные" тесты. Барометр, конечно, в помещении и близко к полу не очень хорошо работает - сказыватся воздушные потоки. Но все равно с достаточно высоким Alt-P и высоким D осцилляций не возникает. Если его уменьшить, то будет висеть на месте, но уж очень слабо тогда держит внешние возмущения.


    Осталось поправить одну ошибку при работе с сонаром и выложу.

    Синализация коррекции высоты - это суперфункция Теперь высоту можно установить очень точно и не сбить установку при подруливании YAW.

  2.  
  3. #122

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

  4. #123

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,017
    Записей в дневнике
    2
    Можно на ты По отзывам других владельцев, у барометра 085 высота плывет +-1 м. У меня также, +-1, при полете в этих пределах и гуляет.
    О, я кажись понял прчину: если ты сморишь в GUI в перменных EstAlt или BaroAlt - то там она делится на 100 и отбражается в метрах.

    Вот строчка из Serial.pde: serialize16(EstAlt/10);
    И в GUI видимо ещё раз на 10 делят.

  5. #124

    Регистрация
    29.01.2011
    Адрес
    Окленд, Новая Зеландия
    Возраст
    30
    Сообщений
    4,911
    Записей в дневнике
    78
    Цитата Сообщение от alexmos Посмотреть сообщение
    если ты сморишь в GUI в перменных EstAlt или BaroAlt - то там она делится на 100 и отбражается в метрах.
    я себе вот так сделал (debug2 и 3, версия 2.0pre3, аксель bma020 как то приглушен в этой версии вернул 2G и acc_1G = 255;, вместо 8G и acc_1G = 63
    Код:
          serialize16((EstAlt-AltGround)/100);
          serialize16(EstAlt/100);
    AltGround=EstAlt при заводе моторов
    лежит платка на столе - значение в GUI то вверх, то вниз ползет, туда/сюда поднимаю - толком ничего не меняется
    еще и BaroAlt/10=EstAlt/100 (хотя не удивительно EstAlt = BaroHigh*10/(BARO_TAB_SIZE/2)

  6.  
  7. #125

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

  8. #126

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,017
    Записей в дневнике
    2
    Выложил на SVN. В Readme.txt все нововведения описаны. Сегодня наконец хороший денек, тоже потестил немного. Вроде все ок, коррекция газа по углу тоже работает (я там ввел два коэффициента для настройки). Единственное, странный глюк - как только вылетаю из тени на солнце, коптер тут же падает Не хватило времени и батарей разобраться почему. Думаю из-за резкого прогрева датчиков, и решится установкой фольги на крышку.

    По PID осталось прмерно также у меня, единственное D повысил, иначе остается склоность к осцилляциям: P=8, I=0 - 0.020, D=25. Если сонара нет, то I=0 можно смело ставить. Если есть, то I нужен - тогда переход с барометра на сонар при подъеме очень плавный (при плавном подъеме я даже не смог определить на какой высоте барометр подхватывается).

  9. #127

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

    По PID осталось прмерно также у меня, единственное D повысил, иначе остается склоность к осцилляциям: P=8, I=0 - 0.020, D=25. Если сонара нет, то I=0 можно смело ставить. Если есть, то I нужен - тогда переход с барометра на сонар при подъеме очень плавный (при плавном подъеме я даже не смог определить на какой высоте барометр подхватывается).
    Кроче полеты как мин. на неделю откладываются. Вчера не вписался с маневром и поймал асфальт. Электронику пока не проверял... минус 2 движка , но вроде как можно восстановить. Так что пока код посмотрю..
    По поводу провалов на солнце. Мот у тебя уже оптикал флоу подвешен? Если нет, то это еще раз говорит о большой чувствительности алгоритма к малейшим изменениям параметров сенсоров...
    По поводу увеличения D и склоности к осцилляциям. Не пробовал ускорение использовать? Из-за подЪема фронта и увеличения крутизны спада будет более четкая отработка по D...

  10.  
  11. #128

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,017
    Записей в дневнике
    2
    Сочуствую, я вот пока не рискую на маневры Нет запчастей.
    Optical Flow был включен, но он не мог влиять на высоту никак, он углы корректирует. Засветка просто приведет к отсутвию данных какое то время. Тут какая-то более серьезная проблема, прям интересно что это такое.

    Вечером опять сходил погонял по двору, в общем все стабильно, летать можно и по сонар и по барометру. Серву подвеса переключил на другой BEC, вроде и помехи сонара ушли. Так что осталось смержиться с 2.0 и подкорректировать коэффициенты для пониженного цикла (30 гц должно хватить), а то сейчас с OptFlow время цикла непрлично большое, 4500.

  12. #129

    Регистрация
    17.06.2011
    Адрес
    Минск
    Возраст
    40
    Сообщений
    1,941
    Цитата Сообщение от alexmos Посмотреть сообщение
    Тут какая-то более серьезная проблема, прям интересно что это такое.
    Попробуй просто феном погреть датчики. Как минимум аксель серьезно плывет при нагреве.

  13. #130

    Регистрация
    13.03.2011
    Адрес
    Montreal, Canada
    Возраст
    39
    Сообщений
    2,299
    Записей в дневнике
    19
    Меня вчера осинило вдруг!
    А почему не отнимать длину вектора EstG вместо acc_1G, тогда и статическую ошибку искать не надо! Т.к. EstG вектор "плавно" корректируется по акселю (и уже содержит нужную нам коррекцию ошибки), в переходных процессах при ускоренни/торможении его длинна как раз acc_1G минус ошибка (дрейф акселя, неточная калибровка и т.д.), т.е.

    Код:
    accZ = (accADC[0] * EstG.V.X + accADC[1] * EstG.V.Y + accADC[2] * EstG.V.Z) * InvG - 1/InvG;
    потом убираем пид регуль из интегратора и оставим только VEL_DAMP чтобы приводить скорость в ноль, т.е. корректировать нелинейность акселя и ошибку интегратора

    Код:
    vel+= accZ*accVelScale*cycleTime - vel * VEL_DAMP;
    Скорость станет меньше шуметь, т.к. в ней не будет ошибки (alt - sensorAlt). И EstAlt соот-но станет менее шумной.
    В конечном ПИД регуле в итоге при высоких Д не будет лишних дерганий (при переусиленни шума)
    Последний раз редактировалось mahowik; 27.03.2012 в 20:38.

  14. #131

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

    Я это тоже пробовал Не рабоатет. Вернее, работает но намного хуже поиска статичной I-части. Эта операция равнозначна дампингу ускорения в 0, что означает сначала ошибку в определении скорости и ещё большую в определении расстояния (это проявляется как выбросы на графиках скорости в минус и меньшее расстояние чем пройдено)

  15. #132

    Регистрация
    13.03.2011
    Адрес
    Montreal, Canada
    Возраст
    39
    Сообщений
    2,299
    Записей в дневнике
    19
    Цитата Сообщение от alexmos Посмотреть сообщение
    Я это тоже пробовал Не рабоатет. Вернее, работает но намного хуже поиска статичной I-части. Эта операция равнозначна дампингу ускорения в 0, что означает сначала ошибку в определении скорости и ещё большую в определении расстояния (это проявляется как выбросы на графиках скорости в минус и меньшее расстояние чем пройдено)
    но тут ведь допущение что EstG вполне статичен на переходных процессах (при высоком GYR_CMPF_FACTOR) т.е. при ускорениях и потому будет содержать именно acc_1G минус дрейф/ошибку акселя... мы ведь исходя из этого допущения используем EstG в качестве Z оси для получения проекции вектора ускорения...

    т.е. по идее дампенинг будет совсем незначительним при не затяжных переходных процессах... а при затяжних тут уж весь алгоритм поплывет, т.к. нет "правильной" Z оси и соот-но проекция будет также неверной и т.д...

  16. #133

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,017
    Записей в дневнике
    2
    Цитата Сообщение от mahowik Посмотреть сообщение
    но тут ведь допущение что EstG вполне статичен на переходных процессах (при высоком GYR_CMPF_FACTOR) т.е. при ускорениях и потому будет содержать именно acc_1G минус дрейф/ошибку акселя...
    Я твои рассуждения повторял один-в-один, и также сильно обрадовался такому простому решению Но когда сделал его, то оказалось что гира довольно быстро следует за акселем, и аксель теряет значительную часть ускорения. Любой дампинг пр интегрировании приводит к неприятным последствиям.


    Цитата Сообщение от mahowik Посмотреть сообщение
    мы ведь исходя из этого допущения используем EstG в качестве Z оси для получения проекции вектора ускорения...
    В этом случае есть существенная разница - мы использует только НАПРАВЛЕНИЕ вектора гиры. Его длина нам не интересна при проекции. А направление хорошо совпадает с направлением акселя при вертикальных перемещениях под любым углом. И даже если совпадает плохо - разница в Cos малого угла, что является бесконечно малой величиной.


    Но в любом случае, такое решение тоже имеет право на существование, хотя бы из-за своей простоты. Если оно ещё и устойчиво к непредвиденным выкрутасам сенсоров, это ещё больше повышает его ценность. Так что можешь попробовать в этом направлении.

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

    Неверное допущение. Комплементарный фильтр не зависит от амплитуды сигнала, только от разницы. Т.е. если ускорение будет 10G в течение 0.1 сек, то и ошибка будет большой. Если ускорение будет 0.1G в течение 100 сек, то ошибка будет малой, но в итоге при интегрировании ошибка в скорости в обоих случаях будет одинаковой. Поэтому неважно затяжные это или быстрые процессы.

  17. #134

    Регистрация
    26.09.2005
    Адрес
    Балашиха
    Возраст
    42
    Сообщений
    449
    Записей в дневнике
    1
    Плата у меня тоже Crius SE, сонар есть, если прошивка с работающим сонаром не опасна для коптера ,меня и окружающего мира, можно выложить готовый скетч для Crius SE , и если можно , Алексей, скрин работающих пидов.
    Если на выходные не будет дождя попробую подлетнуть.

  18. #135

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,017
    Записей в дневнике
    2
    Нет, сонар не опасен Проверьте только в GUI что он выдает правильно высоту и при включении моторов не сбоит.
    В Readme.txt все отличия от официальной версии 1.9, а все настройки моих модов в конце config.h

    Скетч: http://multiwii-alexmos.googlecode.c...ltiWii_r18.zip
    GUI: http://multiwii-alexmos.googlecode.c...nf_1_9_r15.zip


  19. #136

    Регистрация
    06.10.2004
    Адрес
    Москва
    Возраст
    44
    Сообщений
    396
    Не компилируется, в папке лежат и MultiWii.ino и MultiWii.pde

    [IMG][/IMG]

  20. #137

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,017
    Записей в дневнике
    2
    На первом скриншоте непонятная ошибка, а на втором - прошу прощения, есть такая. Выложил по той же ссылке исправленную версию. Компилировал в IDE 0023

  21. #138

    Регистрация
    03.12.2006
    Адрес
    Москва
    Возраст
    39
    Сообщений
    1,184
    Аналогичная ситуация.Та же ошибка при компиляции.
    Цитата Сообщение от alexmos Посмотреть сообщение
    Выложил по той же ссылке исправленную версию.
    Спасибо,теперь компилируется.

    У меня вопрос по GPS,какие настройки для модуля нужны МультиВи?
    Если я правильно понимаю,то они отличны от настроек для Мегапирата?
    Последний раз редактировалось soliada; 31.03.2012 в 12:47.

  22. #139

    Регистрация
    26.09.2005
    Адрес
    Балашиха
    Возраст
    42
    Сообщений
    449
    Записей в дневнике
    1
    Подлетнул, видимо нужно настраивать (правда не знаю что), явно видно что пытается держать высоту, но в итоге рывками либо уходит в низ либо в верх, правда не понял сонар это или барометр т.к. включаются вместе с одного тумблера. Заметил в GUI такую штуку, если смотрим debug1 без активации баро и сонара - высоту показывает идеально, стоит щелкнуть тумблер (активация баро и сонара) - начинает шуметь. Квадрик весит примерно 1.5 кг, моторы 750кв, винты 12х4.7, пиды ALT ставил как на скрине выше, аксель по шести точкам не калибровал, куда копать?

  23. #140

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,017
    Записей в дневнике
    2
    Сонар отключается в режиме Passthru - проверьте не включается ли у вас этот режим по тумблеру. Аксель желательно окалибровать по 6 точкам, делов 30 сек (это для парвильной работы барометра). По идее сонар не должен выключаться в режиме удержания высоты. Он отключается, если начнет терять сигнал, также при углах наклона больше 60.

    Цитата Сообщение от soliada Посмотреть сообщение
    У меня вопрос по GPS,какие настройки для модуля нужны МультиВи?

    по ЖПС - это не ко мне, никогда с им дела не имел.

  24. #141

    Регистрация
    06.10.2004
    Адрес
    Москва
    Возраст
    44
    Сообщений
    396
    Цитата Сообщение от alexmos Посмотреть сообщение
    На первом скриншоте непонятная ошибка, а на втором - прошу прощения, есть такая. Выложил по той же ссылке исправленную версию. Компилировал в IDE 0023
    Спасибо, залил, в гуи все крутится правильно, по блютусу изменений нет с версией r15? помнится там не мог подцепится, а сейчас на r18 проверить нет возможности.

  25. #142

    Регистрация
    26.09.2005
    Адрес
    Балашиха
    Возраст
    42
    Сообщений
    449
    Записей в дневнике
    1
    Цитата Сообщение от alexmos Посмотреть сообщение
    Сонар отключается в режиме Passthru - проверьте не включается ли у вас этот режим по тумблеру.
    шорт побьери, т.е. если я активирую Passthru сонар отключается? я думал он в таком режиме включается...
    У меня на одном тумблере включение BARO и включение Passthru, получается в GUI на чекбоксах просто нужно оставить активацию BARO а Passthru не трогать вообще, при этом сонар по умолчанию будет постоянно активным?

    После калибровки по этой методике ROLL почемуто стоит ровно под 45 градусов, что то делаю не так...

    Последний раз редактировалось skyrider; 31.03.2012 в 18:52.

  26. #143

    Регистрация
    26.09.2005
    Адрес
    Балашиха
    Возраст
    42
    Сообщений
    449
    Записей в дневнике
    1
    Заработал сонар, почти отлично, на видео ручку газа не трогал вообще, видно как несколько раз "чихает" по высоте, а так все отлично! Браво Алексей!



    Получается до этого я летал с отключенным сонаром, и рывки по высоте до этого были по барометру, как и сейчас если подняться метров на 5 и включить удержание, видимо для правильной работы калибровка по шести точкам обязательна, у меня почему то по ROLL становится криво. Алексей, последовательность калибровки не имеет значения (естественно кроме позиции №1)

  27. #144

    Регистрация
    03.12.2006
    Адрес
    Москва
    Возраст
    39
    Сообщений
    1,184
    Возник вопрос такого характера. А на какие пины подключать сонар на Ардуине с 2560АТмегой?

  28. #145

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,017
    Записей в дневнике
    2
    Цитата Сообщение от skyrider Посмотреть сообщение
    После калибровки по этой методике ROLL почемуто стоит ровно под 45 градусов, что то делаю не так...
    По GUI у вас по двум осям 255.. а должно быть только по одной. Какая у вас схема расположения моторв? на рисунке для QUADX - т.е. оси датчика должны смотреть ровно под 90 градусов по горизонту. Сорри если по схеме это не очень понятно Порядок не имеет значения, да и точность расположения не надо выерять до 1 градуса- удерживать в руках вполне достаточно.

    Цитата Сообщение от soliada Посмотреть сообщение
    Возник вопрос такого характера. А на какие пины подключать сонар на Ардуине с 2560АТмегой?

    Не знаю, дело в том что мегу я в глаза не видел, и писать для нее код вслепую смысла нет. Trig можно на любую ногу вешать, а вот Echo - только там где есть свободное прерывание. Попробуйте разобраться в Sonar.pde как правильно настроить прерывания на мегу и на каком порту/ноге, а я включу в основной код..

    Цитата Сообщение от skyrider Посмотреть сообщение
    видно как несколько раз "чихает" по высоте, а так все отлично
    Это плохой симптом - на такой высоте как на видео сонар должен работать идеально. У меня при висении до 2-х метров никаких намеков нет на провалы. Если быстро носиться туда сюда с наклонами 45 град. - тогда да, начинает слегка подергивать по высоте.
    Очень важно свободное пространство в угле 120 градусов от датчиков сонара, а также не должно быть наводок (типа проводов от ESC и моторов вблизи платы, серв на той же линии питания и т.д.), т.к. сонар имеет очень чувствителен к питанию, там же микрофонные усилители по сути.
    Последний раз редактировалось alexmos; 01.04.2012 в 02:19.

  29. #146

    Регистрация
    26.09.2005
    Адрес
    Балашиха
    Возраст
    42
    Сообщений
    449
    Записей в дневнике
    1
    Цитата Сообщение от alexmos Посмотреть сообщение
    По GUI у вас по двум осям 255
    Теперь только по Z 255
    Цитата Сообщение от alexmos Посмотреть сообщение
    Какая у вас схема расположения моторв? на рисунке для QUADX - т.е. оси датчика должны смотреть ровно под 90 градусов по горизонту. Сорри если по схеме это не очень понятно Порядок не имеет значения
    Схема расположения моторов QUAD X, пробовал менять последовательность, добился правильной калибровки в такой последовательности по Вашей схеме : 1 , 2 , 5 , 4 , 3 , 6. Не знаю почему , но в моем случае именно эта последовательность сработала, перепроверял три раза.
    Если завтра позволит погода, проверю работу барометра, пропадут рывки по высоте после правильной калибровки акселя или нет.

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

    Цитата Сообщение от alexmos Посмотреть сообщение
    на такой высоте как на видео сонар должен работать идеально
    Может быть причиной небольших провалов то что мой квадрик более тяжелый, моторы относительно медленные 750кв, т.е он более вялый , не такой резкий, и ему нужны другие пиды ALT?

  30. #147

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,017
    Записей в дневнике
    2
    Цитата Сообщение от skyrider Посмотреть сообщение
    Схема расположения моторов QUAD X, пробовал менять последовательность, добился правильной калибровки в такой последовательности по Вашей схеме : 1 , 2 , 5 , 4 , 3 , 6. Не знаю почему , но в моем случае именно эта последовательность сработала, перепроверял три раза.
    Если завтра позволит погода, проверю работу барометра, пропадут рывки по высоте после правильной калибровки акселя или нет.
    Хм, похоже баг где то в алгоритме. Последовательность не должна играть никакой роли, кроме того что Z всегда в начале. Подумаю..





    Цитата Сообщение от skyrider Посмотреть сообщение
    Может быть причиной небольших провалов то что мой квадрик более тяжелый, моторы относительно медленные 750кв, т.е он более вялый , не такой резкий, и ему нужны другие пиды ALT?

    Нет, по видео очень похоже на кратковременные лаги сонара. От веса конечно зависит, но просто будет чуть медленне стабилизация - а тут из стабилного состояния рывки в нестабильное. Попробуйте запустить моторы на рабочую мощность с подключением в ГУИ и гляньте что показывает сонар. Высота не должна прыгать.

    Вообще с сонаром надо быть осторожнее, т.к. если он начнет выдавать неправильные данные (например от наводок решит что высота всегда равна 1 метру) - коптер может как свалиться, так и в небеса улететь. Я сделал ограничитель по барометру для крайних случаев, но не проверял его работу. Так что при испытаниях надо руку всегда держать на ручке отключения режима Alt Hold

  31. #148

    Регистрация
    26.09.2005
    Адрес
    Балашиха
    Возраст
    42
    Сообщений
    449
    Записей в дневнике
    1
    Изменил пару параметров в config.h
    #define MINTHROTTLE 1130
    #define INTERNAL_I2C_PULLUPS
    #define DEADBAND 20
    #define MAXTHROTTLE 1900
    #define THROTTLE_HOVER 1440
    #define SHIFT_HOVER 1450
    #define MAG_ORIENTATION(X, Y, Z) {magADC[ROLL] = -Y; magADC[PITCH] = X; magADC[YAW] = Z;}
    Откалибровал по шести точкам и подлетнул на метровой высоте - дергается при включении Alt Hold по высоте как припадошный каждые 2-3 секунды, что то из того что я сделал ему явно не понравилось, нужно цеплять блютус и смотреть что кажет в полете.
    Цитата Сообщение от alexmos Посмотреть сообщение
    Попробуйте запустить моторы на рабочую мощность с подключением в ГУИ и гляньте что показывает сонар. Высота не должна прыгать.
    Скачет примерно + - 0.1-0.3

  32. #149

    Регистрация
    11.05.2008
    Адрес
    Великий Новгород
    Возраст
    39
    Сообщений
    3,942
    Записей в дневнике
    22
    народы, подскажите, плиз, по работе сонара.
    если заявлена дальность 5 метров, то что выдает сонар на бОльшей высоте?
    какой примерный "угол охвата"?
    какая средняя по больнице частота опроса?

  33. #150

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,017
    Записей в дневнике
    2
    Цитата Сообщение от HikeR Посмотреть сообщение
    народы, подскажите, плиз, по работе сонара.
    если заявлена дальность 5 метров, то что выдает сонар на бОльшей высоте?
    какой примерный "угол охвата"?
    какая средняя по больнице частота опроса?
    Правильный ответ - зависит от сонара. Как у него определено в датащите для таких случаев, то и должен выдавать.
    Но к примеру тот, что я использую - ему плевать на датащит и он выдает при потере сигнала 1 метр (все 4 штуки что я тестил - по разному). Но при этом время измерения подскакивает до 250мс, и вот так можно распознать ошибку.

    Частота измерений зависит от расстояния.. При нулевом - близко к нулю, +50мс на паузу между измерениями.

    Угол охвата также зависит от сонара, на практике градусов 60. В датащите приводится диаграмма направленности.

    5 метров это для идеальных условий. Реально в условиях зашумленного питания, ненулевого угла наклона будет меньше. Я ставлю с 2 до 3 метров плавный переход на барометр. При наклонах лимит опускается (я заложил примерную диаграмму направленности в алгоритм).

  34. #151

    Регистрация
    13.03.2011
    Адрес
    Montreal, Canada
    Возраст
    39
    Сообщений
    2,299
    Записей в дневнике
    19
    Цитата Сообщение от alexmos Посмотреть сообщение
    Но в любом случае, такое решение тоже имеет право на существование, хотя бы из-за своей простоты. Если оно ещё и устойчиво к непредвиденным выкрутасам сенсоров, это ещё больше повышает его ценность. Так что можешь попробовать в этом направлении.
    Попробовал. По графикам пока очень нравится. Выводил одновременно 2 графика: ускорение "с минус acc_1G" и "c минус 1/InvG". В ГУИ они практически совпадают.
    Профит:
    1. скорость не шумит
    2. высота соот-но шумит меньше, а если повысить коэф. компл. фильтра до 200-300, то вообще меедленно плавает +/-0.2...0.4 м
    3. простота настройки, т.к. нет зависимых параметров типа ПИДы в интеграторе и коэф. компл. фильтра

    но это все теория пока облетать не могу, т.к. еще не починился после последнего краша...

  35. #152

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

  36. #153

    Регистрация
    13.03.2011
    Адрес
    Montreal, Canada
    Возраст
    39
    Сообщений
    2,299
    Записей в дневнике
    19
    На 2.0 перевести не долго, я уже с ним и тестировал... а цикл будешь паузами выравнивать, чтобы сводить время итерации к константе?

  37. #154

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,017
    Записей в дневнике
    2
    Нет, в 2.0 вроде сделали некоторое подобие таймслотов для распределения медленных вычислений, вот их заюзаю.

    Полетал сегодня - барометр не нравится как держит. Все равно склонен к осцилляциям. Иногда и до 3 метров прыгал верх вниз. Не то, к чему стремился

  38. #155

    Регистрация
    13.03.2011
    Адрес
    Montreal, Canada
    Возраст
    39
    Сообщений
    2,299
    Записей в дневнике
    19
    Когда идеи заканчивались, меня спасали более мягкие ПИД-ы + более зажатые констрэйнты конечного PID регуля, в частности на D часть...

    з.ы. Ну все! Желаю удачи! A я собирать чемоданы и лететь туда где не бывает холодно и недоступный интернет, точнее очень дорогой...

  39. #156

    Регистрация
    03.12.2006
    Адрес
    Москва
    Возраст
    39
    Сообщений
    1,184
    Цитата Сообщение от alexmos Посмотреть сообщение
    Не знаю, дело в том что мегу я в глаза не видел, и писать для нее код вслепую смысла нет. Trig можно на любую ногу вешать, а вот Echo - только там где есть свободное прерывание. Попробуйте разобраться в Sonar.pde как правильно настроить прерывания на мегу и на каком порту/ноге, а я включу в основной код..
    Здравствуйте Алексей. Признаться так и не смог разобраться с этим вопросом.Если чесно,в этом вопросе не совсем разбираюсь,вернее совсем не разбираюсь,а точнее не знаю в каком направлении надо мыслить.
    Если не трудно,можете подсказать что конкретно надо посмотреть- проанализировать в Sonar.pde?
    Очень хочется попробовать сонар.

  40. #157

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,017
    Записей в дневнике
    2
    Я тоже плохо представляю в чем отличия меги от обычной 328/168, а особенно в вашем варанте её включения. Задача - найти свободное прерывание, выбрать ногу, которая ему соотвествует. Далее прописать эту ногу в константе SONAR_READ в конфиге, задействовать прерывание по сигналу на этой ноге:

    Код:
      #if defined(PROMINI)
       PCICR |= (1<<0) ; // PCINT activated for PINS [D8-D13] on port B
       PCMSK0 = SONAR_READ_MASK; // trigger interrupt on this pin only
      #endif
      #if defined(MEGA)
        // TODO: setup interrupt on MEGA
      #endif
    Если прерывание отдично от INT0 - переписать заголовок обработчика:
    Код:
    // Install interrupt  handler
    ISR(PCINT0_vect) {
    В общем то это все очень просто но я не могу потестить не имея меги.

  41. #158

    Регистрация
    06.10.2011
    Адрес
    Самарская обл.
    Возраст
    44
    Сообщений
    172
    Подскажите, а HC-SR04 будет работать ? В Config.h такого не нашел.
    И если будет, то где посмотреть схему включения ?

    Почитал ветку, сонар HC-SR04 работает. Для его включения надо раскоментировать //#define DYP_ME007 ?
    Остается открытый вопрос куда его включать.
    Последний раз редактировалось alex_f73; 13.04.2012 в 12:09.

  42. #159

    Регистрация
    23.08.2011
    Адрес
    Краснодар
    Возраст
    39
    Сообщений
    1,017
    Записей в дневнике
    2
    Если вы про мой код - то будет. Он и писался под такой сонар. Раскоментируйте #define SONAR и под ним будут определены ноги, куда его цеплять. Также в Sonar.pde есть пояснения насчет включения.

    Но дело в том что у меня нет #define DYP_ME007.. Так что, возможно, вы смотрите другую прошивку.

  43. #160

    Регистрация
    06.10.2011
    Адрес
    Самарская обл.
    Возраст
    44
    Сообщений
    172
    Я смотрел код mahowik, я думал вы совместно одну прошивку допиливаете.Сейчас скачал вашу, для CriusSE, что раскоментировать или закоментировать надо ?И если у меня ESC Plush то мне MINTHROTTLE 1300 устанавливать ?

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

Похожие темы

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

Ваши права

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