C# 物联网集线器中的设备原理

C# 物联网集线器中的设备原理,c#,azure,azure-iot-hub,C#,Azure,Azure Iot Hub,我正在使用物联网集线器向物联网集线器发送遥测数据。这是工作正常,但我有点不确定如何设置deviceid 例如,以下场景 我有100栋建筑,有1-5个冷却系统。有8种不同类型的冷却系统(取决于建筑物的大小)。 每个冷却系统都有多个传感器,所有这些传感器数据都会发送到建筑物内的计算机。此计算机连接到物联网中心,并通过物联网中心将此信息发送到Azure 设备id应该是buildingid还是单个冷却系统id? 我知道我可以在设备注册表中为设备添加属性。因此,如果我为每个冷却系统创建一个设备,我可以添加

我正在使用物联网集线器向物联网集线器发送遥测数据。这是工作正常,但我有点不确定如何设置deviceid

例如,以下场景 我有100栋建筑,有1-5个冷却系统。有8种不同类型的冷却系统(取决于建筑物的大小)。 每个冷却系统都有多个传感器,所有这些传感器数据都会发送到建筑物内的计算机。此计算机连接到物联网中心,并通过物联网中心将此信息发送到Azure

设备id应该是buildingid还是单个冷却系统id?
我知道我可以在设备注册表中为设备添加属性。因此,如果我为每个冷却系统创建一个设备,我可以添加模型、BuildingId等。这样,我就知道哪些设备属于哪个建筑等

因此,我必须将建筑物中的每个冷却系统注册为一个设备,连接到物联网集线器的计算机需要管理每个设备(冷却系统)的凭据,并使用正确的凭据发送其数据

这是正确的吗?如果有人能解释这一点,我将不胜感激。

(我非常生疏……)对于mqtt,我会使用“building1/coolingSystem2/sensor3”这样的主题,并将传感器读数插入消息中

然后,订户可以过滤到以下内容:

  • 所有建筑物的所有传感器信息
  • 只需为building1等提供传感器信息

请参阅:

如果您试图发送云设备消息,或者您说,您的设备已经从应用程序订阅了更改更新,那么为每个设备使用单独的设备ID是合理的,而且正如您已经说过的,您可以丰富元数据,以确定它来自哪个建筑或楼层。因此,对每个冷却系统使用deviceID会更好地进行长期运行

因此,在这种情况下,建筑物将是设备id,对吗?数据只发送到IoT集线器,因此我只想使用building1/coolingsystem1,将所有传感器数据实际发送到一个包中,您已经指出,使用building id是合理的,因为它将在Azure IoT Hub中管理更少的设备。是的,但仔细观察后,也可以将每个冷却系统添加为一个设备。你能给我一个赞成/反对将计算机与冷却系统设置为设备id(因此1个公共建筑与建筑中的1个公共冷却系统)。“我会知道哪些设备属于哪个建筑”如果这是你关心的问题,那么你不必纠结于设备id。无论你选择哪个,你都可以添加属性,建筑物id/冷却系统id/传感器id,用于描述数据。将计算机和冷却系统设置为设备id的唯一区别是要管理的设备数量。或者还有什么其他问题?