1 进入System Identification主界面
打开APP栏的系统辨识工具箱,

弹出如下界面

然后点击import data,选择加载类型为时域类型

2 运行程序,加载数据
程序运行之后,从工作区直接拖拽相应的变量到Input和Output

点击Import按钮,成功加入需要辨识的一组数据,加载成功之后的数据如图:

3 参数辨识
点击Estimate,选择需要辨识的系统模型的结构,这里选择Transfer Function Models传递函数模型

在弹出的传递函数选项中,设置零点和极点个数,取消勾选Time delay中的Fixed,这样就可以自动辨识时间延迟。设置完毕之后,点击Estimate按钮,开始分析

分析过程报告为
Estimating delays as multiples of sample time ... done.
Initializing model parameters...
Initializing using 'iv' method... done.
Initialization complete.
Nonlinear least squares with automatically chosen line search method
-----------------------------------------------------------------------------------
Iteration Cost Step Norm_of_optimality First_order_expected Improvement(num %)
-----------------------------------------------------------------------------------
0 0.288097 - 8.88e+06 245 - -
1 0.270171 3.58e+03 1.26e+07 245 6.22 4
2 0.25489 4.85e+03 1.75e+07 264 5.66 3
3 0.227875 6.93e+03 2.51e+07 304 10.6 2
4 0.218596 8.56e+03 3.5e+07 385 4.07 2
5 0.0955602 240 4.63e+07 427 56.3 0
6 0.0953997 0.0977 4.64e+07 979 0.168 10
7 0.0953895 0.00525 4.64e+07 981 0.0107 14
8 0.0953844 0.0026 4.64e+07 981 0.00536 15
9 0.0953818 0.00129 4.64e+07 981 0.00268 16
10 0.0953805 0.000645 4.64e+07 981 0.00134 17
11 0.0953799 0.000322 4.64e+07 981 0.00067 18
12 0.0953797 8.04e-05 4.64e+07 981 0.000167 20
13 0.0953796 4.02e-05 4.64e+07 981 8.38e-05 21
14 0.0953796 2.01e-05 4.64e+07 981 4.19e-05 22
15 0.0953796 5.03e-06 4.64e+07 981 1.05e-05 24
16 0.0509421 0.000378 1.27e+06 981 46.6 1
17 0.0506209 22.6 1.36e+06 1.73e+03 0.631 8
18 0.0506104 0.66 1.36e+06 1.74e+03 0.0207 13
19 0.0506052 0.329 1.36e+06 1.74e+03 0.0103 14
20 0.0506045 0.0411 1.36e+06 1.74e+03 0.00129 17
-----------------------------------------------------------------------------------
Estimating parameter covariance... done.
此时,右侧的模型窗口出现了辨识的tf1,拖拽到MATLAB中的工作区workspace

4 查看结果
4.1 系统辨识窗口查看
双击tf1,查看辨识结果

4.2 在命令行中查看
将辨识出的结果拖拽到MATLAB工作区之后,在命令行窗口输入tf1
>> tf1
tf1 =
From input "u1" to output "y1":
0.0002741 s + 8.738e-05
exp(-8*s) * --------------------------
s^2 + 0.7922 s + 8.613e-08
Name: tf1
Continuous-time identified transfer function.
Parameterization:
Number of poles: 2 Number of zeros: 1
Number of free coefficients: 4
Use "tfdata", "getpvec", "getcov" for parameters and their uncertainties.
Status:
Estimated using TFEST on time domain data "throttle2velocity".
Fit to estimation data: 68.84% (stability enforced)
FPE: 0.05213, MSE: 0.05056
>>
参考文章
matlab系统辨识应用例子.doc
https://max.book118.com/html/2018/1013/6033223232001222.shtm
MATLAB如何进行系统辨识(传递函数)_百度经验
https://jingyan.baidu.com/article/72ee561a72fd74e16138dfae.html
Estimating Simple Models from Real Laboratory Process Data - MATLAB & Simulink Example - MathWorks 中国
https://ww2.mathworks.cn/help/ident/examples/estimating-simple-models-from-real-laboratory-process-data.html?refresh=true&requestedDomain=zh
MATLAB系统辨识实践:传递函数模型分析
本文介绍了如何使用MATLAB的系统辨识工具箱进行参数辨识。首先,进入System Identification主界面并选择时域数据类型。接着,加载数据并选择传递函数模型进行分析。通过设置零点、极点数量和自动识别时间延迟,得到辨识结果。最后,通过系统辨识窗口和MATLAB命令行查看详细结果。
4万+

被折叠的 条评论
为什么被折叠?



