快速入门 - Azure 数字孪生的 3D 场景工作室(预览版)入门
Azure 数字孪生 3D 场景工作室(预览版) 是一个沉浸式的 3D 环境,业务人员和一线员工可以在其中通过视觉上下文,使用和探索其 Azure 数字孪生解决方案中的运营数据。
在本文中,你将设置使用 3D Scenes Studio 所需的所有资源,包括包含示例数据和 Azure 存储资源的 Azure 数字孪生实例。 然后,在工作室中创建连接到示例 Azure 数字孪生环境的场景。
本快速入门中使用的示例场景监视工厂中机械臂的搬运效率。 机器人臂每小时拿起一些盒子,而摄像机监视每个手臂,以检测手臂是否未能拿起盒子。 每条机械臂在 Azure 数字孪生中有一个关联的数字孪生,每当机械臂遗漏了箱子时,数字孪生的数据就会更新。 根据此方案,本快速入门将演练如何设置 3D 场景以可视化工厂中的机械臂,以及每当遗漏箱子时发出视觉警报。
场景如下所示:

Prerequisites
要完成本快速入门,你需要一个 Azure 订阅。 如果还没有 Azure 订阅,可立即免费创建一个。
还需要您下载一个示例 glTF(图形语言传输格式)3D 文件,以用于本快速入门指南的场景。 从 GitHub 下载以下示例文件:RobotArms.glb。
设置 Azure 数字孪生和示例数据
要使用 Azure 数字孪生,第一步是创建一个 Azure 数字孪生实例。 创建服务实例后,稍后可以在本快速入门中将其链接到 3D 场景工作室可视化效果。
本部分的余下内容将演练该实例的创建。 如果在前面的快速入门中已设置了一个 Azure 数字孪生实例,则可以跳到下一部分。
创建 Azure 数字孪生实例
在本部分中,使用 Azure 门户创建新的 Azure 数字孪生实例。 导航到门户并使用自己的凭据登录。
-
登录门户后,首先在 Azure 服务的主页菜单中选择“创建资源”。

-
在搜索框中搜索“Azure 数字孪生”,并从结果中选择“Azure 数字孪生”服务。
将“计划”字段设置为“Azure 数字孪生”,并选择“创建”按钮以开始创建新的服务实例。

-
填写安装程序的“基本信息”选项卡上的字段,包括订阅、资源组、新实例的资源名称和区域。 选中“分配 Azure 数字孪生数据所有者角色”框,以便为你自己授予管理实例中数据的权限。

备注
如果“分配 Azure 数字孪生数据所有者角色”框灰显,则表示你无权在 Azure 订阅中管理用户对资源的访问权限。 你可以根据本部分所述继续创建实例,然后应在完成本快速入门的其余部分之前,让某个拥有所需权限的人员在该实例上为你分配此角色。
满足此要求的常见角色包括“所有者”、“帐户管理员”或“用户访问管理员”和“参与者”的组合。
-
选择“查看 + 创建”以完成实例创建。
-
你会看到一个摘要页,其中显示了输入的详细信息。 确认这些信息,然后选择“创建”以创建实例。
执行此操作后,会转到“概述”页,可在其中跟踪实例的部署状态。

等待页面显示部署已完成。
收集主机名
部署完成后,使用“转到资源”按钮导航到门户中该实例的“概述”页。

接下来,记下实例的主机名值供稍后使用。

生成示例模型和孪生
在本部分中,你将使用 Azure 数字孪生数据模拟器 工具生成示例模型和孪生来填充实例。 然后,使用模拟器将示例数据流式传输到图形中的孪生体。
备注
本快速入门提供了模型、孪生和模拟数据,以简化创建可在 3D 场景工作室中查看的环境的过程。 设计自己的完整的 Azure 数字孪生解决方案时,可以自行创建 模型 和 孪生来 详细描述自己的环境,并相应地 设置自己的数据流 。
此示例方案表示包含六条机械臂的包裹配送中心。 每条机械臂有一个数字孪生,其属性可用于跟踪机械臂未能拾取的箱子数,以及遗漏的箱子的 ID。
-
在 Web 浏览器中导航到数据模拟器。
-
在“实例 URL”空白区域,输入在上一部分记下的 Azure 数字孪生实例的主机名。 将“模拟类型”设置为“机械臂”。
-
使用“生成环境”按钮创建包含模型和孪生的示例环境。 (如果实例中已有模型和孪生体,此作不会删除它们,只需添加更多。

-
向下滚动,选择“开始模拟”,开始将模拟数据发送到 Azure 数字孪生实例。 当此窗口处于打开状态且 “开始模拟 ”选项处于活动状态时,模拟将运行。
可以使用 Azure 数字孪生资源管理器图形工具查看创建的模型和 图形 。 若要切换到该工具,请在左侧菜单中选择“图形”图标。

然后,使用 “运行查询 ”按钮查询实例中创建的所有孪生体和关系。

可以选择每个孪生来更详细地查看它们。
若要查看上传的模型及其相互关联方式,请选择 “模型”图。

提示
有关 Azure Digital Twins Explorer 的介绍,请参阅快速入门 Azure Digital Twins Explorer 入门。
创建存储资源
接下来,在存储帐户中创建新的存储帐户和容器。 3D Scenes Studio 使用此存储容器来存储 3D 文件和配置信息。
此外,还可以设置对存储帐户的读取和写入权限。 为了快速设置这些后盾资源,本部分使用 Azure Cloud Shell。
-
在浏览器中导航的 Cloud Shell。
运行以下命令,将 CLI 上下文设置为此会话的订阅。
Azure CLI
az account set --subscription "<your-Azure-subscription-ID>" -
运行以下命令,在订阅中创建存储帐户。 该命令包含供你输入名称并为存储帐户选择区域的占位符,还包含一个资源组占位符。
Azure CLI
az storage account create --resource-group <your-resource-group> --name <name-for-your-storage-account> --location <region> --sku Standard_RAGRS命令成功完成后,可在输出中看到新存储帐户的详细信息。 在输出中找到
ID值,复制该值以便在下一个命令中使用。
-
运行以下命令,为自己授予存储帐户上的存储 Blob 数据所有者角色。 此级别的访问权限允许你在 3D Scenes Studio 中执行读取和写入操作。 此命令包含与 Azure 帐户关联的电子邮件的占位符,以及上一步中复制的存储帐户 ID 的占位符。
Azure CLI
az role assignment create --role "Storage Blob Data Owner" --assignee <your-Azure-email> --scope <ID-of-your-storage-account>命令成功完成后,可在输出中看到角色分配的详细信息。
-
运行以下命令,为存储帐户配置 CORS。 3D Scenes Studio 访问存储容器需要此配置。 该命令包含一个存储帐户名称占位符。
Azure CLI
az storage cors add --services b --methods GET OPTIONS POST PUT --origins https://explorer.digitaltwins.azure.net --allowed-headers Authorization x-ms-version x-ms-blob-type --account-name <your-storage-account>此命令没有任何输出。
-
运行以下命令,在存储帐户中创建一个专用容器。 3D Scenes Studio 文件存储在此处。 该命令包含一个存储容器名称占位符和一个存储帐户名称占位符。
Azure CLI
az storage container create --name <name-for-your-container> --public-access off --account-name <your-storage-account>命令成功完成后,输出会显示
"created": true。
初始化 3D 场景工作室环境
设置所有资源后,接下来可以在 3D 场景工作室中使用它们来创建环境。 在本部分中,将创建一个场景,并针对 Azure 数字孪生实例中的示例图对其进行自定义。
-
导航到 3D 场景工作室。 该工作室将会打开,并连接到你上次在 Azure Digital Twins Explorer 中访问过的 Azure 数字孪生实例。 关闭欢迎演示。

-
选择实例名称旁边的“编辑”图标以配置实例和存储容器详细信息。

-
对于 Azure 数字孪生实例 URL,请将收集主机名步骤中实例的主机名填入此 URL:
https://<your-instance-host-name>。 -
对于“Azure 存储帐户 URL”,请将创建存储资源步骤中的存储帐户的名称填入此 URL:
https://<your-storage-account>.blob.core.windows.net。 -
对于“Azure 存储容器名称”,请输入创建存储资源步骤中的存储容器的名称。
-
选择“保存”。

-
添加新的 3D 场景
在本部分中,将使用前面在先决条件中下载的 RobotArms.glb 3D 模型文件创建新的 3D 场景。 场景由 3D 模型文件以及自动创建的配置文件组成。
此示例场景包含配送中心及其机械臂的可视化效果。 将此可视化效果连接到在 生成示例模型和孪生 步骤中创建的示例孪生,并在后续步骤中自定义数据驱动视图。
-
选择“添加 3D 场景”按钮开始创建新场景。 输入场景的名称和描述,然后选择“上传文件”。

-
在计算机上浏览“RobotArms.glb”文件并将其打开。 选择“创建”。

上传该文件后,你看到它重新列在 3D 场景工作室的主屏幕上。
-
选择场景以打开并查看它。 场景在 生成 模式下打开。

创建场景元素
接下来,在 3D 可视化效果中定义 一个元素 ,并将其链接到前面设置的 Azure 数字孪生图中的孪生体。
-
在场景可视化效果中选择任一机械臂。 选择此项将显示可能的元素操作。 选择“+ 创建新元素”。

-
在“新建元素”面板中,“主要孪生”下拉列表包含连接的 Azure 数字孪生实例中所有孪生的名称。
-
选择“Arm1”。 此选择会自动将数字孪生 ID (
$dtId) 作为元素名称应用。 -
选择“创建元素”。

-
该元素现在显示在场景的元素列表中。
创建行为
接下来,为元素创建 行为 。 这些行为允许自定义元素的数据视觉对象和关联的业务逻辑。 然后,你可以浏览这些数据视觉对象以了解物理环境的状态。
-
切换到“行为”列表并选择“新建行为”。

-
对于“显示名称”,请输入“包装生产线效率”。 在“元素”下,选择 Arm1。

-
跳过本快速入门中未使用的“孪生体”选项卡。
-
切换到“视觉规则”选项卡。视觉规则是元素上数据驱动的叠加对象,可以对其进行配置以指示元素的运行状况或状态。
-
首先,设置一些条件来指示包装线的效率。
-
选择“添加规则”。

-
输入“每小时取件”的“显示名称”。 将“属性表达式”保留设置为“单个属性”,并打开属性下拉列表。 该列表包含 Arm1 元素的主要孪生上所有属性的名称。 选择“PrimaryTwin.FailedPickupsLastHr”。 然后选择“添加条件”。

-
接下来,您需要定义一些边界,以指示每小时取件何时缺少过多包裹。 对于这种情况,假设一个臂在一小时内错过了三个以上的取件时需要注意。 为条件 >,然后定义一个介于 4 和无穷大之间的值范围(包含最小值,不含最大值)。 分配红色的元素着色。 选择“保存”。

-
再次选择“添加条件”,创建一个标记为“1-3 次错过取件”的条件。 定义介于 1 和 4 之间的值范围,并分配橙色的元素着色。 保存条件。
再次选择“添加条件”,创建一个标记为“0 次错过取件”的条件。 定义介于 0 和 1 之间的值范围,并分配绿色的元素着色。 保存条件。
创建好所有三个条件后,保存新的视觉对象规则。

-
-
接下来,再创建一个视觉规则来显示错过的包裹的警报。
-
从“视觉对象规则”选项卡中,再次选择“添加规则”。

-
输入 PickupFailedAlert 的显示名称。 将属性表达式更改为自定义(高级),输入 PrimaryTwin.PickupFailedAlert 的属性,并将类型设置为布尔值。 此属性选择引用是孪生臂上的布尔值属性,在包裹取件失败时设为 True。 选择“添加条件”。

-
输入 ${PrimaryTwin.PickupFailedBoxID} 失败的标签。 稍后,在场景视图中,该标签动态显示机械臂的孪生属性字符串 PickupFailedBoxID 的值,该属性包含表示最近机械臂未能拾取的箱子的 ID。 将“值”设为“True”,然后选择“徽章”的“视觉对象类型。 将“颜色”设为红色,然后选择“图标”。 选择“ 保存 ”以添加条件,然后选择“ 保存 ”以保存视觉对象规则。

你现在应会看到“视觉对象规则”选项卡中列出了你的两个规则。

-
-
-
切换到 小组件 选项卡。小组件是数据驱动的视觉对象,提供更多上下文和数据,帮助你理解行为所代表的场景。 在这里,您可以添加两个可视化组件,以便显示 arm 元素的属性信息。
-
首先,创建一个小组件来显示机械臂液压值的仪表。
-
选择“添加小组件”。

在“小组件库”中选择“仪表”小组件,然后选择“添加小组件”。
-
在“新建小组件”选项中,添加显示名称“Hydraulic Pressure”、度量单位“m/s”和单属性属性表达式“PrimaryTwin.HydraulicPressure”。
设置三个值范围,使值 0-40 显示为一种颜色, 40-80 以第二种颜色显示, 80-Infinity 以第三种颜色显示。 (请记住,最小范围值是包括在内的,最大值是不包括在内的。)

选择“创建小组件”。
-
-
接下来,创建一个小组件并在其中包含机械臂实时摄像头数据流的链接。
-
选择“添加小组件”。 在“小组件库”中选择“链接”小组件,然后选择“添加小组件”。
-
在“新建小组件”选项中,输入标签“实时机械臂摄像头”。 对于 URL,可以使用示例 URL
http://contoso.armstreams.com/${PrimaryTwin.$dtId}。 此示例的 URL 中未托管实时摄像头,但该链接表示视频源可以在真实方案中托管的位置。 -
选择“创建小组件”。

-
-
-
行为选项的设置现已完成。 选择“创建行为”保存该行为。

“包装生产线效率”行为现在显示在场景的行为列表中。
查看场景
到目前为止,你一直在“生成”模式下使用 3D 场景工作室。 现在,请将模式切换为“视图”。

从“元素”列表中,选择创建的“Arm1”元素。 可视化效果会放大,以显示视觉元素以及为其设置的行为。

将行为应用于其他元素
有时,某个环境可能包含多个相似的元素,而这些元素应在可视化效果中以相似的形式显示(类似于本示例中的六条不同机械臂)。 现在你为一条机械臂创建了行为并已在查看器中确认其外观,接下来,本部分介绍如何快速将该行为添加到其他机械臂,使它们在查看器中全都显示相同类型的信息。
-
返回到“生成”模式。 如同在创建场景元素中所做的那样,在可视化效果中选择另一条机械臂,然后选择“创建新元素”。

-
为新元素选择一个 Arm2 的主要孪生,然后切换到“行为”选项卡。

-
选择“添加行为”。 选择在本快速入门中创建的“包装生产线效率”行为。

-
然后选择“创建元素”以完成创建新的 arm 元素。
切换到“视图”选项卡,查看新 arm 元素的行为方式。 在创建行为时选择的所有信息现在可用于场景中的这两个 arm 元素。

提示
如果需要,你可以重复本部分所述的步骤,以便为剩余的四条机械臂创建元素,并将行为应用于所有这些机械臂以完成可视化。
回顾所学内容并将其置于上下文中进行理解
本快速入门介绍了如何为 Azure 数字孪生数据创建沉浸式仪表板,以便与最终用户共享并让他们更方便地访问有关真实环境的重要见解。
在快速入门中,你创建了一个示例 3D 场景用于表示一个包裹配送中心,其中装配了拾取包裹的机械臂。 此可视化效果已连接到数字孪生图,你已将可视化效果中的机械臂链接到了其自身的、提供支持数据的特定数字孪生。 你还创建了一个视觉行为,以便在查看完整场景时显示有关该机械臂的关键信息,包括关于该机械臂在过去一小时内未能拾取的任何箱子的信息。
在本快速入门中,使用 Azure 数字孪生数据模拟器为你快速创建了适合工厂方案的示例模型和孪生。 当将 Azure 数字孪生与自己的环境配合使用时,可以创建自己的 模型 和 数字孪生体,以准确详细地描述环境的元素。 本快速入门还使用数据模拟器模拟了“实时”数据,当遗漏包裹时,这些数据将驱动数字孪生属性更新。 将 Azure 数字孪生与自己的环境配合使用时,引入实时数据 是通过自己的环境传感器自行设置来完成的过程。
转载 - 微软文档-
快速入门 - 3D 场景工作室(预览版)入门 - Azure Digital Twins | Microsoft Learn
