А давайте обсудим Arducopter - APM

arb
mishaXXyears:

фото девайса:

У Вас хоть поролон стоит в АПМ?

mishaXXyears:

странно, этот полет полностью в авто-режиме (не считая посадок)

Может Вы лог перепутали. Здесь полет в основном в стабилайзе.
Авто режим - это автоматический полет по точкам (стиками дергать не надо). Лойтер удержание позиции с помощью ЖПС.

mishaXXyears:

тогда что с раскачкой коптера при устоявшейся скорости полета 10м/с, loiter rate kP kI kD попробывать покрутить?

Я уже писал выше - возможно вибрации от скорости. А если еще и плохое питание, то АПМ с этим не справиться.
Ваш девайс вполне способен вибрировать на скорости. Я так понял там еще и быстросъемные лучи, которые могут разбалтываться со временем.

mishaXXyears:

loiter rate kP kI kD попробывать покрутить?

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

Кстати в лойтере максимальная скорость около 8,5 м/с. 10 было в стабилайзе.

mishaXXyears
arb:

У Вас хоть поролон стоит в АПМ?

нет, поставлю, как-то даже и не задумывался

arb:

Может Вы лог перепутали. Здесь полет в основном в стабилайзе

Точно не перепутал, врубал авто и через аппаратуру и через MPlaner. Все что выше 10 метров полет точно авто!

arb:

Я так понял там еще и быстросъемные лучи, которые могут разбалтываться со временем.

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

arb:

Кстати в лойтере максимальная скорость около 8,5 м/с. 10 было в стабилайзе.

до посадки в авто режиме после взлета дал команду DO_change_speed 10m/s (в настройках ПИДов почемуто не влияет изменение скорости на полет) После посадки и снятия груза попробовал выставить 8м/с. (тоже через комманду и полетел в авто)

А про вибрации поясните - в логах вообще нет показаний акселей? (и как их туда включить)

arb
mishaXXyears:

Точно не перепутал, врубал авто и через аппаратуру и через MPlaner. Все что выше 10 метров полет точно авто!

Да, извините, нашлось. Надписи спрятались за другими режимами.
Про вибрации и питание пока остается.

mishaXXyears:

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

Вам виднее, но в совокупности с креплением АПМ, проводов к АПМ и т.п. это может стать критичным. Обычно на мелочи не обращаешь внимания, а они потом оказываются последней каплей, которая переполняет чашу.

mishaXXyears:

до посадки в авто режиме после взлета дал команду DO_change_speed 10m/s (в настройках ПИДов почемуто не влияет изменение скорости на полет) После посадки и снятия груза попробовал выставить 8м/с. (тоже через комманду и полетел в авто)

Вот здесь не совсем понял, о чем идет речь.

mishaXXyears
arb:

Сообщение от mishaXXyears
до посадки в авто режиме после взлета дал команду DO_change_speed 10m/s (в настройках ПИДов почемуто не влияет изменение скорости на полет) После посадки и снятия груза попробовал выставить 8м/с. (тоже через комманду и полетел в авто)
Вот здесь не совсем понял, о чем идет речь.

Через такую команду скорость изменяется

А так нет 😦 выделено синим и розовым

Причем скорость подъема и спуска нормально реагирует на изменения

arb
mishaXXyears:

А так нет выделено синим и розовым

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

alexeykozin
usup:

вот поподробнее про альтхолд ardupilot.org/copter/docs/altholdmode.html покажите мне где там написано про влияние гпс

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

НО утверждать то что жпс никак не влияет на режим альтхолда или стаба - это слишком опрометчиво

usup

с вами спорить конечно не буду,вы в это деле гуру,но на 100% знаю что гпс на стабилайз никак не влияет,по крайней мере у меня,сам лично проверял,да и в англо вики об этом не видел упоминания)))и прошива у меня как раз 3.1

alexeykozin
usup:

не знаю может у кого то и вляиет)))и прошива у меня как раз 3.1

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

arb
alexeykozin:

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

Ну да, тогда каждая прошивка целые исследования. В описании настроек об этом ни слова и пока не нарвешься на проблему, и найдется тот кто найдет логическое объяснение получается тайна покрытая мраком. Причем у всех разный опыт, в смысле получен на разных прошивках и может получится, что каждый прав исходя из своей прошивки. Зато скучать не приходится:).

Теперь о проверке. Раз параметр влияет через через горизонт, то и проверить можно. Берем коптер в полном комплекте. Включаем ашрс гейн. Находим в комнате место где нет приема спутников. И смотрим как ведет себя горизонт в стабе и альтхольде. Не дергается , значит параметр не виноват (для этой прошивки). Контрольную проверку можно сделать в зоне неуверенного приема спутников. Ну это если захочется узнать кто виноват.
Конечно можно просто выключить параметр и самоуспокоится.

alex_nikiforov
arb:

каждая прошивка целые исследования

Верное высказывание, сколько раз себе говорил, не буду прошивать новой версией хорошо летающий аппарат, но нет же каждый год наступаю на эти грабли.

ufk
arb:

Ну да, тогда каждая прошивка целые исследования.

Именно так, а сейчас с екф все стало еще сложнее…
Это опенсорс, и от изначального ардупилота под который сто лет назад писалась “инструкция” на которую тут приводил ссылку ваш друг по спору нынешний отличается весьма значительно…более менее актуальную информацию можно почерпнуть только на ресурсах где все это обсуждается(типа форума ардупилота) или от людей которые этот код ковыряют(та же команда ф4)…

Именно поэтому я имею спец. тестовый коптер на которым налетываю дохрена часов на каждой свежей прошивке чтоб максимально выявить все проблемы и особенности, чтоб потом небыло мучительно больно за боевые железки, на который уже падение может встать в серьезное бабло…

Engelsit

Кстати, из за скачущего GPS (неправильные конфиги в приемнике), я не смог настроить AUTO_TRIM. Хоть и делал его в STABILIZE. При включении режима АвтоТрим, горизонт аппарата в Миссион Пленнере начинало неистово колбасить!

Для тех, кто не верит во влияние GPS в ручных режимах, скажите, зачем тогда вообще существует параметр AHRS GPS GAIN? Ведь при установке его в 0, Лоитер продолжает раьотать стабильно? А этот параметр именно для режимов НЕ использующих GPS в явном виде.
Ручные режимы не используют координату GPS. Но, похоже, используют его значения ускорения.

masterjon
Engelsit:

Для тех, кто не верит во влияние GPS в ручных режимах

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

alexeykozin
Engelsit:

зачем тогда вообще существует параметр AHRS GPS GAIN?

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

а теперь берем модель летающую по кругу как жэто делает кордовая модель.
изза центростремительного ускорения 3д акселерометры начинают показывать силу тяготения не в чистом виде а в сумарном с центростемительным, если не учитывать движение по кругу то горизонт завалится в сторону центра.
параметр AHRS GPS GAIN =1 разрешает алгоритму вычитать из показаний акселерометра ускорения по жпс

ENGINEERUS

AHRS_GPS_GAIN - переменная, указывает насколько сильно в вычислениях используются данные с ЖПС., по моему ставить-0 не корректно, дополнительный источник для расчетов только уменьшает вероятность ошибок. Чем боьше источников тем лучше. Конечно при условии что ЖПС исправен.
Можно пробывать от 0.5 и выше.

Engelsit

Сейчас провел два эксперимента.
Эксперимент 1.
а. Включил AHRS_GPS_GAIN=1
б. Поставил квадрокоптер на ровный асфальт.
в. Заармил движки.
г. Наблюдал, как “горизонт” постоянно немного плавает в такт флуктациям координаты GPS.
Это наблюдалось и в Stabilize, и в AltHold!

Эксперимент 2.
а. Выключил AHRS_GPS_GAIN=0
б, в - то же самое
г. Наблюдал, что “горизонт” абсолютно стабилен!

Кстати, при AHRS_GPS_GAIN = 1 невозможно провести Auto_Tune! Горизонт колбасит со страшной силой. Видимо, в этом режиме, наклоны гораздо активнее высчитываются на основе GPS и гораздо меньше на основе других датчиков.

alexeykozin:

с тем чтобы он не валился существуют акселерометры

я правильно понял, что если у квадрокоптера есть и гироскоп, и акселерометр, то данных от GPS-датчика ему уже не нужно? Он же не кордовая модель. 😃
Или все же порекомендуете поставить AHRS_GPS_GAIN в какое-нибудь среднее (или минимальное) значение, вроде 0,1-0,5?

Мне кажется, что GPS врет значительно чаще, чем любые другие датчики, а потому ему лучше не вмешиваться в AHRS. Но мне очень важно Ваше мнение!

Спасибо!

P.S. Если кому-то интересно покопаться и посмотреть, что тут произошло - с меня огромное спасибо за попытку.

cloud.mail.ru/public/5N5P/JcW39Tdv3

Повторю мои пояснения: аппарат в режиме AltHold при плавном добавлении газа, резко взмыл вверх-назад. Я поймал его на лету.
В логе видно, что перед взлетом, нос ушел на 30 градусов вниз. Хотя аппарат стоял на асфальте.

Обратите внимание, до момента взлета, показания акселерометров находятся около нуля! При этом, если включить повтор записи, то видно, что нос опускается до -30 градусов! Выходит, этот завал носа был вызван GPS.

5yoda5
Engelsit:

Горизонт колбасит со страшной силой.

Да нууууу.
Может причина в другом всё же?
Есть у АРМа такая фича, знакомая держателям дешевых РТФ коптеров-китаелётов: Если сразу после включения коптер трясти - то аксели начинают потом жить своей жизнью вплоть до перезагрузки.
И у АРМа то же самое. После подачи напруги, пока перемаргиваются светики, идет инициализация сенсоров. Если в этот момент трясти коптер - то аксель потом начинает дурковать. Можете провести такой эксперимент 😃
Правильная процедура такова - подали напругу, поставили коптер, ждем пока проморгаются светики. Как только прошивка стартанет - там уже трясите или крутите коптер как угодно.

Возможно все ваши непонятки именно от этого.

alex_nikiforov

Читаю крайние посты и удивляюсь, летаю на апмке и все меня радует и устраивает. Ничего не крутил, все в стоке по дефолту. Прошивочка для апм крайняя 3.2.1, ведь ее обсуждаем? Горизонт ползает в небольших пределах, но это ни как не влияет на полет. Попробуйте поставить 3.1.5.

Engelsit
5yoda5:

Да нууууу.
Может причина в другом всё же?

Именно в этом причина. Вчера 3 раза повторял эксперимент. С включенным AHRS_GPS_GAIN = 1, если удержать стик после Арма еще 15-20 секунд, войдя в режим AutoTrim (если я писал АвтоТюн, прошу прощения, ошибся), то аппарат просто невозможно откалибровать, ибо горизонт колбасит даже когда аппарат стоит на земле.

Перевожу AHRS_GPS_GAIN в ноль, не передергивая аккумулутора и не перезагружая плату, и горизонт становится супер стабильным, и АвтоТрим удается провести просто великолепно!

alexeykozin
ENGINEERUS:

Можно пробывать от 0.5 и выше.

в коде трактуется иначе, условие = 1 или не равно.
все что не равно 1 трактуется как ноль
по крайней мере в тех релизах где я заглядывал в код