CN111208927B - 一种适用于电力系统二次设备的人机接口及人机交互方法 - Google Patents
一种适用于电力系统二次设备的人机接口及人机交互方法 Download PDFInfo
- Publication number
- CN111208927B CN111208927B CN201911394905.0A CN201911394905A CN111208927B CN 111208927 B CN111208927 B CN 111208927B CN 201911394905 A CN201911394905 A CN 201911394905A CN 111208927 B CN111208927 B CN 111208927B
- Authority
- CN
- China
- Prior art keywords
- menu
- node
- interface
- key
- current
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/0482—Interaction with lists of selectable items, e.g. menus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04847—Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
- G06F3/04886—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0489—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using dedicated keyboard keys or combinations thereof
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明公开一种适用于电力系统二次设备的人机接口以及人机交互方法,方法包括:接收按键操作信号;根据按键操作信号对应的按键功能类型,按照预先配置的按键响应规则,基于预先配置的二叉树结构的菜单树,确定按键响应结束时应选择的菜单树节点位置;根据菜单树节点位置,将预先配置的节点对应的菜单界面信息进行输出。本发明按照二叉树的方法组织菜单结构,在需要修改菜单结构的时候,仅需修改二叉树节点即可,有利于装置开发者针对用户需求快速开发装置菜单界面。
Description
技术领域
本发明涉及控制器人机接口技术领域,特别是一种适用于电力系统二次设备的人机接口及人机交互方法。
背景技术
随着微控制器系统性能的提升,微控制器在电力系统二次设备领域的应用越来越多,但是电力系统二次设备领域功能需求越来越复杂,对人机界面接口的功能,尤其对多级菜单展示内容的要求也更高,由于菜单需要根据需求不断的修改,因此对菜单的可维护性要求也相当的高。
人机界面作为电力系统二次设备重要的人机交互接口,合理配置操作按键,有利于二次设备外观结构的紧凑设计,提升用户的操作体验;人机界面中的菜单结构在开发和应用过程中会根据用户的需求不断地修改,然而删减一两个菜单元素或者增加一个菜单功能就要重新组织菜单架构。
传统的做法是使用多维数组或链表结构,但这样处理的前提条件是要求菜单界面深度最好不大于两级,否则难度将急剧增加,而且以后升级或中途更改显示内容都相当困难;然而,要在两级菜单深度下显示众多的数据必然很凌乱,存储和数据操作也不方便。
发明内容
本发明的目的是,提供一种适用于电力系统二次设备的人机接口及人机交互方法,对菜单项之间的逻辑架构进行优化,提升用户操作体验,同时降低菜单项修改难度。
本发明采取的技术方案如下。
一方面,本发明提供一种适用于电力系统二次设备的人机交互方法,包括:
接收按键操作信号;
根据按键操作信号对应的按键功能类型,按照预先配置的按键响应规则,基于预先配置的二叉树结构的菜单树,确定按键响应结束时应选择的菜单树节点位置;
根据菜单树节点位置,将预先配置的节点对应的菜单界面信息进行输出。
按照二叉树的方法组织菜单结构,在需要修改菜单结构的时候,仅需修改二叉树节点即可,有利于装置开发者针对用户需求快速开发装置菜单界面。
人机接口中不同按键被按下时,会产生不同的按键操作信号。
可选的,人机交互方法还包括:响应于设备运行时发生了预设任一触发事件,根据预先配置的设备事件触发响应规则,遍历二叉树结构的菜单树节点,确定触发事件对应的菜单树节点,得到该节点位置对应的菜单界面信息,将该菜单界面信息输出。如二次设备是用来监测断路器运行的,当断路器发生故障时,该故障事件将触发人机接口显示相关联的菜单项信息,如断路器当前运行参数信息及其对应的菜单名称。
可选的,所述二叉树结构菜单树的配置方法包括:
确定需要显示的所有菜单项以及菜单项之间的关联关系;
根据菜单项之间的关联关系,对菜单项进行分级;
将各菜单项与其下级菜单项同时显示的菜单界面作为菜单树的一个节点,确定各节点的下级节点;
对同级节点之间依次相连且各节点与其其中一个下级节点之间相连,所形成的节点树进行描述,存储为二叉树结构。
菜单项之间的关联关系可基于用户需求根据设备内部逻辑确定。
可选的,二叉树结构的菜单树描述中,对于各菜单界面节点,分别用一结构体标记节点在二叉树中的相对位置关系,包括:将节点所连的上一级节点或同级前一节点作为父节点,将节点所连的同级后一节点作为第一子节点,将节点所连的下一级节点作为第二子节点;父节点、第一子节点和第二子节点分别用一结构体指针表示;菜单界面节点的结构体中,还定义有与节点相应的相关联的两级菜单项信息。在任一显示界面,菜单项与其下级各菜单项同时显示。
可选的,人机接口的显示界面中,多个菜单项的菜单名称按照预先配置的二叉树结构菜单树中菜单界面节点之间的连接关系,以菜单树的结构形式按列显示;
人机接口中可供操作的按键或按键区域包括:对应光标移动方向控制的“上”、“下”操作按键,对应选择当前菜单项的“确认”操作按键,以及对应返回上一级菜单界面的“取消”操作按键。本发明方法中的菜单项选择逻辑与按键功能对应设置,基本能够满足二次设备的菜单选择操作需求,能够提升用户操作体验。同时本发明所适用的人机交互按键可以为实体按键,也可以是触摸屏上的按键。
可选的,人机接口中可供操作的按键或按键区域还包括:对应光标移动方向控制的“上”、“下”操作按键,对应数值设置的“加”、“减”操作按键,对应刷新当前菜单界面的“复归”操作按键;
“上”、“下”、“左”、“右”4个操作按键呈一圆周排列,“确认”操作按键位于圆周中部,“复归”和“取消”操作按键分别位于圆周两侧,“-”和“+”操作按键分别位于圆周两侧,且“复归”、“取消”、“-”、“+”四个操作按键呈长方形阵列分布。九键的布局更加方便用户的操作,能够满足基本所有操作需求,进一步提升用户体验。“上”、“下”、“加”、“减”、“复归”对应触发的接口响应操作可根据需要基于前述二叉树结构的菜单树进行配置。
可选的,输出的菜单界面信息包括菜单名称和图形信息,或者相关联的两级菜单名称和图形信息。图形信息可为与菜单名称相关的,或内在逻辑关联的设备图形,操作时更加直观、方便。若某一菜单项无下一级菜单项,则该菜单项直接对应二叉树菜单树中的一个菜单界面节点,显示时也仅显示其自身菜单名称和图形信息。
可选的,人机交互方法还包括:预设一光标变量和一当前菜单界面指针;设置任一菜单界面节点信息输出时,光标变量值为0,对于存在第二子节点的菜单界面节点,显示界面上光标位于该菜单界面中首个下级菜单项对应的菜单名称上;
所述预先配置的按键响应规则包括:
1)响应于“上”操作按键被按下时光标变量不为0,则将当前光标变量的值减1,将显示界面上的光标位置移动到上一同级菜单名称;
2)响应于“上”操作按键被按下时光标变量为0,则光标变量值和显示界面上的光标位置皆不变;
3)响应于“下”操作按键被按下时当前光标位置下方仍有同级菜单名称,则将当前光标变量的值加1,将显示界面上的光标位置移动到下一同级菜单名称;
4)响应于“下”操作按键被按下时当前光标位置下方无同级菜单名称,则光标变量值和显示界面上的光标位置皆不变;
5)响应于“确认”操作键被按下时,当前菜单界面节点有第二子节点,则在显示界面上输出相应菜单界面的两级菜单名称;
6)响应于“取消”操作键被按下时,当前菜单界面节点的父节点为上一级菜单界面节点,则在显示界面上输出上一级菜单界面节点对应的两级菜单名称。
可选的,按键响应规则中:
5)响应于“确认”操作键被按下,执行以下操作:
501)获取当前光标变量值和当前菜单界面指针指向的菜单界面节点的结构体数据;
502)判断当前菜单界面节点是否有第二子节点:若没有则显示界面不变,响应操作结束;若有则将当前菜单界面指针更新为指向当前菜单界面节点的第二子节点,转至步骤503);
503)判断当前光标变量值是否为0,若不为零,则继续更新当前菜单界面指针为指向当前菜单界面节点的第一子节点菜单界面节点,并将当前光标变量值减1,转至步骤504);
504)重复步骤503的判断和操作,直至当前光标变量值为0,将当前菜单界面指针指向的有效菜单界面节点的两级菜单项进行树形输出显示。此时显示界面上光标可落在下级菜单项的首个菜单项对应的菜单名称上,光标变量重置为0,方便后续“上”“下”操作时的响应。
6)响应于“取消”操作键被按下,执行以下操作:
601)当前菜单界面指针指向的菜单界面节点的结构体数据;
602)判断当前菜单界面节点是否有父节点:若没有则显示界面不变,响应操作结束;若有则判断当前菜单界面节点是否为其父节点的第二子节点,若不是,则当前菜单界面指针向父节点方向前进一层;
603)重复步骤602的判断和操作,直至当前菜单界面节点为其父节点的第二子节点,则将当前菜单界面指针更新为指向当前菜单界面节点的父节点,显示界面显示更新后当前菜单界面节点对应的两级菜单项。此时可将光标落在“取消”操作前光标所在菜单项的上级菜单项上,或者落在当前菜单界面节点的第二子节点对应的菜单名称上,并将光标变量值重置为0。
另一方面,本发明还公开一种适用于电力系统二次设备的人机接口,包括按键单元、显示单元和界面管理单元;
按键单元响应于用户对按键的操作向界面管理单元发送按键操作信号;
界面管理单元包括:
信号接收模块,用于接收按键操作信号;
菜单树遍历模块,用于根据按键操作信号对应的按键功能类型,按照预先配置的按键响应规则,基于预先配置的二叉树结构的菜单树,确定按键响应结束时应选择的菜单树节点位置;
遍历结果输出模块,用于根据菜单树节点位置,将预先配置的节点对应的菜单界面信息进行输出;
显示单元接收界面管理单元输出的菜单界面信息,将其显示在显示界面上。
可选的,界面管理单元与显示单元之间通过FSMC总线连接通信。
本方面中,界面管理单元的各模块按照第一方面人机交互方法执行按键操作响应。
有益效果
本发明以二叉树的方式去组织菜单,菜单组织脉络更为清晰简单,在菜单项确定时,对二叉树的遍历效率要远远优于对现有的采用数组或自由创建链表形成的组织结构的遍历效率,并且增减节点也将更加灵活,有利于装置开发者针对用户需求快速开发装置菜单界面,可提高电力系统二次设备九键操作人机界面接口管理维护效率。同时,本发明利用九键单元作为外部任务输入端,且外部属于与来自电力系统二次设备内部的触发事件任务,均可触发人机接口的相应,能够满足二次设备的各种应用需求,大大提升用户体验。
附图说明通过
图1所示为本发明人机接口原理示意图;
图2所示为本发明人机接口的九键式操作单元按键排布示意图;
图3所示为菜单树拓扑示意图;
图4所示为单个菜单项节点的二叉树结构示意图;
图5所示为“确认”操作键的按键响应流程示意图;
图6所示为“取消”操作键的按键响应流程示意图;
图7所示为一种应用例的人机界面多层次菜单显示示意图。
具体实施方式
以下结合附图和具体实施例进一步描述。
实施例1
本实施例为一种适用于电力系统二次设备的人机交互方法,包括:
接收按键操作信号;
根据按键操作信号对应的按键功能类型,按照预先配置的按键响应规则,基于预先配置的二叉树结构的菜单树,确定按键响应结束时应选择的菜单树节点位置;
根据菜单树节点位置,将预先配置的节点对应的菜单界面信息进行输出。
按照二叉树的方法组织菜单结构,在需要修改菜单结构的时候,仅需修改二叉树节点即可,有利于装置开发者针对用户需求快速开发装置菜单界面。
人机接口中不同按键被按下时,会产生不同的按键操作信号。
实施例1-1
基于实施例1,本实施例中,人机交互方法还包括:响应于设备运行时发生了预设任一触发事件,根据预先配置的设备事件触发响应规则,遍历二叉树结构的菜单树节点,确定触发事件对应的菜单树节点,得到该节点位置对应的菜单界面信息,将该菜单界面信息输出。如二次设备是用来监测断路器运行的,当断路器发生故障时,该故障事件将触发人机接口显示相关联的菜单项信息,如断路器当前运行参数信息及其对应的菜单名称。设备事件触发响应规则可根据设备或用户需求进行预先配置。
本实施例中,二叉树结构菜单树的配置方法包括:
确定需要显示的所有菜单项以及菜单项之间的关联关系;
根据菜单项之间的关联关系,对菜单项进行分级;
将各菜单项与其下级菜单项同时显示的菜单界面作为菜单树的一个节点,确定各节点的下级节点;
对同级节点之间依次相连且各节点与其其中一个下级节点之间相连,所形成的节点树进行描述,存储为二叉树结构。
菜单项之间的关联关系可基于用户需求根据设备内部逻辑确定。
二叉树结构的菜单树描述中,对于各菜单界面节点,分别用一结构体标记节点在二叉树中的相对位置关系,包括:将节点所连的上一级节点或同级前一节点作为父节点,将节点所连的同级后一节点作为第一子节点,将节点所连的下一级节点作为第二子节点;父节点、第一子节点和第二子节点分别用一结构体指针表示;菜单界面节点的结构体中,还定义有与节点相应的相关联的两级菜单项信息。在任一显示界面,菜单项与其下级各菜单项同时显示。
人机接口的显示界面中,多个菜单项的菜单名称按照预先配置的二叉树结构菜单树中菜单项节点之间的连接关系,以菜单树的结构形式按列显示;
人机接口中可供操作的按键或按键区域包括:对应光标移动方向控制的“上”、“下”操作按键,对应选择当前菜单项的“确认”操作按键,以及对应返回上一级菜单界面的“取消”操作按键。本发明方法中的菜单项选择逻辑与按键功能对应设置,基本能够满足二次设备的菜单选择操作需求,能够提升用户操作体验。同时本发明所适用的人机交互按键可以为实体按键,也可以是触摸屏上的按键。
人机接口中可供操作的按键或按键区域还包括:对应光标移动方向控制的“上”、“下”操作按键,对应数值设置的“加”、“减”操作按键,对应刷新当前菜单界面的“复归”操作按键;
“上”、“下”、“左”、“右”4个操作按键呈一圆周排列,“确认”操作按键位于圆周中部,“复归”和“取消”操作按键分别位于圆周两侧,“-”和“+”操作按键分别位于圆周两侧,且“复归”、“取消”、“-”、“+”四个操作按键呈长方形阵列分布。九键的布局更加方便用户的操作,能够满足基本所有操作需求,进一步提升用户体验。“上”、“下”、“加”、“减”、“复归”对应触发的接口响应操作可根据需要基于前述二叉树结构的菜单树进行配置。
输出的菜单界面信息包括菜单名称和图形信息,或者相关联的两级菜单名称和图形信息。图形信息可为与菜单名称相关的,或内在逻辑关联的设备图形,操作时更加直观、方便。若某一菜单项无下一级菜单项,则该菜单项直接对应二叉树菜单树中的一个菜单界面节点,显示时也仅显示其自身菜单名称和图形信息。
人机交互方法还包括:预设一光标变量和一当前菜单界面指针;设置任一菜单界面节点信息输出时,光标变量值为0,对于存在第二子节点的菜单界面节点,显示界面上光标位于该菜单界面中首个下级菜单项对应的菜单名称上;
所述预先配置的按键响应规则包括:
1)响应于“上”操作按键被按下时光标变量不为0,则将当前光标变量的值减1,将显示界面上的光标位置移动到上一同级菜单名称;
2)响应于“上”操作按键被按下时光标变量为0,则光标变量值和显示界面上的光标位置皆不变;
3)响应于“下”操作按键被按下时当前光标位置下方仍有同级菜单名称,则将当前光标变量的值加1,将显示界面上的光标位置移动到下一同级菜单名称;
4)响应于“下”操作按键被按下时当前光标位置下方无同级菜单名称,则光标变量值和显示界面上的光标位置皆不变;
5)响应于“确认”操作键被按下时,当前菜单界面节点有第二子节点,则在显示界面上输出相应菜单界面的两级菜单名称;
6)响应于“取消”操作键被按下时,当前菜单界面节点的父节点为上一级菜单界面节点,则在显示界面上输出上一级菜单界面节点对应的两级菜单名称。
按键响应规则中:
5)响应于“确认”操作键被按下,执行以下操作:
501)获取当前光标变量值和当前菜单界面指针指向的菜单界面节点的结构体数据;
502)判断当前菜单界面节点是否有第二子节点:若没有则显示界面不变,响应操作结束;若有则将当前菜单界面指针更新为指向当前菜单界面节点的第二子节点,转至步骤503);
503)判断当前光标变量值是否为0,若不为零,则继续更新当前菜单界面指针为指向当前菜单界面节点的第一子节点菜单界面节点,并将当前光标变量值减1,转至步骤504);
504)重复步骤503的判断和操作,直至当前光标变量值为0,将当前菜单界面指针指向的有效菜单界面节点的两级菜单项进行树形输出显示。此时显示界面上光标可落在下级菜单项的首个菜单项对应的菜单名称上,光标变量重置为0,方便后续“上”“下”操作时的响应。
6)响应于“取消”操作键被按下,执行以下操作:
601)当前菜单界面指针指向的菜单界面节点的结构体数据;
602)判断当前菜单界面节点是否有父节点:若没有则显示界面不变,响应操作结束;若有则判断当前菜单界面节点是否为其父节点的第二子节点,若不是,则当前菜单界面指针向父节点方向前进一层;
603)重复步骤602的判断和操作,直至当前菜单界面节点为其父节点的第二子节点,则将当前菜单界面指针更新为指向当前菜单界面节点的父节点,显示界面显示更新后当前菜单界面节点对应的两级菜单项。此时可将光标落在“取消”操作前光标所在菜单项的上级菜单项上,或者落在当前菜单界面节点的第二子节点对应的菜单名称上,并将光标变量值重置为0。
实施例2
本实施例为一种适用于电力系统二次设备的人机接口,参考图1所示,包括按键单元、显示单元和界面管理单元;
按键单元响应于用户对按键的操作向界面管理单元发送按键操作信号;
界面管理单元包括:
信号接收模块,用于接收按键操作信号;
菜单树遍历模块,用于根据按键操作信号对应的按键功能类型,按照预先配置的按键响应规则,基于预先配置的二叉树结构的菜单树,确定按键响应结束时应选择的菜单树节点位置;
遍历结果输出模块,用于根据菜单树节点位置,将预先配置的节点对应的菜单界面信息进行输出;
显示单元接收界面管理单元输出的菜单界面信息,将其显示在显示界面上。
界面管理单元与显示单元之间通过FSMC总线连接通信。
参考图2所示,人机接口的按键单元中可供操作的按键或按键区域包括:对应光标移动方向控制的“上”、“下”、“左”、“右”操作按键,对应选择当前菜单项的“确认”操作按键,对应返回上一级菜单界面的“取消”操作按键,对应数值设置的“加”、“减”操作按键,以及对应刷新当前菜单界面的“复归”操作按键。界面管理单元配置的菜单项选择逻辑与按键功能对应设置,基本能够满足二次设备的菜单选择操作需求,能够提升用户操作体验。同时本发明所适用的人机交互按键可以为实体按键,也可以是触摸屏上的按键。
“上”、“下”、“左”、“右”4个操作按键呈一圆周排列,“确认”操作按键位于圆周中部,“复归”和“取消”操作按键分别位于圆周两侧,“-”和“+”操作按键分别位于圆周两侧,且“复归”、“取消”、“-”、“+”四个操作按键呈长方形阵列分布。九键的布局更加方便用户的操作,能够满足基本所有操作需求,进一步提升用户体验。“上”、“下”、“加”、“减”、“复归”对应触发的接口响应操作可根据需要基于前述二叉树结构的菜单树进行配置。
界面管理单元按照实施例1-1中二叉树菜单树以及各菜单项节点的结构体配置,以及按键响应规则进行逻辑配置,按照实施例1-1或实施例1-2的人机交互方法执行按键操作响应。
实施例2-1
基于实施例2,本实施例介绍人机接口的具体实现。
如图2所示,按键单元包含9个按键,此处成为九键单元,分别为“上”、“下”、“左”、“右”、“加”、“减”、“确认”、“取消”、“复归”,用于界面管理单元与外界的交互,接收外界的管理任务,将对应的操作项传递给界面管理单元,上述按键既满足电力系统二次设备运行维护的功能需求,又能满足美观要求,提升易操作性。
界面管理单元用于管理菜单信息,依据菜单项作为节点,根据不同的菜单层级生成二叉树结构菜单树。
对于电力系统二次设备内部的触发事件,通过界面管理单元进行判断,若有触发界面某菜单的事件发生,则依据触发事件遍历所述菜单树,得到相应的菜单项。
所述界面管理单元通过FSMC接口与显示单元接,将菜单项信息在显示单元展示。
九键单元作为外部任务输入源头,将按键信息传递给界面管理单元,界面管理单元根据不同的按键操作信息,对菜单接点进行相应的操作。
界面管理单元,对菜单项的处理方法为:
将每个菜单界面作为一个节点,每个节点有对应的ID号,参考图3,将菜单分层分级,图中展示了3级菜单的结构,所有菜单构成一个节点树,在任何一个节点,通过九键单元的按键触发,也可经过设备内部逻辑触发,都可以根据树形结构找到另外一个节点;为实现上述目的,需完成以下步骤:
构造二叉树,参考图7所示,人机界面多层次菜单显示与树形结构相似,用树形结构来描述需要显示的内容,将需要显示的菜单信息按顺序排列,比如,某一界面显示10行,每行都有下级子菜单,那么本节点就有10棵子树,这样可以把所有需要实现的菜单统一用一棵树描述,然后将这棵树转化为二叉树进行存储,图3展示了一个3级菜单的树形结构。
数据结构设计,定义一个结构体类型:
用于反映节点在结构树中的相对位置关系,如图4所示的节点二叉树示意图,对于任何一个节点pNode,都分配一个地址ID,与之同级别的前一个位置的节点为其父节点,用结构体指针pFather表示,如果同级别前一个位置没有任何节点,它自身就是同级别中的第一个节点,那么,与之相邻的上一级节点为其父节点;跟它平级的下一个节点为其右孩子,用结构体指针pRChild表示,它的下一级节点为其左孩子,用结构体指针pLChild表示。
用于反映九键单元按键任务,每个按键对应的界面管理任务,设计一个指向函数的指针变量,如下:
typedef void(*FNPTR)();
九键单元的“确认”键,对应的任务管理函数为pOnEnter(),“取消”键,对应的任务管理函数为pOnEsc(),“上”键,对应的任务管理函数为pOnUp(),“下”键,对应的任务管理函数为pOnDown(),“加”键,对应的任务管理函数为pOnAdd(),“减”键,对应的任务管理函数为pOnSub(),“左”键,对应的任务管理函数为pOnLeft(),“右”键,对应的任务管理函数为pOnRight(),用pOnUpdate()来处理界面刷新任务,处理最终显示内容。
综上,对于一个节点pNode,用如下的结构体来反映它所处的位置以及把对此节点的相关的操作任务进行关联:
对于任何一个界面,如果还有下一级菜单,本级菜单有多个菜单选项可选择,当前光标所处的菜单项位置,用一个光标变量cursor表示;cursor的值用于反映九键单元“上”、“下”操作的次数。
以图3中菜单1.2为例,定义其结构体名为Menu1-2,与之相邻的菜单1.1、菜单1.3、菜单1.2.1以及上级菜单1的结构体名分别为Menu1-1、Menu1-3、Menu1-2-1、Menu1,声明其结构体:
VIEW Menu1;
VIEW Menu1-1;
VIEW Menu1-2;
VIEW Menu1-1-1;
每个菜单的数据结构都遵循这一规律,其他菜单的结构体声明,在此不再敖述。
对菜单节点进行初始化,实质为对每个菜单的VIEW结构体进行初始化,指定其二叉树结构关系,映射按键操作相对应的相应任务,以菜单1.1为例:
界面管理单元其他菜单界面的初始化雷同,就不再一一叙述。
利用二叉树对菜单节点进行搜索定位,通过pOnEnter()、pOnEsc()函数实现,
pOnEnter()函数中,将当前结构体pNode的地址暂存在pNodeOld中,判断pNode是否存在左孩子树pNode->pLChild,若不存在,则返回原有界面,若存在左孩子树,则向左孩子树前进一层,此时pNode地址指向下一级菜单的第一个菜单,继续判断光标cursor的位置,当cursor大于0时,则向当前菜单向右孩子树pNode->pRChild前进一层,也就是pNode指向与当前菜单平级的下一个菜单节点,并且cursor的值减1,循环判别光标cursor的位置,做同样的处理,直到cursor的值为0才结束循环,判别此时pNode地址的有效性,输出pNode指向的菜单界面,以上流程,如图5所示的“确认”键查找算法流程图。
pOnEsc()函数中,判断当前节点pNode是否存在父节点树,如果不存在,则返回原有界面,继续判别pNode节点是否为其父节点pNode->pFather的左孩子树,由于某个节点下级的第一个节点,才满足其父节点的左孩子树恰好是该节点本身,如不满足此条件,则认为还没遍历到本级菜单的第一个节点,循环执行此过程,直到满足pNode节点是其父节点的左孩子树,更新pNode节点,输出pNode指向的菜单界面,以上流程,如图6所示的“取消”键查找算法流程图。
以光标位置处于1.2菜单为例,在二级菜单目录界面,cursor=1,九键单元分别按下以下按键:
“确认”键:按照图5所示的流程,判断一级菜单1是否有下一级菜单,将节点指针指向二级菜单1.1地址,判别到cursor>0,则节点指针指向本级下个菜单1.2的地址,cursor的值减1变成0,循环判断cursor的值,当发现cursor=0,则认为菜单1.2是要搜索的目标,调用菜单1.2的显示函数Menu1-2Show(),显示菜单1.2界面的内容。
“取消”键:按照图6所示的流程,判断一级菜单1是否有父节点树,将节点指针指向父节点菜单下属的第一个菜单对应的地址,显然,菜单1.2的父节点菜单1.1下属的第一个菜单为1.1.1,并不是菜单1.2本身;则菜单1.1继续向父节点树前进一层到菜单1,此时满足菜单1下属的第一个菜单即为菜单1.1本身,则认为菜单1所在的一级菜单界面是要搜索的目标,显示一级菜单界面的内容。
“上”键:cursor的值由1变为0,光标位置由1.2菜单移动到1.1菜单。
“下”键:cursor的值由1变为2,光标位置由1.2菜单移动到1.3菜单。
“加”键、“减”键、“左”键、“右”键、“复归”键的功能对应的操作,取决于映射的具体应用任务。
以上所有操作,最后通过pOnUpdate函数刷新本界面信息,通过FMSC总线,输出到显示单元显示。
上述例子为通过九键单元输入对界面人接接口界面进行触发,对于电力系统二次设备内部的逻辑触发,可根据不同的应用需求,直接将应用于某个菜单界面进行映射,即此时pNode结构体指针直接有当前位置指向需要显示的界面地址。
综上,本发明以二叉树的方式去组织菜单,菜单组织脉络更为清晰简单,在菜单项确定时,对二叉树的遍历效率要远远优于对现有的采用数组或自由创建链表形成的组织结构的遍历效率,并且增减节点也将更加灵活,有利于装置开发者针对用户需求快速开发装置菜单界面,可提高电力系统二次设备九键操作人机界面接口管理维护效率。同时,本发明利用九键单元作为外部任务输入端,且外部属于与来自电力系统二次设备内部的触发事件任务,均可触发人机接口的相应,能够满足二次设备的各种应用需求,大大提升用户体验。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的系统。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令系统的制造品,该指令系统实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。
Claims (7)
1.一种适用于电力系统二次设备的人机交互方法,其特征是,包括:
接收按键操作信号;
根据按键操作信号对应的按键功能类型,按照预先配置的按键响应规则,基于预先配置的二叉树结构的菜单树,确定按键响应结束时应选择的菜单树节点位置;
根据菜单树节点位置,将预先配置的节点对应的菜单界面信息进行输出;
所述二叉树结构菜单树的配置方法包括:
确定需要显示的所有菜单项以及菜单项之间的关联关系;
根据菜单项之间的关联关系,对菜单项进行分级;
将各菜单项与其下级菜单项同时显示的菜单界面作为菜单树的一个节点,确定各节点的下级节点;
对同级节点之间依次相连且各节点与其其中一个下级节点之间相连,所形成的节点树进行描述,存储为二叉树结构;
其中,二叉树结构的菜单树描述中,对于各菜单界面节点,分别用一结构体标记节点在二叉树中的相对位置关系,包括:将节点所连的上一级节点或同级前一节点作为父节点,将节点所连的同级后一节点作为第一子节点,将节点所连的下一级节点作为第二子节点;父节点、第一子节点和第二子节点分别用一结构体指针表示;菜单界面节点的结构体中,还定义有与节点相应的相关联的两级菜单项信息;
人机交互方法还包括:预设一光标变量和一当前菜单界面指针;设置任一菜单界面节点信息输出时,光标变量值为0,对于存在第二子节点的菜单界面节点,显示界面上光标位于该菜单界面中首个下级菜单项对应的菜单名称上;
人机接口中可供操作的按键或按键区域包括:对应选择当前菜单项的“确认”操作按键,以及对应返回上一级菜单界面的“取消”操作按键;
所述预先配置的按键响应规则包括:
1)响应于“上”操作按键被按下时光标变量不为0,则将当前光标变量的值减1,将显示界面上的光标位置移动到上一同级菜单名称;
2)响应于“上”操作按键被按下时光标变量为0,则光标变量值和显示界面上的光标位置皆不变;
3)响应于“下”操作按键被按下时当前光标位置下方仍有同级菜单名称,则将当前光标变量的值加1,将显示界面上的光标位置移动到下一同级菜单名称;
4)响应于“下”操作按键被按下时当前光标位置下方无同级菜单名称,则光标变量值和显示界面上的光标位置皆不变;5)响应于“确认”操作键被按下时,当前菜单界面节点有第二子节点,则在显示界面上输出相应菜单界面的两级菜单名称;
6)响应于“取消”操作键被按下时,当前菜单界面节点的父节点为上一级菜单界面节点,则在显示界面上输出上一级菜单界面节点对应的两级菜单名称;
按键响应规则5)中,响应于“确认”操作键被按下,执行以下操作:
501)获取当前光标变量值和当前菜单界面指针指向的菜单界面节点的结构体数据;
502)判断当前菜单界面节点是否有第二子节点:若没有则显示界面不变,响应操作结束;若有则将当前菜单界面指针更新为指向当前菜单界面节点的第二子节点,转至步骤503);
503)判断当前光标变量值是否为0,若不为零,则继续更新当前菜单界面指针为指向当前菜单界面节点的第一子节点菜单界面节点,并将当前光标变量值减1,转至步骤504);
504)重复步骤503的判断和操作,直至当前光标变量值为0,将当前菜单界面指针指向的有效菜单界面节点的两级菜单项进行树形输出显示。
2.根据权利要求1所述的方法,其特征是,还包括:响应于设备运行时发生了预设任一触发事件,根据预先配置的设备事件触发响应规则,遍历二叉树结构的菜单树节点,确定触发事件对应的菜单树节点,得到该节点位置对应的菜单界面信息,将该菜单界面信息输出。
3.根据权利要求1或2所述的方法,其特征是,人机接口的显示界面中,多个菜单项的菜单名称按照预先配置的二叉树结构菜单树中菜单界面节点之间的连接关系,以菜单树的结构形式按列显示;
人机接口中可供操作的按键或按键区域包括:对应光标移动方向控制的“上”、“下”操作按键,对应选择当前菜单项的“确认”操作按键,以及对应返回上一级菜单界面的“取消”操作按键。
4.根据权利要求3所述的方法,其特征是,人机接口中可供操作的按键或按键区域还包括:对应数值设置的“加”、“减”操作按键,对应刷新当前菜单界面的“复归”操作按键;
“上”、“下”、“左”、“右”4个操作按键呈一圆周排列,“确认”操作按键位于圆周中部,“复归”和“取消”操作按键分别位于圆周两侧,“-”和“+”操作按键分别位于圆周两侧,且“复归”、“取消”、“-”、“+”四个操作按键呈长方形阵列分布。
5.根据权利要求1所述的方法,其特征是,按键响应规则中:
6)响应于“取消”操作键被按下,执行以下操作:
601)当前菜单界面指针指向的菜单界面节点的结构体数据;
602)判断当前菜单界面节点是否有父节点:若没有则显示界面不变,响应操作结束;若有则判断当前菜单界面节点是否为其父节点的第二子节点,若不是,则当前菜单界面指针向父节点方向前进一层;
603)重复步骤602的判断和操作,直至当前菜单界面节点为其父节点的第二子节点,则将当前菜单界面指针更新为指向当前菜单界面节点的父节点,显示界面显示更新后当前菜单界面节点对应的两级菜单项。
6.一种基于权利要求1-5任一项所述的适用于电力系统二次设备的人机交互方法的适用于电力系统二次设备的人机接口,其特征是,包括按键单元、显示单元和界面管理单元;
按键单元响应于用户对按键的操作向界面管理单元发送按键操作信号;
界面管理单元包括:
信号接收模块,用于接收按键操作信号;
菜单树遍历模块,用于根据按键操作信号对应的按键功能类型,按照预先配置的按键响应规则,基于预先配置的二叉树结构的菜单树,确定按键响应结束时应选择的菜单树节点位置,得到该节点位置对应的菜单项;
遍历结果输出模块,用于将所得到的菜单项对应的菜单项信息输出;
显示单元接收界面管理单元输出的菜单项信息,将其显示在显示界面上。
7.根据权利要求6所述的适用于电力系统二次设备的人机接口,其特征是,界面管理单元与显示单元之间通过FSMC总线连接通信。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911394905.0A CN111208927B (zh) | 2019-12-30 | 2019-12-30 | 一种适用于电力系统二次设备的人机接口及人机交互方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911394905.0A CN111208927B (zh) | 2019-12-30 | 2019-12-30 | 一种适用于电力系统二次设备的人机接口及人机交互方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111208927A CN111208927A (zh) | 2020-05-29 |
CN111208927B true CN111208927B (zh) | 2021-09-07 |
Family
ID=70787739
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911394905.0A Active CN111208927B (zh) | 2019-12-30 | 2019-12-30 | 一种适用于电力系统二次设备的人机接口及人机交互方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111208927B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104486679A (zh) * | 2011-08-05 | 2015-04-01 | 三星电子株式会社 | 控制电子设备的方法和应用该方法的电子设备 |
CN105893017A (zh) * | 2015-12-11 | 2016-08-24 | 乐视网信息技术(北京)股份有限公司 | 在设备上呈现项目菜单的方法及装置 |
CN106598570A (zh) * | 2016-11-15 | 2017-04-26 | 积成电子股份有限公司 | 一种嵌入式系统中多级菜单的构建与显示方法 |
CN107193569A (zh) * | 2017-05-31 | 2017-09-22 | 福建三元达科技有限公司 | 嵌入式系统的多级菜单管理系统及管理方法 |
CN109189504A (zh) * | 2018-09-20 | 2019-01-11 | 腾讯科技(深圳)有限公司 | 行为执行方法、行为树生成方法、装置和计算机设备 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102226884A (zh) * | 2011-05-25 | 2011-10-26 | 广州视睿电子科技有限公司 | 一种触摸屏控制系统及触摸屏的控制方法 |
CN104424205A (zh) * | 2013-08-21 | 2015-03-18 | 腾讯科技(深圳)有限公司 | 嵌入页面的客户端的右键菜单的实现方法和装置 |
CN105389168A (zh) * | 2015-11-10 | 2016-03-09 | 科大智能电气技术有限公司 | 基于嵌入式裸机的gui框架实现菜单组织和交互的方法 |
CN106325681A (zh) * | 2016-08-30 | 2017-01-11 | 乐视控股(北京)有限公司 | 菜单项切换的方法及装置 |
CN109308284B (zh) * | 2018-09-28 | 2023-09-19 | 中国平安财产保险股份有限公司 | 报表菜单生成方法、装置、计算机设备及存储介质 |
CN110134302A (zh) * | 2019-05-15 | 2019-08-16 | 重庆八戒电子商务有限公司 | 快速定位节点的方法、装置、介质和电子设备 |
-
2019
- 2019-12-30 CN CN201911394905.0A patent/CN111208927B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104486679A (zh) * | 2011-08-05 | 2015-04-01 | 三星电子株式会社 | 控制电子设备的方法和应用该方法的电子设备 |
CN105893017A (zh) * | 2015-12-11 | 2016-08-24 | 乐视网信息技术(北京)股份有限公司 | 在设备上呈现项目菜单的方法及装置 |
CN106598570A (zh) * | 2016-11-15 | 2017-04-26 | 积成电子股份有限公司 | 一种嵌入式系统中多级菜单的构建与显示方法 |
CN107193569A (zh) * | 2017-05-31 | 2017-09-22 | 福建三元达科技有限公司 | 嵌入式系统的多级菜单管理系统及管理方法 |
CN109189504A (zh) * | 2018-09-20 | 2019-01-11 | 腾讯科技(深圳)有限公司 | 行为执行方法、行为树生成方法、装置和计算机设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111208927A (zh) | 2020-05-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10013143B2 (en) | Interfacing with a computing application using a multi-digit sensor | |
US5119479A (en) | User interface system in which operation associated with input device may be selectively switched | |
TWI531953B (zh) | 所選資料的暫時格式化及製圖 | |
US20140289641A1 (en) | Adaptive User Interface | |
JP6073863B2 (ja) | アイテム表示制御方法及び装置 | |
CN109033260A (zh) | 基于rdf的知识图谱交互式可视化查询方法 | |
US11010141B2 (en) | Graphical interface to generate instructions to control a representation by an output interface of one or more objects | |
CN104267968A (zh) | 界面切换的方法和装置 | |
US11481083B2 (en) | Tool for arranging objects and adjusting spacing in a layout | |
JP5864033B1 (ja) | Plcシステムおよび演算式データ作成支援装置 | |
US9684738B2 (en) | Text-based command generation | |
JP7457168B2 (ja) | 半導体デバイスのモデリング方法及び装置 | |
JP6027541B2 (ja) | 図の作成、編集およびナビゲーション | |
CN111208927B (zh) | 一种适用于电力系统二次设备的人机接口及人机交互方法 | |
CN104778044A (zh) | 触摸屏手势事件流分发的方法及装置 | |
McGrath | R for Data Analysis in easy steps: Covers R Programming essentials | |
JP2018067311A (ja) | ユーザインターフェイスにおける迅速なナビゲーションのための方法、熱可塑性物質から製品を製造するための方法、ユーザインターフェイスにおける迅速なナビゲーションのためのプラント制御、および熱可塑性物質から製品を製造するためのプラント | |
TW201931178A (zh) | 電路佈局圖案之阻抗值計算方法及佈局檢測系統 | |
CN114237458A (zh) | Osd位置无关的可多维方式操控ui的方法、装置及存储介质 | |
JP2008084251A (ja) | 情報処理装置の表示方法 | |
CN114860219A (zh) | 芯片应用例程的配置方法、装置、设备及存储介质 | |
US20170083349A1 (en) | Drawing software | |
CN111124393A (zh) | 一种算法逻辑的编辑方法、平台、电子设备及存储介质 | |
EP2711804A1 (en) | Method for providing a gesture-based user interface | |
CN105630469A (zh) | 一种实时视频gui的技术方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |