数字孪生是实际运营中的物理资产的最新的一种模型表现形式。
它反映当前资产状况,并包括与资产相关的历史数据。数字孪生可用于评估资产的最新状况,更重要的是预测未来行为、精细化控制或优化运营。
◆
◆
◆
◆
数字孪生可能是一个组件的模型、多个组件构成的系统或多个系统构成的系统,例如泵、发动机、发电厂、生产线或一个车队。 数字孪生模型可以由基于物理的方法或统计方法实现。 这些模型反映营运资产的当前环境、寿命和配置,通常涉及资产数据直接流向调优算法。
作为运营系统的组成部分,创建和使用数字孪生可以提高智能水平。
利用真实营运资产的最新表示形式,可以控制或优化资产和更上层的系统。该表示形式不仅捕获资产的当前状态,而且通常会反映资产运营历史记录。数字孪生使您能够优化、提高效率,实现自动化和评估未来性能。您也可以将这些模型用于其他目的,例如虚拟试运营或用来影响下一代设计。
-
运营优化 –
使用天气、车队大小、能源成本或性能因素等变量,触发模型运行成百上千个假设分析仿真,评估是否就绪或对当前系统设置点进行必要调整。 这样就能够在运营
过程中对系统运行进行优化或控制,从而缓解风险、降低成本或提高系统效率。
-
预测性维护 –
在工业 4.0 应用中,模型可以用来确定剩余使用寿命,通知运营部门在最适当的时间检修或更换设备。
-
异常检测 –
模型与实际资产并行运行,并会立即标记偏离预期(仿真)行为的运营行为。例如,石油公司可以流式采集持续运转的海上石油钻塔的传感器数据。数字孪生模型会寻找运营行为中的异常现象,以帮助避免灾难性破坏。
-
故障隔离 –
异常可能触发一连串的仿真,以便隔离故障,识别根本原因,使工程师或系统能够采取适当措施。
物联网应用推动建模所需要的内容和方法,这也是数字孪生的一部分。数字孪生模型将会包括物联网资产的所需组件、行为和动态数据。
建模方法一般可以划分为两大类 – 第一性原理或基于物理的方法(例如力学建模)和数据驱动的方法(例如深度学习)。数字孪生也可能是各种建模行为和建模方法的综合,并且有可能随着更多用途被发现而越来越详尽。
数字孪生的建模方法 – 第一性原理和数据驱动。
这些模型必须保持最新,并根据运营中的资产进行调优,这通常涉及将来自资产的数据直接传输到调优数字孪生的算法中去。这允许您可以考虑资产环境、寿命和配置等方面的问题。
一旦确认数字孪生可用并保持最新后,您可以用它以各种方式预测未来行为、精细化控制或优化资产运营。一些例子包括模拟真实资产上不存在的传感器、模拟任意数量的未来情景以便为当前和未来运营提供更多信息,或通过向数字孪生发送当前真实输入来提取当前运营状态。
MATLAB 和 Simulink 助力数字孪生
通过 MATLAB,您可以使用所连接资产的数据定义模型。您还可以使用 Simulink 中的多域建模工具创建基于物理实体的模型。数据驱动和基于物理实体的模型都可以使用来自运营资产的数据进行调整,以发挥数字孪生的作用。 您可以使用这些数字孪生进行预测、假设分析仿真、异常检测、故障隔离等。
MATLAB 中可用的数据驱动方法包括机器学习、
深度学习
、
神经网络
和系统辨识。您通常可以使用一组数据来训练或提取模型,然后使用另外一组验证数据来验证或测试模型。 借助 MATLAB 应用程序,您可以探索这些建模方法,找到适合您的应用的最精确方法。
用于交互式训练、验证和调优分类模型的 Classification Learner 应用程序。
Simulink 中基于物理的建模涉及利用第一原理设计系统。模型可能包括机械、液压和电气组件。此外,模型也可能来自使用基于模型的设计与 Simulink 的上游设计工作。
电网的 Simulink 数字孪生模型。该模型接收来自电网的测量数据进行参数估计,然后运行数千个仿真方案来确定储能是否充足、电网控制器是否需要调整。
通过优化方法,您可以使用标准协议(如用于入站数据流的 MQTT)调优数字孪生模型并使其保持最新状态。
您可以在任何对您的应用有意义的地方实现数字孪生 –– 在边缘节点、运营技术基础架构或 IT 系统。并可在 Azure IoT Hub 或 AWS IoT 等商用系统上集成,或根据需要通过 API 和其他常用集成方法(如共享库和 RESTFul 调用)实现自定义集成。
物联网拓扑结构 – 在任何对应用有意义的地方实现数字孪生。
延展阅读:
当工业设备发生故障时,导致的问题往往不是更换设备的费用,而是被迫停机。一条生产线静止不动可能意味着每分钟损失数千美元。定期维护可以帮助避免计划外停机,但不能保证设备不会发生故障。
如果机器能显示出某个部件何时会发生故障呢?
甚至如果机器能告诉您哪个部件需要更换呢?
这样一来,计划外停机时间将大大减少。计划的维护只在必要时进行,而不是以固定的时间间隔进行。这便是预测性维护的目标:
通过使用传感器数据预测何时需要维护,以此来避免停机。
在任何预测性维护算法的开发过程中,核心都是传感器数据,传感器数据可以用来训练故障检测的分类算法。在预处理步骤中,将从这些数据中提取出有意义的特征,并使用这些特征训练用于预测性维护的机器学习算法。将该算法导出到 Simulink 等模拟软件中进行验证,然后将代码部署到机器的控制单元中。
在典型的故障条件下,不可能总是从现场物理设备中获取数据。让现场发生故障可能会导致灾难性的后果,并致使设备损坏。在可控情况下故意制造故障可能会带来费时而昂贵的后果,甚至难以实现。
解决这一难题的方法是创建设备的数字孪生体,并通过模拟为各种故障情况生成传感器数据。
这种方法使工程师能够生成预测性维护工作流所需的所有传感器数据,包括针对所有可能的故障组合和不同严重程度故障的测量数据。
◆
◆
◆
◆
本文将讨论如何
使用 MATLAB、Simulink 和 Simscape 设计三缸泵的预测性维护算法
(图1)。
我们将在 Simscape 中创建实际泵体的一个数字孪生体,对其进行调优以匹配测量数据,然后使用机器学习创建预测性维护算法。该算法只需要出口泵压就能识别出哪些部件或部件组合可能会出现故障。
图1.预测性维护工作流
构建数字孪生体
三缸泵有曲轴驱动三个柱塞(图 2)。与单活塞泵相比,柱塞的一个气室始终处于排气状态,使流动更平稳并减少压力变化,从而降低材料应变。这种泵的典型故障情况是曲轴轴承磨损、柱塞密封泄漏和进气口堵塞。
图2.三缸泵原理图和容积流率图
泵的 CAD 模型通常可从制造商处获得,可以导入 Simulink 中,用于建立泵的力学模型,进行三维多体仿真。为了模拟系统的动态行为,现在需要用液压和电动元件来补充泵。
在制造商的数据表中可以找到创建数字孪生体所需的一些参数,如镗孔、冲程和轴径,但是其他参数可能会丢失,或者仅在范围内说明。
在本例中,我们需要让三个供给出口的止回阀在高压和低压下分别打开和关闭。我们没有这些压力的确切值,因为它们取决于所输送流体的温度。
图 3 中的图显示,用粗略估计(蓝色线)模拟的泵与现场数据(黑色线)不完全匹配。蓝线在一定程度上与实测曲线相似,但差异明显。
图3.使用实测数据预估参数
我们使用 Simulink Design Optimization 自动调优参数值,以便模型生成与实测数据匹配的结果。所选优化参数见 Simscape 中的止回阀出口模块(图 4)。Simulink Design Optimization 选择参数值进行仿真,计算仿真曲线与实测曲线的差值。
基于此结果,选择新的参数值进行新的仿真。计算参数值的梯度,确定参数应调整的方向。在本例中,由于只调优了两个参数,所以收敛速度很快。对于具有更多参数的更复杂场景,使用能够加速调优过程的功能非常重要。
图4.在 Simscape 中调优参数值
创建预测模型
现在,我们拥有了一个泵的数字孪生体,下一步是将故障组件的行为添加到模型中。
有多种方法可以添加错误行为。许多 Simulink 模块具有下拉菜单,用于短路或开路等典型故障。改变参数值即可模拟摩擦或褪色等影响。
在本例中,将考虑
三种故障类型:
轴承磨损导致摩擦增加、入口堵塞导致通道面积减少以及柱塞的密封泄漏。
前两个故障需要调整模块参数。为了模拟泄漏,我们需要在液压系统中添加一条路径。
如图 5 所示,可以从用户界面或 MATLAB 命令行切换所选的故障条件。在本文给出的模型中,所有的故障条件都使用 MATLAB 命令进行切换。通过这种方式,整个过程可以使用脚本实现自动化。
图5.模拟三缸泵的泄漏。
可以使用泵模块对话框(顶部)或命令行(底部)修改参数。
在图 6 顶部所示泵的仿真中,启用了两个故障:一个是入口阻塞,另一个是柱塞 3 处的密封泄漏。这些故障用红色圆圈表示。图 6 中的图显示了出口压力的仿真结果,包括连续线(蓝色)和噪声采样(黄色)。仿真生成的数据必须包含量化效应噪声,因为我们需要用尽可能真实的数据来训练我们的故障检测算法。
图6. 顶部:泵示意图,显示堵塞的入口和密封泄漏
底部:出口压力仿真图(蓝线)和噪声采样图(黄线)
图 6 中的绿色框表示出口压力的正常值范围。有明显偏离正常范围的峰值表明存在一些故障。工程师或操作人员仅凭此图即可确定泵发生故障,但仍无法准确判断具体故障。
我们使用这个仿真来生成泵在所有可能故障情况下的压力数据。为数字孪生体创建了约 200 个场景。必须对每个场景进行多次仿真,以说明传感器中的量化效应。由于此方法需要数千次仿真,我们希望能够加快数据生成过程。
一种典型方法是将仿真分布在多核机器上可用的线程上,或者分布在若干机器或计算机集群上。取决于问题的复杂性、时间限制和资源,Parallel Computing Toolbox 和 MATLAB Parallel Server 支持这种方法。
另一种方法是使用 Simulink 中的快速重启功能,它利用了许多系统需要一定的建立时间才能达到稳定状态这一事实。随着快速重启,测试的这一部分只需要模拟一次。所有后续的仿真都将从系统达到稳态的点开始。
在当前的例子中,建立时间约占单次测试所需模拟时间的 70% (图 7),因此,使用快速重启可以节省大约三分之二的仿真时间。由于可以从 MATLAB 命令行和脚本配置快速重启,因此它非常适合实现自动化训练过程。
图7.在Simulink中使用快速重启功能减少仿真时间。
下一步是利用仿真结果提取训练数据用于机器学习算法。Predictive Maintenance Toolbox 提供了提取训练数据的各种选项。因为我们在这里看到的信号具有周期性,所以 FFT 似乎最有希望。如图 8 所示,结果是单个故障以及故障组合的少量明显分离的不同大小的峰值。这是一种机器学习算法能够很好地处理的数据。
图8.使用快速傅立叶变换提取训练数据
每个故障场景的 FFT 结果会提取到一个包含插入故障和观察到的信号频率和幅度的表中。因此,要考虑的参数数量相对较少。
现在,训练故障检测算法所需的所有数据都可用了,可以将其导入到 Statistics and Machine Learning Toolbox 中。我们将使用生成的数据的一个子集来验证训练过的算法。
我们在 Statistics and Machine Learning Toolbox 中可视化训练过程的结果。这些可视化使我们能够比较不同算法的优缺点,并确定是否需要额外的训练数据。我们从实测数据中选取在确定泵的故障时精度最高的训练算法。我们将该算法导入到数字孪生体中,使用为此保存的七个测试用例进行验证(图 9)。最后的结果表明,该分类算法能够可靠地检测出所有七种场景。现在可以在控制单元上进行部署。
图9.导出最精确的模型进行验证
这一工作流程的实际应用是工业设备,这些设备将在世界各地千差万别的环境条件下广泛使用。此类设备可能会发生变化:可能会选择新的密封或阀门供应商,泵可能使用各种流体运行,并在具有不同日常温度范围的新环境中使用。所有这些因素都会影响传感器所测得的压力,可能使故障检测算法变得不可靠,甚至无用。快速更新算法以适应新情况的能力对于在新市场中使用该设备至关重要。
所述工作流可以使用 MATLAB 中的脚本进行自动化,并且大部分工作可以重用。唯一需要重复的步骤是在相当于泵在现场所面临的条件下进行数据采集。
借助智能互联技术的最新发展成果,机器制造商甚至可以通过临时设置向客户交付设备,在现场实际条件下远程收集数据,训练故障检测算法,然后远程将其重新部署到机器上。这将为客户提供新的支持机会,包括对已在现场特定条件下使用了一段时间的设备进行故障检测的再训练。在众多机器上收集的见解将使客户和制造商都受益。
◆