Перейти к содержимому

Moron Threshold в Betaflight - порог для идиотов

Что такое Moron Threshold?

Moron Threshold (буквально — "порог для идиотов") — это параметр в Betaflight, который определяет, насколько сильно должны отклоняться показания гироскопа от нулевого положения, чтобы система считала это реальным движением дрона, а не шумом или вибрациями.

Начиная с Betaflight 4.3+, параметр Moron Threshold был переименован в gyro_calib_noise_limit и получил новые функции. (Просмотреть руководство по gyro_calib_noise_limit)

Для чего он нужен?

1. Фильтрация ложных срабатываний  
   - Если дрон стоит на земле или слегка вибрирует, гироскоп может улавливать микроскопические колебания. Moron Threshold отсекает эти ложные сигналы, предотвращая случайные корректировки ПИД-регулятора.
  
2. Защита от "дерганий" при взлете  
   - Без этого параметра дрон может резко крениться или тангажировать при взлете из-за ошибочного восприятия вибраций как реального движения.

3. Оптимизация работы ПИД-регулятора  
   - ПИД-контроллер не тратит ресурсы на обработку незначительных шумов, что улучшает стабильность полета.

Где находится настройка?

Параметр доступен в Expert Mode Betaflight Configurator:
1. Откройте вкладку PID Tuning.
2. Включите Expert Mode (в верхнем правом углу).
3. Найдите параметр "Moron Threshold" (обычно в разделе Filter Settings или PID Advanced).

Как работает Moron Threshold?

- Значение по умолчанию: 10 (для Betaflight 4.3+).
- Единицы измерения: градусы/секунду (°/s).
- Принцип действия:  
  Если гироскоп регистрирует отклонение меньше указанного порога, Betaflight игнорирует эти данные, считая их шумом. Если отклонение превышает порог — система воспринимает это как реальное движение и корректирует дрон.

Пример:

- Moron Threshold = 5  
  Дрон будет реагировать только на наклоны >5°/s. Легкие вибрации от моторов игнорируются.
- Moron Threshold = 20  
  Более агрессивная фильтрация: дрон проигнорирует даже умеренные колебания, что может привести к "ватному" управлению.

Как настроить Moron Threshold?

1. Рекомендуемые значения

 Тип полета      Значение  Примечание
 Фристайл  5–10  Чувствительная реакция на малые движения
 Гонки   8–12  Баланс между стабильностью и отзывчивостью
Кинематографика 15–20 Максимальное подавление микродвижений

2. Пошаговая настройка

1. Запустите дрон на стенде (без пропеллеров!) и посмотрите на графики гироскопа в Blackbox.  
   - Если видите частые мелкие колебания при отсутствии движения — увеличьте порог.  
   - Если дрон реагирует с задержкой — уменьшите.

2. Проверьте в полете:  
   - Слишком высокое значение → дрон становится "ленивым".  
   - Слишком низкое → возможны рывки из-за шумов.

3. Используйте CLI для тонкой настройки (bash):  

   set moron_threshold = 8  # Установка значения
   save                    # Сохранение настроек
Связь с другими фильтрами

Moron Threshold работает в связке с:
1. Gyro Lowpass Filter — отсекает высокочастотные шумы.  
2. D-Term Filter — снижает влияние вибраций на D-составляющую PID.  

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

Частые проблемы и решения

1. Дрон "не слушается" мелких движений стика
- Причина: Слишком высокий Moron Threshold.  
- Решение: Уменьшите значение на 2–3 пункта и проверьте реакцию.

2. Дрон дергается на малых оборотах
- Причина: Низкий порог + вибрации.  
- Решение:  
  - Повысьте Moron Threshold до 10–12.  
  - Проверьте балансировку пропеллеров.

3. Задержки в управлении
- Причина: Слишком агрессивная фильтрация.  
- Решение:  
  - Уменьшите Moron Threshold.  
  - Настройте gyro_lowpass_hz и dterm_lowpass_hz.

Вывод

Moron Threshold — это простой, но мощный инструмент для борьбы с шумами. Оптимальное значение зависит от:  
- Типа дрона (5" гоночный vs. 3" фристайл).  
- Уровня вибраций.  
- Стиля полета.  

Совет: Начинайте с значений по умолчанию и корректируйте по результатам тестов в Blackbox. Для большинства дронов 8–12 — это "золотая середина".  

> Подробнее о фильтрах: [Betaflight Filtering Guide](https://oscarliang.com/betaflight-filtering/)  
> Настройка Blackbox: [How to Use Blackbox](https://oscarliang.com/blackbox/)

gyro_calib_noise_limit в Betaflight: полное руководство

Что заменило Moron Threshold?

Начиная с Betaflight 4.3+, параметр Moron Threshold был переименован в gyro_calib_noise_limit и получил новые функции. Это более точный инструмент для калибровки гироскопа и фильтрации шумов.

Где найти gyro_calib_noise_limit?

Через CLI

Введите команды (bash):

get gyro_calib_noise_limit  # Проверить текущее значение
set gyro_calib_noise_limit = 50  # Установить новое значение (пример)
save

Назначение параметра

gyro_calib_noise_limit определяет:  
- Максимальный уровень шума гироскопа (°/с) при калибровке.  
- Если шум превышает это значение — калибровка не завершится (Betaflight выдаст предупреждение).  
- Влияет на точность работы фильтров (gyro_lowpass, dterm_filter).

Рекомендуемые значения

| Тип дрона       | Значение (°/с) | Примечание |
|-----------------|----------------|------------|
| Чистый 5" гоночный | 50–80       | Минимальные вибрации |
| Фристайл 5" | 80–120      | Умеренные вибрации |
| Микро-дроны (3" и меньше) | 120–150 | Высокие вибрации |
| Плохо собранный дрон | 150+    | Временное решение до устранения причин вибраций |

Важно! Чем меньше значение, тем строже калибровка. Слишком низкое число может привести к ошибкам:  

Gyro calibration failed! Noise too high: 130 (limit: 100)

Как настроить?

Шаг 1: Определите текущий уровень шума

1. Поставьте дрон на ровную поверхность (без пропеллеров!).  
2. В CLI введите:  

gyro

3. Запишите среднее значение noise после 10 секунд бездействия.

Шаг 2: Установите значение

- Формула:  
  gyro_calib_noise_limit = (ваш_шум + 20–30%)  
  *(Пример: если noise=80, установите 100–110)*.

Шаг 3: Проверка в полете

- Если дрон дергается при взлете — увеличьте значение на 10–20.  
- Если Betaflight отказывается калибровать гироскоп — уменьшите (или устраните вибрации).

Связь с другими настройками

1. Гироскоп:  
   bash
   set gyro_lowpass_hz = 100  # Дополнительная фильтрация шумов
   
2. D-Term фильтр:  
   bash
   set dterm_lowpass_hz = 80  # Сглаживание резких движений

Частые проблемы

1. Ошибка калибровки гироскопа

- Решение:  
  - Увеличьте gyro_calib_noise_limit.  
  - Проверьте крепление FC (демпферы, винты).  
  - Замените поврежденные пропеллеры.

2. Дрон "плывет" в режиме Angle

- Причина: Слишком высокий порог пропускает шумы.  
- Решение:  
  bash
  set gyro_calib_noise_limit = 70  # Постепенно уменьшайте
  set acc_calibration_noise_limit = 50  # Для акселерометра
 

3. Рывки при резком газе

- Что делать:  
  - Настройте dterm_filter.  
  - Проверьте балансировку моторов (вкладка Motors).

Советы

- Для гоночных дронов используйте наименьшее возможное значение без ошибок калибровки.  
- Если шум гироскопа >150 — ищите механические проблемы (разболтался FC, погнутый вал мотора).  
- Лучший инструмент для тонкой настройки — Blackbox (анализ графиков gyro_scaled).

> Дополнительно:  
> [Официальная документация Betaflight](https://github.com/betaflight/betaflight/wiki)  
> [Как использовать Blackbox](https://oscarliang.com/blackbox/)  

Пример CLI для копирования:

bash

set gyro_calib_noise_limit = 90
set acc_calibration_noise_limit = 60
save
    31