您可以在合奏数据存储处理数据和派生变量添加到集合成员。对于这个例子,处理的可变值来计算一个标签,该标签指示合奏构件是否包含具有一个故障存在获得的数据。然后,该标签添加到合奏。
对于本例,使用以下代码创建simulationEnsembleDatastore
对象,该对象使用以前在各种故障值上运行Simulink®模型生成的数据。万博1manbetx(看到generateSimulationEnsemble
。)该整体包括用于模型参数的五个不同的值的模拟数据,ToothFaultGain
.将模型配置为将模拟数据记录到一个名为的变量中logsout
在为本例存储的mat文件中simEnsData.zip
.由于数据量大,所以拉开拉链
操作可能需要一两分钟。
合奏= simulationEnsembleDatastore与属性:DataVariables:[5X1字符串] IndependentVariables:为0x0字符串] ConditionVariables:为0x0字符串] SelectedVariables:[5X1字符串] READSIZE:1个NumMembers:5 LastMemberRead:为0x0字符串]文件:[5X1字符串]
从在合奏第一部件读取数据。该软件确定哪个合奏是第一构件,并更新属性ensemble.LastMemberRead
以反映相应文件的名称。
数据=表1×5PMSignalLogName SimulationInput SimulationMetadata测速振动_______________ ______________________________ _________________________________ ___________________ ___________________ { 'logsout'} {1x1的Simulink.Sim万博1manbetxulationInput} {1x1的Simulink.SimulationMetadata} {20202x1时间表} {20202x1时间表}
默认情况下,集成数据中存储的所有变量都被指定为SelectedVariables
.因此,返回的表行包含所有集成变量,包括一个变量SimulationInput
,其中包含万博1manbetxSimulink.SimulationInput
对象,该对象为该集成成员配置了模拟。该对象包括ToothFaultGain
用于集合成员的值,存储在其数据结构中变量
属性。检查该值。(有关仿真配置是如何存储的更多信息,请参阅万博1manbetxSimulink.SimulationInput
)。
属性:ModelName: 'TransmissionCasingSimplified' InitialState: [0x0 Simulink.op。万博1manbetxModelParameters: [0x0 Simulink.Simulation]。万博1manbetx块参数:[0x0 Simulink.Simulation]万博1manbetx变量:[1x1 Simulink.Simulation.]万博1manbetx变量]PreSimFcn: [] PostSimFcn: [] UserString: "
假设你要转换的ToothFaultGain
对于每个集合构件为是否进行了齿故障的二进制指示符值是存在的。从系统的经验,进一步,你知道假设齿故障增益值小于0.1的幅度小到足以被认为是健康的运行。转换该合奏的增益值到一个指示符,对于-0.1 <增益<0.1,和图1(故障),否则为0(无故障)。
要追加新的齿故障指示器到相应的合奏数据,第一扩大在合奏数据变量列表以包括用于指示的变量。
ANS =6 x1字符串“PMSignalLogName” “SimulationInput” “SimulationMetadata” “测速”, “震动” “ToothFault”
此操作在概念上等价于添加一个列集合的数据的表。现在DataVariables
包含新的变量名,使用推导出的值分配给该部件的该列writeToLastMemberRead
.
在实践中,要齿故障指示器追加到集合的每一个成员。要做到这一点,乐团数据存储重置为未读状态,这样在第一集合构件下一次读操作开始。然后,通过所有的集合成员循环,计算ToothFault
针对每个成员并将其附加。该重启
操作不变ensemble.DataVariables
,所以“ToothFault”
仍然在那个列表中。
最后,指定新的齿故障指示器如在合奏数据存储区的状态变量。可以使用此标识来跟踪,并且是指变量表示在其下产生的部件的数据条件的数据集合。
您可以将新变量添加到ensemble.SelectedVariables
当你想要读出来做进一步的分析时。例如,演示了更多操作和分析存储在a中的数据的方法simulationEnsembleDatastore
对象,看到采用Simu万博1manbetxlink生成故障数据.