结合使用 cdfx 文件和 simulink -凯发k8网页登录
此示例说明如何使用 cdfx 文件中的标定数据作为 simulink® 模型的输入。
导入数据
使用 函数导入标定数据。
cdfxobj = cdfx("cdfxexamplefile.cdfx")
cdfxobj = cdfx with properties: name: "cdfxexamplefile.cdfx" path: "/tmp/bdoc23a_2181783_2332753/tp3fb84b34/vnt-ex88524458/cdfxexamplefile.cdfx" version: "cdf20"
实例化局部变量
使用 将所需参数提取到 matlab® 工作区中。
gainparam = getvalue(cdfxobj, "asam.c.scalar.gain")
gainparam = 3
mapparam = getvalue(cdfxobj, "asam.c.map")
mapparam = struct with fields:
physicalvalue: [5x5 double]
axis1: [1x1 struct]
axis2: [1x1 struct]
查找-增益模型
open_system("cdfxsimulinkmodel.slx");
cdfxmdl = gcs
cdfxmdl = 'cdfxsimulinkmodel'
该模型包含:
2-d lookup table 模块,表示 cdfx 文件中的
asam.c.map
参数。“table data”字段,表示实例的物理值;“breakpoint”字段,表示轴的物理值。gain 模块,表示 cdfx 文件中的
asam.c.scalar.gain
参数。to workspace 模块,用于记录仿真数据。
indexing logic 子系统
indexing logic 子系统使用 asam.c.map
参数轴的物理值以及信号路由模块和触发子系统,来生成查找索引的所有有效组合。如果您需要在标定参数的全部可能输入值范围内进行测试,这种配置会很有用。
在 matlab 中记录输出数据
仿真的输出由 to workspace 模块发送到 matlab,在那里它存储为时间序列对象,称为 mapdata
。现在可以在 matlab 工作区中检查和可视化这些数据。
sim(cdfxmdl);
plot(mapdata)
title("simulation output for asam.c.map")