一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于脚本编排的电磁感知任务执行方法、系统及终端与流程

2023-01-02 17:52:27 来源:中国专利 TAG:


1.本发明涉及无线电监测应用领域,尤其涉及基于脚本编排的电磁感知任务执行方法、系统及终端。


背景技术:

2.随着5g通信、wifi通信、卫星通信等为代表的新一代无线电通信技术加速向城市的经济建设、社会发展等领域渗透,城市的电磁环境日趋复杂,各类无线电干扰事件时有发生,“黑广播”、“伪基站”等违法设台日益增多,无线电管理部门实时监测空中电磁环境,有效管理空中电波秩序的任务越来越复杂、繁琐。近年来,全国各省市无线电管理部门积极推动无线电监测一体化平台建设,按照《超短波监测管理一体化平台技术规范》对现有监测网络内的各类监测设备进行原子化服务改造,并将原子服务注册到无线电监测一体化平台进行统一管理与调度控制,有力的支撑了空中电波秩序的管理。
3.目前,各省市已建的无线电监测一体化平台已初步实现了全网监测设备的统一接入与调度管理,但现有无线电监测一体化平台soa架构的软件系统平台进行业务流程定制和业务功能扩展时,一般采用的方式是对现有服务进行组合和编排,形成新的服务进行注册和调用。采用这种方式,一方面如果涉及到任何服务的微小修改和调整,都需要将修改后的服务进行重新发布;另一方面,在服务执行过程中无法对其进行暂停、继续、终止等控制,任务流程编排的灵活性较差。


技术实现要素:

4.本发明的目的在于克服现有技术中无线电监测一体化平台任务流程编排存在的问题,提供了基于脚本编排的电磁感知任务执行方法、系统及终端。
5.本发明的目的是通过以下技术方案来实现的:在第一方案中,提供一种基于脚本编排的电磁感知任务执行方法,包括以下内容:建立任务脚本模板库:根据不同电磁感知任务的类型定义不同的任务执行脚本,并为不同的任务执行脚本分配相应边缘计算节点的感知服务资源;电磁感知任务执行脚本的自动匹配:接入当前电磁感知任务,并从所述任务脚本模板库找到与所述当前电磁感知任务匹配的当前任务执行脚本;电磁感知任务执行:下发当前任务执行脚本至相应边缘计算节点的脚本执行引擎,由所述脚本执行引擎自动执行当前任务执行脚本。
6.在一个示例中,在建立任务脚本模板库之前包括感知服务资源接入的步骤,所述感知服务资源的接入包括:在所有边缘计算节点上部署分布式服务总线;按就近原则将监测设备的原子服务和边缘计算节点的计算、数据处理、统计分析服务注册到相应的边缘计算节点上的分布式总线上;分布式总线将各个边缘计算节点上的感知服务资源注册数据进行全局同步。
7.在一个示例中,所述注册的方式包括人工注册或自动注册。
8.在一个示例中,所述根据不同电磁感知任务的类型定义不同的任务执行脚本,包括:通过可视化的感知任务脚本编辑工具,按照电磁感知任务的工作流程进行可视化编辑,通过选择控制流程类型和服务功能操作进行业务流程编排,形成相对应的python执行脚本文件。
9.在一个示例中,所述控制流程类型包括顺序执行、条件执行和循环执行。
10.在一个示例中,所述脚本执行引擎采用c 和python混合编程方式,通过c 宿主程序中嵌入python执行引擎及相关的功能组件。
11.在一个示例中,所述脚本执行引擎自动执行当前任务执行脚本,包括:使用pyimport_importmodule导入脚本模块;使用pyobject_getattrstring获取任务执行脚本信息;使用py_vabuildvalue转换输入参数;使用pyobject_callobject调用任务执行脚本;使用pyarg_parse转换任务执行脚本执行的返回结果。
12.在一个示例中,基于脚本编排的电磁感知任务执行方法,还包括:对当前任务执行脚本的执行状态进行日志记录和上报。
13.在第二方案中,提供基于脚本编排的电磁感知任务执行系统,所述系统包括:任务脚本模板库,用于根据不同电磁感知任务的类型定义不同的任务执行脚本,并为不同的任务执行脚本分配相应边缘计算节点的感知服务资源;电磁感知任务执行脚本匹配模块,用于接入当前电磁感知任务,并从所述任务脚本模板库找到与所述当前电磁感知任务匹配的当前任务执行脚本;电磁感知任务执行模块,用于下发当前任务执行脚本至相应边缘计算节点的脚本执行引擎,由所述脚本执行引擎自动执行当前任务执行脚本。
14.在第三方案中,提供一种终端,包括存储器和处理器,存储器上存储有可在处理器上运行的计算机指令,所述计算机指令运行时执行任意一项所述基于脚本编排的电磁感知任务执行方法的步骤。
15.需要进一步说明的是,上述各选项对应的技术特征在不冲突的情况下可以相互组合或替换构成新的技术方案。
16.与现有技术相比,本发明有益效果是:(1)本发明根据不同电磁感知任务的类型定义不同的任务执行脚本,并为不同的任务执行脚本分配相应边缘计算节点的感知服务资源,实现灵活定义电磁感知任务的执行脚本,自动从任务脚本模板库找到与所述当前电磁感知任务匹配的当前任务执行脚本,实现自动化匹配;然后下发当前任务执行脚本至相应边缘计算节点的脚本执行引擎,由所述脚本执行引擎自动执行当前任务执行脚本,实现相应的业务功能。采用脚本编排的的方式,进行流程修改调整后只需保存更新对应的脚本文件即可,在脚本执行过程中,可通过脚本执行引擎控制任务的暂停、继续、终止等操作,使得任务流程编排则更加灵活方便。
17.(2)本发明在边缘计算节点上部署分布式服务总线,并按就近原则将监测设备的原子服务注册到相应的边缘计算节点上的分布式总线上,通过分布式服务总线的服务信息
全局同步及路由能力,使得整个系统具备“单点接入、全局访问”的资源访问能力。
18.(3)本发明分布式总线将各个边缘计算节点上的感知服务资源注册数据进行全局同步,不仅以原子服务的方式接入各类监测设备原子服务,同时还将在边缘计算节点上进行的数据处理、统计分析等软件功能模块进行原子服务化封装和注册接入,方便实现跨节点的计算调用和计算迁移。
19.(4)本发明的任务脚本的执行引擎,自动加载python脚本解析器实现脚本自动执行;自动实现python和c 之间的相互调用,实现多语言混合开发。
20.附图说明
21.图1为本发明实施例示出的基于脚本编排的电磁感知任务执行方法的流程示意图。
具体实施方式
22.下面结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
23.参照图1,在一示例性实施例中,提供一种基于脚本编排的电磁感知任务执行方法,包括以下内容:建立任务脚本模板库:根据不同电磁感知任务的类型定义不同的任务执行脚本,并为不同的任务执行脚本分配相应边缘计算节点的感知服务资源;电磁感知任务执行脚本的自动匹配:接入当前电磁感知任务,并从所述任务脚本模板库找到与所述当前电磁感知任务匹配的当前任务执行脚本;电磁感知任务执行:下发当前任务执行脚本至相应边缘计算节点的脚本执行引擎,由所述脚本执行引擎自动执行当前任务执行脚本。
24.具体地,根据不同电磁感知任务的类型定义不同的任务执行脚本,并为不同的任务执行脚本分配相应边缘计算节点的感知服务资源,实现灵活定义电磁感知任务的执行脚本,自动从任务脚本模板库找到与所述当前电磁感知任务匹配的当前任务执行脚本,实现自动化匹配;然后下发当前任务执行脚本至相应边缘计算节点的脚本执行引擎,由所述脚本执行引擎自动执行当前任务执行脚本,实现相应的业务功能。采用脚本编排的的方式,进行流程修改调整后只需保存更新对应的脚本文件即可,在脚本执行过程中,可通过脚本执行引擎控制任务的暂停、继续、终止等操作,使得任务流程编排则更加灵活方便。
25.进一步地,在建立任务脚本模板库之前包括感知服务资源接入的步骤,所述感知服务资源的接入包括:在所有边缘计算节点上部署分布式服务总线;按就近原则将监测设备的原子服务和边缘计算节点的计算、数据处理、统计分析服务注册到相应的边缘计算节点上的分布式总线上;分布式总线将各个边缘计算节点上的感知服务资源注册数据进行全局同步。具体地,在感知前端,通过增加专用计算设备或利用现有监测设备的控制计算机发布、注册前端
监测设备的原子服务。在边缘计算端,采用算力强的工控机作为边缘计算节点。按就近原则接入多个监测设备所注册的原子服务;同时各个边缘计算节点本身也可以作为服务资源的提供者,将各类算法模型、数据处理模块、统计分析模块封装为服务进行发布、注册,并利用分布式服务总线的数据同步能力,将各个边缘计算节点所注册的服务信息进行全局同步,从而形成一个可“单点接入、全局访问”的虚拟化服务资源池。边缘计算节点和监测设备的控制计算机(或新增的专用计算设备)为各类服务资源的运行提供硬件支撑平台,其中边缘计算节点作为感知任务的执行节点,可根据任务要求调用虚拟资源池的各类服务资源。本示例中在脚本编排前需进行业务功能服务化封装,将所有的监测设备控制、数据处理、统计分析等业务功能按最小颗粒度进行原子化服务封装,统一注册至分布式服务总线,利用分布式服务总线的数据同步机制进行所有服务注册信息的全局同步。其中,原子化服务封装是在《超短波监测管理服务接口规范》标准基础上进行扩展,将完成电磁感知任务的各个基础业务功能模块按照webservices接口标准进行原子化服务封装,主要的原子化服务类型包括:设备控制功能原子化服务:按对监测设备的各类控制功能进行原子化服务接口封装,接口标准遵循《超短波监测管理服务接口规范》。
26.数据处理功能原子化服务:在《超短波监测管理服务接口规范》标准基础上进行扩展,对边缘计算节点进行的各类监测数据处理功能进行原子化服务接口封装,如数据融合处理、信号识别处理、交会定位计算处理等。
27.统计分析功能原子化服务:在《超短波监测管理服务接口规范》标准基础上进行扩展,对边缘计算节点进行的各类监测数据统计分析功能进行原子化服务接口封装,如概率最大示向度统计、频段占用度统计、信道占用度统计等。
28.传统的服务总线产品部署环境要求高,一般是部署于云端或服务器集群,而本系统中的分布式服务总线为轻量级产品,可部署于云端、前端边缘计算节点,以及具有控制计算机的监测设备上,并且通过分布式服务总线的服务信息全局同步及路由能力,使得整个系统具备“单点接入、全局访问”的资源访问能力。
29.进一步地,原子化服务注册及信息全局同步包括:通过服务自动注册接口或服务信息管理界面人工录入两种方式进行各类原子化服务信息进行注册,服务注册信息主要包括服务所属监测设施id、服务所属设备id(或边缘计算节点id)、服务编号、服务版本、服务中文名称、服务英文名称、传输协议、报文格式、安全认证方式、服务类别、服务描述、服务调用地址、wsdl地址、soapaction等。其中,所述注册的方式包括人工注册或自动注册。
30.服务注册可在任意一个分布式节点(边缘计算节点)上进行,服务注册信息保存于分布式目录服务zookeeper中,借助zookeeper的分布式数据同步能力,实现各个分布式节点之间的服务注册信息全局同步。
31.进一步地,在原子化服务封装和注册的基础上,可根据所注册服务的接口描述信息(wsdl),自动生成原子化服务调用的python功能组件,保存至python功能组件库中。
32.各省市现有的无线电监测一体化平台主要基于监测设备原子化服务进行统一接入与调度管理,本系统不仅以原子服务的方式接入各类监测设备原子服务,同时还将在边缘计算节点上进行的数据处理、统计分析等软件功能模块进行原子服务化封装和注册接
入,方便实现跨节点的计算调用和计算迁移。
33.进一步地,所述根据不同电磁感知任务的类型定义不同的任务执行脚本,包括:通过可视化的感知任务脚本编辑工具,按照电磁感知任务的工作流程进行可视化编辑,通过选择控制流程类型和服务功能操作进行业务流程编排,形成相对应的python执行脚本文件。具体地,基于具体的无线电监测管理业务需求,通过可视化的电磁感知任务脚本编辑工具,灵活定义任务执行脚本。
34.首先选择服务资源,任务脚本可视化编辑工具通过访问后台服务注册信息库,获得分布式边缘计算节点和监测设备资源信息,以及边缘计算节点和监测设备所提供的原子服务信息,在编辑工具界面上以目录树的方式进行显示。用户可任意选择各个边缘计算节点或监测设备所提供的服务资源,并通过拖拽方式将服务资源放置于电磁感知任务流程编辑区作为功能节点。
35.然后进行任务流程编排,在电磁感知任务流程编辑区对所选择功能节点的执行顺序和执行条件进行编排,生成电磁感知任务执行流程链(由一系统连接功能节点的边组成),可支持顺序执行、条件执行、循环执行三种基本的任务流程链。
36.其次,生成任务执行脚本,根据任务脚本映射生成规则对电磁感知任务流程编辑区功能节点及其任务执行流程链等界面元素进行映射转换,生成对应的python任务脚本文件。将生成的电磁感知任务的任务执行脚本文件保存至任务脚本模板库,保存信息主要包括任务模板名称、任务类型、任务脚本文件内容、模板创建时间等。
37.进一步地,接收上级或协同节点下发的电磁感知任务信息,根据任务类型查找任务脚本模板库,获取对应任务类型的任务执行脚本文件,下发任务执行脚本文件至相应节点的脚本执行引擎,由脚本执行引擎自动执行任务执行脚本,按相应的业务逻辑实现相应的业务功能。其中,所述脚本执行引擎采用c 和python混合编程方式,通过c 宿主程序中嵌入python执行引擎及相关的功能组件。由python实现需要动态变化的感知任务分解、资源调度等功能。引擎统一了脚本入口函数scriptmain(),任何工作流启动都从该函数开始执行。其中,通过c 开发可执行python脚本的引擎框架,并用python脚本实现感知任务的具体执行逻辑和部分数据处理功能,从而实现感知任务工作流程的灵活定制。python脚本工作流引擎具体实现方式为:在c 宿主程序中内嵌python虚拟机,并集成python二次开发包。c 宿主程序将python虚拟机初始化后,就可以调用python脚本了。多语言开发涉及两部分:对性能要求高、复杂的数据处理由c 完成并导出接口供python调用;对灵活性、性能要求不高的部分用python实现,由c 宿主程序调用内嵌python虚拟机执行python任务脚本完成整个工作流运行。
38.进一步地,所述脚本执行引擎自动执行当前任务执行脚本的主要步骤,包括:使用pyimport_importmodule导入脚本模块;使用pyobject_getattrstring获取模块特定方法信息,包括相应任务执行脚本信息;使用py_vabuildvalue转换输入参数;使用pyobject_callobject调用特定方法,执行特定任务执行脚本;使用pyarg_parse转换方法执行脚本的返回结果。
39.进一步地,基于脚本编排的电磁感知任务执行方法,还包括:
对当前任务执行脚本的执行状态进行日志记录和上报,主要上报内容任务当前所执行功能组件所对应的序列号和执行状态,在任务执行脚本的执行过程中,可通过脚本执行引擎控制任务的暂停、继续、终止等。
40.在另一示例性实施例中,提供基于脚本编排的电磁感知任务执行系统,所述系统包括:任务脚本模板库,用于根据不同电磁感知任务的类型定义不同的任务执行脚本,并为不同的任务执行脚本分配相应边缘计算节点的感知服务资源;电磁感知任务执行脚本匹配模块,用于接入当前电磁感知任务,并从所述任务脚本模板库找到与所述当前电磁感知任务匹配的当前任务执行脚本;电磁感知任务执行模块,用于下发当前任务执行脚本至相应边缘计算节点的脚本执行引擎,由所述脚本执行引擎自动执行当前任务执行脚本。
41.在另一示例性实施例中,提供一种终端,包括存储器和处理器,存储器上存储有可在处理器上运行的计算机指令,所述计算机指令运行时执行任意一项所述基于脚本编排的电磁感知任务执行方法的步骤。
42.处理器可以是单核或者多核中央处理单元或者特定的集成电路,或者配置成实施本发明的一个或者多个集成电路。
43.本说明书中描述的主题及功能操作的实施例可以在以下中实现:有形体现的计算机软件或固件、包括本说明书中公开的结构及其结构性等同物的计算机硬件、或者它们中的一个或多个的组合。本说明书中描述的主题的实施例可以实现为一个或多个计算机程序,即编码在有形非暂时性程序载体上以被数据处理装置执行或控制数据处理装置的操作的计算机程序指令中的一个或多个模块。可替代地或附加地,程序指令可以被编码在人工生成的传播信号上,例如机器生成的电、光或电磁信号,该信号被生成以将信息编码并传输到合适的接收机装置以由数据处理装置执行。
44.本说明书中描述的处理及逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程计算机执行,以通过根据输入数据进行操作并生成输出来执行相应的功能。所述处理及逻辑流程还可以由专用逻辑电路—例如fpga(现场可编程门阵列)或asic(专用集成电路)来执行,并且装置也可以实现为专用逻辑电路。
45.适合用于执行计算机程序的处理器包括,例如通用和/或专用微处理器,或任何其他类型的中央处理单元。通常,中央处理单元将从只读存储器和/或随机存取存储器接收指令和数据。计算机的基本组件包括用于实施或执行指令的中央处理单元以及用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括用于存储数据的一个或多个大容量存储设备,例如磁盘、磁光盘或光盘等,或者计算机将可操作地与此大容量存储设备耦接以从其接收数据或向其传送数据,抑或两种情况兼而有之。然而,计算机不是必须具有这样的设备。此外,计算机可以嵌入在另一设备中,例如移动电话、个人数字助理(pda)、移动音频或视频播放器、游戏操纵台、全球定位系统(gps)接收机、或例如通用串行总线(usb)闪存驱动器的便携式存储设备,仅举几例。
46.虽然本说明书包含许多具体实施细节,但是这些不应被解释为限制任何发明的范围或所要求保护的范围,而是主要用于描述特定发明的具体实施例的特征。本说明书内在多个实施例中描述的某些特征也可以在单个实施例中被组合实施。另一方面,在单个实施
例中描述的各种特征也可以在多个实施例中分开实施或以任何合适的子组合来实施。此外,虽然特征可以如上所述在某些组合中起作用并且甚至最初如此要求保护,但是来自所要求保护的组合中的一个或多个特征在一些情况下可以从该组合中去除,并且所要求保护的组合可以指向子组合或子组合的变型。
47.类似地,虽然在附图中以特定顺序描绘了操作,但是这不应被理解为要求这些操作以所示的特定顺序执行或顺次执行、或者要求所有例示的操作被执行,以实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,上述实施例中的各种系统模块和组件的分离不应被理解为在所有实施例中均需要这样的分离,并且应当理解,所描述的程序组件和系统通常可以一起集成在单个软件产品中,或者封装成多个软件产品。
48.以上具体实施方式是对本发明的详细说明,不能认定本发明的具体实施方式只局限于这些说明,对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演和替代,都应当视为属于本发明的保护范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献