数据链路全景
传感器上云是一条流水线:设备端 ADC 采样、边缘网关预处理、通过 MQTT 上云、平台解码写入时序库、再由可视化大屏展示并触发告警。任何一环没对齐,数据要么丢、要么错、要么慢。
做之前先把这条链路画出来:每一步谁负责、数据什么格式、丢了怎么补发。比急着写代码重要得多。
上云 = 采集 → 预处理 → 上云 → 入库 → 可视化。
每一环职责
- 设备采样、打包。
- 网关清洗、断缓存。
- 平台解码、入库。
- 应用展示、告警。
设备端采集
设备端按采样率读 ADC,按时间戳打包。采样率不是越高越好,温度这种慢变量 1 分钟一次足够;振动这种快变量要 kHz 级。带时间戳,平台才能对齐。
边缘预处理
网关在本地做滤波、去异常、压缩。断网时本地缓存,网好了再补发。原始数据直接上云既费流量又费存储,边缘清洗后再传。
上云协议
主流走 MQTT。主题约定为 product/device/datapoint,payload 用 JSON 或二进制。QoS 1 保证至少一次,丢了重传。设备断网重连后要把缓存的包补发上去。
# 上行主题示例
{product}/{device_id}/up
# payload
{"ts":1729000000,"temp":23.5,"hum":45.1}
时序数据库
IoT 数据是按时间索引的,用 InfluxDB、TDengine、TimescaleDB 这类时序库。写多读多,按设备分区。保留策略设好,热数据留 30 天、冷数据归档。
落地清单
- 时间戳设备端打、别用云时间。
- 边缘断网缓存、补发。
- QoS1,至少一次。
- 时序库按设备分区、设保留。
可视化与告警
大屏按设备分组展示实时曲线、最新值、状态。告警规则配阈值:温度超 80 度持续 30 秒就推企业微信。告警要去抖,别一直刷。
小结与延伸阅读
传感器上云是一条流水线,每一环都要稳。采集规范、边缘缓存、时序入库、告警去抖,配齐之后数据就真正能用了。
- MQTT 5.0 新特性读《MQTT 5.0 新特性实战》。
- Modbus 采集读《Modbus 工业采集实战》。
- IoT 数据可视化读《物联网数据分析与可视化实战》。