华为边云协同

1.边缘端安装edge结构

2.根据配置文件包下的配置信息启动edge并创建mqtt监听

启动mqtt监听

交互原理

边缘节点纳管后,会在边缘节点上安装Edge Agent,其中设备管理相关则组件如下所示。

  • EdgeHub:WebSocket客户端,包括同步云端资源更新、报告边缘节点和设备信息到云端等功能。
  • DeviceTwin:设备孪生,负责存储设备状态并将设备状态同步到云端。
  • EventBus:与 MQTT 服务器交互的客户端,为其他组件提供订阅和发布消息的功能。
  • MQTT Broker:MQTT服务器。

图1 边缘设备管理
点击放大

设备、边缘节点、IEF通信的过程中,设备孪生(DeviceTwin)起到了一个非常重要的作用,设备孪生保持设备的动态数据,包括特定背景下的设备专有实时数据,例如灯的开、关状态。

设备孪生具有与物理设备相同的特性,便于设备与应用之间进行更好地通信。应用发送的命令首先到达设备孪生,设备孪生根据应用设置的Expected State(期望的状态)进行状态更新,此外设备实时反馈自身的Actual State(真实的状态),设备孪生同时记录设备的Actual State和Expected State 。这种方式也使设备在离线状况下再次上线时,设备的状态也能得到同步。

设备上报实际状态到云端

设备上报实际状态到云端的过程如图2所示。

图2 设备上报状态
点击放大

  1. 设备将实际状态(Actual State)实时上报给MQTT Broker。
  2. EventBus从MQTT Broker收到订阅消息,消息内容包含设备的实际状态。
  3. EventBus把设备实际状态发送给DeviceTwin,DeviceTwin在边缘节点存储设备实际状态。
  4. DeviceTwin同步实际状态给WebSocket客户端EdgeHub。
  5. EdgeHub发送消息给IEF。

云端修改孪生属性控制设备状态

图3 修改设备状态
点击放大

  1. 在IEF中修改设备的孪生属性,IEF将设备期望状态(Expected State)发送给边缘节点的EdgeHub。
  2. EdgeHub发送设备期望状态消息到DeviceTwin,DeviceTwin在边缘节点存储设备期望状态。
  3. 设备实时发消息给MQTT Broker查询设备期望状态。
  4. EventBus接收到从MQTT Broker发过来的消息。
  5. EventBus根据消息去查询设备期望状态。
  6. DeviceTwin反馈当前设备期望状态给EventBus。
  7. EventBus发送设备期望状态的结果给MQTT Broker。
  8. 设备从MQTT Broker收到订阅消息,根据期望状态调整实际状态。
打赏
  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!
  • Copyrights © 2018-2020 丁振莹
  • 访问人数: | 浏览次数:

你的每一分支持,是我努力下去的最大的力量 ٩(๑❛ᴗ❛๑)۶

支付宝
微信