ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

ThingsBoard 空气质量指数(AQI)解决方案的 Edge 计算扩展:部署边缘节点与数据上云实战指南

ThingsBoard 空气质量指数(AQI)解决方案的 Edge 计算扩展:部署边缘节点与数据上云实战指南 物联网后端数据可视化消息队列【免费下载链接】thingsboardAll-in-one IoT Platform - Device management, data collection, processing and visualization.项目地址https://gitcode.com/GitHub_Trending/th/thingsboard点击查看免费下载导读本文围绕 ThingsBoard 开源仓库中空气质量指数AQI监测解决方案的边缘计算扩展文档edge_instructions.md展开系统讲解如何为分布在多城市的空气质量传感器网络部署 ThingsBoard Edge 节点在本地完成数据采集、AQI 计算与告警决策断网时保证数据不丢失恢复联网后自动将数据同步回云端。读完本文你将掌握 Edge 实体的创建与实体组分配逻辑、Edge 安装连接流程以及如何用curl向 Edge 上的设备模拟推送遥测数据并结合仓库中的计算字段与告警规则源码理解 AQI 在边缘侧的处理原理。一、什么是空气质量管理解决方案中的 Edge 计算扩展在 ThingsBoard 的Air Quality Monitoring解决方案中边缘计算Edge computing是文档明确标注的可选扩展能力。其核心设计理念是把数据分析和设备管理能力带到数据产生的地方edge同时根据业务需要与中心云服务器无缝同步。edge_instructions.md 开篇即说明了该扩展的适用场景如果城市分散在全国各地可以在每个城市远程位置部署 ThingsBoard Edge就地处理传感器和其他设备的数据、计算 AQI实现实时分析与决策例如在污染等级超标时生成告警。这正好对应本仓库中Air Quality Index解决方案的文件目录结构solutions/air_quality_index该目录下同时包含计算字段calculated_fields/、告警规则alarm_rules/与本文所述边缘说明文档三者共同构成完整的 AQI 解决方案资产。二、Edge 计算的核心价值本地处理、数据不丢、按需上云根据边缘说明文档Edge 在 AQI 场景中承担三项关键职责本地实时处理Edge 直接处理所在城市传感器的上报数据在本地方计算 AQI 值并在污染等级超标时立刻生成告警无需等待与中心服务器的往返通信断网自愈当与中心 ThingsBoard 服务器的网络连接中断时Edge 继续处理数据数据不会丢失关键决策在本地完成回连同步网络恢复后必要的数据会被推送到云端实现边缘与云端的最终一致。同时文档强调了一个重要的运维模型Edge 计算业务逻辑的配置是集中化的——所有规则、计算字段、告警的配置统一放在 ThingsBoard 服务器云上由云端统一下发管理运维人员不需要到每个远程站点单独配置。从源码看 Edge 与云端如何握手从仓库中的 edge.proto 可以看出边缘节点与云服务器的底层通信机制EdgeRpcService定义了handleMsgs(stream RequestMsg) returns (stream ResponseMsg)即 Edge 与云端之间通过双向流式 RPC持续交换消息ConnectRequestMsg携带edgeRoutingKey与edgeSecret进行身份认证连接成功后由云端下发EdgeConfiguration包含cloudEndpoint、routingKey、secret、tenantId等字段UpdateMsgType枚举ENTITY_CREATED_RPC_MESSAGE、ENTITY_UPDATED_RPC_MESSAGE、ENTITY_DELETED_RPC_MESSAGE、ALARM_ACK_RPC_MESSAGE、ALARM_CLEAR_RPC_MESSAGE说明了云端向 Edge 下发实体同步与告警操作的协议类型。这从代码层面印证了文档所述Edge 与云端按业务需要无缝同步的实现方式。三、解决方案预置的 Edge 实体与实体组分配在该解决方案范围内系统已经创建了一个名为Remote Location R1的 Edge 实体用于演示典型的远程位置部署。为了简化 Edge 的部署以下实体组已经被预先分配assigned到该 Edge 实体实体组名称实体类型用途AQI CityASSET资产城市资产组代表各个监测城市/远程位置AQI SensorDEVICE设备空气质量传感器设备组Air Quality MonitoringDASHBOARD仪表板私有监测仪表板组Air Quality Monitoring PublicDASHBOARD仪表板公开分享仪表板组实体组预先分配的意义在于Edge 安装并连接成功后这些实体会自动同步到边缘节点无需在边缘侧手工重建任何资产、设备或仪表板。从仓库的 calculated_fields 目录可以看到与这套实体体系对应的数据处理逻辑aqi_sensor_aqi_calculation.json绑定DEVICE_PROFILE的 SCRIPT 类型计算字段实现每个传感器的 AQI 计算aqi_city_aqi_sensor_aggregation.json绑定ASSET_PROFILE的RELATED_ENTITIES_AGGREGATION类型计算字段通过Contains关系把该城市下所有传感器的aqi、humidity聚合到城市资产上详见后文。四、安装 Edge 并连接到云端文档给出的 Edge 安装流程非常明确分为两步打开Edge 详情页面Edge details page点击Install Connect instructions安装与连接指引按钮按照指引完成 ThingsBoard Edge 的安装并使其连接到云服务器。连接成功后你就可以使用**租户凭据tenant credentials**登录 Edge 的 Web UI。这意味着边缘节点共享云端租户的登录体系同一个租户下的账号可以直接访问边缘控制台。说明原文档中的 Edge 详情页链接为模板占位符${Remote Location R1EDGE_DETAILS_URL}实际部署时由系统根据当前环境动态替换为对应 Edge 实体的详情页地址。登录后验证同步结果Edge 连接云端的核心验证方式如下由于AQI SensorDEVICE 组已被分配给 Edge 实体 Remote Location R1该组内的所有设备都会被自动 provision 到边缘节点登录 Edge 后进入Entities - Devices页面即可看到这些设备其中典型的演示设备为Air Quality Sensor 1。五、向 Edge 上的设备推送遥测数据curl 实战文档提供了完整的、可直接执行的curl命令用于模拟设备 Air Quality Sensor 1 向 Edge 上报遥测数据。这是验证整个 Edge 链路是否打通的最快捷方式。默认端口8080写法curl -v -X POST -d {\temperature\: 42, \humidity\: 73, \pm25\: 24.4, \pm10\: 30, \no2\: 13, \co\: 2.8, \so2\: 7, \o3\: 0.164, \batteryLevel\: 77 } http://localhost:8080/api/v1/${Air Quality Sensor 1ACCESS_TOKEN}/telemetry --header Content-Type:application/json修改过绑定端口18080的写法如果在 Edge 安装过程中把 HTTP 8080 绑定端口改成了18080则使用curl -v -X POST -d {\temperature\: 42, \humidity\: 73, \pm25\: 24.4, \pm10\: 30, \no2\: 13, \co\: 2.8, \so2\: 7, \o3\: 0.164, \batteryLevel\: 77 } http://localhost:18080/api/v1/${Air Quality Sensor 1ACCESS_TOKEN}/telemetry --header Content-Type:application/json命令要点解读URL 结构/api/v1/${ACCESS_TOKEN}/telemetry是 ThingsBoard 标准的 HTTP 设备遥测上报接口其中${Air Quality Sensor 1ACCESS_TOKEN}是设备 Air Quality Sensor 1 的访问令牌Access Token在设备详情页获取后替换占位符即可请求体字段temperature温度、humidity湿度、pm25/pm10颗粒物浓度、no2/co/so2/o3气体污染物浓度以及batteryLevel电池电量——这正是 aqi_sensor_aqi_calculation.json 中 AQI 计算所需的全部输入遥测键TS_LATEST验证方式命令执行成功并返回 200 状态码后可以分别在 Edge 控制台设备最新遥测与云端控制台查看该设备的遥测更新。文档明确说明向 Edge 上的设备推送数据后云端同一设备的遥测也会同步更新这正是断网本地处理、联网自动上云链路打通后的直接证据。六、从源码看 AQI 在边缘侧的计算链路边缘节点的计算能力之所以能在断网时保持自洽是因为 AQI 解决方案的计算字段、告警规则均随实体组同步到了 Edge 上。仓库源码揭示了完整的计算链路1. 传感器级 AQI 计算SCRIPT 计算字段aqi_sensor_aqi_calculation.json 定义了AQI Calculation计算字段输入参数为pm25、pm10、no2、co、so2、o3六种污染物的最新遥测值TS_LATEST脚本内置了各污染物浓度区间到 AQI 分段的映射表如pm25AqiMapping、pm10AqiMapping、no2AqiMapping、coAqiMapping、so2AqiMapping、o3AqiMapping对应 0-50、51-100、101-150、151-200、201-300、301-400、401-500 共七档 AQI 区间calculateAqi(value, vMapping, aMapping)函数按线性插值公式(aqiHigh - aqiLow) / (bpHigh - bpLow) * (value - bpLow) aqiLow计算单项污染物对应的 AQI 分数最终综合 AQI 取各污染物单项 AQI 的最大值aqi Math.max(aqi, ...)并输出为时间序列output.type TIME_SERIES。2. 城市级聚合RELATED_ENTITIES_AGGREGATION 计算字段aqi_city_aqi_sensor_aggregation.json 定义了AQI Sensor Aggregation计算字段通过Contains关系direction: FROM把城市资产与其下属传感器关联起来将关联传感器的aqi与humidity做AVG平均值、temperature做MAX最大值聚合写入城市资产的时间序列每 10 秒scheduledUpdateInterval: 10定时更新一次并启用scheduledUpdateEnabled。3. 告警规则ALARM 计算字段alarm_rules 目录下包含两条与边缘决策直接相关的告警规则aqi_sensor_inactive.json当传感器active服务端属性为false时创建 CRITICAL 级设备失联告警恢复为true时自动清除propagate: true表示告警可传播aqi_sensor_low_battery_level.json当batteryLevel遥测 ≤ 服务端属性batteryLevelThreshold默认 30.0时创建 CRITICAL 级低电量告警充电恢复后清除。这两条规则正是文档所述在污染等级超标时生成告警决策能力的落地形态——它们与计算字段一起随实体组同步到 Edge保证断网时 Edge 依然能独立完成计算 AQI → 判断超标 → 生成告警的完整闭环。七、端到端验证与常见排查要点把前面各部分串起来一套完整的 Edge 扩展验证流程如下在云端创建/确认 Edge 实体 Remote Location R1并确认四类实体组2 个 Dashboard 组、1 个 Asset 组、1 个 Device 组已分配通过 Edge 详情页的Install Connect instructions完成 Edge 安装与云端连接使用租户凭据登录 Edge进入Entities - Devices确认 Air Quality Sensor 1 等设备已自动同步执行第三节中的curl命令向 Edge 上报遥测注意端口按安装配置选择 8080 或 18080令牌替换为设备真实 Access Token分别在 Edge 与云端查看该设备遥测是否更新验证同步链路观察云端/边缘的告警与 AQI 计算输出验证计算字段与告警规则在边缘侧生效。常见注意点端口差异Edge 安装时若修改过 HTTP 绑定端口务必使用对应的 18080 写法否则连接会被拒绝令牌占位符${Air Quality Sensor 1ACCESS_TOKEN}必须替换为设备页面中的真实令牌不能直接执行原样命令实体组同步是前提只有被分配给 Edge 实体的设备组才会自动 provision 到边缘未分配的实体不会出现在 Edge 的 Devices 页面。八、小结Air Quality Monitoring解决方案的 Edge 扩展edge_instructions.md为跨地域的空气质量监测网络提供了一套边缘自治 云端统一管理 断网保数据、联网即同步的落地方案通过预置的 Remote Location R1 Edge 实体与四类实体组简化部署通过统一的curl遥测上报接口打通设备到边缘再到云端的全链路。结合仓库中 计算字段、告警规则 与 edge.proto 的源码实现可以确认AQI 计算、城市聚合与告警决策均可完全在边缘侧独立完成这正是 ThingsBoard 在数据产生地就地分析、按需回传云端这一架构方向上的典型实践。赞分享物联网后端数据可视化消息队列【免费下载链接】thingsboardAll-in-one IoT Platform - Device management, data collection, processing and visualization.项目地址https://gitcode.com/GitHub_Trending/th/thingsboard点击查看免费下载相关推荐ThingsBoard 水表计量解决方案边缘计算扩展实战指南远程设施本地处理与边缘-云数据同步ThingsBoard 水表计量解决方案边缘计算扩展实战指南远程设施本地处理与边缘 云数据同步 这篇技术指南以 ThingsBoard 官方 Water Me物联网后端数据可视化消息队列ThingsBoard 温湿度传感器解决方案的 Edge 边缘计算部署与数据同步实战ThingsBoard 温湿度传感器解决方案的 Edge 边缘计算部署与数据同步实战 导读 本文围绕 ThingsBoard 开源 IoT 平台内置的 Temp物联网后端数据可视化消息队列如何用 ggwave 实现隔空数据传输从第一声到设备配对的完整指南如何用 ggwave 实现隔空数据传输从第一声到设备配对的完整指南 把新烧录的 ESP32 丢进没有网络的机房WiFi 密码怎么送进去扬声器播一段 3 秒通信物联网嵌入式上一篇物联大师快速上手指南5分钟部署开源免费的工业物联网平台下一篇物联大师5分钟快速部署的免费轻量级物联网平台完整指南创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表