一种基于XML的保护设备通用人机交互系统及方法技术方案

技术编号:23342508 阅读:27 留言:0更新日期:2020-02-15 03:36
本申请公开了一种基于XML的保护设备通用人机交互系统和方法,系统包括:XML配置文件、模型解析器、逻辑解析器、事件驱动器、数据服务器和视图堆栈单元;通过该系统及方法,本发明专利技术支持通过修改XML配置文件灵活配置菜单结构、菜单名称和菜单项参数传递,而不需要修改程序。本发明专利技术基于XML技术对电力二次保护设备界面常用控件进行抽象描述,实现了菜单结构灵活配置,菜单结构与程序处理解耦,相互独立,多种型号设备可以使用同一版软件,修改一个问题,使用同一版软件设备只需要更新程序即可,不需要其他维护措施,从而降低了程序维护难度、减少维护数量。

A universal human-computer interaction system and method for protection equipment based on XML

【技术实现步骤摘要】
一种基于XML的保护设备通用人机交互系统及方法
本专利技术属于电力二次设备设计领域,具体涉及一种基于XML的保护设备通用人机交互系统及方法。
技术介绍
在电力二次设备设计开发中,都存在人机交互过程。近年来随着智能电网的发展,不同电压等级的测量、保护设备要求逐渐标准化,同时对测量、保护装置展示和设置的信息要求越来越高。稳定、易于维护的人机交互系统对于提高二次设备的质量和整个电网的稳定运行有着较大的影响。人机交互(HMI)处理流程在设备中通常会占用50%左右的代码开发量。传统的人机交互设计都是针对具体需求定制功能,采用的是将窗口数据结构和窗口调用关系定义在人机交互系统中,人机交互系统功能和界面程序耦合度很高,存在软件不具备通用性,每设计一款产品需要定制开发一套界面程序的问题。或者采用了配置文件,但是缺乏系统性,存在可读性和扩展性差的问题。这种产品设计方法,随着产品种类增多,界面维护工作越发困难。最终导致生成成本增加,生产效率低下。设计一种通用的、可灵活配置的人机交互系统,在电力二次设备开发中显得越来越重要。国内虽有基于配置的界面研究,但多采用文本方式,没有统一格式规范。XML能方便有效地表示结构化数据,语法简练,易于阅读,它具有的层次化数据结构非常适用与描述HMI中各个组件的结构和包含关系。基于XML配置的界面显示在PC机上已经有了比较长足的发展,本专利技术结合XML特点,通过对保护和测控装置数据归类,抽象出若干显示控件模型。通过XML描述模型结构、菜单和显示窗口逻辑关系。实现HMI平台化,对于不同类型的保护装置,通过修改xml配置即可满足装置菜单和显示需求,极大程度较少代码开发调试工作量。
技术实现思路
为解决现有技术中的不足,本专利技术提出一种基于XML的保护设备通用人机交互系统及方法,其中,一种基于XML的保护设备通用人机交互系统,包括:XML配置文件、模型解析器、逻辑解析器、事件驱动器、数据服务器和视图堆栈单元;所述XML配置文件分别与模型解析器与逻辑解析器相连,所述逻辑解析器分别与事件驱动器、数据服务器及视图堆栈单元相连;所述XML配置文件,包括:定义XML文件节点、XML文件节点实例化参数、XML文件节点层次关系和视图切换的逻辑关系;所述XML文件节点,将一个界面控件定义为一个节点,一个节点包含多个属性;所述属性,包括公共属性和私有属性;所述公共属性,包括:属性编号和属性名称,其中,每个属性编号为人机交互系统中唯一,通过属性编号标志一个节点;所述私有属性,根据不同保护设备的实际数据属性进行定义。所述模型解析器,用来遍历XML配置文件所有XML文件节点,根据XML文件节点实例化参数,以XML文件节点为对象进行实例化,将实例化成功的模型实例保存到列表中;并且根据XML文件节点层次关系生成对应控件层次包含关系;所述逻辑解析器,加载XML配置文件中的视图切换的逻辑关系,接收事件驱动器的信号和视图堆栈单元中当前视图状态,根据对应控件层次包含关系,从当实例化后模型中,生成请求信号,将该生成请求信号发送给数据服务器;所述事件驱动器,接收显示屏上按键操作信号,将该按键操作信号转换成逻辑解析器能够识别的信号,并将该信号发送给逻辑解析器。所述数据服务器,接收逻辑解析器发送的请求信号,获取该请求信号对应函数执行结果或者保存该请求信号对应数据,并且将数据执行结果给逻辑解析器;所述数据服务器,建立请求信号和对应执行结果的函数映射关系。所述视图堆栈单元,根据数据服务器返回给逻辑解析器的返回数据,得到视图切换和调用关系,根据该视图切换和调用关系,完成视图压栈和出栈操作,并记录视图层次信息。所述压栈出栈操作,具体定义为:当逻辑解析器收到执行结果为退出信号时,退出当前视图并出栈,当逻辑解析器收到执行结果为视图切换信号时,新视图进行压栈操作;所述XML文件节点实例化参数,包括:节点名称、属性编号,节点位置、节点大小、当前视图、属性名称;所述XML文件节点层次关系,包括:window节点;所述window节点包括:title子节点、view子节点及status子节点;所述window节点及其子节点定义整个视图的显示界面;所述view子节点定义主显示区;所述title子节点定义标题栏;所述status子节点定义显示状态数据;每一个window节点必须定义view子节点,其它子节点为可选配置;所述模型解析器实例化过程,具体为:模型解析器定义XML文件节点实例化参数对应的结构体,实例化过程就是读取XML文件节点名称和所有属性值,然后赋值给结构体。所述XML文件节点,具有唯一指定的节点名称,不能重名。一种基于XML的保护设备通用人机交互方法,步骤如下:步骤1:基于XML的保护设备通用人机交互系统初始化:在模型解析器中,遍历XML配置文件所有XML文件节点,根据XML文件节点实例化参数,以XML文件节点为对象进行实例化,将实例化成功的模型实例保存到列表中;并且根据XML文件节点层次关系生成对应控件层次包含关系;步骤2:当按键被触发后,事件驱动器接收按键操作信号,将该按键操作信号转换成逻辑解析器能够识别的信号,并将该信号发送给逻辑解析器;步骤3:逻辑解析器,加载XML配置文件中的视图切换的逻辑关系,接收事件驱动器的信号和视图堆栈单元中当前视图状态,根据对应控件层次包含关系,从实例化后模型中,生成请求信号,并且该将该请求信号发送给数据服务器;步骤4:数据服务器,接收逻辑解析器发送的请求信号,获取该请求信号对应函数执行结果或者保存该请求信号对应数据,并且将返回数据结果给逻辑解析器;步骤5:逻辑解析器收到数据服务器返回数据,根据返回数据,找到数据显示视图,并显示在显示屏上,同时逻辑解析通知视图堆栈单元;步骤6:视图堆栈单元,根据数据服务器返回给逻辑解析器的返回数据,得到视图切换和调用关系,根据该视图切换和调用关系,完成视图压栈和出栈操作并记录视图层次信息;步骤7:若按键为返回键时,事件驱动器通知视图堆栈单元,删除最上层视图,并显示次顶层视图。本申请所达到的有益效果:本专利技术基于XML对电力二次保护设备界面常用控件进行抽象描述,使用XML描述XML配置文件节点的层次关系、视图跳转关系,支持节点名称定义;实现了菜单结构灵活配置,菜单结构与程序处理解耦,相互独立。多种型号设备可以使用同一版程序,降低程序维护难度、减少维护数量。修改一个问题,使用同一版软件设备只需要更新程序即可,不需要其他维护措施。附图说明图1为本专利技术实施例的一种基于XML的保护设备通用人机交互系统框图;图2为本专利技术实施例的button文件节点定义示意图;图3为本专利技术实施例的window层次关系;图4为本专利技术实施例的对话框示例;图5为本专利技术实施例的视图切换逻辑;图6为本专利技术实施例的树状菜单;<本文档来自技高网
...

【技术保护点】
1.一种基于XML的保护设备通用人机交互系统,包括:XML配置文件、模型解析器、逻辑解析器、事件驱动器、数据服务器和视图堆栈单元;其特征在于:/n所述XML配置文件分别与模型解析器与逻辑解析器相连,所述逻辑解析器分别与事件驱动器、数据服务器及视图堆栈单元相连;/n所述XML配置文件,包括:定义XML文件节点、XML文件节点实例化参数、XML文件节点层次关系和视图切换的逻辑关系;/n所述模型解析器,用来遍历XML配置文件所有XML文件节点,根据XML文件节点实例化参数,以XML文件节点为对象进行实例化,将实例化成功的模型实例保存到列表中;并且根据XML文件节点层次关系生成对应控件层次包含关系;/n所述事件驱动器,接收显示屏上按键操作信号,将该按键操作信号转换成逻辑解析器能够识别的信号,并将该信号发送给逻辑解析器;/n所述逻辑解析器,加载XML配置文件中的视图切换的逻辑关系,接收事件驱动器的信号和视图堆栈单元中当前视图状态,根据对应控件层次包含关系,从实例化后模型中,生成数据请求信号,将该请求信号发送给数据服务器;逻辑解析器收到数据服务器返回数据,根据返回数据,找到数据显示视图,并显示在显示屏上,同时逻辑解析通知视图堆栈单元;/n所述数据服务器,接收逻辑解析器发送的请求信号,获取该请求信号对应执行结果或者保存该请求信号对应数据,并且将返回数据给逻辑解析器;/n所述视图堆栈单元,根据数据服务器返回给逻辑解析器的返回数据,得到视图切换和调用关系,根据该视图切换和调用关系,完成视图压栈和出栈操作,并记录视图层次信息。/n...

【技术特征摘要】
1.一种基于XML的保护设备通用人机交互系统,包括:XML配置文件、模型解析器、逻辑解析器、事件驱动器、数据服务器和视图堆栈单元;其特征在于:
所述XML配置文件分别与模型解析器与逻辑解析器相连,所述逻辑解析器分别与事件驱动器、数据服务器及视图堆栈单元相连;
所述XML配置文件,包括:定义XML文件节点、XML文件节点实例化参数、XML文件节点层次关系和视图切换的逻辑关系;
所述模型解析器,用来遍历XML配置文件所有XML文件节点,根据XML文件节点实例化参数,以XML文件节点为对象进行实例化,将实例化成功的模型实例保存到列表中;并且根据XML文件节点层次关系生成对应控件层次包含关系;
所述事件驱动器,接收显示屏上按键操作信号,将该按键操作信号转换成逻辑解析器能够识别的信号,并将该信号发送给逻辑解析器;
所述逻辑解析器,加载XML配置文件中的视图切换的逻辑关系,接收事件驱动器的信号和视图堆栈单元中当前视图状态,根据对应控件层次包含关系,从实例化后模型中,生成数据请求信号,将该请求信号发送给数据服务器;逻辑解析器收到数据服务器返回数据,根据返回数据,找到数据显示视图,并显示在显示屏上,同时逻辑解析通知视图堆栈单元;
所述数据服务器,接收逻辑解析器发送的请求信号,获取该请求信号对应执行结果或者保存该请求信号对应数据,并且将返回数据给逻辑解析器;
所述视图堆栈单元,根据数据服务器返回给逻辑解析器的返回数据,得到视图切换和调用关系,根据该视图切换和调用关系,完成视图压栈和出栈操作,并记录视图层次信息。


2.根据权利要求1所述的基于XML的保护设备通用人机交互系统,其特征在于:
所述XML文件节点,将一个界面控件定义为一个节点,一个节点包含多个属性。


3.根据权利要求2所述的基于XML的保护设备通用人机交互系统,其特征在于:
所述属性,包括公共属性和私有属性;
所述公共属性,包括:属性编号和属性名称,其中,每个属性编号为人机交互系统中唯一,通过属性编号标志一个节点;
所述私有属性,根据不同保护设备的实际数据属性进行定义。


4.根据权利要求1或权利要求2所述的基于XML的保护设备通用人机交互系统,其特征在于:
所述数据服务器,建立请求信号和对应执行结果的函数映射关系。


5.根据权利要求2所述的基于XML的保护设备通用人机交互系统,其特征在于:
所述压栈出栈操作,具体定义为:当逻辑解析器收到执行结果为退出信号时,退出当前视图并出栈,当逻辑解析器收到执行结果为视图切换信号时,新视图进行压栈操作。


6.根...

【专利技术属性】
技术研发人员:姜建钊谭燕房同忠蒋森维王夷夷
申请(专利权)人:北京四方继保自动化股份有限公司北京四方继保工程技术有限公司
类型:发明
国别省市:北京;11

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

1