欢迎光临散文网 会员登陆 & 注册

Matlab 二阶,三阶系统辨识

2022-08-23 23:26 作者:mufasai  | 我要投稿

研究中经常需要把动力学模型简化为线性系统。

二阶系统传递函数

G(s)%20%3D%20%5Cfrac%7B%5Comega_n%5E2%7D%7Bs%5E2%20%2B%202%20%5Cxi%20%5Comega_n%20s%20%2B%20%5Comega_n%5E2%7D%20

%5Comega_n%20%E8%A7%92%E9%A2%91%E7%8E%87%EF%BC%9B%20%5Cxi%20%E9%98%BB%E5%B0%BC%E6%AF%94

一般测角频率和阻尼定参数可以通过采集阶跃响应的数据,根据公式计算比。Matlab 系统辨识工具箱能够自动化这一过程。

系统辨识工具箱

打开后需要先导入激励信号和响应曲线数据,对于阶跃响应参数的识别,最好让数据都从 0 开始,工具箱的数据预处理在这种任务中基本也不需要。

导入时域数据

填写采样时间和开始时间。

通过勾选Time plot 查看效果。

点击Estimate --> Transfer function model 填写模型的名称,系统零点和极点的个数,最后点击 Estimate 出结果。

二阶系统识别

同样生成三阶系统的识别结果,选择需要对比的结果(tf1, tf2 选中会加粗)勾选 model output 对比拟合结果。点击 tf1,tf2 分别查看参数和表达式。

结果对比

点击File --> Copy figure可以导出本页的数据并绘图。

勾选Frequency resp选项可查看伯德图。

Bode图


Matlab 二阶,三阶系统辨识的评论 (共 条)

分享到微博请遵守国家法律