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

华为云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. 发布测试发布上线,实时刷新设备状态
http://www.xdnf.cn/news/2948.html

相关文章:

  • Android——Serializable和Parcelable
  • Spring、Spring MVC 与 Spring Boot 的关系与核心用途
  • 什么是全景相机?
  • jenkins slave节点打包报错Failed to create a temp file on
  • Android学习总结之Bitmap篇
  • 《数学物理方程》——第一章 引入与基本概念
  • 【AI工具】DeepWiki试用
  • 第十六届蓝桥杯 C/C++ B组 题解
  • 私有云与虚拟化攻防2(OpenStack渗透场景,大部分云平台都是基于此进行二次开发)
  • C++ 类和对象(3)初始化列表、友元函数、内部类
  • 创龙全志T536全国产(4核A55 ARM+RISC-V+NPU 17路UART)工业开发板硬件说明书
  • 免费IP证书申请
  • leetcode day37 474
  • 【论文阅读】PEEKABOO: Interactive Video Generation via Masked-Diffusion
  • 【神经网络与深度学习】改变随机种子可以提升模型性能?
  • DotNet 入门:(一) 环境安装
  • ElasticSearch入门
  • MYSQL三大日志、隔离级别(MVCC+锁机制实现)
  • 代码颜色模式python
  • 五种机器学习方法深度比较与案例实现(以手写数字识别为例)
  • 生活需要一些思考
  • 设计模式 | 详解常用设计模式(六大设计原则,单例模式,工厂模式,建造者模式,代理模式)
  • 力扣——206.反转链表倒序输出链表
  • Android开发——实现一个计算器
  • Nerfstudio 环境配置与自有数据集(图片和视频)测试全方位全流程实战【2025最新版!!】
  • PyTorch实际上是按照**行优先(Row-Major)**的方式存储数据
  • 基于Arduino的STM32F103RCT6最小系统板的测试及串口通讯
  • 初识Redis · 缓存
  • 网络原理 - 11(HTTP/HTTPS - 2 - 请求)
  • MES系列-ISO95 IEC/ISO 62264