Betaflight PID — настройка FeedForward, что это такое (Setpoint Weight и Setpoint Transition)

Betaflight PID - настройка FeedForward, что это такое (Setpoint Weight и Setpoint Transition)В этой статье вы узнаете, как настраивать параметры во вкладке PID Controller Settings — FeedForward (раньше: Setpoint Weight и Setpoint Transition. Также, здесь мы коснемся характеристик полета «derivative of error and measurement» которые связаны с Feed-Forward/Setpoint Weight.

Источник: oscarliang.com

Если вы еще плохо знакомы с PID-настройками, почитайте статью на нашем сайт о PID: https://profpv.ru/chto-takoe-pid-na-chto-vliyaet-i-kak-nastroit/

Новый коэффициент FeedForward заменил Setpoint Weight

С выходом Betaflight 3.5 произошли некоторые изменения в названиях настроек. Dterm Setpoint Weight и Transition (relaxation ratio) переименованы в FeedForward (коэффициент усиления F). Находится настройка все там же: Betaflight Configurator, вкладка PID, рядом с коэффициентом усиления D.

До изменений, вы могли менять чувствительность стиков пульта меняя значения D term Set Weight Weight / Transition, теперь же, за это отвечает F again (коэфф. усиления), причем, можно настраивать все по отдельности: pitch, roll и yaw (тангаж, крен, рыскание).

betaflight configurator pid настройки feedforward f gain

Преимущества FeedForward

У FeedForward есть преимущества над Setpoint Weight.

Первое: Setpoint Weight использовался в связке с PID, то есть, если вы меняли ПИДы, то это также влияло и на Setpoint Weight. А вот FeedForward уже полностью отделен от оболочки PID, и меня значения ПИДов или FeedForward, они не будут влиять друг на друга.

Второе: благодаря FeedForward, можно менять настройки YAW (рыскание), что позволяет более точно настраивать чувствительность по рысканию. Раньше, настройки Setpoint Weight были доступны только для Pitch и Roll (тангаж и крен). Например, если чувствительность рыскания (yaw) слишком маленькая, с помощью значения feedforward можно увеличить цифру и настроить чувствительность до уровня тангажа и крена.

Третье: Setpoint Weight управлял только двумя осями во время фристайла (да и просто во время полетов) Pitch и Roll, теперь же, благодаря D и F все три оси (включая YAW) становятся независимыми и их можно отдельно настраивать, компенсирую недостающую или излишнюю чувствительность.

Четвертое: вам больше не надо будет повышать коэффициент Р, чтобы повысить чувствительность, теперь для этого достаточно повысить значение FeedForward. При увеличении коэф. F больше не будет появляться вибрация, даже если значение будет слишком высоким. Но будьте внимательны: коэффициент F не сможет стабилизировать квадрокоптер, для этого придется все также использовать P коэффициент.

Как настроить F Gain и D Gain?

С появлением FeedForward теперь есть два способа настроить коэффициенты F и D.

Коэффициент D всегда активен и предназначен для демпинга любых резких и быстрых изменений.

Коэффициент F активен только во время изменения положения стиков и ответственен за отзывчивость квадрокоптера.

Простыми словами, если вы хотите увеличить чувствительность квадрокоптера на ваши действия, увеличьте коэффициент F. Если вы хотите сгладить свои резкие движения стиками, увеличьте D и наоборот. Чем больше значение D, тем сильнее будут сглаживаться рывки, дрон будет вести себя плавно. Чем выше значение F, тем больше контроля над дроном, так как он будет более чувствительным к вашим командам.

Если по YAW у вас наблюдаются какие-то вибрации или колебания, попробуйте увеличить значения F и I и уменьшить P, чтобы поддерживать отзывчивость, при этом сводя до минимума колебания/вибрации, вызванные Р коэффициентом.

Устаревшая информация

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


Общее о «Error» и «Measurement»

Раньше в Betaflight была возможность настройки «Derivative of Error», либо «Derivative of Measurement», одновременно их использовать было нельзя. В PID-настройках они назывались D. D сильно влияет на характеристику полета квадрокоптера, больше всего влияет на плавность и скорость реагирования на команды. 

Далее по-тексту “Derivative of Error” и “Derivative of Measurement” я буду писать Error и  Measurement.

Чем отличается «Error» от «Measurement«

D «error» позволяет настроить более четкий ответ стиков, но более грубый ответ двигателей, в то время как Measurement позволяет сделать реакцию на стики плавной, в том числе и реакцию двигателей тоже делает плавной. Есть такая команда RC, ниже представлен график с черного ящика их дронов, со значениями. Этот график показывает самую заметную разницу между Error и Measurement: 

Betaflight PID - настройка FeedForward, что это такое (Setpoint Weight и Setpoint Transition)

Причина, по которой Error выглядит в виде шагов, может заключаться в том, что команда RC специально делала такие шаги в настройках. Поскольку каждый шаг — это изменение Setpoint, который создает Errors, этот процесс называется «D term kick» — ударный D.

Что выбрать — «Error» или «Measurement«?

Как опытный пилот, вы можете заметить разницу между двумя этими терминами, например, когда делаете какие-нибудь трюки в режиме АКРО или перевороты дрона. Есть мнение, что фристайлеры предпочитают настройку Measurement из-за плавности реакции, но я уверен, что у каждого есть свои предпочтения. 

Не так давно, разработчики Betaflight представили «Setpoint Weight», который объединяет «Error» и «Measurement» и больше не нужно думать, что же лучше настроить.

Что такое Setpoint Weight в Betaflight

Setpoint Weight в Betaflight представляет из себя полоску с ползунком, которая представляет из себя совокупность двух параметров «error» и «measurement» и двигая ползунок, вы настраиваете позицию между мягкостью и плавностью полета и отзывчивостью на стики:

  • Setpoint weight в положении 1 = error
  • Setpoint weight в положении 0 = measurement

Setpoint Weight и Setpoint Transition

Setpoint Weight можно установить на только на 1, но на 2,55, такая настройка сделает реакцию на стики (т.е. когда вы «рулити» стиками) очень быстрой, а движения дрона также очень быстрыми. Недостаток высокой резкости Setpoint Weight в том, что дрон очень сильно реагирует на стики и начинает дергаться как робот. Такое поведение очень нежелательно для фристайла по FPV, где нужна плавность.

Еще одной тонкостью будет то, что если выставлять Setpoint Weight больше 1, то это будет влиять на Rates и Expo.

Настройка Setpoint Weight

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

Рекомендация:
Не настраивайте Weight (оставьте в положении по умолчанию) пока не настроите PID-параметры, так как Weight маскирует плохо настроенные PID.

Setpoint Weight ничего не меняет, пока вы не начнете двигать стики, по-этому когда будете настраивать этот параметр, шевелите стиками :)

Рекомендуется настраивать в диапазоне от 0,3 до 2 пунктов, но запомните, нет никаких «правильных» настроек, все настраивается под пилота, если вам нравится и удобно летать с Weight на пункте 2, то и летайте :)

Что такое Setpoint Transition

«Setpoint Transition» работает поверх «Setpoint Weight» в процентном масштабе и означает, как быстро дрон будет реагировать на изменения положения стиков.

Простым языком: если вы поставите высокое значение, например близкое к 1, то дрон будет очень резко и агрессивно отзываться на управление, но если значение будет ближе к 0, то дрон будет реагировать на управление плавно и медленно.

Исправить отскоки (отброс в сторону) с помощью Setpoint Transition

Setpoint Transition с низким значением может уменьшить влияние Setpoint weight, когда стик возвращается в центр после большого газа. Понижение этого параметра позволит дать более плавную и приятную остановку.

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

Настройка Setpoint Transition

Эффект от настройки Setpoint Transition будет виден, только если вы будете шевелить стики, если вы их отпустите и ничего не будете делать — то и эффекта не увидите.

Рекомендуется сначала оставить Setpoint Transition как есть, т.е. в положении 1 (по умолчанию) и сначала настроить Setpoint weight. Также нужно настроить и D-значение, чтобы минимизировать настройку пропеллеров и только после этого можно настраивать Setpoint Transition для исключения отскоков. Такая настройка позволит иметь наименьшее число значения D, но при этом даст  чистые и ровные остановки после выполнения флипов и роллов.

Изменения в статье:

  • 03.2018 — статья создана
  • 09.2018 — статья отредактирована, добавлена информация о FeedForward
Понравилась статья? Поделиться с друзьями:
Все о квадрокоптерах | PROFPV.RU