功能说明
创建孪生体模板
在 FactVerse Designer 中,用户可以使用两种方式来创建孪生体模板,以满足不同的需求:
1. 定制化预设模板:虚拟工厂 DLC 内置了一些常见的模板,例如工厂内常用的生成器、传送带、无人车等。用户可以从这些预设模板中选择一个作为起点,然后通过修改和编辑以适应您的特定场景和要求。这种方式使得创建孪生体模板变得简单而高效。
2. 创建全新的模板:FactVerse Designer 还支持用户从头开始创建全新的模板。您可以从添加资源开始,逐步设置模板的属性和参数。这意味着您可以根据自己的需求和想法,完全自定义和设计一个适用于特定场景的模板。您可以添加所需的组件、定义其属性和行为,以创建一个全新的、符合您需求的模板。
示例 1:定制化预设的暂存区模板
本例中将使用虚拟工厂 DLC 中的暂存区模板,创建一个定制化的暂存区模板,以支持用户在使用由该模板创建的暂存区时,能够修改“货物宽度”、“货物长度”和“货物高度”属性值。
具体步骤如下:
1. 点击主页左侧孪生体模板下方的【打开】按钮,打开模板编辑器。

2. 在模板选择窗口中选择“暂存区”模板(<DLC存储路径>/DLC/TwinTemplate/暂存区),点击【打开】按钮,在模板编辑器中打开“暂存区”模板。

3. 在孪生体模板窗格中,选中“存储”结构下的“货物宽度”。在右侧属性区,勾选是否在孪生体中显示选项。勾选此项后,用户可以在使用此模板生成的暂存区时编辑暂存区可容纳的货物宽度值。

4. 在孪生体模板窗格中,选中“存储”结构下的“货物长度”。在右侧属性区,勾选是否在孪生体中显示选项。
5. 在孪生体模板窗格中,选中“存储”结构下的“货物高度”。在右侧属性区,勾选是否在孪生体中显示选项。
6. 点击文件菜单,选择另存为,打开保存窗口,进行模板的另存。

7. 在保存窗口中,填写模板名称为“暂存区模板”,选择存储位置后,点击【保存】按钮完成模板的保存。
示例 2:创建全新的生成器模板
本节中将通过创建一个全新的生成器模板的示例,介绍新建模板的基本流程。
新建生成器模板
1. 点击主页左侧孪生体模板下方的【新建】,打开模板编辑器。

2. 在模板编辑器中,从资源库中将要使用的模型资源拖拽到场景区中。此例中使用生成器模型 “Creator” (<DLC存储路径>/DLC/model/creator)。

3. 点击资源库窗格中的工具标签,在数字孪生内容类别中找到下列资源并分别将其拖拽到场景中。
-
- 名称面板
- 进度条
- 出口
添加完成后,在孪生体模板窗格中的资源栏下可以看到场景中所有资源。

4. 在场景区中,拖拽名称面板、进度条和出口,将其放置到生成器周围合适的位置。

5. 点击工具栏中的【保存】按钮,打开保存窗口。
6. 在保存窗口中,输入模板信息后点击【保存】按钮。

-
- 名称:孪生体模板的名称。注意:模板名称需唯一。
- 存储位置:孪生体模板存储位置。
7. 在保存成功的提示信息窗口中,点击【确定】按钮,完成模板上传。

添加主功能结构
1. 在孪生体模板窗格中,点击元数据旁的︙,选择添加结构。

2. 下拉滚动条找到新添加的结构 “Part_1”,点击“Part_1”,在属性区修改结构名称为“主功能”。

3. 点击“主功能”结构旁的︙,在列表中选择添加属性选项,属性数据类型选择“Double”。此步操作添加一个新的属性“Attribute_1” 到“主功能”结构中。

4. 在孪生体模板窗格中,点击“Atrribute_1”。
5. 如下图所示,在属性区修改结构名称为“产生孪生体间隔时间”,并作如下设置:
-
- 单位:“秒”;
- 默认值:“3”;
- 勾选“是否在孪生体中显示”选项。勾选此项后,用户在场景编辑器中使用此模板生成孪生体时,可以编辑此项属性。

6. 点击“主功能”结构旁的︙,在列表中选择添加属性选项,属性数据类型选择“Double”。此步操作添加一个新的属性“Atrribute_1”到“主功能”结构中。
7. 在孪生体模板窗格中,点击“Atrribute_1”。
8. 如下图所示,在属性区修改结构名称为“产生孪生体的计时”,并作如下设置:
-
- 单位:“秒”;
- 默认值:“1”;
- 勾选“是否在孪生体中显示”选项。

9. 按照上述步骤,添加一个“String”类型的属性。如下图所示,在属性区修改结构名称为“产生孪生体的标识符”,并作如下设置:
-
- 用途:选择“孪生体模板”;
- 勾选“是否在孪生体中显示”选项。

10. 选中“进度条”,在右侧属性区修改进度条属性,设置当前值为“产生孪生体的计时”,设置最大值为“产生孪生体间隔时间”。

11. 点击工具栏中的【保存】按钮 进行模板的保存。
创建生成器的行为树
为示例 2 中的生成器模板创建一个全新的行为树。
1. 在孪生体模板窗格中,点击机理栏旁的︙,选择新建行为树选项。

2. 在打开的窗口中,选择存储路径,并填写行为树名称。

3. 点击【新建】按钮完成行为树的新建。
4. 点击工具栏中的【保存】按钮 进行模板的保存。
编辑生成器的行为树
上一节创建的“生成器行为树”只包含一个根节点,本节中将为“生成器行为树”添加节点和节点的运行条件。
1. 在孪生体模板窗格中,双击机理栏下新建的“生成器行为树”,打开行为树编辑器。

2. 为“生成器行为树”添加一个选择节点:
a). 在左侧的复合节点中,将选择节点拖拽到编辑区中。
b). 连接根节点与选择节点。关于连接方式请参考节点操作。
c). 点击根节点,然后按下L键,便可以自动整理树的格式。
3. 添加闲置节点:
a). 在左侧的工具节点中,找到闲置节点将其拖拽到编辑区中。
b). 连接选择节点与闲置节点。
c). 设置闲置节点的运行条件,使其当出口存在生产的物品时停止。
4. 添加顺序节点:
a). 在左侧的复合节点中,找到顺序节点将其拖拽到编辑区中。
b). 连接选择节点与顺序节点。
5. 添加等待节点:
a). 在左侧的工具节点中,找到等待节点将其拖拽到编辑区中。
b). 连接等待节点与顺序节点。
c). 设置等待节点的属性:
等待时间
-
-
-
- 获取位置:孪生体的属性
- 孪生体的属性:“main|createObjectInterval”(产生孪生体间隔时间)
-
-
将当前等待时间存储到某个属性中
-
-
-
- 属性来源:孪生体的属性
- 数值的设置策略:替换原始值
- 孪生体的属性:“main|createTimeCount”(产生孪生体的计时)
-
-

6. 添加创建孪生体节点:为生成器添加生产物品的节点。
a). 在左侧的孪生体节点中,找到创建孪生体节点将其拖拽到编辑区中。
b). 连接顺序节点与创建孪生体节点。
c). 设置创建孪生体节点的属性:
-
-
- 创建孪生体使用的模板标识符:“main|createObjectIdentifier”(产生孪生体的标识符)
- 创建孪生体的位置:“Exit|pos”(出口的位置)
- 创建孪生体的旋转:0,0,0
-

7. 添加设置孪生体到出入口的节点:
a). 在左侧出入口节点中,找到设置孪生体到出入口的节点将其拖拽到编辑区中。
b). 连接顺序节点与设置孪生体到出入口节点。
c). 设置节点的属性:
-
-
- 出入口名称:“Exit”(出口)
- 设置到出口的孪生体:“当前孪生体”
-

8. 点击工具栏中的【保存】按钮 保存行为树。
创建孪生体
孪生体是数字孪生场景中的元素,用于模拟和展示特定的实体或设备,例如生成器、传送带、无人车等。在 FactVerse Designer 中,您可以使用虚拟工厂 DLC 中预设的模板或者根据需求创建新的孪生体模板,然后使用这些模板来创建孪生体。
在本节中,我们将使用示例 2 中创建的生成器模板来创建一个名为“生产2号”的生成器孪生体,并将其添加到场景中。以下是具体的步骤:
1. 点击主页左侧场景下方的【打开】按钮,打开场景选择窗口。

2. 浏览场景目录,选择要打开的场景,点击场景并打开场景编辑器。

3. 在场景编辑器中,点击资源库的孪生体窗格中的 按钮,打开新建孪生体窗口。
4. 在新建孪生体窗口中,填写孪生体名称为“生产2号”,选择孪生体模板“生成器模板”,并且设置孪生体的存储位置。

5. 点击【确认】按钮,完成生成器的创建。
6. 在存储目录中,找到新创建的“生产2号”,将其拖拽到场景区中。

通过上述步骤,您已经成功创建了一个名为 “生产2号” 的生成器孪生体,并将其添加到了场景中。现在,您可以继续进行其他编辑操作,例如设置孪生体的属性和行为,进行路径规划等,以构建一个完整的数字孪生场景。
调整场景视角
在 FactVerse Designer 中,您可以通过不同的方式来调整场景的视角,以便更好地观察和编辑场景。以下是一些常用的场景视角调整方法:
-
- 旋转视角:按住右键可拖拽整个视图,鼠标变为放大镜样式,可供用户全方位观察模型。
- 调整基准面高度:使用 Shift+鼠标左键可快捷调整基准面高度。
- 空间缩放:滚动滚轮。
- 拖拽场景:按住滚轮进行拖拽或左键点中场景区进行拖拽。
场景的导入和导出
数字孪生场景文件(.digpkg文件)包含了场景中的数字孪生体与其他数字孪生内容,如:孪生模板的结构数据、行为树、资源,场景的路径等数据。用户可在主页选择导入和导出数字孪生场景。

孪生体的属性
属性是孪生体的性质和特征的统称,可以涵盖多个方面,例如生产信息、外观属性、状态信息和用途体现的属性。
-
- 生产信息属性:用于描述孪生体的生产信息,例如型号、批次、生产商、生产日期等。
- 外观属性:用于定义孪生体的外观特征,例如颜色、材质、大小、位置等。
- 状态属性:用于表达孪生体的运行状态,例如是否运转、是否故障、是否维修中等。
- 用途属性:用于描述孪生体在特定用途下的性能和特性,例如生产和加工的效率、能耗,运行时的分贝、温度等。
- 孪生体之间的关系:您还可以通过属性面板定义孪生体之间的关系,例如指定孪生体之间的生产关系、加工关系、运输关系、存储关系和销毁关系等。
这些属性需要通过适当的数据类型来定义,包括以下几种:
类型 | 可定义的属性 |
Int | 个数、次数、速度等 |
Double | 温湿度、耗电量、余额、质量、面积等 |
String | ID、型号等 |
Bool | 运行状态、检查状态、执行结果等 |
Vector3 | 摆放位置、摆放角度、途径位置等 |
Vector2 | 地面上的静物摆放位置,地面上的目标点位等 |
Path | 移动路径、传送路径、运输路径等 |
Date | 生产日期、维修日期等 |
Time | 启动时间、降落时间、停止时间等 |
Color | 外观颜色、状态颜色等 |
Enum | 错误码与错误类型、产品代码与产品类别等 |
路径规划
在数字孪生场景中,各数字孪生体在完成运输、传送、等移动动作时,都需要场景线路来约束孪生体的移动轨迹,保证其只能在约定好的路线中完成移动。
路径规划功能提供了在 3D 数字孪生场景中标点、绘线的功能,同时可规定路线方向。 路径规划描述了孪生场景中的可移动范围信息,包含一系列可移动关键点构成的有向连通图。
定义
-
- 关键点:连通图上的一个顶点。
- 连通关系:关键点之间是否可以连通,以及连通方向,由此可以构成整张有向连通图。
- 路径:在连通图上指定一系列的连续顶点,构成一条固定的移动路径。
以下是构建路径的基本流程:
-
- 在场景编辑界面中,点击工具栏中的路径规划按钮
进入路径规划界面。
- 进入路径规划界面后,使用构建模式创建点位,点位的创建将基于默认构建高度(0)所在的平面上。
- 分别新建的两个点位之间使用默认的方向连接, 即正向从当前的点连向下一个点。
- 选择模式下,点击点位和连线可修改其位置、连线方向。
- 在场景编辑界面中,点击工具栏中的路径规划按钮
构建模式

在构建模式下,您可以通过鼠标左键单击场景中任意区域创建关键点,然后移动鼠标,再次点击创建下一个关键点。两个关键点之间会以默认方向自动连接起来。
为提升路径的构建效率,您可以在场景左上角配置默认构建设置,包括标点高度和连接方向。

标点高度:即在构建模式中创建的所有点位高度都为此高度。
连接方向:即在构建模式中创建的所有点位与下一个点位的连接方向都为此方向。
随着在场景中构建点位,左侧窗格点位列表中会同步出现对应的点位条目,默认命名规则为「Point+Num」。
创建路径关键点后,可以进行以下操作:
-
- 重命名点位或删除点位。
- 选中点位时,通过右侧属性窗格的坐标输入框可精确调整点位位置数据。
- 选中两个关键点的连线时,通过点击右侧属性窗格的方向方块可切换两点间的连接方向。
选择模式

在选择模式下,您可以对场景进行拖拽操作以移动整个场景,同时还可以选中关键点并修改其位置。
可视化运转调试
在场景播放界面加入调试窗口,实现行为树遍历可视化,对于监管场景中描述的调节孪生体属性实现产线优化的需求,也可开启孪生体属性面板进行修改。直观定位错误,简化了行为树的调试过程。

“行为树面板”展示选中的孪生体的行为树的实时执行状态,浅蓝色为正在执行中的节点,深蓝色为未执行的节点,绿色和红色分别代表这个节点的返回值为成功和失败。
“属性面板”可以用来改变孪生体的属性值并查看数值变化之后的场景表现。
“日志面板”用于打印行为树中打印节点输出的内容。