1.本发明涉及软件开发技术领域,尤其涉及一种基于标签深度匹配的梯形图智能识别管理方法。
背景技术:
2.国际电工委员会可编程控制器编程语言标准之一梯形图是电气工程师程序设计中使用最多的一种图形化编程语言,梯形图是从继电器与接触器逻辑控制基础上简化了符号演变而来,简单易用、直观形象,很容易被电气工程师所理解,通过梯形图可以方便灵活地描述出电气符号之间的逻辑结构关系。电气工程师编写梯形图时无法人性化管理和快速定位梯形图回路程序,并且无法有效结构化组织梯形图程序,编辑时需要拖拽可视区滚动条才能概览特定位置的梯形图回路,整个梯形图程序结构比较散乱没有层次关系,浏览编辑效率极低,耗费时间较长,且必须通过肉眼比对才能匹配期望查找的梯形图程序,这种低效的管理模式给电气工程师编程带来了极大地困扰与不便,而且还无法清晰地概览整个程序结构。
3.因此,急需一种新的技术来解决该技术问题。
技术实现要素:
4.本发明的目的在于克服上述现有技术的问题,提供了一种基于标签深度匹配的梯形图智能识别管理方法,从横向到纵向全方位、多维度的实现梯形图回路程序价值链深度有效集成,创新性和人性化地设计了支持多层预定义标签复杂柔性嵌套结构的模块化梯形图回路程序;可以实现包含预定义标签的梯形图回路程序智能识别并以树形嵌套结构列出所有梯形图回路并映射到项目标签树,电气工程师可以快速导航定位切换梯形图程序至可视区编辑范围,并且可以直观形象地概览程序组织结构,结构柔性、快速定位、高效管理、价值协同。
5.上述目的是通过以下技术方案来实现:
6.一种基于标签深度匹配的梯形图智能识别管理方法,包括:
7.预定义标签编辑模块,用于预定义标签结构化多层次嵌套编辑;
8.梯形图回路识别模块,用于二维矩阵式梯形图回路的扫描与识别;
9.梯形图回路标签节点解析模块,用于扫描并解析梯形图回路标签节点树;
10.梯形图回路普通节点解析模块,用于扫描并解析梯形图回路普通节点树;
11.标签树结构导航模块,用于自由导航、切换和定位标签匹配的梯形图回路程序,并将匹配的梯形图回路程序首行滚动到可视编辑区域;
12.梯形图展开折叠模块,用于控制标签节点下梯形图行的显示与隐藏;
13.通过所述预定义标签编辑模块编辑预定义标签,并在标签内嵌梯形图程序回路;
14.通过所述梯形图回路识别模块识别所述梯形图程序回路,并对所述梯形图程序回路中的节点二维矩阵行列扫描,并通过所述梯形图回路标签节点解析模块和所述梯形图回
路普通节点解析模块进行节点解析,包括:通过所述梯形图回路标签节点解析模块根据节点的属性判断是否为标签节点,若是,则将所述标签节点构建为一棵具有逻辑嵌套层次关系的标签节点多叉树;通过所述梯形图回路普通节点解析模块根据节点的属性判断是否为普通节点,若是,则将所述普通节点构建为多棵具有逻辑嵌套层次关系的普通节点多叉树;
15.通过所述梯形图回路标签节点解析模块实现标签节点与匹配程序回路行映射,计算出标签节点程序路行范围区间,并通过所述标签树导航模块实现梯形图回路程序行的自由导航、切换和定位匹配;
16.通过所述梯形图展开折叠模块实现个性化显示与隐藏所述梯形图回路程序。
17.进一步地,所述预定义标签包括开始标签名group和结束标签名groupe,所述开始标签名group和所述结束标签名groupe作为配对标签;所述预定义标签支持单层或多层嵌套,并可通过所述梯形图展开折叠模块自由折叠和展开控制梯形图的显示与隐藏。
18.进一步地,所述梯形图程序回路必须包含在所述配对标签内部。
19.进一步地,所述对所述梯形图程序回路中的节点二维矩阵行列扫描,具体为所述梯形图回路识别模块横向与纵向扫描并剖析整个二维矩阵式独立节点的梯形图程序。
20.进一步地,所述梯形图回路标签节点解析模块的解析,具体为:若解析的最外层标签节点是父标签,则整个标签结构是树形数据结构;若内部解析到有标签节点,则将子标签节点增加到匹配的父标签节点根部,标签节点需要由内向外递归遍历解析,最终形成一棵具有多层次嵌套结构的标签树。
21.进一步地,所述梯形图回路普通节点解析模块的解析,具体为:一个梯形图回路程序的普通节点形成一棵具有实节点和虚节点并存的多叉树,实节点是实际客观存在的普通节点,虚节点是为了表明普通节点之间的关联关系而实际并不存在的关系节点,节点扫描采用横向与纵向按序递归遍历方式,构建一棵逻辑层次关系鲜明的普通节点多叉树。
22.进一步地,通过所述梯形图展开折叠模块实现个性化显示与隐藏所述梯形图回路程序,具体为:通过从多叉树根节点按序遍历所有普通子节点属性获取标签节点所在的梯形图回路程序行的最小值和最大值,计算匹配的梯形图回路程序所在行的范围区间,设置程序行范围是否可见属性可以控制显示或隐藏,实现展开和折叠梯形图回路程序。
23.有益效果
24.本发明所提供的一种基于标签深度匹配的梯形图智能识别管理方法,具有如下优点:
25.1.项目标签树标签匹配的梯形图回路程序,通过标签的展开和折叠两种方式,可以根据个性化喜好实现梯形图程序回路的显示与隐藏,从而拓展了梯形图编辑的可视化区域。
26.2.通过单击项目标签树的任意标签,梯形图编辑器可以直接导航并定位到与选中标签匹配的梯形图回路程序的首行位置,可以实现梯形图回路程序的快速查找、导航和定位。
27.3.通过对梯形图项目标签树标签的操作,可以实现梯形图回路的快速复制、粘贴、删除、浏览、编辑等精确操作,极大地节省了操作时间和提高了操作效率,操作方式人性化。
28.4.通过预定义标签可以组织并建立支持标签嵌套、层次关系鲜明的结构化梯形图回路程序,避免了程序结构杂乱无章,实现了梯形图回路程序的结构化有序和模块化的管
理。
29.5.梯形图回路预定义标签可以根据语义自定义标签说明,标签说明同时映射到项目标签树结构,通过项目标签树就可以直观形象地概览整个梯形图回路程序的逻辑层次结构。
附图说明
30.图1为一种基于标签深度匹配的梯形图智能识别管理方法的结构示意总图;
31.图2为一种基于标签深度匹配的梯形图智能识别管理方法的工作流原理图;
32.图3为一种基于标签深度匹配的梯形图智能识别管理方法的预定义标签编辑模块图;
33.图4为一种基于标签深度匹配的梯形图智能识别管理方法的梯形图回路识别模块图;
34.图5为一种基于标签深度匹配的梯形图智能识别管理方法的梯形图回路标签节点解析模块图;
35.图6为一种基于标签深度匹配的梯形图智能识别管理方法的梯形图回路普通节点解析模块图;
36.图7为一种基于标签深度匹配的梯形图智能识别管理方法的标签树结构导航模块图;
37.图8为一种基于标签深度匹配的梯形图智能识别管理方法的梯形图展开折叠模块图。
具体实施方式
38.下面结合图和实施例对本发明作进一步详细说明。
39.如图1所示,一种基于标签深度匹配的梯形图智能识别管理方法,包括:
40.预定义标签编辑模块,用于预定义标签结构化多层次嵌套编辑;
41.梯形图回路识别模块,用于二维矩阵式梯形图回路的扫描与识别;
42.梯形图回路标签节点解析模块,用于扫描并解析梯形图回路标签节点树;
43.梯形图回路普通节点解析模块,用于扫描并解析梯形图回路普通节点树;
44.标签树结构导航模块,用于自由导航、切换和定位标签匹配的梯形图回路程序,并将匹配的梯形图回路程序首行滚动到可视编辑区域;
45.梯形图展开折叠模块,用于控制标签节点下梯形图行的显示与隐藏;
46.工作方法如图2所示:
47.通过所述预定义标签编辑模块编辑预定义标签,并在标签内嵌梯形图程序回路;
48.通过所述梯形图回路识别模块识别所述梯形图程序回路,并对所述梯形图程序回路中的节点二维矩阵行列扫描,并通过所述梯形图回路标签节点解析模块和所述梯形图回路普通节点解析模块进行节点解析,包括:通过所述梯形图回路标签节点解析模块根据节点的属性判断是否为标签节点,若是,则将所述标签节点构建为一棵具有逻辑嵌套层次关系的标签节点多叉树;通过所述梯形图回路普通节点解析模块根据节点的属性判断是否为普通节点,若是,则将所述普通节点构建为多棵具有逻辑嵌套层次关系的普通节点多叉树;
49.通过所述梯形图回路标签节点解析模块实现标签节点与匹配程序回路行映射,计算出标签节点程序路行范围区间,并通过所述标签树导航模块实现梯形图回路程序行的自由导航、切换和定位匹配;
50.通过所述梯形图展开折叠模块实现个性化显示与隐藏所述梯形图回路程序。
51.具体的,编辑预定义标签步骤、标签内嵌梯形图程序回路步骤是通过“预定义标签编辑模块”来实现的;
52.梯形图程序回路识别步骤、节点二维矩阵行列扫描步骤是通过“梯形图回路扫描模块”来实现的;
53.标签类型节点、标签节点树形结构生成步骤、一棵标签节点多叉树步骤、标签节点程序回路行范围区间计算步骤、标签节点与匹配程序回路行映射步骤是通过“标签节点解析模块”来实现的;
54.普通类型节点步骤、普通节点树形结构生成步骤、多棵普通节点多叉树步骤是通过“普通节点解析模块”来实现的;
55.节点解析步骤包含了“标签节点解析模块”和“普通节点解析模块”;
56.梯形图程序可以嵌套支持展开折叠步骤从属于“梯形图展开折叠模块”,
57.标签树结构快速导航步骤、定位梯形图编辑可视区步骤是通过“标签树结构导航模块”来实现的。
58.本实施例中,模块之间相辅相成、高效协调,本方法可以实现快速导航、滚动和定位至目标期望的梯形图程序回路行,从而实现了对梯形图程序的全方位模块化、精细化有效管理,实现了梯形图管理横向与纵向价值深度集成。
59.作为本实施例的进一步说明,如下:
60.所述预定义标签包括开始标签名group和结束标签名groupe,group、groupe预定义标签必须配对定义,可以根据实际语义给予标签说明,项目标签树结构生成的同时映射相应的说明,可以根据标签说明任意定位导航梯形图程序回路。
61.梯形图程序回路必须包含在配对标签内部,标签支持单层或多层嵌套,并可以自由折叠和展开控制梯形图的显示与隐藏。
62.梯形图节点按二维矩阵式行列扫描,可以根据每个节点的属性来判断是标签节点还是普通节点,并做相应的处理。
63.标签节点可以计算匹配的梯形图程序回路行区间范围,导航定位时可以滚动到首行位置。
64.通过标签节点的定义,可以很好的组织程序结构,通过项目标签树可以快速切换不同的梯形图程序回路。
65.如图3所示,作为本实施例中所述预定义标签编辑模块的优化,预定义标签必须配对定义并支持多层次嵌套,可以赋予标签有含义的说明,待标签编辑完毕,所有标签需要通过语法检查确认是否编辑有误,若不合法则给出人性化的错误提示,标签说明按层次结构可以映射到项目标签树。配对标签可以显示树状连线图,直观形象的显示层次结构方便于控制梯形图回路程序的折叠与隐藏,梯形图程序回路必须包含在定义标签的内部,通过标签的层次嵌套可以有效组织结构化梯形图程序,使程序结构更加清晰和有条理性。
66.具体的,可以根据实际语义增加标签自定义注释方便于理解,预定义标签名为开
始标签名group和结束标签名groupe。
67.预定义标签必须将期望的一路或多路梯形图回路程序包含在配对首尾标签中间,单击项目标签树选中标签时可以快速定位匹配的梯形图回路程序首行至梯形图编辑可视区范围。
68.标签支持任意多层复杂结构嵌套定义,父标签可以包含子标签,标签关系同时映射到项目标签树结构,尤其适用于复杂结构化程序设计,逻辑结构清晰,便于人性化管理。
69.如图4所示,作为本实施例中所述梯形图回路识别模块的优化,梯形图回路识别模块横向与纵向扫描并剖析整个二维矩阵式独立节点的梯形图程序,主要包括标签节点和普通节点。
70.若扫描到标签节点,则将标签构建为一棵具有逻辑嵌套层次关系的标签多叉树;
71.若扫描到普通节点则根据图形化节点连接线关联关系,构建具有与或等逻辑关系的树形数据结构。
72.通过扫描和组织多个独立梯形图程序节点,可以将整个孤立的梯形图节点转换成具有多个梯形图回路程序的具备逻辑关系的树形数据结构,每个梯形图回路是一个梯级,一棵树代表一个梯形图回路,多个梯形图回路组成一个森林,通过遍历森林可以实现对任意单个梯形图节点进行路由。
73.如图4所示,作为本实施例中所述梯形图回路标签节点解析模块的优化,标签节点包括标签头(group)和标签尾(groupe)两部分,标签必须完整配对定义,一个完整的标签节点首先从标签头部开始解析到标签尾部结束,扫描节点时可以根据节点的属性来判断是否为标签节点,标签结构支持多层次嵌套,首先解析的最外层标签节点是父标签,整个标签结构是树形数据结构;
74.若内部解析到有标签节点,则将子标签节点增加到匹配的父标签节点根部,标签节点需要由内向外递归遍历解析,最终形成一棵具有多层次嵌套结构的标签树,方便于后期标签的有效统一管理。
75.标签节点与匹配的梯形图程序回路映射,可以计算出行区间范围实现梯形图回路程序行的导航,方便于快速切换定位。
76.如图6所示,作为本实施例中所述梯形图回路普通节点解析模块的优化,可以参图4梯形图回路识别模块中的梯形图将其关系映射为多棵多叉树。
77.普通节点根据节点属性判断是否为普通节点,并且选择性是否包含在标签节点中,一个梯形图回路程序的普通节点形成一棵具有实节点和虚节点并存的多叉树,实节点是实际客观存在的普通节点,虚节点是为了表明普通节点之间的关联关系而实际并不存在的关系节点,节点扫描采用横向与纵向按序递归遍历方式,构建一棵逻辑层次关系鲜明的普通节点多叉树。
78.普通节点属性包含了节点所在的程序行,普通节点与匹配的标签节点建立映射关系,即可以计算标签节点匹配的梯形图回路程序所在位置行的范围。
79.如图7所示,作为本实施例中所述标签树结构导航模块的优化标签树结构导航模块可以自由导航、切换和定位标签匹配的梯形图回路程序,程序编辑配对预定义标签的同时,需要语法检查预定义标签是否合法,只有合法的预定义标签编辑完毕才能自动关系映射并形成项目标签树,标签树节点名称是具有含义的标签说明方便于理解,不合法的标签
给予人性化错误提示。通过项目标签树可以概览整个梯形图回路程序结构,标签结构嵌套关系层次鲜明,有利于实现结构化柔性程序,帮助电气工程师优化组织程序结构。通过标签树的导航,匹配的梯形图回路程序首行将滚动到可视编辑区域,方便用户复制、粘贴、编辑和浏览梯形图程序,易于高效管理。
80.如图8所示,作为本实施例中所述梯形图展开折叠模块的优化,梯形图展开折叠模块可以个性化显示与隐藏梯形图回路程序,通过从多叉树根节点按序遍历所有普通子节点属性获取标签节点所在的梯形图回路程序行的最小值和最大值,计算匹配的梯形图回路程序所在行的范围区间,设置程序行范围是否可见属性可以控制显示或隐藏,从而达到展开和折叠梯形图回路程序的目的。
81.每个标签节点自带 /-符号折叠的功能,单击符号即可控制标签匹配程序是否折叠,标签嵌套层次关系通过树状连线展示。折叠展开模块可以扩展可视化编辑区域,有利于提高逻辑层次结构。
82.以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉该技术的人在本发明所揭露的技术范围内,均可想到的变化或替换都涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求保护的范围为准。
转载请注明原文地址:https://tc.8miu.com/read-2032.html