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

数字孪生的表示和命名方法与流程

2021-12-17 22:05:00 来源:中国专利 TAG:


1.本发明涉及计算机网络技术领域,尤其涉及一种数字孪生的表示和命名方法。


背景技术:

2.随着大量具备感知、推理和执行等能力的智能体逐渐成为人类生产生活要素,智能体与人以及智能体之间的交互协作频繁,虚拟空间与物理空间日益交互融合,网络从传统信息传输向提供人、机、物融合的新型智能体信息服务转变。但现有网络空间与物理空间阻隔,在形成信息传输、智能决策、在线控制的智能体闭环信息服务方面效率低下。目前主要存在着难以支持物理实体的数字化和智能化表达、难以满足跨空间的高效智能信息服务要求等难题。
3.为了更好地实现无人驾驶、智能制造等新型应用,需要物理空间和网络空间的深入交互和融合。数字孪生是充分利用物理模型、传感器更新、运行历史等数据,集成多学科、多物理量、多尺度、多概率的仿真过程,在虚拟空间中完成映射,从而反映相对应的实体装备的全生命周期过程。通过在物理空间和数字空间之间构建交互环路,实现对物理实体的全方面、实时、准确数字表示,数字孪生体可以在虚拟空间内达成对物理空间实体的复制和互动。通过数字孪生技术可以极大提升物理空间和网络空间之间的信息传递效率,实现不同场景中各类资源的高效整合、组织和调度,从而达成虚实之间的深度协同合作、提高任务执行效率。
4.数字孪生技术是一种展示虚实空间合作可能性的优秀思想,但是,现有的数字孪生实现技术引入到网络空间中时,表示与命名体系不够清晰,不能很好地表现出层次关系,无法有效实现成虚实之间的深度协同合作,任务执行效率也有待提升。


技术实现要素:

5.本发明的目的是提供一种新型的数字孪生的表示方法和命名方法,能全面、准确、唯一地表示数字孪生体,以及数字孪生体组件之间的关系,更准确反映物理空间的真实情况,更好的整合实际场景的资源。
6.本发明的目的是通过以下技术方案实现的:
7.一种数字孪生的表示和命名方法,包括:
8.对不同类的物理实体分别建模为数字孪生体,每一数字孪生体包含若干组件,每一组件包括:数据和/或函数;所述数据为相应物理实体的描述数据和/或状态数据,所述函数为相应物理实体的所能提供的服务或者物理特性;
9.采用设定方式对数字孪生体命名,数字孪生体所包含的组件均基于组件id进行唯一命名,属于同一数字孪生体的组件以分布式的形式存放在网络中的不同节点或服务器上,或者集中式的存放在同一个物理位置上。
10.由上述本发明提供的技术方案可以看出,一方面,数字孪生体表示形式存储结构清晰,支持数字孪生体的嵌套,提供方便调用的接口,可以容易地查看数字孪生体的相关信
息,并使用其提供的服务功能,为上层服务的调用需求建立了基础,孪生体组件支持集中式和分布式的存放,适合网络中灵活的存在形式,方便了孪生体在网络中的存储;另一方面,能够更好的整合实际场景的资源,保障任务执行效率。
附图说明
11.为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
12.图1为本发明实施例提供的一种数字孪生的表示和命名方法的流程图;
13.图2为本发明实施例提供的组件属性示意图;
14.图3为本发明实施例提供的数字孪生体中不同组件在网络中灵活存储或运行在不同的物理位置示意图;
15.图4为本发明实施例提供的merkle树结构中产生错误的表现的示意图;
16.图5为本发明实施例提供的车辆个体的部分数字孪生体组件形式示意图。
具体实施方式
17.下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
18.为了将物理实体的数字孪生体顺利引入到网络空间当中,实现物理空间和网络空间融合类型的信息应用,本发明实施例提供一种新型的数字孪生的表示和命名方法,设计了数字孪生在网络中的表示形式和命名方式,使得网络中的数字孪生体能够被管理与调用以支持服务。设计数字孪生在网络中的表示形式的目的在于确保数字孪生体的存储形式,为网络中不同的数字孪生体或其他个体提供设计好的服务接口,允许网络中面向数字孪生体的服务的调用,为数字孪生层向上层架构进一步提供服务作功能支撑。
19.首先对本文中可能使用的术语进行如下说明:
20.术语“和/或”是表示两者任一或两者同时均可实现,例如,x和/或y表示既包括“x”或“y”的情况也包括“x和y”的三种情况。
21.术语“包括”、“包含”、“含有”、“具有”或其它类似语义的描述,应被解释为非排它性的包括。例如:包括某技术特征要素(如原料、组分、成分、载体、剂型、材料、尺寸、零件、部件、机构、装置、步骤、工序、方法、反应条件、加工条件、参数、算法、信号、数据、产品或制品等),应被解释为不仅包括明确列出的某技术特征要素,还可以包括未明确列出的本领域公知的其它技术特征要素。
22.下面对本发明所提供的一种数字孪生的表示和命名方法进行详细描述。本发明实施例中未作详细描述的内容属于本领域专业技术人员公知的现有技术。本发明实施例中未注明具体条件者,按照本领域常规条件或制造商建议的条件进行。
23.如图1所示,一种数字孪生的表示和命名方法,包括如下步骤:
24.1、对不同类的物理实体分别建模为数字孪生体,每一数字孪生体包含若干组件,每一组件包括:数据和/或函数;所述数据为相应物理实体的描述数据和/或状态数据,所述函数为相应物理实体的所能提供的服务或者物理特性。
25.本发明实施例中,将各类物理实体分别建模为数字孪生体,数字孪生体是网络空间中物理实体的一种表现形式,一个网络中的数字孪生体,不仅仅包含数据,比如该物理实体的描述和状态数据,还包含某些功能,比如该物理实体能提供的特定服务或者物理特性,可以用一个函数表示。因此,为实现这样的数字孪生体在网络信息系统中的存在,对于设计了相关的数据结构,并建立相关的命名体系。
26.如之前所述,组件可以是数据,也可以是函数,当然也可以是数据与函数的;对于组件是数据与函数这一情况,表示组件也是一个数字孪生体。
27.2、采用设定方式对数字孪生体命名,数字孪生体所包含的组件均基于组件id进行唯一命名,属于同一数字孪生体的组件以分布式的形式存放在网络中的不同节点或服务器上,或者集中式的存放在同一个物理位置上。
28.为了更加清晰地展现出本发明所提供的新型技术方案及所产生的技术效果,下面从数字孪生的表示形式、数字孪生的组织形式以及数字孪生的命名与调用三个部分进行介绍。
29.一、数字孪生的表示形式。
30.为了准确刻画数字孪生体,需要给数字孪生体设计具有通用特征、规范化、多关键字索引的数据结构。本发明实施例中,参照面向对象程序设计语言中类(class)的思想,也可以将每类数字孪生看作一个类,每个数字孪生的实例就是由这个类生成的对象(object),在数字孪生类中,其成员包括一些数据和一些函数(即组件),甚至还可以包括其它数字孪生类。
31.本发明实施例中,孪生体个体及其所属组件均基于组件id进行唯一命名,同时针对每个组件由系统生成对应的校验数据,用于完整性校验。校验数据是依据组件的数据内容计算得到的散列值,与组件的数据内容一同组成一个组件结构;所述组件的数据内容即为组件所包含的内容,例如,当组件包括数据时,其数据内容即为对应的数据;当组件包括函数时,其数据内容即为对应的函数;当组件包括数据与函数时,其数据内容即为对应的数据与函数。
32.考虑到数字孪生中各成员对外的访问权限,本发明实施例中,将孪生体数据结构中的组件属性分为私有属性(private)、公共属性(public)和受保护属性(protect)。
33.如图2所示,所述私有属性由数字孪生体的具体类型决定,包含数字孪生体的私有信息,只有通过个体本身才具有访问权限,是比较隐私的数据;以车辆为例,构建数字孪生体时,组件的私有属性包括:车辆数据、可用服务、连接属性等。所述公共属性为所有数字孪生体拥有的属性,包含数字孪生体在网络中的使用信息,以车辆为例,公共属性包括:所有者,使用情况,基础信息等;任何外部模块或组件都能够访问,是数字孪生体能够对外公开的表现自身身份和特征的信息,包括访问接口的描述。受保护属性为数字孪生体的继承关系进行服务,允许所有者或具有继承关系的其他数字孪生体访问,使得孪生体迭代升级更方便,以车辆为例,受保护属性包括:零部件验证码、部分数据库等。
34.如之前所述,数字孪生类可以包括其他数字孪生类,也就是说,允许数字孪生体在
创建过程中设置其他孪生体为所有者,形成从属关系,与类的性质相同,数字孪生体是可以嵌套的,一个孪生体中的一项组件也可以是一个数字孪生体形式(即前文所述的组件包括数据与函数这一情况);或是基于一个类,以继承的方式批量生成相近属性类别的数字孪生体(后文有相关的示例说明)。
35.另外,为了更好地在网络信息系统中表现物理实体的属性,准确地描述物理实体中包含的组件之间的关系,建模数字孪生体的过程中,如果组件对应的物理实体之间存在配合关系,则增加表示不同组件之间的连接关系及连接属性的描述,并作为数字孪生体的一个组件形式存在。具体的,本发明实施例设计了一种孪生体所属数据,代表连接关系描述数据,表达孪生体不同组件模块之间的连接关系及连接属性。以车辆为例,依据物理实体包含的组件的连接情况,车辆的数字孪生体所属的组件包括引擎、轮胎、轮轴等。作为行驶过程中存在配合的组件,在孪生网络中也需要考虑这些组件的连接,伴随每一个组件的连接关系描述数据能够向网络信息系统说明组件之间的连接属性,保证连接的稳定。
36.二、数字孪生的组织形式。
37.如之前所述,从属于同一数字孪生体的数据和函数以分布式的形式存放在网络中的不同节点或服务器上,或者集中式的存放在本地的同一个物理位置上,在被需求时能够被访问到即可,如图3所示,以车辆为例,给出了相关组件在网络中存放的形式。另外,孪生体所属的函数有静态代码状态与唤醒态两种表现状态,即:可以是以静态代码的形式存放,在需要的时候被唤醒运行;当唤醒之后,一般运行在内存中,提供接口使得访问者可以调用函数获取结果。
38.为了支持孪生体数据内容的灵活的查询与修改,本发明实施例中,利用数字孪生体命名以及组件id构建merkle树(具体是以命名的关键字构建)作为数字孪生体的存储结构,将数字孪生体的每一组件作为一个叶节点,组件的校验数据作为叶节点上的哈希值,从而计算得到各中间层以及根节点的哈希值。采用merkle树结构辅助建立的命名体系,一方面,保证接口调用难度低,表示难度低;另一方面,保障了孪生体数据的安全性,提供安全校验能力。
39.当数字孪生体主动进行数据内容更新操作时,基于merkle树的机制,自更新处节点至根节点逐层进行哈希值的重新更新与校验,最后对根节点进行一次认证,代表数据内容更新的完成。在上述流程下,当出现意外或恶意被修改的内容时,哈希值虽然会重新计算,但无法通过认证,可以容易地检查出出错位置。
40.如图4所示,当某一个叶节点的哈希值发生变化后,将会连锁引发一系列哈希值变化直至根节点,安全校验模块(设置在网络层中,是数字孪生体外部的管理模块)能够发现根节点哈希值的意外变更,从而逐层寻找到最原始的变更点,通过备份等方式恢复数据。
41.三、数字孪生的命名和调用方式。
42.本发明实施例中,可以基于数据结构本身的传统层次化命名方式对数字孪生体命名,即在创建时直接进行名称设置,不做其他计算操作,便于进行直接调用与属主的判断,保证继承关系。此外,考虑完整性与安全性服务的需求,虽然设计了唯一生成的校验码,但是只将它作为伴随的特殊关键字,围绕校验码建立merkle树结构存放,完成认证保护的功能。
43.为了实现数字孪生体的调用,在服务器上存放一个包括组件命名name、组件id和
地址的对应关系的数据表,通过组件命名name在数据表中查询对应的组件id和地址,来获取相应的数据和/或调用相应的函数;其中,组件命名name为对应组件的名称,包括:数据name与函数name,数据name与函数name可以直接利用数据与函数进行命名;具体来说:
44.1)当对数字孪生体所属的数据产生访问需求时,判断数据是能够直接读取或时需要调用相关函数来获取,之后,根据数据name或函数name,在数据表中查询对应的组件id(查询组件id主要起验证作用)与地址,再通过地址来完成访问,获取相应的数据。
45.2)当对数字孪生体所属的函数产生调用需求时,通过函数name,在数据表中查询对应组件id与地址,再通过地址进行函数的访问调用。
46.如图5所示,以车辆为例,给出了相应数字孪生体的命名及部分组件形式的示例;车辆本身直接命名为car,所属数据有car.owner,car.length等,对应车辆所有者,车辆长度,提供car.light_control(),car.get_location()等函数,分别用于车灯控制,车辆位置获取,因此,将以上两类数据、两类函数都各自作为一个组件,可以直接调用以获取该数字孪生体对应的物理实体车辆的数据或操作物理实体车辆;此外,车辆内的某个部分也可以是一个数字孪生体的形式,拥有自己的所属数据和函数,例如车辆的发动机可以是一个数字孪生体,命名为car.engine,拥有car.engine.code,car.engine.get_rotation_speed()等数据与函数,支持使用者直接进行调用。需要说明的是,图5仅给出部分组件的示例,具体组件数目及内容可根据实际情况来调整。
47.为了便于理解,下面仍然以车辆为例提供一个完整的示例。
48.在汽车工厂中,对某一种特定型号(例如,1型)的车辆设计进行数字孪生建模,即将1型作为一个类,命名为car_v1。每一辆生产出来的1型车都是从car_v1继承的对象,即前文提及的以继承的方式批量生成相近属性类别的数字孪生体,此方式生成的数字孪生体都是独立的个体,对应有独立的实际车辆个体。一些车辆内部使用的服务参数分配成私有属性,例如本车型的尺寸数据,而车辆的基础公开情报分配成公共属性,例如车辆的所有者。
49.考虑到可能发生的车辆设计的升级优化,例如从car_v1改装为car_v2,对于一些在车型升级中不会进行改动的数据,为了访问方便是不适用私有属性的,所以应该将其分配为protect属性,既保证了隐私性,也允许1型车与2型车之间继承关系的存在。
50.车辆所属的数据可能是静态的,例如车辆的尺寸数据,可以通过car.length.data,car.width.data直接调用。对于动态数据,例如车辆的实时位置,由于设计上的需求,不能让其以一个频繁修改的car.location形式(静态数据的形式)进行存储,而是提供car.get_location.function()函数,以静态的函数来获取动态的数据。
51.对于数字孪生体中的每个组件,都会计算生成唯一的组件id,例如car.length.hash,car.get_location.hash,这些散列值建立merkle树后计算得到的根节点值存放到car.root中(car.root是孪生体car中一项名称为root的组件,内容为前面提到的merkle树的根节点的数值),只需要观测car.root即可了解到数据是否产生变化。
52.对于一些存在隐私权限设置的静态数据例如车辆的里程,并不是直接公开的数据,其命名为car.mileage。该类数据的访问也需要通过函数进行,调用car.get_mileage.function()函数,可以得到返回值为里程的数值。
53.在网络节点上,根据存放的id

地址对应表,可以通过组件id查询到相应的物理地址,从而实现数据的访问,同时支持访问分布式存放的孪生体所述内容。
54.对于车辆的数字孪生体所属的组件,包括引擎、轮胎、轮轴等,在物理实体上它们存在连接关系,在网络中也需要考虑连接关系的描述。所以在孪生网络中考虑这些组件的连接时,通过伴随每一个组件的连接关系描述数据来在网络中表示组件之间的连接属性,如car.engine.connect_info形式,就作为描述引擎与其他组件的连接关系的数据,且每个存在连接关系的组件中都会存在连接属性进行关系描述。
55.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例可以通过软件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,上述实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd

rom,u盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
56.以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
再多了解一些

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

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

相关文献