From e5ec72f1179af4bbebe1762219d8492061ae38ce Mon Sep 17 00:00:00 2001 From: Goga Coder Date: Wed, 2 Apr 2025 11:16:19 +0700 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8=D1=82?= =?UTF-8?q?=D1=8C=20=D0=9D=D0=B0=D1=81=D1=82=D1=80=D0=BE=D0=B9=D0=BA=D0=B0?= =?UTF-8?q?=20PID.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Настройка PID.md | 64 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 Настройка PID.md diff --git a/Настройка PID.md b/Настройка PID.md new file mode 100644 index 0000000..cdaeae4 --- /dev/null +++ b/Настройка PID.md @@ -0,0 +1,64 @@ +Настройка PID-регуляторов для управления углами крена (roll), тангажа (pitch) и рыскания (yaw) самолета — это итеративный процесс, требующий экспериментов. Вот общая инструкция и примерные коэффициенты для Skywalker Titan (или аналогичных моделей). Учтите, что точные значения зависят от динамики вашей модели, расположения центра масс, мощности двигателей и датчиков. + +--- + +### **Общие шаги настройки PID** +1. **Начните с P-коэффициента**: + - Увеличивайте `P`, пока система не начнет быстро реагировать на ошибку, но без перерегулирования или колебаний. + - Если появляются колебания, уменьшите `P` и добавьте `D`. + +2. **Добавьте D-коэффициент**: + - `D` гасит колебания и стабилизирует систему. Увеличивайте его, пока не устраните "дрожание". + +3. **Добавьте I-коэффициент**: + - `I` устраняет статическую ошибку (например, медленный дрейф). Используйте минимальное значение, чтобы не вызвать резкие реакции. + +4. **Тестируйте в полете**: + - Начните с ручного управления, затем постепенно включайте автопилот на малой высоте. + +--- + +### **Примерные коэффициенты (углы в градусах)** +Для Skywalker Titan (или схожих моделей): + +#### **Крен (Roll)** +- **P**: 5.0–8.0 +- **I**: 0.1–0.3 +- **D**: 15.0–25.0 +- **Фильтр D-составляющей**: 10–20 Гц (чтобы уменьшить шум датчиков). + +#### **Тангаж (Pitch)** +- **P**: 4.0–6.0 +- **I**: 0.1–0.2 +- **D**: 10.0–20.0 + +#### **Рыскание (Yaw)** +- **P**: 2.0–4.0 +- **I**: 0.05–0.15 +- **D**: 5.0–10.0 + +--- + +### **Пояснения** +- **Крен**: Требует более агрессивного `P` и `D`, так как инерция вокруг продольной оси обычно меньше. +- **Тангаж**: Может требовать меньший `P`, чем крен, из-за большей инерции (зависит от расположения центра масс). +- **Рыскание**: Настраивается осторожно, так как самолеты часто стабилизируются по рысканию пассивно (например, килем). `I` помогает компенсировать боковой ветер. + +--- + +### **Советы** +1. **Единицы измерения**: Убедитесь, что ошибка угла (Setpoint - Feedback) вычисляется в градусах, и коэффициенты масштабированы правильно. +2. **Тестирование**: + - Начните с коэффициентов в 2–3 раза меньше указанных и увеличивайте постепенно. + - Используйте софт для тюнинга (например, Betaflight, ArduPilot) или логирование данных. +3. **Антивиндкап**: Для `I`-составляющей установите ограничение (например, ±10), чтобы избежать накопления ошибки. + +--- + +### **Важно!** +Коэффициенты сильно зависят от: +- Скорости обновления регулятора (частота 50–100 Гц идеальна). +- Точности гироскопов/акселерометров. +- Аэродинамических характеристик модели. + +Всегда тестируйте настройки в безопасных условиях! \ No newline at end of file