180、TinyML实战项目:环境监测与空气质量预测

📅 2026/8/2 12:29:26
180、TinyML实战项目:环境监测与空气质量预测
180 TinyML实战项目:环境监测与空气质量预测从一块“发疯”的传感器说起去年冬天调试一个室内空气质量监测节点,板子放在实验室角落,CO2浓度读数突然从400ppm飙到2000ppm。第一反应是传感器坏了——换了模块,问题依旧。后来发现是暖气片正好对着传感器吹,热气流导致红外光源漂移。这个坑让我意识到:TinyML项目里,算法再漂亮,传感器物理特性没摸透,数据就是垃圾。今天这个项目,就是从那块“发疯”的传感器开始的。我们要在STM32L4上跑一个轻量级模型,预测未来30分钟的PM2.5和TVOC趋势,而不是等浓度爆表了才报警。硬件选型:别被“高精度”忽悠了传感器选了Sensirion SGP40(TVOC)和Plantower PMS5003(PM2.5)。注意,SGP40输出的是“原始气体指数”,不是直接浓度值——很多新手直接拿这个数当TVOC用,模型训练出来全是噪声。正确做法是配合SHT30温湿度做补偿,公式在Sensirion的GitHub仓库里有,别自己瞎拟合。MCU用STM32L476RG,理由很简单:FPU浮点运算单元,跑TFLite Micro的量化模型时,浮点转定点运算能省30%的功耗。别用F103系列,没有FPU,量化模型推理慢到怀疑人生。数据采集:最容易被忽视的“脏活”采集频率设1Hz,但别直接喂给模型。我踩过的坑:原始数据里混着传感器自检脉冲(PMS5003每10秒会发一个0值),不滤波的话,模型会学到“每10秒掉一次”的假规律。