一种基于JRuby脚本的物联网设备控制方法及装置与流程
未命名
09-21
阅读:80
评论:0

一种基于jruby脚本的物联网设备控制方法及装置
技术领域
1.本发明涉及计算软件、物联网领域,具体涉及一种基于jruby脚本的物联网设备控制方法及装置。
背景技术:
2.如今,物联网已经在各行各业得到了广泛的应用,大量的设备及传感器已通过mqtt(message queuing telemetry transport,消息队列遥测传输)、tcp(transmission control protocol,传输控制协议)、modbus(一种串行通信协议)等协议接入到物联网系统,因此,如何完全发挥设备的功效,提升设备的业务运行能力,成为了新的技术发展趋势。
3.在传统的设备业务流程控制架构中,设备、传感器关联的业务流程,必须通过预定的逻辑规则来执行,无法动态执行;且bpm流程引擎无法直接下发设备、传感器指令,导致业务和设备、传感器处于分离状态,无法良好的组织设备、传感器关联的业务。
技术实现要素:
4.针对现有技术中存在的缺陷,本发明的目的在于提供一种基于jruby脚本的物联网设备控制方法及装置,能够有效提升设备业务的适用性。
5.为达到以上目的,本发明提供一种基于jruby脚本的物联网设备控制方法,具体包括以下步骤:
6.物联网平台获取设备的实时运行状态,同时调用jruby脚本并查询得到设备关联的bpm业务流程;
7.物联网平台调用bpm流程引擎,根据预先配置的业务流程执行规则,分步执行bpm业务流程;
8.bpm流程引擎调用jruby脚本以向设备下发指令,以使设备实现指令对应业务的执行。
9.在上述技术方案的基础上,所述jruby脚本位于物联网平台,且通过java虚拟机动态加载。
10.在上述技术方案的基础上,所述物联网平台获取设备的实时运行状态,具体为:
11.设备接入至物联网后,物联网平台实时对设备下发指令,且设备在运行过程中,向物联网平台上报实时运行状态。
12.在上述技术方案的基础上,所述查询得到设备关联的bpm业务流程,具体步骤包括:
13.物联网平台向设备下发指令或接收到设备上报的实时运行状态后,判断是否执行控制流程:
14.若是,则查询得到设备关联的bpm业务流程;
15.若否,则结束。
16.在上述技术方案的基础上,所述bpm流程引擎调用jruby脚本以向设备下发指令,
以使设备实现指令对应业务的执行,具体步骤包括:
17.bpm流程引擎调用物联网平台的业务接口,以实现物联网平台对jruby脚本的调用;
18.通过jruby脚本,物联网平台向设备下发指令,以使设备实现指令对应业务的执行。
19.在上述技术方案的基础上,所述通过jruby脚本,物联网平台向设备下发指令,以使设备实现指令对应业务的执行,具体步骤包括:
20.物联网平台调用jruby脚本,然后判断是否下发指令:
21.若是,则物联网平台向设备下发指令,以使设备实现指令对应业务的执行;
22.若否,则继续分步执行bpm业务流程。
23.本发明提供一种基于jruby脚本的物联网设备控制装置,包括:
24.获取模块,其用于驱使物联网平台获取设备的实时运行状态,同时调用jruby脚本并查询得到设备关联的bpm业务流程;
25.调用模块,其用于驱使物联网平台调用bpm流程引擎,根据预先配置的业务流程执行规则,分步执行bpm业务流程;
26.执行模块,其用于驱使bpm流程引擎调用jruby脚本以向设备下发指令,以使设备实现指令对应业务的执行。
27.在上述技术方案的基础上,所述jruby脚本位于物联网平台,且通过java虚拟机动态加载。
28.在上述技术方案的基础上,所述物联网平台获取设备的实时运行状态,具体为:
29.设备接入至物联网后,物联网平台实时对设备下发指令,且设备在运行过程中,向物联网平台上报实时运行状态。
30.在上述技术方案的基础上,所述查询得到设备关联的bpm业务流程,具体过程包括:
31.物联网平台向设备下发指令或接收到设备上报的实时运行状态后,判断是否执行控制流程:
32.若是,则查询得到设备关联的bpm业务流程;
33.若否,则结束。
34.与现有技术相比,本发明的优点在于:当物联网平台获取设备的实时运行状态后,同时调用jruby脚本并查询得到设备关联的bpm业务流程,然后物联网平台调用bpm流程引擎,根据预先配置的业务流程执行规则,分步执行bpm业务流程,然后bpm流程引擎调用jruby脚本以向设备下发指令,以使设备实现指令对应业务的执行,即通过jruby脚本,执行jruby程序逻辑的方式,有效的衔接了设备与bpm流程引擎,实现了设备与业务的贯通;同时,通过动态配置设备业务流程,提升业务流程的管理效率,可自定义业务处理逻辑,提升业务的控制能力,可融合设备的指令下发与bmp业务流程引擎,提升设备业务的适用性。
附图说明
35.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于
本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
36.图1为本发明实施例中一种基于jruby脚本的物联网设备控制方法的流程图。
具体实施方式
37.本发明实施例提供一种基于jruby脚本的物联网设备控制方法,当物联网平台获取设备的实时运行状态后,同时调用jruby脚本并查询得到设备关联的bpm业务流程,然后物联网平台调用bpm流程引擎,根据预先配置的业务流程执行规则,分步执行bpm业务流程,然后bpm流程引擎调用jruby脚本以向设备下发指令,以使设备实现指令对应业务的执行,即通过jruby脚本,执行jruby程序逻辑的方式,有效的衔接了设备与bpm流程引擎,实现了设备与业务的贯通;同时,通过动态配置设备业务流程,提升业务流程的管理效率,可自定义业务处理逻辑,提升业务的控制能力,可融合设备的指令下发与bmp业务流程引擎,提升设备业务的适用性。本发明实施例相应地还提供了一种基于jruby脚本的物联网设备控制装置。
38.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术的一部分实施例,而不是全部的实施例。
39.首先对本发明中的一些名称进行解释说明。jruby是面向ruby、基于java虚拟机jvm的一种解释程序,它结合了ruby语言的简易性和功能强大的jvm的执行机制,与java库全面集成;bpm流程引擎,即业务流程管理引擎,提供对各应用系统有决定作用的根据角色、分工和条件的不同决定信息传递路由、内容等级等核心解决方案,工作流引擎包括流程的节点管理、流向管理、流程样例管理等重要功能;java虚拟机(java virtual machine,简称jvm)是运行所有java程序的抽象计算机,是java语言的运行环境。
40.参见图1所示,本发明实施例提供的一种基于jruby脚本的物联网设备控制方法,具体包括以下步骤:
41.s1:物联网平台获取设备的实时运行状态,同时调用jruby脚本并查询得到设备关联的bpm(business process management,业务流程管理)业务流程;本发明中,jruby脚本位于物联网平台,且通过java虚拟机动态加载。
42.本发明中,物联网平台获取设备的实时运行状态,具体为:设备接入至物联网后,物联网平台实时对设备下发指令,且设备在运行过程中,向物联网平台上报实时运行状态。
43.jruby为一种可以基于java虚拟机动态执行的脚本语言,可通过jruby语音定义设备、传感器的业务运行程序逻辑,并且动态的加载到java虚拟机执行,以实现动态的控制业务处理流程,以提升设备业务的适配能力。
44.本发明中,查询得到设备关联的bpm业务流程,具体步骤包括:
45.物联网平台向设备下发指令或接收到设备上报的实时运行状态后,判断是否执行控制流程:
46.若是,则查询得到设备关联的bpm业务流程;
47.若否,则结束。
48.s2:物联网平台调用bpm流程引擎,根据预先配置的业务流程执行规则,分步执行
bpm业务流程;
49.本发明中,bpm流程引擎调用jruby脚本以向设备下发指令,以使设备实现指令对应业务的执行,具体步骤包括:
50.s201:bpm流程引擎调用物联网平台的业务接口,以实现物联网平台对jruby脚本的调用;
51.s202:通过jruby脚本,物联网平台向设备下发指令,以使设备实现指令对应业务的执行。
52.s3:bpm流程引擎调用jruby脚本以向设备下发指令,以使设备实现指令对应业务的执行。
53.本发明中,通过jruby脚本,物联网平台向设备下发指令,以使设备实现指令对应业务的执行,具体步骤包括:
54.物联网平台调用jruby脚本,然后判断是否下发指令:
55.若是,则物联网平台向设备下发指令,以使设备实现指令对应业务的执行;
56.若否,则继续分步执行bpm业务流程。
57.对于本发明中,通过jruby脚本,动态控制设备的业务运行流程的逻辑为:设备在接入到物联网平台后,可以通过物联网平台实时对设备下发指令,设备在运行过程中,也会实时对物联网平台上报运行状态;物联网平台在对设备下发指令或接收到设备运行状态数据后,会触发业务匹配的业务流程;物联网平台查询设备、传感器关联的业务流程,调用bpm流程引擎,根据预先配置的业务流程执行规则,分步执行关联的业务;bpm流程引擎调用jruby控制逻辑,往设备下发指令。
58.以下对本发明基于jruby脚本的物联网设备控制方法的具体实施方式进行说明:
59.a:使用jruby语音,编写设备开启业务流程判断规则逻辑代码;
60.b:使用jruby语音,编写bpm业务节点下发设备指令判定逻辑代码;
61.c:在物联网平台配置设备关联的bpm业务流程;
62.d:在物联网平台上传jruby脚本文件;
63.e:挂载设备到物联网平台并且下发指令,便可完成实施。
64.本发明实施例的基于jruby脚本的物联网设备控制方法,当物联网平台获取设备的实时运行状态后,同时调用jruby脚本并查询得到设备关联的bpm业务流程,然后物联网平台调用bpm流程引擎,根据预先配置的业务流程执行规则,分步执行bpm业务流程,然后bpm流程引擎调用jruby脚本以向设备下发指令,以使设备实现指令对应业务的执行,即通过jruby脚本,执行jruby程序逻辑的方式,有效的衔接了设备与bpm流程引擎,实现了设备与业务的贯通;同时,通过动态配置设备业务流程,提升业务流程的管理效率,可自定义业务处理逻辑,提升业务的控制能力,可融合设备的指令下发与bmp业务流程引擎,提升设备业务的适用性。
65.在一种可能的实施方式中,本发明实施例还提供一种可读存储介质,可读存储介质位于plc(programmable logic controller,可编程逻辑控制器)控制器中,可读存储介质上存储有计算机程序,该程序被处理器执行时实现以下所述基于jruby脚本的物联网设备控制方法的步骤:
66.物联网平台获取设备的实时运行状态,同时调用jruby脚本并查询得到设备关联
的bpm业务流程;
67.物联网平台调用bpm流程引擎,根据预先配置的业务流程执行规则,分步执行bpm业务流程;
68.bpm流程引擎调用jruby脚本以向设备下发指令,以使设备实现指令对应业务的执行。
69.存储介质可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是但不限于:电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
70.计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、rf等等,或者上述的任意合适的组合。
71.可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
72.本发明实施例提供的一种基于jruby脚本的物联网设备控制装置,包括获取模块、调用模块和执行模块。
73.获取模块用于驱使物联网平台获取设备的实时运行状态,同时调用jruby脚本并查询得到设备关联的bpm业务流程;调用模块用于驱使物联网平台调用bpm流程引擎,根据预先配置的业务流程执行规则,分步执行bpm业务流程;执行模块用于驱使bpm流程引擎调用jruby脚本以向设备下发指令,以使设备实现指令对应业务的执行。
74.本发明中,jruby脚本位于物联网平台,且通过java虚拟机动态加载。
75.本发明中,物联网平台获取设备的实时运行状态,具体为:设备接入至物联网后,物联网平台实时对设备下发指令,且设备在运行过程中,向物联网平台上报实时运行状态。
76.本发明中,查询得到设备关联的bpm业务流程,具体过程包括:
77.物联网平台向设备下发指令或接收到设备上报的实时运行状态后,判断是否执行
控制流程:
78.若是,则查询得到设备关联的bpm业务流程;
79.若否,则结束。
80.本发明实施例的基于jruby脚本的物联网设备控制装置,当物联网平台获取设备的实时运行状态后,同时调用jruby脚本并查询得到设备关联的bpm业务流程,然后物联网平台调用bpm流程引擎,根据预先配置的业务流程执行规则,分步执行bpm业务流程,然后bpm流程引擎调用jruby脚本以向设备下发指令,以使设备实现指令对应业务的执行,即通过jruby脚本,执行jruby程序逻辑的方式,有效的衔接了设备与bpm流程引擎,实现了设备与业务的贯通;同时,通过动态配置设备业务流程,提升业务流程的管理效率,可自定义业务处理逻辑,提升业务的控制能力,可融合设备的指令下发与bmp业务流程引擎,提升设备业务的适用性。
81.以上所述仅是本技术的具体实施方式,使本领域技术人员能够理解或实现本技术。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本技术的精神或范围的情况下,在其它实施例中实现。因此,本技术将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。
82.本发明是参照根据本发明实施例的方法、设备(系统)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
技术特征:
1.一种基于jruby脚本的物联网设备控制方法,其特征在于,具体包括以下步骤:物联网平台获取设备的实时运行状态,同时调用jruby脚本并查询得到设备关联的bpm业务流程;物联网平台调用bpm流程引擎,根据预先配置的业务流程执行规则,分步执行bpm业务流程;bpm流程引擎调用jruby脚本以向设备下发指令,以使设备实现指令对应业务的执行。2.如权利要求1所述的一种基于jruby脚本的物联网设备控制方法,其特征在于,所述jruby脚本位于物联网平台,且通过java虚拟机动态加载。3.如权利要求1所述的一种基于jruby脚本的物联网设备控制方法,其特征在于,所述物联网平台获取设备的实时运行状态,具体为:设备接入至物联网后,物联网平台实时对设备下发指令,且设备在运行过程中,向物联网平台上报实时运行状态。4.如权利要求3所述的一种基于jruby脚本的物联网设备控制方法,其特征在于,所述查询得到设备关联的bpm业务流程,具体步骤包括:物联网平台向设备下发指令或接收到设备上报的实时运行状态后,判断是否执行控制流程:若是,则查询得到设备关联的bpm业务流程;若否,则结束。5.如权利要求1所述的一种基于jruby脚本的物联网设备控制方法,其特征在于,所述bpm流程引擎调用jruby脚本以向设备下发指令,以使设备实现指令对应业务的执行,具体步骤包括:bpm流程引擎调用物联网平台的业务接口,以实现物联网平台对jruby脚本的调用;通过jruby脚本,物联网平台向设备下发指令,以使设备实现指令对应业务的执行。6.如权利要求5所述的一种基于jruby脚本的物联网设备控制方法,其特征在于,所述通过jruby脚本,物联网平台向设备下发指令,以使设备实现指令对应业务的执行,具体步骤包括:物联网平台调用jruby脚本,然后判断是否下发指令:若是,则物联网平台向设备下发指令,以使设备实现指令对应业务的执行;若否,则继续分步执行bpm业务流程。7.一种基于jruby脚本的物联网设备控制装置,其特征在于,包括:获取模块,其用于驱使物联网平台获取设备的实时运行状态,同时调用jruby脚本并查询得到设备关联的bpm业务流程;调用模块,其用于驱使物联网平台调用bpm流程引擎,根据预先配置的业务流程执行规则,分步执行bpm业务流程;执行模块,其用于驱使bpm流程引擎调用jruby脚本以向设备下发指令,以使设备实现指令对应业务的执行。8.如权利要求7所述的一种基于jruby脚本的物联网设备控制装置,其特征在于,所述jruby脚本位于物联网平台,且通过java虚拟机动态加载。9.如权利要求7所述的一种基于jruby脚本的物联网设备控制装置,其特征在于,所述
物联网平台获取设备的实时运行状态,具体为:设备接入至物联网后,物联网平台实时对设备下发指令,且设备在运行过程中,向物联网平台上报实时运行状态。10.如权利要求9所述的一种基于jruby脚本的物联网设备控制装置,其特征在于,所述查询得到设备关联的bpm业务流程,具体过程包括:物联网平台向设备下发指令或接收到设备上报的实时运行状态后,判断是否执行控制流程:若是,则查询得到设备关联的bpm业务流程;若否,则结束。
技术总结
本发明公开了一种基于JRuby脚本的物联网设备控制方法及装置,涉及计算软件、物联网领域,该方法包括物联网平台获取设备的实时运行状态,同时调用JRuby脚本并查询得到设备关联的BPM业务流程;物联网平台调用BPM流程引擎,根据预先配置的业务流程执行规则,分步执行BPM业务流程;BPM流程引擎调用JRuby脚本以向设备下发指令,以使设备实现指令对应业务的执行。本发明能够有效提升设备业务的适用性。本发明能够有效提升设备业务的适用性。本发明能够有效提升设备业务的适用性。
技术研发人员:瞿礼 田松 梅志雄 张小琛 蔡九天 刘言军
受保护的技术使用者:武汉烽火信息集成技术有限公司
技术研发日:2023.06.20
技术公布日:2023/9/19
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/