欢迎光临小豌豆知识网!
当前位置:首页 > 电学技术 > 电通讯技术> 基于PMML的工业网关机器学习模型容器式部署系统及方法独创技术14420字

基于PMML的工业网关机器学习模型容器式部署系统及方法

2021-02-02 08:07:18

基于PMML的工业网关机器学习模型容器式部署系统及方法

  技术领域

  本发明属于设备状态监测技术领域,具体涉及一种基于PMML(预测模型标记语言)的工业网关机器学习模型容器式部署方法。

  背景技术

  设备状态监测技术是目前工业数字化转型的一项重要技术,通过工业现场各种传感器对设备的状态数据进行采集,然后通过工业网关进行协议转换后将数据转发到云端,云端再利用大数据技术和机器学习技术对数据进行分析和预测,从而判断设备的健康状况。但这种以云为中心的状态监测存在以下几点问题。

  1、工业现场由传感器采集的数据由于存在大量高频的波形数据,因此数据量十分庞大,通过网关将其上传至云端需要占用大量带宽,因此会造成带宽的巨大压力以及大量的带宽成本。

  2、工业现场采集的某些数据涉及企业的工艺机密,无法上传至云端进行数据的分析和预测。

  3、工业现场的数据上传至云端的过程以及云端将分析结果推送到现场的过程会造成一定延时,无法满足实时性要求高的状态监测应用。

  发明内容

  本发明提供一种可以由用户自定义、无需复杂配置、配置完成立刻生效的基于PMML的工业网关机器学习模型容器式部署方法,使工业网关具备在线对数据分析,从而预测设备健康状况以及对设备故障进行预测的能力。

  本发明是通过以下技术方案来实现的:

  基于PMML的工业网关机器学习模型容器式部署系统,包括:

  数据采集模块,用于通过Modbus、OPC DA、OPC UA协议从工业现场的PLC和DCS中获取设备的运行数据,通过私有协议从工业现场的CMS中获取设备的状态数据,并对通过不同协议的数据进行统一的封装后提供给在线推理模块使用;

  在线推理模块,对云端下发的报文进行解析并对机器学习模型进行动态部署,通过数据采集模块提供的数据来触发已部署预警模型的推理过程,通过预警模型产生的预警信息来触发已部署诊断模型的诊断过程;

  信息推送模块,通过OPC UA协议和MQTT协议分别将在线推理模块产生的预警信息和诊断信息推送到工业现场的SCADA系统以及云端。

  本发明进一步的改进在于,数据采集模块包括Modbus客户端、OPC DA/UA客户端以及 CMS客户端。

  基于PMML的工业网关机器学习模型容器式部署方法,包括以下步骤:

  步骤一,云端完成机器学习模型的训练后导出成PMML,用户在云端的配置选择相应的测点将机器学习模型进行绑定,并配置机器学习模型的输入特征需求后下发到工业网关;

  步骤二,工业网关收到云端下发的机器学习模型后进行本地存储,并根据机器学习模型的用途动态创建相应模型控制对象,用于控制相应机器学习模型的预测分析过程,机器学习模型的用途分为设备预警和设备故障诊断;

  步骤三,工业网关的数据采集模块获得设备数据时,触发对应的用于预警的机器学习模型的预测分析过程,对设备的健康状态进行推理,若推理出设备健康状态异常,则进行预警,同时生成预警标签以及将预警信息推送到云端和工业现场SCADA系统;

  步骤四,根据预警标签触发相应用于故障诊断的机器学习模型的预测分析过程,对设备的故障类型进行推理,并将最终的推理结果推送到云端和工业现场SCADA系统。

  本发明进一步的改进在于,步骤一中,用户选择需要绑定机器学习模型的设备测点,云端根据用户配置的测点选取相应的设备历史数据作为训练数据集进行机器学习模型的训练,完成模型的训练后以PMML的格式导出,并以报文的形式将模型绑定的测点信息和机器学习模型下发到网关,从而实现不同训练环境下机器学习模型的标准化以及用户自定义的机器学习模型的部署形式。

  本发明进一步的改进在于,步骤二中,工业网关根据云端下发的报文自动解析机器学习模型及相关信息,将报文中的机器学习模型转换成xml文件进行本地存储,模型的加载统一采用开源的PMML模型加载运行工具jpmml-evaluater完成,从而对云端下发的机器学习模型在不需要额外进行环境配置及接口配置的情况下进行模型的加载。

  本发明进一步的改进在于,步骤三中,工业网关每一次设备测点数据的采集都会触发相应绑定了用于设备预警的机器学习模型的预测分析过程,并且机器学习模型的推理过程以并行的方式执行,保证了绑定了多个机器学习模型情况下预测分析的效率;最终的预警结果在推送到云端的同时直接推送到工业现场,从而减少云端与工业现场之间信息传输的延时,保证信息的实时性。

  本发明进一步的改进在于,步骤四中,用于预警的机器学习模型一旦发生设备预警就会同时触发相应的用于故障诊断的机器学习模型,并能够将推理的故障诊断结果推送到云端和工业现场,从而在实现设备状态监测的同时实现对设备的智能维护。

  本发明至少具有如下有益的技术效果:

  本发明提出了一种基于PMML的工业网关的机器学习模型的容器式部署方法,可以将云端训练的机器学习模型动态部署到工业网关上,工业网关实现实时对数据进行预测分析,判断设备的健康状态以及对设备进行故障诊断,克服了以云为中心的状态监测模式存在的缺点,与现有技术相比,本发明具有以下有益的创新:

  创新1:本发明提出了将机器学习模型对数据的预测分析功能从云端转移到工业网关上,从而减少数据上传造成的带宽压力、保证数据的隐私性以及提高预测结果的实时性。

  创新2:本发明通过将云端训练的模型导出成PMML格式并以报文下发到网关,从而解决了云端模型训练环境与网关部署环境不一致导致的模型无法部署的问题,同时用户可以自定义工业网关上模型的部署形式,从而灵活满足不同设备的状态监测需要。

  创新3:本发明通过动态创建模型的对象来控制模型的触发与推理过程,每个模型的推理过程由独立的线程控制,因此用户可以根据不同的需求对不同设备的测点绑定不同类型的机器学习模型,一个工业网关上可以同时部署运行多个模型,可以充分满足用户的状态监测需要。

  综上,本发明通过基于PMML的机器学习模型容器式部署方法,工业网关可以实现在线对数据进行预测分析,从而避免了大量数据上传至云端造成带宽的压力,同时通过在工业网关本地进行数据预测分析,可以避免企业的机密数据上传至云端,保证数据的隐私性。最后,在工业网关进行数据预测分析,然后将结果进行本地推送,可以避免数据传输的延时,保证预测结果的实时性。

  附图说明

  图1为本发明的架构图。

  图2为模型动态部署加载框架图。

  图3为模型推理与数据采集模块与信息推送模块的动态数据连接图。

  图4为在线推理模块的活动图。

  具体实施方式

  以下结合附图和实施例对本发明做出进一步的说明。

  本发明的设备状态监测是工业网关通过对现场设备上绑定的传感器采集的设备数据进行在线智能推理来实现的,而智能推理的实现基于云端下发到工业网关并部署的训练好的机器学习模型。一种基于PMML的工业网关机器学习模型容器式部署方法在工业网关上实施以后工业网关的软件架构图如图1,数据采集模块集成了Modbus客户端、OPC DA/UA客户端、 CMS客户端,Modbus客户端可通过Modbus TCP协议实现对工业现场PLC的数据采集,OPC DA/UA客户端可通过OPC DA/UA协议实现对工业现场DCS的数据采集,CMS客户端可通过私有协议实现对工业现场CMS的数据采集。智能推理模块是采用了基于PMML的工业网关机器学习模型容器式部署方法后工业网关的软件架构与传统工业网关软件架构的主要区别,传统的工业网关在完成数据采集之后会将数据进行封装后交给信息推送模块进行推送,而采用基于PMML的工业网关机器学习模型容器式部署方法后工业网关在完成数据采集之后,会实现数据流驱动的智能预警,既通过云端在工业网关部署的机器学习模型,对相应测点每次采集的数据进行预测分析,判断设备的健康状态是否异常。智能预警完成之后,一旦判断设备健康状态异常,该事件就会触发设备绑定的相应的故障诊断机器学习模型的预测分析,从而推理出设备的故障类型。信息推送模块会对智能推理模块产生的预警信息和故障诊断信息实时的进行推送,推送方式除了通过MQTT协议将信息推送到云端,还新增了通过OPC UA 服务器将信息推送到工业现场,因为智能推理模块的加入使工业网关可以在线对设备进行健康状态监测和故障诊断,因此工业现场的设备状态监测信息可以直接从工业网关获取,而不需要从云端获取,从而大大增强了信息的实时性。

  利用上述基于PMML的工业网关机器学习模型容器式部署方法对设备进行状态监测的过程如图3所示。

  (1)机器学习模型训练及下发:

  用户在云端自定义机器学习模型的配置,配置包括模型绑定的设备测点,模型的输入特征需要,模型的算法类型,模型的目的(预警和诊断)。云端根据用户的配置选择对应的历史数据完成机器学习模型的训练并导出成PMML格式。云端以报文的形式将机器学习模型下发到工业网关,报文中包括绑定模型的设备测点标识,模型的输入特征需要,模型目的,模型内容。

  (2)机器学习模型的部署:

  工业网关收到云端下发的报文对其进行解析,解析出报文中机器学习模型部分并将其以 xml文件的形式进行本地存储,同时根据机器学习模型目的的不同创建对应的预警或诊断模型控制对象,控制对象中保存模型绑定的设备测点下传感器ID,模型的输入特征需要以及模型的本地存储路径,控制对象还负责执行模型的预测。完成控制对象的创建以后更新机器学习模型配置文件,配置文件保存了目前网关已经部署的所有机器学习模型的信息,配置文件用于工业网关在发生故障重启以后恢复网关的机器学习模型的部署。

  (3)机器学习模型的执行:

  当机器学习模型被触发执行时,对应的模型控制对象会根据其保存的模型输入特征需要从采集的原始数据中获取对应的特征值,然后根据PMML模型文件中的数据字典部分对所有的特征值进行封装,封装完成之后输入机器学习模型。机器学习模型的预测执行通过调用开源的pmml模型文件加载运行工具jpmml-evaluater完成,最后将机器学习模型的输出进行处理,转换成需要的形式。

  智能推理模块与其他模块的数据连接以及的智能预警和故障诊断的触发与执行的具体流程如图4所示。

  (1)智能预警的触发与执行:

  智能预警的触发是由数据流来触发的,其触发条件为数据采集模块的数据采集,每当数据采集模块采集到数据后会推送到智能推理模块,智能推理模块会解析数据获取采集数据的传感器ID,并根据该标签判断对应的设备测点下是否绑定了用于预警的机器学习模型,而判断的条件就是存在预警模型控制对象中保存的传感器ID与该数据的传感器ID相等。当判断对应设备测点下绑定了用于预警的机器学习模型时,就触发对应机器模型的执行。

  机器学习模型的执行过程由对应的预警模型控制对象来控制,首先根据保存的输入特征需要从原始数据中获取对应的特征值,获取特征值包括从数据采集模块中获取的单值数据中根据数据标签来获取,以及对数据采集模块中获取的波形数据进行特征提取来获取。完成特征值获取之后对所有特征值进行封装后输入模型进行预测分析。当机器学习模型的预测结果为设备健康状态异常时,会生成相应的预警信息通过信息推送模块进行推送,同时会生成预警标签进行缓存。

  (2)故障诊断的触发与执行:

  故障诊断的触发是由事件触发的,其触发条件为智能预警产生设备健康状态异常预测事件。智能推理模块会循环的从缓存预警标签的队列中获取预警标签,若队列为空,则说明未发生预警,不触发故障诊断。若队列不为空,则说明产生了预警,从队列中取出预警标签,根据标签中保存的传感器ID,判断该测点下是否绑定了用于故障诊断的机器学习模块,判断条件是诊断模型控制对象中保存的传感器ID与该预警标签中的传感器ID相等。当判断对应设备测点下绑定了用于诊断的机器学习模型时,就触发对应机器模型的执行。

  机器学习模型的执行过程由对应的诊断模型控制对象来控制,首先根据保存的输入特征需要从原始数据中获取对应的特征值,获取特征值包括对数据采集模块中获取的波形数据进行特征提取来获取。完成特征值获取之后对所有特征值进行封装后输入模型进行预测分析。当机器学习模型产生诊断结果是,会生成相应的诊断信息通过信息推送模块进行推送。

《基于PMML的工业网关机器学习模型容器式部署系统及方法.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)