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

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

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

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

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

【问题讨论】:

    标签: azure azure-digital-twins


    【解决方案1】:

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

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

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

    【讨论】:

    • 感谢您的回答!您对ElevatorRoom 的看法是正确的。这是我的误解,Elevator 确实是正确的模型。主要问题仍然是开放的,即使用哪个选项来定位:新属性或关系。你的回答很好,我希望其他人能证实这一点。尤其是那些在真实环境中实际使用过的人。
    猜你喜欢
    • 1970-01-01
    • 2021-05-19
    • 2014-10-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-01
    相关资源
    最近更新 更多