一种规则引擎在工业物联网上的应用方法技术

技术编号:34767196 阅读:24 留言:0更新日期:2022-08-31 19:20
本发明专利技术公开了一种规则引擎在工业物联网上的应用方法,属于工业物联网数据接入领域;包括:首先、搭建规则计算模块,统计模块,控制模块和故障模块组成的规则引擎;并分别添加对应规则保存;同时采集实时数据存放在时序数据库中;针对某设备,规则计算模块读取实时数据,计算得到新属性;统计模块读取新属性,选择预制统计函数,对新属性值按时间周期循环进行统计;控制模块读取统计的属性,并按照规则进行判断;对符合规则的控制命令下发到边缘端实现对该设备的控制;故障模块按照设置的执行时间间隔定时读取该设备的属性值;当属性值违反规则,输出故障申报并进行相应的处理。本发明专利技术提高了系统的扩展能力,有效提升了生产效率,降低故障率。低故障率。低故障率。

【技术实现步骤摘要】
一种规则引擎在工业物联网上的应用方法


[0001]本专利技术属于工业物联网数据接入
,具体涉及一种规则引擎在工业物联网上的应用方法。

技术介绍

[0002]规则引擎是一种嵌入在应用程序中的组件,接受数据输入,解释业务规则,并根据业务规则做出业务决策,实现了将业务决策从应用程序代码中分离,并使用预定义的语义模块编写业务决策的目的。
[0003]在实际应用中,软件的开发遇到了很多问题:首先,软件开发是从需求到设计到编码,但是业务规则在需求阶段并不能完全确定,或者后续还有新的需求,而业务规则是嵌入在系统的代码中的,耦合度非常高;其次,有些业务场景很难提炼或者抽象出确定的算法或者数学模型,因此程序也无法实现;最后当软件开发完成后,很难再去更新,扩展性不能保证。这些问题就导致需要将生产决策者的生产决策和软件开发者的技术决策分离开来,规则引擎应运而生,用于解决以上这种动态环境的问题。
[0004]规则引擎的开发为了保证扩展性以及高可用性,采用了微服务的架构进行设计。
[0005]微服务架构是一种以业务功能为主的应用设计概念,每个服务都具有独立运行的业务功能,对外开放和语言无关的REST API,应用程序则是由一个或者多个微服务组成。
[0006]微服务有自主性和专用性的特性,自主性是可以对微服务架构中的每个组件服务进行开发、部署、运营和扩展,而不影响其他服务的功能;这些服务不需要与其他服务共享任何代码或实施,各个组件之间的任何通信都是通过明确定义的API进行的;专用性是每项服务都是针对一组功能而设计的,并专注于解决特定的问题。如果开发人员逐渐将更多代码增加到一项服务中并且这项服务变得复杂,那么可以将其拆分成多项更小的服务。
[0007]微服务的另一个对比是单体式应用程序,单体式应用表示一个应用程序内包含了所有需要的业务功能,并且使用主从式架构(Client/Server)或是多层次架构(N

tier)实现,虽然也能以分布式应用程序来实现,但是在单体式应用内,每一个业务功能是不可分割的。相比于单体式应用程序,微服务具有敏捷性开发,扩展灵活,技术栈自由,可重复使用代码以及可用性高等优势。
[0008]现有技术对于整个规则引擎的部署使用的是Docker技术,虽然使用一般的服务器虚拟技术也能应用于微服务的管理,但是Docker容器技术能更好的实现微服务的运算存储资源的管理。
[0009]Docker是目前最具代表性的容器平台之一,具有持续部署与测试、跨云平台支持等优点。Docker有三个基本概念,镜像(Image)、容器(Container)和仓库(Repository)。镜像是一个只读的模版,由一组文件系统通过Union FS技术组成;镜像是静态的定义。容器是从镜像创建的运行实例,容器的本质是进程,拥有自己独立的命名空间;仓库(Repository)是集中存放镜像文件的场所,用于存储和分发镜像;容器可以被启动、开始、停止和删除,每个容器都是相互隔离的,可以把容器看做是一个简易版的Linux环境(包括root用户权限、
进程空间、用户空间和网络空间等)和运行在其中的应用程序。

技术实现思路

[0010]针对工业物联网的大量数据,本专利技术开发实现了规则引擎,通过前端配置的规则对于实时数据进行计算,统计,控制指令下发和故障报警,具体是一种规则引擎在工业物联网上的应用方法,采用边云协同的架构设计,结合规则引擎,实现了对工业物联网数据的处理与利用。
[0011]所述规则引擎在工业物联网上的应用方法,具体步骤如下:
[0012]首先、搭建规则计算模块,统计模块,控制模块和故障模块组成的规则引擎;
[0013]然后、通过不同的前端页面向四个模块分别添加各自的对应规则,并保存在MySQL数据库中;同时将设备参数和传感器数据的实时数据存放在时序数据库TDengine中;
[0014]针对某设备或物模型,规则计算模块加载前端配置的规则后,从时序数据库TDengine中读取工业现场传感器或者设备参数的实时数据,按规则执行计算操作,得到设备的新属性并保存到时序数据库TDengine中;
[0015]统计模块加载规则后,从时序数据库TDengine中读取设备的新属性,选择已有的预制统计函数,对该设备或物模型的属性值按时间周期循环进行统计;
[0016]控制模块加载规则,从时序数据库中读取该设备统计的属性数据,并按照加载的规则进行判断,当符合规则,则触发控制模块将控制命令转发到数据交换服务,进一步将命令下发到边缘端实现对该设备的控制。
[0017]故障模块加载规则后,按照设置的执行时间间隔定时读取需要监控的相关设备属性值;当属性值违反规则,输出故障申报并进行相应的处理。
[0018]相对于现有技术,本专利技术的优点和积极效果在于:
[0019](1)本专利技术一种规则引擎在工业物联网上的应用方法,采用Golang语言开发实现,充分利用Golang语言原生支持高并发的特性,因此本专利技术规则引擎执行性能相当好;利用微服务的架构设计提高了系统的扩展能力。
[0020](2)本专利技术一种规则引擎在工业物联网上的应用方法,针对工业物联网设备繁多,同种类设备多,设备数据量大,性能要求高等特点开发实现了规则引擎,做到了更快更稳定的对实时数据进行计算统计以及控制指令下发,故障报警等功能,有效提升了生产效率,降低故障率。
附图说明
[0021]图1是本专利技术一种规则引擎在工业物联网上的应用方法的流程图;
[0022]图2是本专利技术采用的规则引擎的规则计算模块架流程图;
[0023]图3是本专利技术采用的规则引擎的规则统计模块架流程图;
[0024]图4是本专利技术采用的规则引擎的规则故障模块架流程图;
[0025]图5是本专利技术采用的规则引擎的规则控制模块架流程图。
具体实施方式
[0026]下面结合附图和实施例对本专利技术技术方案做进一步详细说明。
[0027]本专利技术一种规则引擎在工业物联网上的应用方法,是应用规则引擎对工业物联网数据进行二次操作和利用的方法,具体涉及规则引擎的开发实现与部署以及如何在工业的应用,适用于对工业现场采集的物联网数据按照规则进行计算,统计,设备故障监控报警以及对设备控制命令的下发。
[0028]所述规则引擎在工业物联网上的应用方法,如图1所示,具体步骤如下:
[0029]步骤一、搭建规则计算模块,统计模块,控制模块和故障模块组成的规则引擎;
[0030]这四个模块可以单独扩展,或者为提高计算效率也可以扩展规则引擎的数量。
[0031]规则计算模块用于对设备的多个属性进行计算得到新的属性,并存放在该设备所对应的时序数据库表中;
[0032]规则统计模块对时序数据库表中的设备属性进行统计,统计值作为故障模块的数据源进行故障监控传感器;
[0033]规则故障模块读出统计数据,按照规则判断设备是否发生故障,并将故障信息发送到本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种规则引擎在工业物联网上的应用方法,其特征在于,具体步骤如下:首先、搭建规则计算模块,统计模块,控制模块和故障模块组成的规则引擎;然后、通过不同的前端页面向四个模块分别添加各自的对应规则,并保存在MySQL数据库中;同时将设备参数和传感器数据的实时数据存放在时序数据库TDengine中;针对某设备或物模型,规则计算模块加载前端配置的规则后,从时序数据库TDengine中读取工业现场传感器或者设备参数的实时数据,按规则执行计算操作,得到设备的新属性并保存到时序数据库TDengine中;统计模块加载规则后,从时序数据库TDengine中读取设备的新属性,选择已有的预制统计函数,对该设备或物模型的属性值按时间周期循环进行统计;控制模块加载规则,从时序数据库中读取该设备统计的属性数据,并按照加载的规则进行判断,当符合规则,则触发控制模块将控制命令转发到数据交换服务,进一步将命令下发到边缘端实现对该设备的控制;故障模块加载规则后,按照设置的执行时间间隔定时读取该设备的属性值;当属性值违反规则,输出故障申报并进行相应的处理。2.如权利要求1所述的一种规则引擎在工业物联网上的应用方法,其特征在于,所述规则计算模块,统计模块,控制模块和故障模块可单独扩展或部署。3.如权利要求1所述的一种规则引擎在工业物联网上的应用方法,其特征在于,所述规则计算模块用于对设备的多个属性进行计算得到新的属性,并存...

【专利技术属性】
技术研发人员:张云贵何敬健李卓卿
申请(专利权)人:冶金自动化研究设计院有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1