极点和零点位置

本示例展示如何通过图形方式使用 pzplot 以及数值方式使用 pole 和 zero 来检查动态系统的极点和零点位置。

检查极点和零点位置对于稳定性分析或识别用于模型简化的近似相消零极点对等任务非常有用。本示例比较了两个具有相同被控对象和不同控制器的闭环系统。

创建表示两个闭环系统的动态系统模型。

G = zpk([],[-5 -5 -10],100);
C1 = pid(2.9,7.1);
CL1 = feedback(GC1,1);
C2 = pid(29,7.1);
CL2 = feedback(G
C2,1);

控制器 C2 具有更高的比例增益。除此之外,两个闭环系统 CL1 和 CL2 是相同的。

以图形方式检查 CL1 和 CL2 的极点和零点位置。

pzplot(CL1,CL2)
grid

图形包含一个坐标轴对象。该坐标轴对象包含 4 个类型为 line 的对象。其中一条或多条线仅使用标记显示其值。这些对象代表 CL1, CL2。

pzplot 在复平面上将极点和零点位置分别绘制为 x 和 o 标记。当提供多个模型时,pzplot 会以不同颜色绘制每个模型的极点和零点。此处,CL1 的极点和零点为蓝色,CL2 的为绿色。

该图显示 CL1 的所有极点都位于左半平面,因此 CL1 是稳定的。从图中的径向网格标记可以读出,振荡(复数)极点的阻尼比约为 0.45。该图还显示 CL2 包含位于右半平面的极点,因此是不稳定的。

计算 CL2 极点和零点位置的数值。

z = zero(CL2);
p = pole(CL2);

zero 和 pole 返回包含系统零点和极点位置的列向量。

另请参阅

zero | pole | pzplot

相关示例

  • SISO 模型频域特性的数值

详细信息

  • 频域响应

版权标注与来源说明

本文译文对应的原文内容,均来源于 MathWorks 官方网站(https://www.mathworks.com/)及官方帮助中心,原文版权均独家归属MathWorks 公司所有。

译文系基于原文进行的非官方翻译,仅为方便个人学习、理解MathWorks相关产品(含MATLAB等)的功能、操作及技术细节而制作,不代表MathWorks公司官方立场,也不构成官方翻译版本。

建议使用者优先查阅官方原文。

Logo

小龙虾开发者社区是 CSDN 旗下专注 OpenClaw 生态的官方阵地,聚焦技能开发、插件实践与部署教程,为开发者提供可直接落地的方案、工具与交流平台,助力高效构建与落地 AI 应用

更多推荐