В этом примере показано, как задать формы цикла и поля стабильности при настройке систем управления с помощью systune или looptune.
systune и looptune команды настраивают параметры систем управления фиксированной структурой в соответствии с различными требованиями к времени и частотной области. TuningGoal пакет является хранилищем для таких требований к конструкции.
TuningGoal.LoopShape требование используется для формирования коэффициента усиления отклика разомкнутого контура, проектного подхода, известного как формирование контура. Например,
s = tf('s'); R1 = TuningGoal.LoopShape('u',1/s);
указывает, что отклик с разомкнутым контуром, измеренный в местоположении «u», должен выглядеть как чистый интегратор (что касается его усиления). В MATLAB используйте AnalysisPoint чтобы отметить местоположение «u», см. пример «Building Tunable Models» для получения подробной информации. В Simulink используйте addPoint способ slTuner интерфейс для обозначения «u» как точки интереса.
Как и в других спецификациях усиления, можно просто указать асимптоты требуемой формы контура, используя несколько частотных точек. Например, чтобы задать форму контура с пересечением коэффициента усиления при наклоне 1 рад/с, -20 дБ/декада до 1 рад/с и -40 дБ/декада после 1 рад/с, просто укажите, что коэффициент усиления на частотах 0.1,1,10 должен быть 10,1,0,01 соответственно.
LS = frd([10,1,0.01],[0.1,1,10]); R2 = TuningGoal.LoopShape('u',LS); bodemag(LS,R2.LoopGain) legend('Specified','Interpolated')

Требования к форме контура - это ограничения на отклик разомкнутого контура L. Для целей настройки они преобразуются в ограничения усиления замкнутого контура для функции чувствительности + L) и комплементарной чувствительности viewGoal для визуализации формы целевого контура и соответствующих границ усиления на (зеленый) и (красный).
viewGoal(R2)

Вместо TuningGoal.LoopShape, вы можете использовать TuningGoal.MinLoopGain и TuningGoal.MaxLoopGain для задания минимальных или максимальных значений усиления контура в конкретной полосе частот. Это полезно, когда фактическая форма петли рядом с кроссовером лучше оставить алгоритму настройки, чтобы выяснить. Например, следующие требования определяют минимальный коэффициент усиления контура внутри полосы пропускания и характеристики скручивания вне полосы пропускания, но не определяют фактическую частоту пересечения или форму контура вблизи пересечения.
MinLG = TuningGoal.MinLoopGain('u',5/s); % integral action MinLG.Focus = [0 0.2]; MaxLG = TuningGoal.MaxLoopGain('u',1/s^2); % -40dB/decade roll off MaxLG.Focus = [1 Inf]; viewGoal([MinLG MaxLG])

TuningGoal.MaxLoopGain требование основывается на том факте, что коэффициенты усиления с разомкнутым и замкнутым контуром сопоставимы, когда коэффициент усиления с разомкнутым контуром мал (). В результате это может быть неэффективным при поддержании коэффициента усиления контура ниже некоторого значения, близкого к 1. Например, предположим, что гибкие режимы вызывают всплески усиления за пределами перекрестной частоты и что необходимо поддерживать эти всплески ниже 0,5 (-6 дБ). Вместо использования TuningGoal.MaxLoopGain, вы можете непосредственно ограничить усиление с помощью TuningGoal.Gain с размыканием петли на «u».
MaxLG = TuningGoal.Gain('u','u',0.5); MaxLG.Opening = 'u';
Если реакция с разомкнутым контуром нестабильна, убедитесь, что дополнительно отключено неявное ограничение стабильности, связанное с этим требованием.
MaxLG.Stabilize = false;
На рис. 1 показано это требование, оцениваемое для реакции с разомкнутым контуром с гибкими режимами.

Рис. 1: Ограничение усиления на L
TuningGoal.Margins требование использует понятие запаса диска для обеспечения минимальных значений коэффициента усиления и запаса фазы на указанном участке (ах) размыкания цикла. Для контуров обратной связи MIMO это требование гарантирует стабильность усиления или фазовых изменений в каждом канале обратной связи. Коэффициент усиления или фаза могут изменяться во всех каналах одновременно и на различную величину в каждом канале. Дополнительные сведения см. в разделе Поля стабильности в настройке системы управления. Например, следующий код ± 6 дБ запаса усиления и 45 градусов запаса фазы в местоположении «u».
R = TuningGoal.Margins('u',6,45);В MATLAB используйте AnalysisPoint блок для обозначения местоположения «u» (подробные сведения см. в разделе «Создание перестраиваемых моделей»). В Simulink используйте addPoint способ slTuner чтобы отметить «u» как интересующую точку (см. Создание и настройка интерфейса slTuner для Simulink Model (Simulink Control Design)). Пределы устойчивости обычно измеряются на входах или выходах установки или на обоих выходах.
Целевые значения коэффициента усиления и запаса по фазе преобразуются в нормированное ограничение коэффициента усиления для некоторой подходящей передаточной функции с замкнутым контуром. Требуемые пределы достигаются на частотах, где коэффициент усиления меньше 1. Использовать viewGoal для проверки настроенного требования.
viewGoal(R)

Закрашенная область указывает место нарушения ограничения. После настройки для настроенной модели T, вы можете использовать viewGoal(R,T) для просмотра настроенных частотно-зависимых полей на этом графике.
TuningGoal.LoopShape | TuningGoal.Margins | TuningGoal.MaxLoopGain | TuningGoal.MinLoopGain