主要内容

金宝appSimulink.SimulationData.createStructOfTimeseries

创建的结构timeseries数据加载模拟输入总线

描述

例子

tsStruct= 金宝appSimulink.SimulationData.createStructOfTimeseries (busObj,tsStructIn)创建一个相匹配的结构与属性指定的金宝appSimulink.Bus对象,busObj和指定的数据结构timeseries对象,tsStructIn

当在输入姓名结构不匹配指定的名称总线对象,函数重命名输出结构中的字段匹配总线对象规范。当其他属性,如数据类型和复杂性不匹配,该函数返回一个错误。

您可以使用该语法创建一个模拟输入,全部或部分指定的数据总线。您还可以使用该语法来重命名结构元素的名称相匹配金宝appSimulink.Bus对象。

例子

tsStruct= 金宝appSimulink.SimulationData.createStructOfTimeseries (busObj,tsCellArray)创建一个结构timeseries这些指定的对象与属性相匹配金宝appSimulink.Bus对象,busObj指定的单元阵列和数据timeseries对象,tsCellArray

当在输入姓名结构不匹配指定的名称总线对象,函数重命名输出结构中的字段匹配总线对象规范。当其他属性,如数据类型和复杂性不匹配,该函数返回一个错误。

你可以使用这个语法来创建模拟输入,全部或部分指定的数据总线使用平面列表timeseries对象。函数映射timeseries指定的对象层次结构金宝appSimulink.Bus使用深度优先搜索对象。

例子

tsStructArray= 金宝appSimulink.SimulationData.createStructOfTimeseries (busObj,tsCellArray,会变暗)创建一个数组timeseries结构的属性定义的每个结构匹配金宝appSimulink.Bus对象,busObj与指定的单元阵列的数据timeseries对象,tsCellArray。输入会变暗指定数组的维度。

例子

tsStruct= 金宝appSimulink.SimulationData.createStructOfTimeseries (tsArray)创建一个结构timeseries从总线数据存储在对象金宝appSimulink.TsArray对象,tsArray。在版本R2016a、信号记录创建金宝appSimulink.TsArray对象存储记录总线数据。当你想使用这个语法使用总线数据登录R2016a使用前一个版本ModelDataLogs作为模拟输入格式。

例子

全部折叠

您可以使用金宝appSimulink.Simulationdata.createStructOfTimeseries函数创建的结构timeseries对象使用作为总线信号模拟输入。这个例子向您展示了如何创建一个timeseries加载到结构模型使用timeseries数据记录从一个不同的模拟。

创建一个Timeseries的结构

打开ex_log_structtimeseries模型。

open_system (“ex_log_structtimeseries”)

模型使用常数阻塞和公交创造者建立两辆公交车,bus1bus2,信号一个,b,c,d。该模型使用日志记录总线信号数据。创建总线数据通过模拟模型。

= sim卡(“ex_log_structtimeseries”);

查看日志中的数据变量logsout。信号记录创建一个金宝appSimulink.SimulationData.Dataset对象与金宝appSimulink.SimulationData.Signal对象作为元素。

logsout = out.logsout
logsout = 金宝appSimulink.SimulationData。数据集'logsout' with 2 elements Name BlockPath ____ ____________________________________ 1 [1x1 Signal] bus1 ex_log_structtimeseries/Bus Creator 2 [1x1 Signal] bus2 ex_log_structtimeseries/Bus Creator1 - Use braces { } to access, modify, or add elements using index.

您可以使用得到功能选择金宝appSimulink.SimulationData.Signal对象bus2。总线数据的财产的金宝appSimulink.SimulationData.Signal对象。数据代表bus2登录是一个结构,其中包含吗timeseries对象命名cd

logsout.get (2) . values
ans =结构体字段:c: [1 x1 timeseries] d: [1 x1 timeseries]

加载模型配置

打开ex_load_structtimeseries模型,它使用记录仿真数据作为输入。

open_system (“ex_load_structtimeseries”)

该模型使用InBus轮廓尺寸块加载输入总线数据。一块总线选择器选择信号总线上显示的显示模块。

双击InBus块,并检查它的数据类型信号的属性选项卡的对话框。由一个指定的数据类型金宝appSimulink.Bus对象被称为公共汽车

模型浏览器并打开关闭对话框。在回调选项卡中,您可以看到模型使用它PreLoadFcn定义金宝appSimulink.Bus对象定义了数据类型的轮廓尺寸。

打开配置参数和视图的规范输入的参数数据导入/导出窗格。该模型使用的变量inputBus为其输入

创建模拟输入的结构timeseries数据

加载的数据记录bus1,你只需要分配结构数据模型的输入变量。

inputBus = logsout.get (1) . values
inputBus =结构体字段:答:[1 x1 timeseries] b: [1 x1 timeseries]

当你模拟模型,显示模块显示的值12登录bus1和加载到模型。

加载的数据记录bus2,你需要使用金宝appSimulink.Bus对象定义数据类型和尺寸的块金宝appSimulink.SimulationData.createStructOfTimeseries创建一个结构timeseries与指定的名字金宝appSimulink.Bus对象。

inputBus = 金宝appSimulink.SimulationData.createStructOfTimeseries (“公共汽车”,logsout.get (2) . values)
inputBus =结构体字段:答:[1 x1 timeseries] b: [1 x1 timeseries]

当你模拟模型,显示模块显示的值34登录bus2和加载到模型。

这个例子展示了如何使用金宝appSimulink.SimulationData.createStructOfTimeseries函数来创建部分指定模拟输入一辆公共汽车。这个示例日志数据ex_log_structtimeseries然后将数据加载到ex_load_structtimeseries

创建timeseries数据

首先,开放和模拟ex_log_structtimeseries模型。日志两个总线信号的模型,bus1bus2创建使用常数阻塞和公交的创造者。访问logsout数据集金宝appSimulink.SimulationOutput对象,

open_system (“ex_log_structtimeseries”)= sim卡(“ex_log_structtimeseries”);logsout = out.logsout;

您可以使用一个结构timeseries数据或单元阵列timeseries总线的数据部分指定的模拟输入。

部分指定总线数据的结构timeseries数据

打开模型ex_load_structtimeseries加载的数据你登录。

open_system (“ex_load_structtimeseries”)

使用得到函数来访问的结构timeseries数据记录bus1

bus1 = logsout.get (1) . values;

然后,取代b数据与[]

bus1。b= [];

ex_load_structtimeseries模型使用的变量inputBus作为它的输入。的金宝appSimulink.Bus对象,公共汽车,定义了数据类型的轮廓尺寸块中定义的PreLoadFcn回调的ex_load_structtimeseries模型。因为信号名称bus1匹配金宝appSimulink.Bus对象轮廓尺寸的块的规范ex_load_structtimeseries结构模型中,您可以使用记录没有修改。加载的数据bus1,分配bus1对该变量inputBus

inputBus = bus1;

模拟模型。显示模块显示记录的值1一个0b。模拟使用地面值没有指定数据时的信号。

装车= sim卡(“ex_load_structtimeseries”);

现在,加载的数据记录bus2。信号名称bus2不匹配的金宝appSimulink.Bus对象轮廓尺寸的块的规范ex_load_structtimeseries模型。修改数据结构部分指定输入数据总线。然后,使用金宝appSimulink.SimulationData.createStructOfTimeseries函数改变结构的名称匹配总线规范。

bus2 = logsout.get (2) . values;bus2。d= []; inputBus = bus2; inputBus = Simulink.SimulationData.createStructOfTimeseries(“公共汽车”,inputBus);

模拟模型。显示模块显示记录的值3一个0b

装车= sim卡(“ex_load_structtimeseries”);

部分指定总线数据单元阵列的Timeseries数据

当你有timeseries数据,您可以使用金宝appSimulink.SimulationData.createStructOfTimeseries部分指定模拟输入总线使用的单元阵列timeseries数据。加载timeseries数据信号dbus2的局部总线规范的轮廓尺寸的块ex_load_structtimeseries模型。的PreLoadFcn回调的ex_load_structtimeseries模型定义金宝appSimulink.Bus对象,公共汽车,定义了数据类型的轮廓尺寸。

d = logsout.get (2) .Values.d;inputBus = 金宝appSimulink.SimulationData.createStructOfTimeseries (“公共汽车”,{d, []});

模拟模型。显示块信号一个ex_load_structtimeseries模型显示登录的数据信号dex_log_structtimeseries模型。显示块信号b显示0

装车= sim卡(“ex_load_structtimeseries”);

这个例子展示了如何使用金宝appSimulink.SimulationData.createStructOfTimeseries函数来生成模拟输入数组的公交车。您创建timeseries数据通过模拟一个模型。然后,您创建一个输入结构使用记录的数据加载到公共汽车在另一个模型的一个数组。

创建timeseries数据

首先,打开ex_log_structtimeseries模型。

open_system (“ex_log_structtimeseries”)

模型创建两个公交车,bus1bus2,使用恒定的阻塞和公交的创造者。信号被命名为一个,b,c,d。创建记录总线数据通过模拟模型。

= sim卡(“ex_log_structtimeseries”);

输出包含一个金宝appSimulink.SimulationData.Dataset对象,logsout,记录数据。您可以访问bus1bus2信号使用得到函数。数据中每一个信号金宝appSimulink.SimulationData.Signal对象参数。您可以使用一个点访问总线元素随后信号名称。bus1第一个信号吗数据集对象和包含信号一个bbus2包含信号cd

logsout = out.logsout;一个= logsout.get (1) .Values.a;b = logsout.get (1) .Values.b;c = logsout.get (2) .Values.c;d = logsout.get (2) .Values.d;

加载模型配置

打开模型ex_structtimeseries_aob使用公交车的数组作为输入。

open_system (“ex_load_structtimeseries_aob”)

该模型使用InAoB轮廓尺寸块加载模拟输入。选择器模块从公交车的数组,选择一辆公共汽车和公交选择器块选择信号显示在显示模块。

双击InAoB块看看信号的属性窗格的对话框。的数据类型块设置为公共汽车定义的类型金宝appSimulink.Bus对象,公共汽车。的港维参数设置为(2 - 1)

你可以看到的定义金宝appSimulink.Bus对象,公共汽车,在回调在Model Explorer选项卡。这个模型使用PreLoadFcn定义总线对象。

打开模型配置参数和看输入参数。该模型使用的变量inputAoB作为输入。

创建公共汽车模拟输入的数组

使用金宝appSimulink.SimulationData.createStructOfTimeseries和数据登录第一部分创建一个结构加载模拟输入数组的公交车。指定的尺寸(2 - 1)匹配的尺寸InAoB块。

inputAoB = 金宝appSimulink.SimulationData.createStructOfTimeseries (“公共汽车”,}{a, b, c, d, 1 [2]);

当你模拟模型,显示模块显示的数据信号一个,b,c,d记录的ex_log_structtimeseries模型。公交车的数组包含两个公交车信号一个b金宝appSimulink.SimulationData.createStructOfTimeseries重命名信号cd匹配金宝appSimulink.Bus规范使用的一系列的公交车。

inputAoB (2)
ans =结构体字段:答:[1 x1 timeseries] b: [1 x1 timeseries]

模拟模型。显示模块显示记录的值。

aob_out = sim卡(“ex_load_structtimeseries_aob”);

在发布之前R2016a,当你使用日志仿真数据ModelDataLogs格式,总线数据存储金宝appSimulink.TSArray对象。你不能使用日志数据ModelDataLogs格式使用R2016a后释放。在这个例子中,记录数据,logsout是登录ModelDataLogs格式使用R2016a之前发布。的变量logsout数据包含一个公共汽车,bus1

logsout
logsout =仿金宝app真软件。ModelDataLogs(log_modeldatalogs): Name Elements Simulink Class bus1 2 TsArray

加载记录数据作为模拟输入总线,创建一个结构timeseries对象的数据bus1

struct_of_ts =金宝appSimulink.SimulationData.createStructOfTimeseries (logsout.bus1)
struct_of_ts = const1_sig: [1 x1 timeseries] const2_sig: [1 x1 timeseries]

输入参数

全部折叠

的名字金宝appSimulink.Bus对象,该对象指定的属性数据的输出结构timeseries对象。当你想要加载的结构timeseries对象作为总线,模拟输入busObj是公共汽车,它定义了数据类型的根级轮廓尺寸块。

金宝appSimulink.SimulationData.createStructOfTimeseries验证输入timeseries属性包括数据类型和复杂性金宝appSimulink.Bus对象的规范。当元素名称之间的不匹配金宝appSimulink.Bus规范和输入timeseries数据,金宝appSimulink.SimulationData.createStructOfTimeseries重命名的timeseries数据匹配总线规范。其他属性不匹配时,函数返回一个错误。

例子:“MyInputBus”

的结构timeseries数据用于创建输出的结构timeseries根据对象金宝appSimulink.Bus对象。必须有相同的层次结构金宝appSimulink.Bus对象。

部分指定的数据总线,使用[]在公共汽车的地方元素你想使用地面值。

单元阵列的timeseries指定的输出结构的数据对象timeseries对象。

部分指定的数据总线,使用[]在公共汽车的地方元素你想使用地面值。

金宝appSimulink.SimulationData.createStructOfTimeseries函数映射timeseries单元阵列的元素指定的层次结构金宝appSimulink.Bus使用深度优先搜索对象。

例子:{ts1, ts2, ts3}

例子:{ts1, [], ts3}

依赖关系

当你指定会变暗论点,细胞的数量的单元阵列必须匹配单个信号元素的数量金宝appSimulink.Bus对象乘以指定尺寸的产品。

维度的数组timeseries结构,指定为一个向量。

当你指定维度作为标量,n函数创建一个1——- - - - - -n数组中。

例子:(2,1)

依赖关系

当你指定会变暗论点,细胞的数量的单元阵列必须匹配单个信号元素的数量金宝appSimulink.Bus对象乘以指定尺寸的产品。

数据类型:

金宝appSimulink.TsArray对象。

在版本R2016a之前,信号记录创建金宝appSimulink.TsArray对象存储记录总线数据。当你想使用这个语法使用数据记录使用ModelDataLogs格式在R2016a前一个版本来创建模拟输入一辆公共汽车。

例子:myTsArrayObj

输出参数

全部折叠

的结构timeseries对象属性指定的金宝appSimulink.TsArray金宝appSimulink.Bus输入。你可以加载的结构timeseries对象作为模拟输入一辆公共汽车。

数组的结构timeseries对象与指定的尺寸会变暗输入。

版本历史

介绍了R2013a