You need to enable JavaScript to run this app.
导航
设备影子
最近更新时间:2024.06.14 12:54:41首次发布时间:2024.06.14 12:54:41

物联网平台提供设备影子功能,用于缓存设备上报的状态数据和应用程序下发的指令信息。设备在线时,可以直接获取物联网平台指令;设备离线后,再次上线可以主动拉取物联网平台指令。本文主要介绍设备影子的应用场景和使用方法。

什么是设备影子

设备影子是一个 JSON 文档,用于存储设备上报状态、应用程序期望状态信息。
每个设备有且只有一个设备影子,设备可以通过 MQTT 和设备影子同步状态,该同步可以是影子同步给设备,也可以是设备同步给影子。设备影子相当于一层设备缓存,解决了弱网环境下的设备消息同步的问题。

应用场景

  • 应用程序请求获取设备状态。
    使用设备影子机制,设备状态变更时,只需同步状态给设备影子一次。之后应用程序请求获取设备状态,即便设备离线,也可以直接从设备影子中获取设备当前状态,实现应用程序与设备解耦。
  • 应用程序下发指令给设备,变更设备状态。
    使用设备影子机制,可以将应用程序下发的指令,携带时间戳存储到设备影子中。设备上线时,获取设备影子中的指令,并根据时间戳确定是否执行。

设备影子 Topic 说明

与平台描述有出入,设备影子 Topic 的发布、订阅的描述是否写反了。
物联网平台已为每个设备预定义了两个 Topic,用于实现设备影子数据流转。

  • sys/{ProductKey}/{DeviceName}/shadow/desired/get:设备向云服务器更新影子/获取信息。
  • sys/{ProductKey}/{DeviceName}/shadow/desired/set:云服务器向设备下发内容。
  • sys/{ProductKey}/{DeviceName}/shadow/report:设备影子上报。
  • sys/{ProductKey}/{DeviceName}/shadow/desired/get/reply:设备影子获取 reply。

操作步骤

您可以查看、更新指定设备的设备影子。

  1. 登录物联网平台控制台
  2. 在控制台顶部,选择物联网平台所在地域。
  3. 实例列表 区域找到对应的实例,单击实例卡片,进入实例详情页面。
  4. 在左侧导航栏,选择 设备中心 > 设备管理
  5. 设备列表 中,单击目标设备名称,进入设备详情页面。
  6. 在设备详情页,单击 设备影子 页签,页面显示设备上报的影子状态。
    平台会对设备影子的最近更新时间、版本号以及模块中各属性的上报值、期望值进行展示。
    图片
  7. 单击 设备期望值更新,在弹窗内可以对设备可写入属性进行期望值设置。

    说明

    此处设置将对期望状态进行全量更新,会覆盖之前设置的设备期望状态。

    图片
  8. 设置完成,单击 确定