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

DCS监视画面快速加载方法、系统、设备及存储介质与流程

2021-12-04 02:46:00 来源:中国专利 TAG:

dcs监视画面快速加载方法、系统、设备及存储介质
技术领域
1.本发明涉及计算机技术领域,具体涉及一种dcs监视画面快速加载方法、系统、设备及可读存储介质。


背景技术:

2.在火电厂分散控制系统(dcs)中,运行人员在进行画面监视过程中需要反复多次加载不同画面文件以完成对系统实时运行进行全盘监视,因此,在对实时性要求极高的火力发电厂分散控制系统中,实现监视画面的高效加载尤为重要。
3.目前火力发电分散控制系统画面加载多采用画面文件直接读取并绘制的技术路线,由于画面文件中对于画面模板的引用较为频繁,画面模板加载较为耗时,且同一画面模板可能在多个画面中反复引用。因此当反复加载引用多个模板的画面时,可能造成画面加载延迟,从而极大地降低画面加载速率,导致监视画面实时性降低。


技术实现要素:

4.本发明的目的在于提供一种dcs监视画面快速加载方法、系统、设备及可读存储介质,以克服现有技术存在的缺陷,本发明可大幅提升画面加载时效性,保证分散控制系统监视画面加载高效性与实时性。
5.为达到上述目的,本发明采用如下技术方案:一种dcs监视画面快速加载方法,包括以下步骤:s1:更新本地画面文件;s2:使用模板缓存机制读取更新后的本地画面文件,生成画面文档对象;s3:根据生成的画面文档对象,进行画面绘制,完成监视画面加载。
6.进一步地,所述更新本地画面文件具体包含以下步骤:s11:访问文件同步服务节点的画面信息库,获取当前节点需加载的画面文件记录的最新版本号,以及该版本画面文件的修改时间;s12:若s11中获取的对应版本号的画面文件不存在,或修改时间早于在步骤s11中获取的画面信息库中画面文件记录的修改时间,则从文件同步服务节点下载最新版本画面文件覆盖本地原始版本,作为更新后的本地画面文件;反之,若本地已存在画面文件且其修改时间晚于画面信息库中该画面文件记录的修改时间,则将本地已存在画面文件作为更新后的本地画面文件。
7.进一步地,所述本地画面文件以预设格式存储于本地,由具备层级结构的多个画面属性节点组成,所述画面属性节点由根节点和多个子节点组成;所述画面属性节点由节点标签和节点内容组成,所述节点标签为画面属性字段名称,所述节点内容为画面属性字段值;所述节点标签包括基本信息、图层信息、图元信息、模板信息、测点数据源信息。
8.进一步地,所述使用模板缓存机制读取更新后的本地画面文件,生成画面文档对象,具体包括以下步骤:
s21:新建画面文档对象,读取更新后的画面文件的根节点,令根节点为当前节点;s22:根据当前节点的节点标签及节点内容,为当前节点新建画面属性节点对象,并将该画面属性节点对象存入s21中新建的画面文档对象;s23:若当前节点存在未被标记为已读的子节点,则令未被标记为已读的子节点为当前节点,并标记当前节点为已读;若当前节点的节点标签不是模板信息,则执行s22;否则,使用画面模板缓存机制生成画面属性节点对象存入s21中新建的画面文档对象,执行s23;若当前节点的全部子节点均标记已读,则返回当前节点的上一级节点,若当前节点的上一级节点为根节点,则执行s3;否则,令当前节点的上一级节点为当前节点,执行s23。
9.进一步地,s22~s23中使用深度优先遍历算法对s1中更新后的画面文件的全部画面属性节点进行递归遍历,将画面属性节点结构化为画面属性节点对象,并据此生成画面文档对象。
10.进一步地,s23中所述的画面模板缓存机制即为模板的画面属性节点对象分配画面模板数据缓存区,所述画面模板数据缓存区以模板名称作为标识符,存储该模板对应的画面属性节点对象;s23中,若当前节点的节点标签为模板信息时,首先访问画面模板数据缓存区,以模板名称作为标签名,获取其对应的画面属性节点对象,若成功获取,则直接将该画面属性节点对象存入s21新建的画面文档对象;若获取失败,则从文件同步服务节点下载最新画面模板文件至本地,结构化加载画面模板文件并生成对应的画面属性节点对象,以画面模板名称作为标签名,存入画面模板数据缓存区,并将该画面属性节点对象存入s21中新建的画面文档对象。
11.进一步地,所述根据生成的画面文档对象,进行画面绘制,完成监视画面加载的具体过程为:根据生成的画面文档对象,从根节点画面属性节点对象开始,逐级遍历所有画面属性节点对象,并根据节点标签及节点内容进行画面绘制,完成监视画面加载。
12.一种dcs监视画面快速加载系统,包括:本地画面文件更新模块、画面文档对象生成模块、画面绘制模块;其中:本地画面文件更新模块:用于更新本地画面文件;画面文档对象生成模块:用于使用模板缓存机制读取更新后的本地画面文件,生成画面文档对象;画面绘制模块:用于根据生成的画面文档对象,进行画面绘制,完成监视画面加载。
13.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述一种dcs监视画面快速加载方法的步骤。
14.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现所述一种dcs监视画面快速加载方法的步骤。
15.与现有技术相比,本发明具有以下有益的技术效果:本发明使用模板缓存机制读取完成监视画面快速加载,避免在加载画面时反复加
载同一模板,保证分散控制系统监视画面加载高效性与实时性。
16.具体地,本发明方法使用模板缓存技术,利用画面模板数据缓存区对模板进行存储,并以画面模板名称作为标签名,方便画面文件读取时快速完成模板内容加载。由于在火力发电厂分撒控制系统监视画面中,模板的使用十分频繁,且同一模板可在多幅画面中频繁使用,因此,使用本方法的模板缓存技术,将避免在加载画面时反复加载同一模板,且可根据标签名迅速在缓冲区读取模板内容,可大幅提升画面加载时效性,保证分散控制系统监视画面加载高效性与实时性。
附图说明
17.说明书附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。
18.图1为本发明dcs监视画面快速加载方法流程示意图;图2为本发明dcs监视画面快速加载系统框架示意图。
具体实施方式
19.以下结合附图及具体实施例对本发明进行进一步详细说明。
20.为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
21.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
22.一种dcs监视画面快速加载方法,用于快速加载画面文件以进行画面监视,加载前更新本地画面文件,使用模板缓存机制,避免反复加载常用模板文件,大幅提升画面文件加载速度。
23.具体步骤如下:s1:更新本地画面文件;具体包含以下步骤:s11:访问文件同步服务节点的画面信息库,获取当前节点需加载的画面文件记录的最新版本号,以及该版本画面文件的修改时间;s12:若s11中获取的对应版本号的画面文件不存在,或修改时间早于在步骤s11中获取的画面信息库中画面文件记录的修改时间,则从文件同步服务节点下载最新版本画面文件覆盖本地原始版本;反之,若本地已存在画面文件且其修改时间晚于画面信息库中该
画面文件记录的修改时间,则无须从文件同步服务节点下载最新版本画面文件覆盖本地原始版本;所述本地画面文件以.xml格式存储于本地,由具备层级结构的多个画面属性节点组成,所述画面属性节点由根节点和多个子节点组成;画面属性节点由节点标签、节点内容组成,节点标签即画面属性字段名称,节点内容为画面属性字段值;其中,节点标签包括基本信息、图层信息、图元信息、模板信息、测点数据源信息;s2:利用模板缓存机制读取更新后的本地画面文件,并生成画面文档对象;具体包括以下步骤:s21:新建画面文档对象,读取画面文件根节点,令根节点为当前节点;s22:根据当前节点的节点标签及节点内容,为当前节点新建画面属性节点对象,并将该画面属性节点对象存入s21中新建的画面文档对象;s23:若当前节点存在未被标记为已读的子节点,则令未被标记为已读的子节点为当前节点,并标记当前节点为已读;若当前节点的节点标签不是模板信息,则执行s22;否则,使用画面模板缓存机制生成画面属性节点对象存入s21中新建的画面文档对象,执行s23;若当前节点的全部子节点均标记已读,则返回当前节点的上一级节点,若当前节点的上一级节点为根节点,则执行s3;否则,令当前节点的上一级节点为当前节点,执行s23;其中,s22~s23使用深度优先遍历算法对更新后的画面文件的全部画面属性节点进行递归遍历,将画面属性节点结构化为画面属性节点对象,并据此生成画面文档对象;s23中所述的画面模板缓存机制即为模板的画面属性节点对象分配数据缓存专区——画面模板数据缓存区,该缓存区以模板名称作为标识符,存储该模板对应的画面属性节点对象;s23中,若当前节点的节点标签为模板信息时,将首先访问画面模板数据缓存区,以模板名称作为标签名,获取其对应的画面属性节点对象,若成功获取,则直接将该画面属性节点对象存入s21新建的画面文档对象;若获取失败,表示画面加载过程中首次读取该画面模板信息,则从文件同步服务节点下载最新画面模板文件至本地,结构化读取画面模板文件并生成对应的画面属性节点对象,以画面模板名称作为标签名,存入画面模板数据缓存区,并将该画面属性节点对象存入s21中新建的画面文档对象;s3:根据生成的画面文档对象,进行画面绘制,完成监视画面加载与显示;具体地,s3根据s2中创建的画面文档对象,从根节点画面属性节点对象开始,逐级遍历所有画面属性节点对象,并根据节点标签及节点内容进行画面绘制,最终完成监视画面加载与显示。
24.参见图2,本发明基于上述dcs监视画面快速加载方法开发了一套dcs监视画面快速加载系统,包括本地画面文件更新模块、画面文档对象生成模块、画面绘制模块;其中:本地画面文件更新模块:用于更新本地画面文件;画面文档对象生成模块:用于利用模板缓存机制读取更新后的本地画面文件,并生成画面文档对象;画面绘制模块:用于根据生成的画面文档对象,进行画面绘制,完成监视画面加载
与显示。
25.本发明dcs监视画面快速加载方法可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。本发明dcs监视画面快速加载方法如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
26.基于这样的理解,在示例性实施例中,还提供了一种计算机可读存储介质,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于该计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读存储介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。其中,所述计算机存储介质可以是计算机能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器(例如软盘、硬盘、磁带、磁光盘(mo)等)、光学存储器(例如cd、dvd、bd、hvd等)、以及半导体存储器(例如rom、eprom、eeprom、非易失性存储器(nandflash)、固态硬盘(ssd))等。
27.在示例性实施例中,还提供计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述dcs监视画面快速加载方法的步骤。处理器可能是中央处理单元,还可以是其他通用处理器、数字信号处理器、专用集成电路、现成可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。
28.其中,中央处理单元:;数字信号处理器:;专用集成电路:;现成可编程门阵列:,fpga。
29.为了证明本发明dcs监视画面快速加载方法的效果,下用一个实例证明该技术方案的可行性。
30.一种dcs监视画面快速加载方法实例:对于画面文件graphfile1,其存储格式为标签语言,由节点标签及节点内容组成,示例格式如下:<基本信息>
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
<画面高度>1000</画面高度>
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
<画面宽度>1980</画面宽度>

</基本信息>

<图层1信息><模板信息>
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
<模板名称>template.xml</模板名称>
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
<模板位置>(300,400)</模板位置>

</模板信息><图元信息>
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
<图元a>
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
<图元位置>(400,598)</图元位置>
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
<图元尺寸>(40,40)</图元尺寸>
…ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
</图元a><图元b>
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
<图元位置>(200,508)</图元位置>
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
<图元尺寸>(30,30)</图元尺寸>
…ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
</图元b></图元信息></图层1信息>画面加载的目的就是读取该graphfile1,并将其结构化为画面文档对象graphdoc,用于dcs中进行画面绘制。基于上述画面文件graphfile1,采用深度优先遍历算法,读取节点标签及节点内容,并生成画面属性节点对象。例如对于节点“<图元信息>”,将按序遍历“<图元a>”“<图元位置>”“<图元尺寸>”等图元a的全部子节点,全部遍历完成后再以同样方式遍历“<图元b>”及其子节点。模板缓存机制用于读取节点“<模板信息>”时,读取子节点“<模板名称>”的节点内容“template.xml”,以“template.xml”作为标签名,查询画面模板数据缓存区tbuff,若查到该标签名对应的画面属性节点对象缓存tbuff[“template.xml”],则直接将该画面属性节点加入graphdoc中。若未查到该缓存,则加载模板,生成画面属性节点缓存加入tbuff,并以“template.xml”作为查询该缓存的标签名,当再次加载引用了该模板的画面时,可直接使用tbuff[“template.xml”]获取缓存,避免重复加载模板。当graphfile1全部读取完成后则graphdoc建立完毕,逐级遍历graphdoc的所有画面属性节点对象,并根据画面属性节点对象进行画面绘制,最终完成监视画面加载与显示。
[0031]
以上内容仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明权利要求书的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

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

相关文献