DTDL - 如何在 Azure 数字孪生模型中对电梯间及其在楼层之间的移动进行建模?

Posted

技术标签:

【中文标题】DTDL - 如何在 Azure 数字孪生模型中对电梯间及其在楼层之间的移动进行建模?【英文标题】:DTDL - How to model an elevator room and its movement between levels in Azure Digital Twins? 【发布时间】:2021-04-19 07:54:24 【问题描述】:

我正在使用根据RealEstateCore ontology 定义的 DTDL 模型。我希望能够添加描述ElevatorRoom 双胞胎位于建筑物中哪一层的数据。当前模型不包含该信息,RoomSpace 模型也不包含该信息,而从 ElevatorRoom 扩展而来的模型。

我的问题是定义关卡信息的最佳方式是什么?当电梯在楼层之间移动时,这些数据通常会频繁更新。我可以看到至少两个我正在考虑的替代方案:

    当前ElevatorRoom 已扩展,新的 levelId 属性已添加到扩展模型中。 levelId 可以是关卡编号或对应于特定关卡孪生 ID。 使用 RelationShip 定义ElevatorRoom 的位置。例如,ElevatorRoom 具有 isPartOfisLocationOf 关系,可用于将其链接到与电梯当前所在楼层对应的某个 Level 孪生对象。

那么你推荐使用哪一个,或者有比选项 1 和 2 更好的方法?

【问题讨论】:

【参考方案1】:

我认为您误解了本体 - ElevatorRoom 肯定不会移动。

据我了解,Elevator 正在移动到ElevatorShaft,而作为asset,它已经有了locatedIn - 与空格的关系,例如LevelElevatorRoom应该是电梯的维修间。

您可以对其建模,使电梯有两个locatedIn-Relations,一个与楼层有关,一个与电梯井道有关。或者,还有一个serves-Relation,您可以像这样使用Elevator -serves-> ElevatorShaftElevator -locatedIn->Level

【讨论】:

感谢您的回答!您对ElevatorRoom 的看法是正确的。这是我的误解,Elevator 确实是正确的模型。主要问题仍然是开放的,即使用哪个选项来定位:新属性或关系。你的回答很好,我希望其他人能证实这一点。尤其是那些在真实环境中实际使用过的人。

以上是关于DTDL - 如何在 Azure 数字孪生模型中对电梯间及其在楼层之间的移动进行建模?的主要内容,如果未能解决你的问题,请参考以下文章

将 Azure 数字孪生与现有云环境连接

Azure IOT PnP 数字孪生 API/SDK 用于检索设备/孪生的属性、命令和遥测定义

Azure 数字孪生 API 无法使用教程中所述的 DefaultAzureCredential 身份验证方法

数字孪生网络如何将实体显示

历史建筑全生命期数字孪生模型展示平台

MOSFET数字孪生实战Python