当前位置: 首页 > news >正文

华为云Astro大屏从iotda影子设备抽取数据做设备运行状态的大屏实施步骤

目录

背景与意义

1. 准备阶段

2. IoTDA 开放影子查询API

3. Astro轻应用创建连接器

4. Astro大屏设计界面

5. 数据绑定与交互逻辑

6. 发布与测试

小结(流程复盘)


背景与意义

随着物联网技术的快速发展,越来越多的设备接入云端,实时监控和管理这些设备的运行状态变得尤为重要。华为云Astro大屏作为一种可视化工具,能够直观地展示设备的运行状态,帮助用户快速了解设备的实时情况,及时发现并解决问题。

这份知识文档的实施步骤包括确认设备影子是否启用、识别需要展示的属性、选择展示方式、规划数据获取方式以及权限认证管理等。通过这些步骤,用户可以系统地了解如何从华为云物联网平台的设备影子中抽取数据,并在Astro大屏上进行展示。

该文档的意义为开发者提供了一个清晰的开发流程和参考,帮助他们快速构建专业的设备监控大屏应用


1. 准备阶段

目的:准备好所需的账号、权限和基本环境。
怎么做

  • 有华为云账号,且账号具备 IoTDA(物联网平台)和 Astro(低代码大屏设计器)权限。

  • 确定设备已接入 IoTDA,且设备的影子数据(即运行状态,如开关、温度、电量等)已经能在IoTDA后台看到。

  • 清楚设备的

    • 设备ID

    • 所属产品(Product)

    • 影子数据结构(即有哪些属性,比如 status = online/offline)。

注意事项

  • 如果设备还没上线,可以先用模拟设备。

  • 如果设备还没上报影子数据,需要先通过设备或接口上报。


2. IoTDA 开放影子查询API

目的:让Astro大屏能够去IoTDA拿到设备影子数据。
怎么做

  • 登录华为云控制台 → 进入 IoTDA → API Explorer → 找到 "查询设备影子数据" 接口(路径一般是 /v5/iot/{project_id}/devices/{device_id}/shadow)。

  • 记录下需要用的:

    • 接口URL地址

    • 请求方式:GET

    • 必要的消息头(Header):比如 X-Auth-TokenX-Sdk-Date

  • 确认是否需要使用 AK/SK签名认证Token认证

注意事项

  • 影子接口属于受保护接口,需要认证,不是随便就能访问的。

  • 推荐使用 AK/SK认证,更稳定。


3. Astro轻应用创建连接器

目的:让Astro能调用IoTDA接口获取影子数据。
怎么做

  • 登录 Astro 应用设计器。

  • 左边点击【集成】 → 【连接器实例】 → 点击【+】新建一个连接器。

  • 类型选【自定义连接器】。

  • 配置连接器信息:

    • 请求方式:GET

    • 接口URL:填写 IoTDA 查询影子的完整API(带project_id和device_id)

    • 认证信息

      • 如果是AK/SK认证,需要在请求头里做签名(可以用系统内置签名方式)。

      • 如果是Token认证,需要事先拿到Token,在请求头里加 X-Auth-Token

    • 配置请求头、请求参数。

    • 配置响应参数(把影子数据映射成Astro能识别的格式,比如运行状态字段映射为 deviceStatus)。

注意事项

  • device_id可以在连接器里定义为动态参数,这样可以复用一个接口查询多个设备。

  • 连接器测试时要确保返回成功(状态码200),能拿到影子数据。


4. Astro大屏设计界面

目的:搭建设备运行状态展示界面。
怎么做

  • 在Astro里创建一个【大屏项目】。

  • 新建页面(Canvas)。

  • 拖拽常用组件,比如:

    • 文字组件(显示设备名称、设备状态)

    • 图标组件(比如绿色表示在线,红色表示离线)

    • 表格组件(显示多个设备状态列表)

    • 图表组件(比如设备在线率趋势图)

  • 在组件属性里,绑定刚刚创建的连接器数据。

注意事项

  • 可以设置轮询定时刷新,比如每5分钟刷新一次设备状态。

  • 图标、颜色可以根据设备状态动态变化(比如:设备状态为online→图标变绿)。


5. 数据绑定与交互逻辑

目的:实现数据自动更新和动态显示。
怎么做

  • 在Astro大屏设计页面,选中一个组件 → 绑定【连接器返回的数据】。

  • 设置字段映射:

    • 比如把设备影子里的 "status":"online" 映射到界面的 "设备在线" 显示。

  • 设置交互逻辑:

    • 状态是"online" → 组件颜色绿色

    • 状态是"offline" → 组件颜色红色

  • 表格组件可以直接绑定整个设备列表,批量显示各个设备状态。

注意事项

  • 影子数据通常是嵌套的,比如reported.properties.status,字段路径要正确写。

  • 如果数据很复杂,可以使用Astro里的【公式编辑器】处理数据(如字符串提取、状态翻译)。


6. 发布与测试

目的:发布上线并测试大屏。
怎么做

  • 在Astro项目中点击【预览】,检查是否正确显示。

  • 点击【发布】→ 发布到线上环境。

  • 用浏览器访问大屏链接,实时观察设备状态变化。

注意事项

  • 测试时可以手动切换设备状态(例如模拟设备上线、下线)观察大屏是否同步更新。

  • 可以根据需要,设置大屏访问权限,比如只允许内部用户访问。


小结(流程复盘)

阶段主要内容
1. 准备账号权限、设备影子数据
2. IoTDA API确定影子数据查询接口
3. Astro连接器创建连接器调用IoTDA接口
4. Astro大屏设计布局、添加组件
5. 数据绑定抽取影子数据动态显示
6. 发布测试发布上线,实时刷新设备状态

相关文章:

  • 故障诊断——复现github代码ClassBD-CNN(BDCNN)
  • React Navigation 使用指南
  • 高翔《视觉SLAM十四讲》第七章视觉里程计3d-2d位姿估计代码详解与理论解析
  • Go语言中的 `time.Tick` 函数详解
  • 【AI提示词】机会成本决策分析师
  • Ubuntu搭建 Nginx以及Keepalived 实现 主备
  • Python数据处理:文件的自动化重命名与整合
  • jmeter-Beashell获取请求body data
  • 【统计方法】交叉验证:Resampling, nested 交叉验证等策略 【含R语言】
  • 【go】defer捕获panic案例,自存档
  • .NET 平台详解
  • 什么是DNS缓存?怎么清理DNS缓存?
  • 从数据到决策:安科瑞EIoT如何让每一度电“清晰可见”?
  • SpringMVC再复习1
  • 元宇宙2.0:当区块链成为数字世界的宪法
  • 阿里云服务器 篇十二:加入 Project Honey Pot 和使用 http:BL
  • Scrapy框架之CrawlSpider爬虫 实战 详解
  • React 第三十四节 Router 开发中 useLocation Hook 的用法以及案例详解
  • 初识Redis · 缓存
  • git配置SSH KEY
  • 五一小长假,带着小狗去上海音乐厅
  • 深入贯彻中央八项规定精神学习教育中央指导组培训会议召开
  • 中国银行副行长刘进任该行党委副书记
  • 人社部:将制定提前领取个人养老金相关办法
  • 发挥全国劳模示范引领作用,加速汽车产业电智化转型
  • 书业观察|一本书的颜值革命:从毛边皮面到爆火的刷边书