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