1. 项目背景与核心需求
大棚环境监测系统是农业物联网领域的典型应用场景。作为一名长期从事嵌入式开发的工程师,我发现在实际农业生产中,传统的人工巡检方式存在数据记录不及时、环境调控滞后等问题。去年参与山东某蔬菜基地改造项目时,种植户反映因夜间温湿度骤变导致整批幼苗受损的情况,这促使我开始研究这套基于STM32的自动化监测方案。
系统需要实现三个核心功能:
- 实时采集空气温湿度、土壤湿度、光照强度等关键参数
- 通过无线网络将数据上传至云平台
- 提供移动端实时查看和异常报警功能
选择STM32F103C8T6作为主控,因其具备:
- 丰富的外设接口(3个USART、2个SPI、2个I2C)
- 充足的GPIO资源(37个I/O口)
- 低功耗特性(运行模式仅36mA@72MHz)
- 内置12位ADC满足传感器采样精度要求
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 硬件系统设计与选型
2.1 传感器模块配置
在实际测试中,发现不同厂商的传感器性能差异显著。经过对比测试,最终选型如下:
| 传感器类型 | 型号 | 通信协议 | 测量范围 | 精度 | 供电 |
|---|---|---|---|---|---|
| 温湿度 | DHT22 | 单总线 | -40~80℃/0~100%RH | ±0.5℃/±2%RH | 3.3-5V |
| 土壤湿度 | SEN0193 | 模拟量 | 0~100% | ±3% | 3.3-5V |
| 光照强度 | BH1750 | I2C | 1-65535lx | ±1lx | 3.3-5V |
| CO2浓度 | MH-Z19 | UART | 0-5000ppm | ±50ppm | 5V |
关键经验:DHT22需注意上电后1秒内不要发送指令,否则可能返回错误数据。实测发现添加100nF去耦电容可提高稳定性20%
2.2 通信模块选型对比
考虑到大棚通常位于郊区,网络覆盖情况复杂,测试了三种方案:
-
ESP8266 WiFi模块
- 优点:直接连接路由器,无需网关
- 缺点:传输距离有限(实测大棚金属骨架会衰减信号30%)
-
SIM800C GPRS模块
- 优点:覆盖范围广
