配电人工智能引擎跨区操作服务调用方法、设备及系统
技术领域
本发明属于配电调度自动化技术领域,具体涉及一种基于代理的配电人工智能引擎跨区操作服务调用方法、设备及装置。
背景技术
根据电力二次系统安防规定,在二次系统建设时遵循“安全分区、网络专用、横向隔离、纵向认证”的总体原则。根据电力二次系统的特点,划分为生产控制大区和管理信息大区。生产控制大区分为控制区(安全区Ⅰ)和非控制区(安全区Ⅱ)。信息管理大区分为生产管理区(安全区Ⅲ)和管理信息区(安全区Ⅳ)。不同安全区确定不同安全防护要求,其中安全区Ⅰ安全等级最高,安全区Ⅱ次之,其余依次类推。管理信息大区内部在不影响生产控制大区安全的前提下,可以根据各企业不同安全要求划分安全区,应当避免形成不同安全区的纵向交叉联接。
在电力调度中Ⅰ区Ⅱ区与Ⅲ区之间数据传输需安装物理隔离装置,横向隔离装置相当于是安全网闸,数据只能单向传输,不能双向,从而实现安全隔离。根据系统的业务不同、安全等级不同,目前在实际建设中人工智能引擎部署在安全区III,配电自动化系统部署在安全区I,人工智能引擎发出指令想要在配电自动化系统中对电网进行实际操作其信息必须通过物理隔离装置进行跨区传输。在面向服务的系统架构中这种正反向独立通道的信息交换方式使得现有的服务功能无法使用,数据的交换效率低下,对应用的开发及维护增加了复杂度。
发明内容
本发明的目的在于克服现有技术中服务无法跨区调用的不足,提供了一种基于代理的配电人工智能引擎跨区操作服务调用方法,解决了现有技术中基于文件进行数据交换效率低、无法延用现有的配电操作相关的服务接口的技术问题。
为解决上述技术问题,本发明提供了一种配电人工智能引擎跨区操作服务调用方法,包括以下过程:
监听人工智能引擎的服务请求;
将服务请求转换为E格式并添加会话ID构成E格式请求信息,将E格式请求信息通过反向隔离装置发送至安全区I;
接收安全区I通过正向隔离装置发送的反馈结果;
将反馈结果进行解码并应答给人工智能引擎。
相应的,本发明还提供了一种信息管理区代理设备,包括信息管理区代理模块,所述信息管理区代理模块部署于安全区III内,信息管理区代理模块通过服务接受代理接口连接人工智能引擎,
信息管理区代理模块,用于通过服务接受代理接口监听人工智能引擎的服务请求,将服务请求转换为E格式并添加会话ID构成E格式请求信息,将E格式请求信息通过反向隔离装置发送至安全区I;以及接收并解析反馈结果;并应答给人工智能引擎。
相应的,本发明还提供了一种配电人工智能引擎跨区操作服务调用方法,包括以下过程:
接收安全区III发送的E格式请求信息;
解析E格式请求信息获得服务请求内容和会话ID;
根据服务请求内容以配电操作服务的格式向配电操作服务发起请求;
接收配电操作服务返回的反馈结果;
将反馈结果添加会话ID,编码后通过正向隔离装置发送给安全区III。
相应的,本发明还提供了一种生产控制区代理设备,包括生产控制区代理模块,所述生产控制区代理模块部署于安全区I内,生产控制区代理模块通过服务调用代理接口连接配电操作服务,
生产控制区代理模块,用于接收并解析E格式请求信息获得服务请求内容和会话ID,根据服务请求内容以配电操作服务的格式向配电操作服务发起请求;接收配电操作服务返回的反馈结果;将反馈结果添加会话ID,编码后通过正向隔离装置发送给安全区III。
相应的,本发明还提供了一种配电人工智能引擎跨区操作服务调用方法,包括以下过程:
在安全区III内,监听人工智能引擎的服务请求,将服务请求转换为E格式并添加会话ID构成E格式请求信息,将E格式请求信息通过反向隔离装置发送至安全区I;
在安全区I内,接收并解析E格式请求信息获得服务请求内容和会话ID,根据服务请求内容以配电操作服务的格式向配电操作服务发起请求;接收配电操作服务返回的反馈结果;将反馈结果添加会话ID,编码后通过正向隔离装置发送给安全区III;
在安全区III内,接收并解析反馈结果;并应答给人工智能引擎。
相应的,本发明还提供了一种配电人工智能引擎跨区操作服务调用系统,包括安全区III内的信息管理区代理模块和安全区I内的生产控制区代理模块,信息管理区代理模块通过服务接受代理接口连接人工智能引擎,生产控制区代理模块通过服务调用代理接口连接配电操作服务,信息管理区代理模块通过反向隔离装置与生产控制区代理模块通信,生产控制区代理模块通过正向隔离装置与信息管理区代理模块通信;
信息管理区代理模块,用于通过服务接受代理接口监听人工智能引擎的服务请求,将服务请求转换为E格式并添加会话ID构成E格式请求信息,将E格式请求信息通过反向隔离装置发送至安全区I;以及接收并解析反馈结果;并应答给人工智能引擎;
生产控制区代理模块,用于接收并解析E格式请求信息获得服务请求内容和会话ID,根据服务请求内容以配电操作服务的格式向配电操作服务发起请求;接收配电操作服务返回的反馈结果;将反馈结果添加会话ID,编码后通过正向隔离装置发送给安全区III。
与现有技术相比,本发明所达到的有益效果是:本发明在安全区I和安全区III构建配电操作服务代理的方式,实现配电调度操作指令的发送及指令执行结果的反馈能够以服务化的方式贯通安全区I和安全区III,从应用研发的角度使之能够使用服务调用的方式实现数据交换和功能调用。
附图说明
图1为本发明的总体框架示意;
图2为本发明的配电操作代理服务模块图;
图3为本发明的数据流程示意图;
图4为本发明的服务定位配置及会话映射管理示意图。
具体实施方式
下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
目前电力自动化系统分为4个安全区,安全区I、II和安全区III、IV直接通过正反向安全隔离装置连接,一般通过文件进行数据交互,常用的面向服务的通信机制无法在安全隔离装置间使用。
本发明的创新思路是:如图1所示,在安全区I和安全区III构建配电操作服务代理的方式,实现配电调度操作指令的发送及指令执行结果的反馈能够以服务化的方式贯通安全区I和安全区III,从应用研发的角度使之能够使用服务调用的方式实现数据交换和功能调用。
本发明的配电操作代理服务模块图如图2所示:配电操作代理服务模块包含在安全区Ⅰ构建的生产控制区代理模块和在安全区Ⅲ内构建的信息管理区代理模块,两个代理模块通过正向隔离装置和反向隔离装置进行通信,配电操作代理服务模块提供数据转换、编码、传输、接收功能,同时提供服务接口。
在安全区Ⅰ构建生产控制区代理模块,生产控制区代理模块功能包括:服务调用代理接口、接收服务请求、基于TCP的数据跨区传输、解析E语言、转换为服务应答,调用配电操作服务。
在安全区Ⅲ内构建信息管理区代理模块,信息管理区代理模块功能包括:服务接收代理接口,转换为E语言文件,反向隔离装置传输到安全Ⅰ区,接收正向隔离装置发送的数据报文。
安全区I和安全区III之间的数据流程参见图3所示:
正向隔离装置数据传输要求TCP单向传输,在安全区I内的生产控制区代理模块,通过服务调用代理接口接收配电操作服务信息,信息包括操作编号、类型等。将服务请求序列化为二进制tcp数据流发送至安全区III,安全区III内构建信息管理区代理模块,用来接收数据流。
反向隔离装置数据传输要求带签名的E语言文件进行单向数据传输,安全区III内的信息管理区代理模块,通过服务接收代理接口连接人工智能引擎,接收人工智能引擎发送的服务请求进行编码为E语言文件,由反向隔离装置传输到安全区I,实现服务请求的反向传输。
实施例1
本发明的一种配电人工智能引擎跨区操作服务调用方法,参见图4所示,包括以下步骤:
步骤一、安全区III内信息管理区代理模块中的服务定位功能,服务接收代理接口在进行监听前需配置服务定位,服务定位使得信息管理区代理模块能够快速找到生产控制区的配电操作服务,配置内容包括服务名、本地端口、服务地址、服务端口,配置信息存储在服务映射表(表1)中,通过该表实现将信息管理区的服务接口与生产控制区代理模块配电操作服务进行映射。
表1.服务映射表
步骤二,在安全区III内,信息管理区代理模块将人工智能引擎的服务请求转换为E格式并添加会话ID,将E格式请求信息通过反向隔离装置发送至安全区I。
信息管理区代理模块中服务接收代理接口监听端口等待人工智能引擎的服务请求,服务以REST方式定义,数据采用JSON格式描述。服务接收代理接口监听到服务请求后,将其转换为E格式并添加会话ID(会话ID用于唯一标识一个配电操作请求)构成E格式请求信息。将E格式请求信息通过反向隔离装置发送给安全区I内的生产控制区代理模块。
会话标识(会话ID)采用GUID标准,由信息管理区代理模块自动生成,确保该会话ID全局唯一性,用来标识一次操作会话,其格式如下:
85d69c3c-539c-4444-bdcc-60f479822e9b
E格式转换方法为:服务接收代理接口接受到的服务请求根据其参数定义规则,如表3“接口参数定义表”,参数描述了具体的信息含义,解析后将其转换为如表4“参数E语言格式描述示意表”中的格式,E格式中的“HEAD”块中的会话ID自动生成用于标识本次会话,服务名称、地址、端口从预先配置的“服务映射表”中读取,服务映射表如表1。
步骤三,在安全区I内,生产控制区代理模块解析E格式请求信息并保存会话ID,构建服务请求对象向配电操作服务发起请求。
生产控制区代理模块解析E格式请求信息并在内存中保存会话ID,会话ID保存在会话管理表(表2)中用于管理会话和服务的映射关系,构建服务请求对象向配电操作服务发起请求,服务调用代理接口接收到反馈消息。
表2.会话管理表
E格式的解析,以挂牌操作为例,读取其中的“PMSID”、“牌类型”、“操作类型”,以配电操作服务的格式进行请求,一般为C语言服务,将“PMSID”、“牌类型”、“操作类型”作为参数调用挂牌操作服务,完成挂牌操作,通过其返回值判断状态形成反馈消息,反馈信息格式见表5。
步骤四,生产控制区代理模块中服务调用代理接口接收到反馈消息后,将反馈结果添加会话ID(以便安全区III知道是哪一个服务请求的反馈结果),编码后通过正向隔离装置发送给安全区III,信息管理区代理模块进行接收解码;反馈消息通过服务接收代理接口应答给人工智能引擎。
步骤五、跨隔离装置状态检测,状态检测功能在持续5分钟无数据请求时自动执行,其目的是检测正、反向隔离装置传输功能正常,来判断信息管理区代理模块、生产控制区代理模块运行正常。
正向检测是检测生产控制区向信息管理区的数据通路是否正常,由生产控制区代理模块中的检测程序发起echo报文,信息管理区代理模块中的检测程序接收到立即发送应答报文回生产控制区代理模块。超过10秒未收到应答报文则进行状态异常报警。
反向检测是检测信息管理区向生产控制区的数据通路是否正常,由信息管理区代理模块中的检测程序发起echo报文,生产控制区代理模块中的检测程序接收到立即发送应答报文回信息管理区代理模块。超过10秒未收到应答报文则进行状态异常报警。
通过以上步骤可以完成跨区操作服务调用,人工智能引擎根据现场情况及电网状态形成调度操作指令,如挂牌操作、置数操作等,直接调用管理信息区代理模块的服务接口就让生产控制区的配电自动化系统完成相应的操作。
实施例2
以挂牌操作为例,服务接口参数包含,事务ID,设备对象标识、操作类型、操作时间和标志牌类型。
接口定义表:
JSONObject tokenOp(List<String>pmsids,List<int>tokonType,List<String>opType)
输入参数如接口参数定义表:
表3.接口参数定义表
本发明的一种配电人工智能引擎跨区操作服务调用方法包括:
1)管理信息区代理模块调用转换模块将参数转换为可通过反向隔离装置传输的E语言格式,并附加会话ID和服务定位信息(包括服务名称、服务地址、服务端口)如:
表4.参数E语言格式描述示意表
2)生产控制区代理模块接收到请求转换为具体操作提交给配电自动化系统执行,并接收操作执行结果。
如下,反馈执行时间和操作结果:
表5.反馈信息示意表
3)生产控制区代理模块通过编码传输将结果信息通过正向隔离装置发送给管理信息区代理模块,管理信息区代理模块将解码后的结果通过服务接口返回给人工智能引擎。
实施例3
本发明实施例的配电人工智能引擎跨区操作服务调用方法,包括以下过程:
监听人工智能引擎的服务请求;
将服务请求转换为E格式并添加会话ID构成E格式请求信息,将E格式请求信息通过反向隔离装置发送至安全区I;
接收安全区I通过正向隔离装置发送的反馈结果;
将反馈结果进行解码并应答给人工智能引擎。
实施例4
与实施例3一种配电人工智能引擎跨区操作服务调用方法相应的,本发明实施例的一种信息管理区代理设备,包括信息管理区代理模块,所述信息管理区代理模块部署于安全区III内,信息管理区代理模块通过服务接受代理接口连接人工智能引擎,
信息管理区代理模块,用于通过服务接受代理接口监听人工智能引擎的服务请求,将服务请求转换为E格式并添加会话ID构成E格式请求信息,将E格式请求信息通过反向隔离装置发送至安全区I;以及接收并解析反馈结果;并应答给人工智能引擎。
实施例5
本发明实施例的一种配电人工智能引擎跨区操作服务调用方法,包括以下过程:
接收安全区III发送的E格式请求信息;
解析E格式请求信息获得服务请求内容和会话ID;
根据服务请求内容以配电操作服务的格式向配电操作服务发起请求;
接收配电操作服务返回的反馈结果;
将反馈结果添加会话ID,编码后通过正向隔离装置发送给安全区III。
实施例6
与实施例5一种配电人工智能引擎跨区操作服务调用方法相应的,本发明的一种生产控制区代理设备,包括生产控制区代理模块,所述生产控制区代理模块部署于安全区I内,生产控制区代理模块通过服务调用代理接口连接配电操作服务,
生产控制区代理模块,用于接收并解析E格式请求信息获得服务请求内容和会话ID,根据服务请求内容以配电操作服务的格式向配电操作服务发起请求;接收配电操作服务返回的反馈结果;将反馈结果添加会话ID,编码后通过正向隔离装置发送给安全区III。
实施例7
与实施例1方法相应的,本发明还提供了一种配电人工智能引擎跨区操作服务调用系统,包括安全区III内的信息管理区代理模块和安全区I内的生产控制区代理模块,信息管理区代理模块通过服务接受代理接口连接人工智能引擎,生产控制区代理模块通过服务调用代理接口连接配电操作服务,信息管理区代理模块通过反向隔离装置与生产控制区代理模块通信,生产控制区代理模块通过正向隔离装置与信息管理区代理模块通信;
信息管理区代理模块,用于通过服务接受代理接口监听人工智能引擎的服务请求,将服务请求转换为E格式并添加会话ID构成E格式请求信息,将E格式请求信息通过反向隔离装置发送至安全区I;以及接收并解析反馈结果;并应答给人工智能引擎;
生产控制区代理模块,用于接收并解析E格式请求信息获得服务请求内容和会话ID,根据服务请求内容以配电操作服务的格式向配电操作服务发起请求;接收配电操作服务返回的反馈结果;将反馈结果添加会话ID,编码后通过正向隔离装置发送给安全区III。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变型,这些改进和变型也应视为本发明的保护范围。