Прошивки CleanFlight/BetaFlight для полетников

ale_p
mil-lion:

Очень интересно, а зачем по YAW - FF? Если по YAW нет вообще D. Там только P и I. (По крайней мере так было в старых исходниках)

для того что что и для питч и ролл

Сергей_Уж
ale_p:

для того что что и для питч и ролл

Если есть значит нужен, хочется один раз понять и забыть 😃 Они пробовали недавно снова D по YAW попробовать ( читал в слеке, 100 лет там не был ) стало только хуже и увидел там откуда новые значения по яву. Узнать это чистое любопытство, можно и без этого летать, ну или перейти на кисс, поставил и забыл ( забил ) 😃
Кстати порадовало что в слеке снова появился Борис.Б , я думал что он отошел от дел…

ale_p

ок давайте понвой.

github.com/betaflight/…/3.5-tuning-notes

Yaw performance has historically been weaker than pitch and roll, leading people to run high levels of yaw P, leading to noise and wobble on yaw, overshoot and bounce back. Not any more! In 3.5, yaw will typically be just as responsive and precise as pitch and roll.
At least 50 of FF on yaw is recommended on all quads. The default is 60.
P should not need to be more than 40-60 for great yaw responsiveness, in fact lower P reduces yaw noise and bounce back.
Really high yaw I works great on most quads, and (strangely enough) actually reduces bounce back, when combined with yaw feed forward.
With those changes, yaw responsiveness will be as good, or better, than pitch and roll. With Feed Forward and high I on yaw, bounce back will be minimal, and there is no need to run iTerm_Relax on these settings.
** Yaw D is experimental. For normal quads, do not add any D to yaw, or you’ll likely get mad yaw oscillation.** Yaw D may be useful for tricopters.
These are the yaw related values I’d personally recommend for a typical quad:
set iterm_relax = RP set p_yaw = 40 set i_yaw = 120 set d_yaw = 0 set f_yaw = 100

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

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

момент который я не вдупляю - iTerm_Relax должен быть включен только на ролл и питч.

хотя я летал и на ролл питч яв и разницы особой не заметил.

но вот то что
iterm_relax_type = GYRO

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

Сергей_Уж
ale_p:

ок давайте понвой.

Из текста все таки они D в качестве эксперимента пробовали 😃 Ступор в том что FF вроде как борется с D которого в YAW нет, хочу понять как это работает ( ну прям как в Дисковеру ch 😃 ) Если попадется расклад где будет понятно что тогда он ограничивает можно озвучить. Ну а мне и всем думаю хватает " yaw will typically be just as responsive and precise as pitch and roll" смогли значит молодцы.

ale_p

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

про фф еще раз, вот вам про ваш айнав.

quadmeup.com/inav-1-6-fixed-wing-piff-controller/

в случае с бетафлайтом это будет вот так выглядеть

What Feed Forward does, it uses setpoint, not error (pilots input) to feed it to servos.

в нашем случае сервы замените на регули

Сергей_Уж
ale_p:

почему он не нужен на яв - тоно не скажу

For normal quads, do not add any D to yaw, or you’ll likely get mad yaw oscillation это в твоей цитате
И хорошо , ни с чем не борется, тогда из твоего рисунка его роль нивелировать PIDsum пидконтроллера

ale_p

Хорошо. Перефразирую. Почему тогда эта тема для трикоптеров? Ну разработчики так это позиционируют.
И к слову про д на квадах. Я пробовал его до5 поднимать при P=70. Никакой разницы.
Возможно надо 20, но тогда это ничего не даст кроме шума и ухудшевгегося отклика (pid response)

ale_p:

Хорошо. Перефразирую. Почему тогда эта тема для трикоптеров? Ну разработчики так это позиционируют.

сам себе отвечу. поскольку у квада по яву измение положение идёт моментом (torque), а у ролла и питча - тягой (thrust), у трикоптера получается иначе -
задний движок может наклоняться, яв имеет большую производительность (authority) тк уже может крутить квад тягой, а этой уже другая история.

mil-lion

Точно! В трикоптере используется сервомашинка на YAW и конечно для нее D опасно и нужно как раз FF!

ale_p
mil-lion:

Точно! В трикоптере используется сервомашинка на YAW и конечно для нее D опасно и нужно как раз FF!

наоборот, для трикоптера предполагается ставить Д>0.

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

mil-lion
ale_p:

наоборот, для трикоптера предполагается ставить Д>0.

Я раньше смотрел исходники BF и по YAW прям в комментарии написано: что для YAW Д не используется. Поэтому что бы не выставили в конфигураторе это просто не работало. Как сейчас, не смотрел.

Посмотрел вашу картинку Алексей и понял что за FF.
Получается что входной сигнал сразу идет на выход, а ПИД регулятор уже потом дорегулирует.
Выходит что когда FF большое и P большое то квадрик будет ооооочень резким. Ведь входной сигнал сразу идет напрямую через FF и так как ошибка в первый момент большая то управляющий сигнал на мотор будет огромный.
Но все равно схема меня немного вводит в ступор. Раньше когда ошибка компенсировалась то управляющий сигнал на моторы доходил до нуля, то как сейчас компенсируется FF который не зависит от ошибки управления? По мне так должны быть колебания! Блин что то как то намутили.

ale_p

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

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

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

Сергей_Уж
ale_p:

мое мнение по тюну пока такое: настраиваем квад по максимуму чтоб убрать пропвош

Ты предлагаешь FF для настройки пидов обнулять ? Чуть я в ступоре, настроить пиды , а потом поведение, это как ? Я не цепляюсь и не подкалываю, просто чуть уже путаться начинаю 😃 Поведение я рейтами настравивал.

ale_p

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

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

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

фф может влиять например - если его круто задрать, то при резких роллах ‘нормально’ настроенный квад может получить такой пинок что будет овершут. (мой коммент выше про смарт фид форвард) - тоесть, получится что Д не хватит.

рейты это не совсем то. с фидфорвард квад становится как бы легче что ли и будто бы быстрее начинает реагировать с самого начала движения.

Сергей_Уж

Я уже с утра посмотрел это видео, как выводы по простому понял FF отвязан от параметра D ( до этого думад что сделан в противовес и эти параметры связаны ), это видно по его работе на графике блекбокса, когда есть задержки по D он( FF ) на это не реагирует . Если в настройках питча и рола есть D он ( FF ) нивелирует PIDsum по своей сути, а если нет (как в YAW ) он просто делает свою работу. Ну и в Smart FF для правильной работы параметр нужно задирать на значения более 200 ( у него получилось 250 ) пока с этим мне не до конца ясно, фразы типа При значении 400 смарт FF полностью контролирует ролл мне ни о чем не говорят и чувствуется он сам чуть плавает как мне показалось.

MFer

в общем сёдня доделал новый квад - тяжелый ChamTi с писалкой (650 взлетный вес).
ну и попробовал 3.5 заодно…
настроился на удивление быстро - 4 пака всего. настраивал по ощущениям, без логов, но потом доводил с логами по pid_analyzer.
вот так получилось:

set gyro_lowpass_hz = 130
set gyro_lowpass2_hz = 0
set dyn_notch_quality = 5
set dyn_notch_width_percent = 20
set mag_hardware = NONE
set baro_hardware = NONE
set rssi_channel = 8
set rc_smoothing_type = FILTER
set dterm_lowpass_hz = 120
set dterm_lowpass2_hz = 250
set dterm_notch_cutoff = 0
set feedforward_transition = 10
set iterm_relax = RP
set iterm_relax_cutoff = 10
set throttle_boost = 8
set tpa_rate = 20
set tpa_breakpoint = 1050

картинки пид_аналайзера такие в итоге:



c явом можно наверно еще поработать, но мне уже очень нравится как летит, не уверен, что надо еще ковырять…
правда и на BF 3.4 летит у меня не хуже ))) так что вклад FF не могу оценить объективно ))

и да - с явом я долго мучался, больше всего… пропвош прям парил мозг… а потом я просто поставил 15 по D… и всё… как рукой сняло…
а до этого картинка была такая по яву (лучшее что получалось):

ЗЫ: так понравилось, как летает, что я обнаглел, включил писалку и… расфигачил ее апгараж на втором паке ((( камера умерла и не отдала видео даже…
вот первый пак с двр:

youtu.be/LdWNFNp3ZMw

Сергей_Уж

Нормаль, только ты с ОСД что то пересолил 😃 Нахрена столько циферок и букв 😃 Лайк за видео…

ale_p

и да - с явом я долго мучался, больше всего… пропвош прям парил мозг… а потом я просто поставил 15 по D… и всё… как рукой сняло…
а до этого картинка была такая по яву (лучшее что получалось):

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

пропвошит ли по яву можно посмотреть в бб -уавтек описывал, там где про пид еррор

MFer
ale_p:

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

не понял про неверную настройку. в смысле в 1 не выходит? не почувствовал этого в полете…
без D у меня была чудовищная тряска (пропвош) при резком выходе с нулевого газа. причем не только в тяжелых моментах но и банально на плоском спуске с небес…
с D=15 пропвоша не стало. на 99% решилась проблема при любых нагрузках… чяднт?

ale_p

без D у меня была чудовищная тряска (пропвош) при резком выходе с нулевого газа

может как разработчики в тюниг гайде писали нормальные значения P и I выставить?

лог можно глянуть?