В этом примере показано, как исследовать положения полюсов и нулей динамических систем оба графически использования pzplot
и численно использующий pole
и zero
.
Исследование положений полюсов и нулей может быть полезно для задач, таких как анализ устойчивости или идентифицирующий почти отмену нулевых полюсом пар для упрощения модели. Этот пример сравнивает две системы с обратной связью, которые имеют тот же объект и различные контроллеры.
Создайте модели динамической системы, представляющие две системы с обратной связью.
G = zpk([],[-5 -5 -10],100); C1 = pid(2.9,7.1); CL1 = feedback(G*C1,1); C2 = pid(29,7.1); CL2 = feedback(G*C2,1);
Контроллер C2
имеет намного более высокую пропорциональную составляющую. В противном случае, две системы с обратной связью CL1
и CL2
то же самое.
Графически исследуйте положения полюсов и нулей CL1
и CL2
.
pzplot(CL1,CL2) grid
pzplot
положения полюсов и нулей графиков на комплексной плоскости как x
и o
метки, соответственно. Когда вы обеспечиваете многоуровневые модели, pzplot
строит полюса и нули каждой модели в различном цвете. Здесь, там полюса и нули CL1
являются синими, и те из CL2
являются зелеными.
График показывает что все полюса CL1
находятся в левой полуплоскости, и поэтому CL1
устойчиво. От радиальных маркировок сетки на графике можно считать, что затухание колеблющихся (комплексных) полюсов - приблизительно 0,45. График также показывает тот CL2
содержит полюса в правой полуплоскости и поэтому нестабилен.
Вычислите численные значения положений полюсов и нулей CL2
.
z = zero(CL2); p = pole(CL2);
zero
и pole
возвратите вектор-столбцы, содержащие нуль и местоположения полюса системы.