1. 项目背景与核心需求
去年夏天出差两周,回家后发现阳台上精心培育的多肉几乎全军覆没。这个惨痛教训让我下定决心开发一套能自动照看植物的智能系统。传统定时浇灌存在水资源浪费和适应性差的问题,而市面成品动辄上千元的价格也让爱好者望而却步。
这个系统的核心要解决三个痛点:
- 土壤湿度精准监测(避免凭感觉浇水)
- 环境自适应调节(不同季节不同浇水量)
- 远程监控能力(出差也能查看植物状态)
经过三个版本迭代,最终成型的设计方案成本控制在200元以内,湿度检测误差小于±3%,手机端可实时查看数据。下面分享从元器件选型到代码调试的全过程干货。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 硬件系统设计
2.1 核心控制器选型
对比了Arduino UNO、ESP8266和STM32F103C8T6三种方案:
- Arduino开发简单但依赖扩展板
- ESP8266自带WiFi但ADC精度仅10位
- STM32拥有12位ADC且价格仅15元
最终选择STM32最小系统板,其优势在于:
- 72MHz主频满足实时性要求
- 12位ADC(0-3.3V)对应4096级分辨率
- 多达37个GPIO可扩展其他传感器
- 串口下载无需额外调试器
注意:STM32的3.3V电平需要特别注意与5V传感器的电平转换
2.2 传感器模块配置
2.2.1 土壤湿度检测
测试了电阻式和电容式两种传感器:
- 电阻式(FC-28)价格便宜但易电解腐蚀
- 电容式(SEN0193)采用镀金工艺更耐用
实测数据对比:
| 传感器类型 | 响应时间 | 寿命周期 | 价格 |
|---|---|---|---|
| 电阻式 | 2s | 3-6个月 | 8元 |
| 电容式 | 0.5s | 2年以上 | 35元 |
虽然电容式价格较高,但长期使用性价比更优。其输出电压0-3V对应湿度0-100%RH,通过STM32的ADC1_CH4通道采集。
2.2.2 环境监测模块
DHT11温湿度传感器:
- 测量范围:20-90%RH/0-50℃
- 单总线通信节省IO口
- 误差±5%RH需软件校准
BH1750光照传感器:
- 0-65535lx量程
- I2
