导入数据进行参数估计
创建实验
在开始数据导入之前,创建一个实验。动态仿真模块®优化设计™软件提供了一个应用程序来设置评估会话。
创建一个评估会话:
在MATLAB中®提示,通过输入打开某汽车发动机的非线性怠速模型:
engine_idle_speed
模型包含import块
BPAV
和Outport块发动机转速
分别用于导入输入和输出数据。要了解更多信息,请参见导入数据的模型要求.在Simulink模型窗口中,打开参数估计量通过选择分析>参数估计.
参数估计量
您可以在内部组织评估和验证任务实验下数据浏览器面板在左边。您可以将每个实验分配给一个评估任务或验证任务。
要创建实验,请单击新实验按钮。
这就产生了一个叫做
经验值
下实验.要更改实验的名称,右键单击并选择重命名.叫它NewData
.请注意
Simulink模型必须保持打开状态才能执行参数估计任务。
时域数据
实验是信号数据的集合,特别是输入和输出信号数据。在创建实验之后,如中所述创建实验,您可以从各种来源导入数据到您的实验中,包括MATLAB®变量,mat -文件,Excel®文件或逗号分隔值文件。
要将数据导入到实验中,右键单击并选择编辑…….这将启动实验编辑器。在实验编辑器中,可以定义实验中包含的信号。
中的行输入面板的编辑器对应导入块BPAV
在engine_idle_speed
模型。
中的行输出面板对应Outport块发动机转速
.您可以从文件或MATLAB工作区导入信号数据。
请注意
Simulink模型必须包含导入或输出块或日志信号以启用导入数据。有关更多信息,请参见导入数据的模型要求.单击,可以选择更多需要指定数据的输出信号选择测量输出信号在输出面板。
汽车发动机的怠速模型包含了存储在计算机中的测量数据iodata
数组。该数组包含两列:第一列用于输入数据,第二列用于输出数据。时间数据在时间
数组。您可以通过输入来导入输入数据(时间,iodata (: 1))
在输入面板。
您可以通过输入导入输出数据[时间,iodata: 2)
在输出面板。单击,可以查看数据.输入数据应该是这样的:
输出数据应该是这样的:
导入后的数据为NewData
实验,实验编辑器是这样的:
若要从文件导入数据,请单击按钮。
了解更多关于编辑实验:对话框,请参见编辑实验数据.
时间序列数据
时间序列数据存储在时间序列对象中。有关更多信息,请参见时间序列对象和集合.
当您从时间序列对象导入输入数据时,t
,对于参数估计,必须将时间向量和数据指定为[t.time, t.inputdata]
在输入信号对话框。类似地,要导入输出数据,必须将时间向量和数据指定为[t.time, t.outputdata]
在输出信号对话框中。有关如何将数据导入实验的更多信息,请参见时域数据.
复杂的数据
复数的数据是指数值为复数的数据。例如,带有值的信号1 + 2 j
是复杂的。您可以使用复杂的数据来估计电气系统的参数,如幅度和相位。
请注意
必须将数据的实部和虚部作为同一时间向量的函数进行抽样。
使用复杂数据进行参数估计: