用于状态监测和预测维护的数据集成

数据分析是任何状态监测和预测维护活动的核心。预测性维护工具箱提供了被调用的工具整体数据存储创建,标记和管理所需的预测性维护算法的设计往往较大,复杂的数据集。

该数据可以来自测量上使用传感器诸如加速度计,压力计,温度计,高度计,电压表,转速表和系统。例如,你可能有机会获得从测量数据:

  • 系统正常运行

  • 在故障状态的系统操作

  • 系统运作的寿命纪录(run-to-failure数据)

对于算法设计,你也可以使用通过运行的Simulink仿真生成的数据万博1manbetx®各种操作和故障情况下系统的建模。

无论是使用测得的数据,生成的数据,或二者,经常有许多信号,测距在时间跨度或多个时间跨度。您还可能有许多机器信号(例如,来自100个独立引擎测量所有生产均达到同一规格)。你可能有一个代表既健康运行和故障情况的数据。在任何情况下,设计的算法来预测维护需要整理和分析大量数据,同时跟踪的数据是该系统和条件。

集成数据存储可以帮助您处理这些数据,无论是本地存储还是远程存储,比如使用Amazon S3™(简单存储服务)、Windows Azure的云存储®Blob存储,和Hadoop®分布式文件系统(HDFS™)。

数据合奏

组织和预测性维护工具箱管理多方面的数据集的主要单位是数据集成。一个合奏是数据集,通过测量或变化的条件下模拟系统中创建的集合。

例如,考虑在其中有一个加速度计来测量振动,并测量发动机轴旋转的转速计传动齿轮箱系统。假定您运行发动机五分钟,记录测量信号作为时间的函数。您还录制引擎时代,推动距离来确定。这些测量结果产生以下数据集。

现在,假设你有许多相同引擎的车队,并从所有这些记录数据。这样做产生了一个家庭的数据集。

这个数据集族是一个合奏,并在合奏每一行是一个成员合奏。

合奏的成员,它们含有相同的数据变量相关。例如,在示出的集成,所有成员都包括相同的四个变量:发动机标识符,所述振动和转速计信号,以及发动机的年龄。在该示例中,每个部件对应于不同的机器。你的整体实力还包括一套在不同时间从同一台机器记录的数据变量。例如,如下图所示,其包括来自记录为发动机年龄相同的发动机多个数据集的合奏。

实际上,每个集成成员的数据通常存储在单独的数据文件中。因此,例如,您可能有一个文件包含引擎01在9,500英里处的数据,另一个文件包含引擎01在21,250英里处的数据,依此类推。

模拟数据乐团

在许多情况下,系统中没有真正的故障数据,或者在故障条件下系统中只有有限的数据。如果您有一个模拟实际系统行为万博1manbetx的Simulink模型,那么您可以通过在各种条件下重复模拟该模型并记录模拟数据来生成数据集成。例如,你可以:

  • 变化反映故障的存在或不存在的参数值。例如,使用非常低的电阻值的短路建模。

  • 注入信号故障。传感器的漂移和在所测量的信号干扰影响所测量的数据值。您可以通过添加适当的信号模型模拟这种变化。例如,可以加一个偏移量的传感器来表示漂移,或通过在模型的某些位置注入的信号的扰动模型。

  • 改变系统动力学。支配一个组件的行为的等式可用于正常和有故障的操作来改变。在这种情况下,不同的动力学可被实现为同一组件的变体。

例如,假设你有一个描述齿轮箱系统Simulink模型。万博1manbetx该模型包含表示在振动传感器的漂移参数。你在模拟传感器漂移的不同值这个模型中,并配置模型登录的振动和转速计信号的每个模拟。这些模拟产生,其覆盖的范围内的操作条件的合奏。每个集合构件对应于一个模拟,并记录一组特定的条件下,相同的数据变量。

generateSimulationEnsemble命令有助于产生从在其中可以通过改变模型的某些方面模拟故障条件的模型这样的数据集。

乐团变量

在合奏中的变量用于不同的目的,并相应地可分为几种类型:

  • 数据变量- 集合成员,包括测得的数据和派生数据您用于预测性维护算法分析和发展的主要内容。例如,在示出的齿轮箱合奏,振动转速表是数据变量。数据变量还可以包括导出的值,例如信号的平均值,或在信号频谱的峰值大小的频率。

  • 自变量-标识集合中成员或对其排序的变量,如时间戳、操作小时数或机器标识符。在齿轮箱测量数据的集合中,年龄是一个自变量。

  • 条件变量- 描述该故障状况或合奏构件的操作条件的变量。条件变量可以记录存在或不存在故障状态的,或其他操作条件,例如环境温度。在模拟齿轮箱数据的合奏,SensorDrift是条件变量。条件变量也可以导出的值,例如为编码多故障和操作条件的单个标量值。

在实践中,您的数据变量,自变量和条件变量是完全不同的变量集。

整体的数据预测性维护工具箱

使用预测性维护工具箱,您可以使用以下工具管理集成数据并与之交互整体数据存储对象。在MATLAB®时间序列数据通常存储为矢量或时间表。其它数据可以被存储作为标量值(如发动机年龄),逻辑值(例如,是否存在故障或不),字符串(例如一个标识符),或表格。您的合奏可以包含是记录您的应用程序有用的任何数据类型。在合奏中,通常存储的数据在一个单独的文件中的每个成员。乐团数据存储对象帮助您组织,标签和过程集成的数据。你使用哪一种整体数据存储对象取决于你是否与测量数据在磁盘上的工作,或从Simulink模型生成的模拟数据。万博1manbetx

合奏数据存储对象包含有关存储在磁盘上的数据信息,并允许您与数据进行交互。你可能会使用的命令,例如,从集成中提取数据到MATLAB工作空间中writeToLastMemberRead,将数据写入集合。

最后成员阅读

当你与合奏工作,该软件跟踪哪些集合构件的它最近读的。当你打电话,软件选择下一个成员阅读和更新LastMemberRead合奏的属性,以反映该成员。当你下一次调用writeToLastMemberRead,则软件将写入该成员。

例如,考虑模拟齿轮箱的数据的集合。当您使用生成此合奏generateSimulationEnsemble中,来自每个仿真运行的数据被记录到磁盘上的一个单独的文件中。然后创建一个simulationEnsembleDatastore反对它指向这些文件中的数据。可以设置合奏对象的属性的变量成组分离如独立变量或条件变量。

假设你现在从集成对象中读取一些数据,合奏

数据=读(合奏);

当您第一次打电话上的合奏,该软件指定的合奏一些构件作为第一构件阅读。软件读选择从成员变量到MATLAB工作区中,成表格被称为数据。(所选择的变量是您在指定变量SelectedVariables财产合奏。)软件更新属性ensemble.LastMemberRead使用该成员的文件名。

直到你打电话再一次,最后组成员阅读指定停留其中整体部件,所述软件分配它。因此,例如,假设您处理数据为了计算一些衍生变量,如振动信号频谱中峰值的频率,VibPeak。您可以将导出值追加到它所对应的集合构件,这仍然是最后一个成员阅读。要做到这一点,首先展开数据变量的列表合奏包含新变量。

ensemble.DataVariables = [ensemble.DataVariables;“VibPeak”]

这个操作相当于向集成中添加一个新列,如下图所示。新变量最初在每个集成中由一个缺失的值填充。(看到失踪了解更多信息。)

现在,使用writeToLastMemberRead在最后一个成员的新变量的值填充读取。

newdata =表(VibPeak,'VariableNames'{'VibPeak'});writeToLastMemberRead(合奏,newdata);

在集合中,新值出现,最后一个成员读的指定仍然保留在相同的成员上。

下次你再打电话来在合奏时,它确定下一个部件来读取,并且从该构件返回所选变量。最后一个成员读取指定的进步,以该成员。

hasdata命令告诉你是否乐团的所有成员都被读取。该重置命令清除所有成员“改为”称号,这样到下次调用操作合奏的第一构件上。复位操作清除LastMemberRead合奏的财产,但不改变其他合奏性能,如DataVariables要么SelectedVariables。它也不会改变你写回集成的任何数据。有关显示与生成数据集成的更多交互的示例,请参见生成和使用模拟数据合奏

记录测量数据

虽然前面的讨论使用了一个模拟集成作为示例,但是最后一个成员读取指定在使用测量数据集成进行管理时的行为是相同的fileEnsembleDatastore。然而,当你与测量数据的工作,你必须提供的信息告诉writeToLastMemberRead命令如何在磁盘上存储和组织数据。

您可以通过的设置属性这么做fileEnsembleDatastore对象的功能,你写。设置ReadFcn属性指向一个函数的句柄,该函数描述如何从数据文件中读取数据变量。当你打电话,它使用此函数来访问下一个集成文件,并从中读取在SelectedVariables合奏数据存储的性能。同样,您使用WriteToMemberFcn财产fileEnsembleDatastore对象提供一个函数,该函数描述如何向集合的成员写入数据。

对于实施例,显示与磁盘上的测量数据的集合这些相互作用,请参见:

合奏和MATLAB数据存储

预测维护工具箱中的集成是一种专用的MATLAB数据存储(参见入门与数据存储(MATLAB))。该writeToLastMemberRead命令有行为是特定于数据存储合奏。此外,与合奏数据存储,因为它们不与其他MATLAB数据存储相同以下MATLAB数据存储的工作模式。

  • hasdata-确定集合数据存储是否具有尚未读取的成员。

  • 重置- 恢复合奏数据存储到没有成员尚未被读取的状态。在这种状态下,没有当前成员。使用此命令重读数据你已经从合奏读取。

  • - 转换合奏的数据存储到高的表。(看到内存不足数据的长数组(MATLAB))。

  • 进展- 确定合奏数据存储的比例已读。

  • 划分- 分区中的数据存储区合奏成用于并行计算多个合奏数据存储。(对于合奏数据存储,使用分区(DS中,n,索引)句法。)

  • numpartitions-确定数据存储分区的数量。

从多个合奏成员中读取

默认情况下,从一次一个集合构件命令返回的数据。到从一个以上的合奏构件在一个时间过程数据,设置READSIZE合奏数据存储对象的值大于1。例如,如果你设置READSIZE到3,然后每个电话到返回与三行的表,以及表示3名集合成员作为最后一个成员读取。有关详细信息,请参阅fileEnsembleDatastoresimulationEnsembleDatastore参考页。

集合转换成数据表高大

某些功能,比如很多统计分析功能,可以在高大的表中的数据,让您与由数据存储备份的存储器外的数据进行工作操作。您可以从数据合奏数据存储转换成一个高大的表使用这种分析的命令使用命令。

当处理大合奏数据,如长的时间序列信号的工作时,通常处理在合奏他们构件逐构件使用writeToLastMemberRead。处理数据以计算数据的某些特性,这些特性可以作为集成成员的有用条件指示器。

通常,您的条件指示器是一个标量值或其他一些值,它们占用的内存空间比原始未处理信号少。因此,一旦您将这些值写入到您的数据存储中,您就可以使用了收集将条件指标提取到内存中进行进一步的统计处理,如训练分类器。

例如,假设你的合奏中的每个成员包含时间序列振动数据。对于每一个成员,则读出的数据集合,并计算一个条件指示符,从信号分析处理得到的标量值。你写的派生值回成员。假设所导出的值是在称为合奏可变指示符和含有约合奏构件(如故障状况)信息的标签是在一个所谓的可变标签。为了对集成进行进一步的分析,您可以将条件指示器和标签读入内存,而不必读取较大的振动数据。为此,设置SelectedVariables合奏你想读的变量属性。然后用创建所选变量的高大表,收集将值读入内存。

合奏。选择edVariables = [“指示符”“标签”]。featureTable =高(合奏);featureTable =聚集(featureTable);

结果变量featureTable是居住在MATLAB工作区一个普通的表。您可以与支持MATLAB表中的数据类型的任何功能对其进行处理。万博1manbetx

对于示出了使用实例收集操作进行预测性维护分析集合数据,请参见:

处理总体数据

合奏组织数据后,预测性维护算法设计的下一步是对数据进行预处理,以清洁或改变它。然后,你进一步处理该数据以提取条件指示符,其是数据的功能,可以使用区分故障操作健康。欲了解更多信息,请参见:

也可以看看

|||

相关话题