管网拓扑关系的数据处理方法、装置和电子设备与流程

文档序号:17722925发布日期:2019-05-22 02:18阅读:401来源:国知局
管网拓扑关系的数据处理方法、装置和电子设备与流程

本发明涉及暖通技术领域,具体涉及一种管网拓扑关系的数据处理方法、装置和电子设备。



背景技术:

管网运行状况的监测和管理是机电系统的智能化运维的重要组成部分,基于管网拓扑关系网络可对机电系统进行安全监测、负荷计算、故障诊断以及优化调控等。

目前获取管网拓扑关系网络主要采用人工读图录入的方法和基于连接标记的模型识别方法。其中,人工读图录入的方法需要具有相关专业知识的工程师,通过查阅设计或施工图纸以及相关工程资料,才能确定管网的连接关系,并将这种连接关系手工输入到计算系统中。人工读图录入的方法必须依赖有经验、有专业知识的工程师,同时在大规模的复杂工程应用中不可复制,工作效率低。基于连接标记的模型识别方法是在给定的三维模型中人为对关键构件做连接标记,通过对构件的属性赋值的方式,标记出每个构件与之相连接的其余构件编码或名称。计算机程序识别模型中的关键构件,读取构件的名称、编码和连接标记属性,从而识别出管网连接关系。模型中的每一个关键构件都需要标记,并且每一个关键构件的标记内容不一样,标记工作的工作量大,不可复制,工作效率低。



技术实现要素:

有鉴于此,本发明提供一种管网拓扑关系的数据处理方法、装置和电子设备,可以快速、准确的获取到预定管网模型的拓扑关系网络。

第一方面,本发明实施例提供了一种管网拓扑关系的数据处理方法,包括:

获取预定管网模型中的所有构件及每个构件的类别;

根据所述构件的类别对所述构件标记属性标签,所述属性标签包括start、end、connect和device中的至少一种属性;

获取起点集合;

以所述起点集合中的每一个包括start属性的构件为起点遍历所述管网模型,提取从自身出发的全部不重合路径,得到所有路径的集合;

获取所有路径中有效节点之间的连接关系和有效节点与满足预定条件的连接节点之间的连接关系,形成拓扑关系数组集合。

优选地,所述起点集合包括多个不同的子集合,其中,每个子集合内的构件都具有相同的属性标签;

所述方法还包括:

当所述起点集合只包括{device}子集合和/或{connect}子集合时,停止数据处理;

当所述起点集合内的所有子集合中的构件均没有start属性,且至少一个子集合中的构件包括end属性时,将所述包括end属性的构件的end属性重新标记为start属性,形成包括start属性的构件的子集合。

优选地,所述方法还包括:

当所述起点集合只包括device属性标签的构件和/或connect属性标签的构件时,停止数据处理;

当所述起点集合内的所有构件的属性标签中均不包括start属性且至少一个构件的属性标签中包括end属性时,将构件的属性标签中的end属性重新标记为start属性,形成包括start属性的构件的起点集合。

优选地,以所述起点集合中的每一个包括start属性的构件为起点遍历所述管网模型,提取从自身出发的全部不重合路径,得到所有路径的集合包括:

以所述起点集合中的每一个包括start属性的构件为起点遍历管网模型,当遍历到包括end属性的构件时,停止遍历当前路径,形成所述起点构件的路径;

以所述起点集合中的每一个包括start属性的构件为起点遍历管网模型,当遍历到至少一个属性标签为{start}或{device}或{connect}或{start,device}的构件后就遍历不到其它任何构件时,停止遍历当前路径,形成所述起点构件的路径;

以所述起点集合中的每一个包括start属性的构件为起点遍历管网模型,当遍历到所述起点构件自身时,停止遍历当前路径。

优选地,所述获取所有路径中有效节点之间的连接关系和有效节点与满足预定条件的连接节点之间的连接关系,形成拓扑关系数组集合包括:

将每个所述路径中包括start属性、end属性和device属性的构件标记为所述路径中的有效节点,其余构件标记为连接节点;

将所有路径依次两两比较,确定两个所述路径的连接关系;

将所有路径中不满足预定条件的连接节点去除。

优选地,所述将所有路径依次两两比较,确定两个所述路径的连接关系包括:

当两个所述路径没有相同的有效节点时,两个所述路径相互独立;

当两个所述路径具有相同的有效节点且具有相同的连接节点时,将所述相同的连接节点重新标记为并联节点。

优选地,所述满足预定条件的连接节点为并联节点。

第二方面,本发明实施例提供了一种管网拓扑关系的数据处理装置,包括:

第一获取单元,用于获取预定管网模型中的所有构件及每个构件的类别;

标记单元,用于根据所述构件的类别对所述构件标记属性标签,所述属性标签包括start、end、connect和device中的至少一种属性;

第二获取单元,用于获取起点集合;

遍历单元,用于以所述起点集合中的每一个包括start属性的构件为起点遍历所述管网模型,提取从自身出发的全部不重合路径,得到所有路径的集合;

拓扑关系提取单元,用于获取所有路径中有效节点之间的连接关系和有效节点与满足预定条件的连接节点之间的连接关系,形成拓扑关系数组集合。

第三方面,本发明实施例提供一种计算机可读存储介质,其上存储计算机程序指令,其中,所述计算机程序指令在被处理器执行时实现如第一方面所述的方法。

第四方面,本发明实施例提供一种电子设备,包括存储器和处理器,所述存储器用于存储一条或多条计算机程序指令,其中,所述一条或多条计算机程序指令被所述处理器执行以实现如第一方面所述的方法。

本发明实施例通过对预定管网模型中的所有构件标记属性标签,以每一个包含有start属性的构件为起点遍历管网模型获取每一个构件的所有路径,然后获取所有路径中有效节点之间的连接关系和有效节点与满足预定条件的连接节点之间的连接关系,进而形成拓扑关系数组集合。本发明实施例可以快速、准确的获取到预定管网模型的拓扑关系网络,可复制性强,工作效率高。

附图说明

通过以下参照附图对本发明实施例的描述,本发明的上述以及其它目的、特征和优点将更为清楚,在附图中:

图1是本发明实施例的管网拓扑关系的数据处理方法流程图;

图2是本发明实施例的获取起点构件的所有路径的方法流程图;

图3是本发明实施例的形成拓扑关系网络的方法流程图;

图4是本发明实施例的确定路径之间连接关系的方法流程图;

图5是本发明实施例的管网拓扑关系的数据处理装置的示意图;

图6是本发明实施例的电子设备的示意图。

具体实施方式

以下基于实施例对本发明进行描述,但是本发明并不仅仅限于这些实施例。在下文对本发明的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本发明。为了避免混淆本发明的实质,公知的方法、过程、流程、元件和电路并没有详细叙述。

图1为本实施例的管网拓扑关系的数据处理方法流程图。如图1所示,所述数据处理方法包括:

步骤s100、获取预定管网模型中的所有构件及每个构件的类别。

获取预定管网模型中的所有构件以及每个构件的类别。在本实施例中,所述构件可以为建筑领域管网涉及到的阀门、管件、设备等。对于构件的类别,不同厂家、不同材质及应用于不同对象的具有相同功能的构件可以作为一类。例如,阀门是用来开闭管路、控制流向、调节和控制输送介质的参数(温度、压力和流量)的管路附件。塑料阀门、铸钢阀门、不锈钢阀门等都可以归为一类,所以多个构件可能属于相同的类别。在本实施例中,预定管网模型可以预先通过三维建模软件进行建模获得,所述软件可以为autodeskcad,autodeskrevit,bentley等。

步骤s200、根据所述构件的类别对所述构件标记属性标签。

根据预定管网模型中构件的类别对每一个构件标记属性标签。在本实施例中,根据专家算法可知,所述属性标签包括{start}、{end}、{device}、{connect}、{start,end}、{start,device}、{device,end}和{start,end,device},其中,start、end、connect和device为所述属性标签中的一种属性。当属性标签存在多项属性时,多项属性之间并没有前后顺序之分。在本实施例中,类别相同的多个构件具有相同的属性标签,由于每一个构件在预定管网模型中都是独立的,具有相同属性标签的构件并不会混淆。

步骤s300、获取起点集合。

将预定管网模型中所有的构件标记属性标签后,获取起点集合。

具体地,在一个优选的实施方式中,起点集合可以为预定管网模型中的所有构件的集合,即起点集合中的元素为构件。在后续步骤对起点集合进行判断时,可直接对起点集合中的构件进行判断。所述起点集合可能存在三种情况,分别为:

第一种情况:起点集合中包含有至少一个具有start属性的构件。当起点集合为第一种情况时,可对起点集合直接进行步骤s400。

第二种情况:起点集合只包括device属性标签的构件和/或connect属性标签的构件。当起点集合为第二种情况时,即起点集合中构件的组成可以包括以下几种情况:由{device}属性标签的构件组成;由{connect}属性标签的构件组成;由{device}属性标签的构件和{connect}属性标签的构件组成。

由于步骤s400是以具有start属性的构件为起点遍历所述管网模型,获取所有不重合的路径,因此,当起点集合为第二种情况时,起点集合内并没有具有start属性的构件,无法遍历管网模型。此时,管网模型存在错误或者起点集合内的构件在进行标记属性标签时出现错误,因此,系统会自动停止进行后续的数据处理,停止提取管网拓扑关系。

第三种情况:起点集合中不包含具有start属性的构件,但包含有至少一个具有end属性的构件。

当起点集合为第三种情况时,即起点集合中构件的组成可以包括以下几种情况:由{end}属性标签的构件组成;由{end}属性标签的构件和{device,end}属性标签的构件组成;由{device,end}属性标签的构件组成。

当起点集合内的构件由上述构件组成时,首先将起点集合内属性标签中的end属性重新标记为start属性,形成包括start属性的构件的起点集合。此时,可以对重新形成的起点集合执行步骤s400。

在另一个优选的实施方式中,所述起点集合可以包括多个不同的子集合。其中,每个子集合内的构件都具有相同的属性标签。也就是说,根据构件的属性标签统计每种标签的构件数量,预定管网模型中具有相同属性标签的构件形成为一个子集合。例如,当预定管网模型包括20个{start}属性标签的构件、30个{end}属性标签的构件、20个{device}属性标签的构件、30个{connect}属性标签的构件时,起点集合中包括四个子集合,分别是{start}子集合、{end}子集合、{device}子集合和{connect}子集合。其中,{start}子集合内包括20个{start}属性标签的构件;{end}子集合内包括30个{end}属性标签的构件;{device}子集合包括20个{device}属性标签的构件;{connect}子集合包括30个{connect}属性标签的构件。在后续步骤对起点集合进行判断时,可直接对起点集合中的子集合进行判断。所述起点集合可能存在三种情况,分别为:

第一种情况:起点集合内包括{start}子集合、{start、end}子集合、{start、device}子集合、{start、end、device}子集合中的至少一个。也就是说,起点集合内包括具有start属性的构件,可对起点集合直接执行步骤s400。

第二种情况:起点集合内只包括{device}子集合和/或{connect}子集合时。也就是说,起点集合内没有具有start属性的构件,也没有具有end属性的构件,说明管网模型存在错误或者起点集合内的构件在进行标记属性标签时出现错误,因此,系统会停止进行后续的数据处理,停止提取管网拓扑关系。

第三种情况:起点集合内不包括具有start属性的子集合,包括{end}子集合和{device、end}子集合中的至少一种。此种情况下将子集合中包括end属性的构件的end属性重新标记为start属性,形成包括start属性的构件的子集合。然后,可以对重新形成的起点集合执行步骤s400。

步骤s400、以所述起点集合中的每一个包括start属性的构件为起点遍历所述管网模型,提取从自身出发的全部不重合路径,得到所有路径的集合。

将起点集合内的每一个包括start属性的构件作为起点(即将管网模型中标签含有start属性的每个构件作为起点),寻找管网模型中与所述起点构件依次相连接的构件,并依此遍历下去,形成起点构件的所有路径。在本实施例中,每一个起点构件可以存在多条不重合的路径。

在一个优选实施例中,如图2所示,获取每一个起点构件的所有路径的方法包括:

步骤s410、以所述起点集合中的每一个包括start属性的构件为起点遍历管网模型。

步骤s420、当遍历到包括end属性的构件时,停止遍历当前路径,形成所述起点构件的路径。

将管网模型中包含有start属性的构件作为起点开始遍历管网模型,寻找与该构件依次相连接的构件,当沿某一路径依次寻找到包含end属性的构件时,表示当前路径寻找完成,将该路径输出。然后,继续以该起点构件为起点寻找其它不重合的路径。

步骤s430、当遍历到至少一个属性标签为{start}或{device}或{connect}或{start,device}构件后就遍历不到其它任何构件时,停止遍历当前路径,形成所述起点构件的路径。

将管网模型中包含有start属性的构件作为起点开始遍历管网模型,寻找与该构件依次相连接的构件,当寻找到至少一个标签为{start}或{device}或{connect}或{start,device}构件后就寻找不到其它任何与之连接的构件时,表示当前路径终止,将该路径输出。然后,继续以起点寻找其它路径,直至输出全部的路径。

在本实施例中,每一个包含有start属性的构件的路径可能存在多条,因此在遍历管网模型时,每一个起点构件可以同时寻找到多条路径,多条路径中包括步骤s420中形成的路径和步骤s430中形成的路径。本领域技术人员应理解,所述步骤s420和步骤s430仅表示两种路径的形成方式,在实际处理过程中,步骤s420和步骤s430是两个并列的遍历步骤,可以同时进行遍历寻找所有路径。

步骤s440、当遍历到所述起点构件自身时,停止遍历当前路径。

将管网模型中包含有start属性的构件作为起点开始遍历管网模型,寻找与该构件依次相连接的构件,当最终寻找到该起点构件自身时,表明该路径是一个环形路径,继续遍历,是重复环形路径,此路径为无效路径,可以直接舍弃。然后寻找其它路径。本领域技术人员应理解,步骤s420、步骤s430和步骤s440仅表示在遍历过程中判断路径存在的三种方式,并不具有先后顺序。在实际处理过程中,步骤s420、步骤s430和步骤s440是三个并列的遍历步骤,可以同时进行遍历寻找起点构件的所有路径。

步骤s500、获取所有路径中有效节点之间的连接关系和有效节点与满足预定条件的连接节点之间的连接关系,形成拓扑关系数组集合。

具体地,在一个优选实施例中,如图3所示,步骤s500可以包括:

步骤s510、将每个所述路径中包括start属性、end属性和device属性的构件标记为所述路径中的有效节点,其余构件标记为连接节点。

具体地,将步骤s400中获取到的每一条路径进行分段处理,提取每条路径中的所有构件,将路径中包含start属性、end属性和device属性的构件标记为当前路径中的有效节点,每个路径的有效节点可以形成一个有效节点集。剩余的构件即属性标签为{connect}的构件标记为连接节点。

例如,路径li:v1---l1---v2---l2---……---vk-1---lk-1---vk---lk

其中,v1,v2……vk是有效节点,l1,l2,…lk是li中的连接节点,所述连接节点均由属性标签为{connect}的构件组成。

步骤s520、将所有路径依次两两比较,确定两个所述路径的连接关系。

将所有路径依次两两比较,所述比较包括有效节点之间的比较,以及连接节点之间的比较,通过两两比较可以确定两个路径之间的连接关系。具体地,如图4所示,确定路径之间的连接关系的方法包括:

步骤s521、当两个所述路径没有相同的有效节点时,两个所述路径相互独立。

将两个路径进行比较,当两个路径没有相同的有效节点时,即当两个路径中没有相同的构件(构件是指可以标记为有效节点的构件)时,说明两个路径为完全相互独立的路径。

步骤s522、当两个所述路径具有相同的有效节点且具有相同的连接节点时,将所述相同的连接节点重新标记为并联节点。

将两个路径进行比较,当两个路径具有相同的有效节点且具有相同的连接节点时,说明两个路径中在某一连接节点处并联,将相同的连接节点重新标记为并联节点。

本领域技术人员应理解,步骤s521和步骤s522仅表示两个路径在进行比较时的两种连接关系,并不具有先后顺序。在实际处理过程中,步骤s521和步骤s522可以是两个并列的比较判断步骤。

步骤s530、将所有路径中不满足预定条件的连接节点去除。

将所有路径中不满足预定条件的连接节点去除后,只剩下有效节点以及满足预定条件的连接节点,由此可以获取所有路径中有效节点之间的连接关系和有效节点与满足预定条件的连接节点之间的连接关系,进而形成拓扑关系数组集合。

在本实施例中,所述满足预定条件的连接节点是指在步骤s522中将连接节点重新标记为并联节点的构件。将路径中不满足预定条件的连接节点去除,可以获得路径中有效节点之间的连接关系和/或有效节点与并联节点之间的连接关系,然后就可以将有效节点之间的连接关系和有效节点与并联节点之间的连接关系形成最终的拓扑关系网络,通过数组集合的形式进行提取。

例如,路径li:vi---lk---vj

其中,vi与vj通过一个连接节点lk相连,vi和vj是有效节点或并联节点。

将路径li的连接节点lk去掉后,保留vi与vi的连接关系,记为(vi,vj),输出所有保留下来的连接关系,所有保留下来的连接关系数组集合即为拓扑关系网络中的识别的最终结果。

图5是本发明实施例的管网拓扑关系的数据处理装置的示意图。如图5所示,本实施例的数据处理装置包括第一获取单元51、标记单元52、第二获取单元53、遍历单元54和拓扑关系提取单元55。第一获取单元51用于获取预定管网模型中的所有构件及每个构件的类别。标记单元52用于根据所述构件的类别对所述构件标记属性标签,所述属性标签包括start、end、connect和device中的至少一种属性。第二获取单元53用于获取起点集合。遍历单元54用于以所述起点集合中的每一个包括start属性的构件为起点遍历所述管网模型,提取从自身出发的全部不重合路径,得到所有路径的集合;所述拓扑关系提取单元55用于获取所有路径中有效节点之间的连接关系和有效节点与满足预定条件的连接节点之间的连接关系,形成拓扑关系数组集合。

图6是本发明实施例的电子设备的示意图。图6所示的电子设备为通用数据处理装置,其包括通用的计算机硬件结构,其至少包括处理器61和存储器62。处理器61和存储器62通过总线63连接。存储器62适于存储处理器61可执行的指令或程序。处理器61可以是独立的微处理器,也可以是一个或者多个微处理器集合。由此,处理器61通过执行存储器62所存储的指令,从而执行如上所述的本发明实施例的方法流程实现对于数据的处理和对于其它装置的控制。总线63将上述多个组件连接在一起,同时将上述组件连接到显示控制器64和显示装置以及输入/输出(i/o)装置65。输入/输出(i/o)装置65可以是鼠标、键盘、调制解调器、网络接口、触控输入装置、体感输入装置、打印机以及本领域公知的其他装置。典型地,输入/输出装置65通过输入/输出(i/o)控制器66与系统相连。优选地,本实施例的电子设备为服务器。

同时,如本领域技术人员将意识到的,本发明实施例的各个方面可以被实现为系统、方法或计算机程序产品。因此,本发明实施例的各个方面可以采取如下形式:完全硬件实施方式、完全软件实施方式(包括固件、常驻软件、微代码等)或者在本文中通常可以都称为“电路”、“模块”或“系统”的将软件方面与硬件方面相结合的实施方式。此外,本发明的方面可以采取如下形式:在一个或多个计算机可读介质中实现的计算机程序产品,计算机可读介质具有在其上实现的计算机可读程序代码。

可以利用一个或多个计算机可读介质的任意组合。计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。计算机可读存储介质可以是如(但不限于)电子的、磁的、光学的、电磁的、红外的或半导体系统、设备或装置,或者前述的任意适当的组合。计算机可读存储介质的更具体的示例(非穷尽列举)将包括以下各项:具有一根或多根电线的电气连接、便携式计算机软盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或闪速存储器)、光纤、便携式光盘只读存储器(cd-rom)、光存储装置、磁存储装置或前述的任意适当的组合。在本发明实施例的上下文中,计算机可读存储介质可以为能够包含或存储由指令执行系统、设备或装置使用的程序或结合指令执行系统、设备或装置使用的程序的任意有形介质。

计算机可读信号介质可以包括传播的数据信号,所述传播的数据信号具有在其中如在基带中或作为载波的一部分实现的计算机可读程序代码。这样的传播的信号可以采用多种形式中的任何形式,包括但不限于:电磁的、光学的或其任何适当的组合。计算机可读信号介质可以是以下任意计算机可读介质:不是计算机可读存储介质,并且可以对由指令执行系统、设备或装置使用的或结合指令执行系统、设备或装置使用的程序进行通信、传播或传输。

可以使用包括但不限于无线、有线、光纤电缆、rf等或前述的任意适当组合的任意合适的介质来传送实现在计算机可读介质上的程序代码。

用于执行针对本发明各方面的操作的计算机程序代码可以以一种或多种编程语言的任意组合来编写,所述编程语言包括:面向对象的编程语言如java、smalltalk、c++等;以及常规过程编程语言如“c”编程语言或类似的编程语言。程序代码可以作为独立软件包完全地在用户计算机上、部分地在用户计算机上执行;部分地在用户计算机上且部分地在远程计算机上执行;或者完全地在远程计算机或服务器上执行。在后一种情况下,可以将远程计算机通过包括局域网(lan)或广域网(wan)的任意类型的网络连接至用户计算机,或者可以与外部计算机进行连接(例如通过使用因特网服务供应商的因特网)。

上述根据本发明实施例的方法、设备(系统)和计算机程序产品的流程图图例和/或框图描述了本发明的各个方面。将要理解的是,流程图图例和/或框图的每个块以及流程图图例和/或框图中的块的组合可以由计算机程序指令来实现。这些计算机程序指令可以被提供至通用计算机、专用计算机或其它可编程数据处理设备的处理器,以产生机器,使得(经由计算机或其它可编程数据处理设备的处理器执行的)指令创建用于实现流程图和/或框图块或块中指定的功能/动作的装置。

还可以将这些计算机程序指令存储在可以指导计算机、其它可编程数据处理设备或其它装置以特定方式运行的计算机可读介质中,使得在计算机可读介质中存储的指令产生包括实现在流程图和/或框图块或块中指定的功能/动作的指令的制品。

计算机程序指令还可以被加载至计算机、其它可编程数据处理设备或其它装置上,以使在计算机、其它可编程设备或其它装置上执行一系列可操作步骤来产生计算机实现的过程,使得在计算机或其它可编程设备上执行的指令提供用于实现在流程图和/或框图块或块中指定的功能/动作的过程。

本发明实施例公开了一种管网拓扑关系的数据处理方法、装置和电子设备,通过对预定管网模型中的所有构件标记标签,以包含有某一属性的标签的构件为起点遍历管网模型获取每一个构件的所有路径,然后将所有路径依次两两比较后,获取所有路径中有效节点之间的连接关系和有效节点与满足预定条件的连接节点之间的连接关系,进而形成拓扑关系网络。本发明实施例可以快速、准确的获取到预定管网模型的拓扑关系网络,可复制性强,工作效率高。

以上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域技术人员而言,本发明可以有各种改动和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1