В этом примере показано, как ограничить полюса системы управления, настроенной с помощью systune
или looptune
.
The systune
и looptune
команды настраивают параметры систем управления с фиксированной структурой, удовлетворяющие различным требованиям во временной и частотной областях. The TuningGoal
пакет является репозиторием для таких требований проекта.
The TuningGoal.Poles
цель ограничивает расположение полюсов с обратной связью. Можно применить некоторую минимальную скорость распада
ввести определенный минимальный коэффициент затухания
или ограничьте величину полюса равной
Для примера
MinDecay = 0.5; MinDamping = 0.7; MaxFrequency = 10; R = TuningGoal.Poles(MinDecay,MinDamping,MaxFrequency);
ограничивает полюса с обратной связью, чтобы лежать в белой области ниже.
viewGoal(R)
Увеличение MinDecay
значение приводит к более быстрым переходным процессам. Увеличение MinDamping
значение приводит к лучшим демпфированным переходным процессам. Уменьшение MaxFrequency
значение препятствует быстрой динамике.
The TuningGoal.ControllerPoles
цель ограничивает положения полюсов для настроенных элементов, таких как фильтры и компенсаторы. Алгоритм настройки может производить нестабильные компенсаторы для нестабильных объектов. Чтобы предотвратить это, используйте TuningGoal.ControllerPoles
цель - удержание полюсов компенсатора в левой-половинной плоскости. Для примера, если ваш компенсатор параметризован как передаточная функция второго порядка,
C = tunableTF('C',1,2);
вы можете заставить его иметь стабильную динамику путем добавления требования
MinDecay = 0;
R = TuningGoal.ControllerPoles('C',MinDecay);
TuningGoal.ControllerPoles
| TuningGoal.Poles