matlab对控制系统进行时域和频域联合分析

时域频域联合分析

这个例子说明如何使用交互式线性系统分析及应用程序并排比较多种类型的响应,包括时域和频域响应。
创建一个想要比较其响应的模型,如比较一个三阶模型G和G与两个不同控制器C1和C2的闭环响应。

1
2
3
4
5
G = zpk([],[-5 -5 -10],100);%z,p,k
C1 = pid(0,4.4);
T1 = feedback(G*C1,1);
C2 = pid(2.9,7.1);
T2 = feedback(G*C2,1);

        打开线性系统分析器工具,检查受控对象和闭环系统的响应。

1
linearSystemAnalyzer(G,T1,T2)

默认情况下,线性系统分析器启动时带有三个系统的阶跃响应图
在这里插入图片描述
  在线性系统分析器中,选择Edit > Plot Configurations以打开该绘图配置对话框。选择two-plot配置。在响应类型区域中,选择第二个plot类型的Bode幅频图等。
在这里插入图片描述

 在幅频响应图中的任何位置,右键单击选择特征-峰值,得到系统的峰值响应。
在这里插入图片描述
  之后图上出现了指示峰值响应值的标记。水平和垂直的虚线表示这些响应的频率和振幅。单击一个标记查看数据提示中峰值响应的值。
在这里插入图片描述
  还可以使用类似的过程从特征菜单中选择其他特征,例如确定时间和上升时间,并查看这些值。
  同时还可以更改线性系统分析器中显示的绘图类型。比如阶跃响应、冲激响应、伯德图、奈奎斯特图等等
在这里插入图片描述