Упрощение с нулем полюса

Упрощение с нулем полюса уменьшает порядок вашей модели точно путем отмены пар с нулем полюса или устранения состояний, которые не влияют на общую реакцию модели. Пары с нулем полюса могут быть введены, например, когда вы создаете архитектуры с обратной связью. Нормальные небольшие ошибки, сопоставленные с численными расчетами, могут преобразовать такие пары отмены в пары, близкие к отмене. Удаление этих состояний сохраняет характеристики отклика модели при упрощении анализа и системы управления. Типы упрощения с нулем полюса включают:

  • Структурное устранение - устранение состояний, которые структурно отключены от входов или выходов. Устранение структурно несвязанных состояний является хорошим первым шагом в снижении сложности модели, потому что процесс не включает какие-либо численные расчеты. Также сохраняется государственное устройство остальных состояний. Такие структурно неминимальные состояния могут возникнуть, например, когда вы линеаризируете Simulink® модель, которая включает некоторые несвязанные блоки пространства состояний или передаточных функций. В командной строке выполните структурное устранение с sminreal.

  • Удаление нулей-полюсов или минимальная реализация - Исключение пар гашения или почти гашения полюса с нули из передаточных функций. Исключить ненаблюдаемые или неконтролируемые состояния из моделей пространства состояний. В командной строке выполните этот вид упрощения с minreal.

В приложении Model Reducer и задаче Reduce Model Order Live Editor метод Pole-Zero Simplification автоматически устраняет структурно отключенные состояния, а также выполняет удаление нулей-полюсов или минимальную реализацию.

Упрощение с нулем полюса в приложении Model Reducer

Model Reducer предоставляет интерактивный инструмент для выполнения снижения сложности модели и исследования и сравнения ответов исходных и пониженных моделей. Чтобы уменьшить модель за счет упрощения с нулем полюсов в Model Reducer:

  1. Откройте приложение и импортируйте модель, чтобы уменьшить. Например, предположим, что существует модель с именем build в MATLAB® рабочей области. Следующая команда откроется Model Reducer и импортирует модель LTI build.

    modelReducer(build)
  2. В Data Browser выберите модель для сокращения. Нажмите Pole-Zero Simplification.

    На вкладке Pole-Zero Simplification Model Reducer отображает график частотной характеристики исходной модели и сокращенную версию модели. Приложение также отображает карту ноль полюсов обеих моделей.

    Карта ноль полюсов помечает местоположение полюсов x и нулевые местоположения с o.

    Примечание

    Частотная характеристика является диаграммой Боде для моделей SISO и графиком с сингулярным значением для моделей MIMO.

  3. Опционально измените допуск, с которым Model Reducer идентифицирует отменяющиеся пары полюс-ноль. Model Reducer отменяет пары с нулем полюса, которые попадают в допуск, заданный Simplification of pole-zero pairs значением. В этом случае никакие пары с нулем полюсов не являются достаточно близкими друг к другу, чтобы Model Reducer отменили их при допуске по умолчанию 1e-05. Чтобы отменить пары, расположенные немного дальше друг от друга, переместите ползунок вправо или введите большее значение в текстовое поле.

    Синяя x и o метки на карте ноль полюсов показывают почти отменяющиеся пары ноль полюсов в исходной модели, которые исключены из упрощенной модели. Оставшиеся в упрощенной модели поляки и нули отмечены красными x и o.

  4. Попробуйте различные допуски упрощения при наблюдении частотной характеристики исходной и упрощенной модели. Удалите столько полюсов и нулей, сколько вы можете, сохраняя поведение системы в частотной области, которая важна для вашего приложения. Опционально рассмотрим абсолютную или относительную погрешность между исходной и упрощенной моделью. Выберите тип вывода ошибок с помощью кнопок на вкладке Pole-Zero Simplification.

    Для получения дополнительной информации об использовании графиков анализа смотрите Визуализация моделей пониженного порядка в приложении Model Reducer.

  5. Когда у вас есть упрощенная модель, которую вы хотите хранить и анализировать дальше, нажмите. Новая модель появляется в Data Browser с именем, которое отражает пониженный порядок модели.

    После создания сокращенной модели в Data Browser можно продолжить изменение параметров упрощения и создать уменьшенные модели с различными порядками для анализа и сравнения.

Теперь можно выполнить последующий анализ с помощью уменьшенной модели. Для примера:

  • Исследуйте другие отклики редуцированной системы, такие как переходные характеристики или график Николса. Для этого используйте инструменты на вкладке Plots. Смотрите Визуализацию Моделей Пониженного Порядка в Приложении Model Reducer для получения дополнительной информации.

  • Экспортируйте уменьшенные модели в рабочее пространство MATLAB для последующего анализа или системы управления. На вкладке Model Reducer нажмите Export.

Сгенерируйте код MATLAB для упрощения набора полюсов

Чтобы создать скрипт MATLAB, можно использовать для дальнейших задач снижения сложности модели в командной строке, нажмите Create Reduced Model и выберите Generate MATLAB Script.

Model Reducer создает скрипт, который использует minreal команда для выполнения снижения сложности модели с параметрами, установленными на вкладке Pole-Zero Simplification. Скрипт откроется в редакторе MATLAB.

Удаление нулей-полюсов в командной строке

Чтобы уменьшить порядок модели путем удаления нулей-полюсов в командной строке, используйте minreal.

Создайте модель следующей системы, где C является ПИ-контроллер G имеет нуль в 3×10-8 рад/с. Такой низкочастотный нуль может возникнуть из-за производного действия где-то в динамике объекта. Для примера объект может включать компонент, который вычисляет скорость из измерений положения.

G = zpk(3e-8,[-1,-3],1); 
C = pid(1,0.3);
T = feedback(G*C,1)
T =
 
    (s+0.3) (s-3e-08)
  ----------------------
  s (s+4.218) (s+0.7824)
 
Continuous-time zero/pole/gain model.

В модели с обратной связью T, интегратор (1/s) от C очень почти отменяет низкочастотный нуль G.

Принудительная отмена интегратора с нулем около источника.

Tred = minreal(T,1e-7)
Tred =
 
        (s+0.3)
  --------------------
  (s+4.218) (s+0.7824)
 
Continuous-time zero/pole/gain model.

По умолчанию minreal уменьшает порядок передаточной функции путем отмены точных пар «полюс-ноль» или пар «около полюса-ноль» в sqrt(eps). Определение 1e-7 как второй вход вызывает minreal чтобы исключить пары «полюс-ноль» в 10-7 рад/с друг друга.

Уменьшенная модель Tred включает всю динамику исходной модели замкнутой системы T, за исключением почти отменяющейся пары нули с шестом.

Сравните частотные характеристики исходной и уменьшенной систем.

bode(T,Tred,'r--')
legend('T','Tred')

Figure contains 2 axes. Axes 1 contains 2 objects of type line. These objects represent T, Tred. Axes 2 contains 2 objects of type line. These objects represent T, Tred.

Поскольку отмененные полюс и нуль не совпадают точно, некоторые экстремальные низкочастотные динамики, заметные в исходной модели, отсутствуют в Tred. Во многих приложениях можно пренебрегать такой экстремальной низкочастотной динамикой. Когда вы увеличиваете соответствующий допуск minrealубедитесь, что вы не устраняете динамические функции, относящиеся к вашему приложению.

См. также

Приложения

Функции

Задачи Live Editor

Похожие темы