APP下载

工业物联使能云平台设计与实现

2022-09-22陈涛彭长超刘文军陈晨

电脑知识与技术 2022年23期
关键词:引擎规则工业

陈涛,彭长超,刘文军,陈晨

(1.苏州工业职业技术学院软件与服务外包学院,江苏苏州 215104;2.苏州砺行信息科技有限公司,江苏苏州 215151)

1 引言

实现工业生产要素的互联、互通是工业智能化改造和数字化转型的基础[1]。构建一个通用的工业物联使能平台,实现多样化工业设备数据采集、接入管理、规则引擎等问题成为关注的焦点[2]。工业物联使能平台是工业互联网平台的重要构成,基于该平台可以快速构建设备预测性运维、生产协同管理、质量追溯等上层创新应用[3-5]。

本文提出了一种针对工业场景下通用的设备使能平台,主要聚焦工业要素的接入,包括海量设备的快速接入、设备生命周期管理、平台数据流转,并为上层应用提供支撑。要求平台具有良好的通用性和扩展性。初步实践表明平台为构建复杂的工业应用提供良好的支撑能力。

2 平台技术架构

平台基于B/S架构实现,技术架构如图1所示。前端采用Vue技术栈,使用Element ui组件库快速搭建前端页面,同时使用Nginx作为反向代理服务器,增强系统安全性与可伸缩性。后端业务使用SpringBoot和JPA的技术栈。SpringBoot对比Spring精简了配置的同时整合了其庞大的生态圈与工具链,JPA作为全自动的ORM框架对比半自动的MyBatis减少了SQL的编写,二者结合极大地提升了开发效率。平台的用户访问认证和授权使用SpringSecurity和JWT框架实现,Swagger用于自动生成接口文档。出于稳定性与安全性考虑,引入了Prometheus和Grafana等中间件,组成了平台的监控系统,实现了对平台运行的可视化智能监控。同时,平台接入了第三方的短信服务,用于短信登录与短信告警,加强了用户安全与及时告警能力。数据存储采用了MySQL与MongoDB的组合,不同的存储方式可有效提高查询效率,提升系统性能。内存数据库Redis用于缓存用户登录态与热点信息。

图1 物联网使能平台技术架构图

3 平台设计

3.1 平台功能架构

平台的核心能力是提供海量设备接入与灵活的数据流转,并为上层应用提供快速开发能力。平台功能架构如图2所示,从左至右分别为设备侧、平台侧与数据流转侧,上方为上层应用。平台分为设备接入、设备生命周期管理、规则引擎与运营监控四个功能模块。

图2 平台功能架构图

设备接入模块中,平台为直连设备、网关设备、物联网边缘设备等不同类型设备提供接入能力,同时支持主流Modbus、OPC-UA等工业协议,以及MQTT、HTTP、CoAP等IoT协议。安全上,平台还具备KPI证书颁发能力,通过设备注册在线签发设备证书,实现设备的安全认证。

设备生命周期管理模块提供了对设备的全生命周期管理,包括设备基本信息管理、物模型管理与主题管理。此外,平台提供设备模拟器模拟真实设备与物联网平台建立连接。通过设备模拟器,测试物联网平台与设备端之间的通信功能。

规则引擎模块提供了场景联动、数据流转与告警提示功能。当数据接入平台后,用户可依据设备数据手动配置规则用以触发一系列动作,包括设备反向控制、数据流转以及设备告警。运营监控模块提供了可视化大屏用以展示平台接入设备情况,日志服务记录了设备上报数据的日志,同时也提供SDK与API供接入平台用户与上层应用调用。

3.2 业务功能分析

3.2.1 设备管理

设备管理是设备生命周期管理模块的核心。设备包含三个要素,分别为设备基础信息、物模型与Topic(主题)。基础信息为设备编号,设备类型等信息。物模型是为设备定义的数据模型,用于描述设备的功能,从属性、命令和事件三个维度完成对设备的建模。Topic主要用于设备通信。

平台将设备集合抽象为产品,产品通常是一组具有相同功能定义的设备集合。例如,对同一型号的产品,设备就是该型号下的某个设备。产品也可定义物模型与Topic,设备与产品绑定后即可继承产品的物模型与Topic,同时设备的信息修改不影响产品。修改产品信息即可同时修改一组设备,当接入大量设备时显著方便了设备的管理。

添加设备时序图如图3所示。在已定义了产品的前提下,添加设备时首先绑定产品,自动继承产品的物模型与Topic,再填写基础信息,同时获取设备的日志列表,若为网关设备则显示子设备列表。设备添加完成后即可通过设备模拟器调试,接入平台。

图3 设备添加时序图

图3 网格模型图

3.2.2 规则引擎

规则引擎是一种开发自动化业务逻辑的可视化编程方式,可以通过可视化的方式定义设备之间联动规则或数据的流转方式与方向。平台在接入设备的基础上,通过流入的设备数据与规则引擎来执行一系列动作。规则引擎分为场景联动和数据流转,二者都由层层递进的触发器、执行条件、执行动作三个部分组成,达成前者的条件才可进入后者的判断。触发器需指定一个设备及其属性以及触发条件,属性可以为一或多个,并可自定义属性逻辑关系。执行条件为时间范围,可为一个规则创建多个时间范围。场景联动的执行动作分为设备输出、告警输出、规则输出。设备输出即对设备的反向控制,通过设备定义的Topic与输入的指令来操控设备执行动作。告警输出是设备数据达到条件时发出告警,分为浏览器与发送短信两种告警方式。规则输出是联动其他的规则引擎,触发规则输出后可让另一个场景联动规则跳过触发器与执行条件,直接触发执行动作,提高了规则设置的灵活性。数据流转的执行动作是用不同方式将设备数据流转到指定目的地,如数据库、API以及消息队列等,进一步构建相关应用。

规则引擎执行过程如图4所示。首先为设备上报数据至平台,平台收到数据后判定是否为设备配置了场景联动或数据流转规则,若无则跳过数据,若有则进入触发器判断,达成触发条件则进入执行条件判断,通过后触发用户定义的动作。

图4 规则引擎执行时序图

图4 测井曲线三维展示

3.2.3 告警管理

规则引擎中触发的告警在告警管理中配置,告警分为平台告警与短信告警,用户需制定告警规则,包括告警方式与告警触发的间隔。告警依靠WebSocket协议来实现即时通讯,用户无须刷新浏览器就可实时收到服务端发来的告警信息,保证了告警的实时性。

具体的告警流程如图5所示。首先数据上报后由场景联动规则来判定是否触发告警,若达成触发条件则会查询上次告警时间并与当前时间求差值同时与告警间隔做对比来确定是否需要告警,如需告警则发出告警同时更新上次告警时间为当前时间,告警的次数与信息将会被记录用作数据可视化展示与分析。

图5 告警流程时序图

4 系统实现

4.1 设备管理

图6为设备管理页面,物模型数据标签页展示了设备的数据模型,功能类型包括属性、命令和事件,从三个维度完成对设备数据建模。日志服务标签页展示了设备上报数据的日志,Topic列表标签页展示了用户自定义Topic供设备订阅,设备绑定产品后可继承产品的物模型和Topic列表,若设备类型为网关设备,则展示其子设备列表。

图6 设备管理页面

4.2 规则引擎

图7为规则引擎管理页面,以场景联动规则为例。选择一个产品下的一个设备作为触发设备,同时为此设备的一个或多个属性添加阈值,选择判定规则为“或”或者“且”即完成触发器的设定,选择一个或多个时间范围完成对执行条件的设定,执行动作中选择设备输出,告警输出或规则输出。设备输出中选择设备下的属性或命令后填写属性值,或命令字符串,平台会将设备属性设为填写值,或控制设备执行命令字符串对应动作。数据流转规则参照场景联动。

图7 规则引擎管理页面

4.3 告警管理

图8告警管理页面用于管理告警规则,告警规则包含告警名称、告警等级、告警方式、联系人和相同告警间隔。填写完后点击启动即可在规则引擎中绑定告警规则,触发后在平台上或短信发出告警。

图8 告警管理页面

5 结论

工业物联使能平台的建设能够有效推动制造业数字化转型,实现经济高质量发展。针对工业生产要素的平台化接入管理以及高效利用,给出了一种工业物联使能云平台的设计和实现,平台支持主流工业协议,实现设备接入管理、生命周期管理、规则引擎与预警,以及运营监控等功能。平台具有良好的扩展性和可靠性,有效支撑智能工厂上层创新应用。

猜你喜欢

引擎规则工业
数独的规则和演变
工业人
让规则不规则
TPP反腐败规则对我国的启示
掌握4大工业元素,一秒变工业风!
无形的引擎
基于Cocos2d引擎的PuzzleGame开发
“工业4.0”之思考
One Engine Left只剩下一个引擎
2003:工业经济高速稳步增长