4、核心硬件选型(传感器与执行器)

好,咱们进入实战环节最烧钱的部分——硬件选型。

土壤湿度传感器、流量计、电磁阀、水泵驱动电路。这四个东西,选对了,项目成功一半。选错了,你后期调试会想骂人。我这些年踩过的坑,有一半都跟这四样东西有关。

4.1 土壤湿度传感器:别被「精度」忽悠了

先说土壤湿度传感器。市面上常见的就两种:电容式和电阻式。

电阻式,说白了就是两根金属探针插土里,测电阻。土越湿,电阻越小。便宜,几块钱一个。但有个致命问题——电极会腐蚀。我做过一个项目,用了电阻式传感器,三个月后,探针都锈没了。数据全飘了。所以,长期项目别用电阻式

电容式,测的是土壤介电常数。没有裸露电极,不会腐蚀。寿命长得多。我个人习惯,只要预算允许,一律用电容式。比如常见的型号有:

类型 典型型号 输出方式 参考价格 推荐场景
电阻式 YL-69 / HL-69 模拟电压 / 数字比较 3~8元 临时测试、低成本演示
电容式 SKU:SEN0193 模拟电压 (1.2V~2.5V) 15~30元 长期部署、精准灌溉
电容式 DFR0300 I2C 数字输出 40~60元 高精度、多传感器组网
我的经验:电容式传感器输出的是模拟电压,但不同土壤类型(沙土、黏土、腐殖土)对应的电压范围不一样。你想想看,同一块传感器,插在沙土里和插在菜地里,读数能差20%。所以,必须做土壤标定。我一般会在代码里留一个校准系数,现场用干土和饱和水做两点标定。

4.2 流量计:霍尔效应还是超声波?

流量计,用来算灌溉了多少水。这玩意儿选不好,水费都算不清。

家用级别,最常用的是霍尔效应流量计。原理很简单:水流推动叶轮,叶轮上有个磁铁,霍尔传感器检测磁场变化,输出脉冲。脉冲频率跟流量成正比。

典型型号:YF-S201。便宜,10块钱左右。但有个坑——精度受水压影响很大。水压不稳,叶轮转速就不稳,流量读数就飘。我在一个项目中遇到过,白天水压高,晚上水压低,同一块地,白天晚上测出来的流量差了15%。

所以,如果你要求精度高,或者水压不稳定,我建议用超声波流量计。没有活动部件,不怕水垢,不怕水压波动。当然,价格也贵,一个模块要100~300元。

选型要点:

  • 霍尔式:便宜、简单、适合水压稳定的场景。注意加稳压阀
  • 超声波式:精度高、无磨损、适合长期无人值守。但功耗高,需要外部供电。
  • 接口:霍尔式输出脉冲,直接接MCU的外部中断。超声波式一般是串口或I2C。
避坑指南:我曾经在北方一个项目里用了霍尔流量计,结果冬天水管结冰,叶轮被冰卡住,开春化冰后叶轮直接碎了。所以,有冻害风险的地区,要么用超声波,要么做好冬季排水

4.3 电磁阀:常闭还是常开?

电磁阀,就是控制水路通断的开关。选型就三个关键点:工作电压、常开/常闭、功耗

工作电压:常见的有DC 12V和DC 24V。我个人习惯用12V,因为跟水泵驱动电路好搭配。但如果你管道很长、水压很大,12V可能吸不住,那就得上24V。

常闭 vs 常开

  • 常闭:断电时阀门关闭。这是最常用的。安全考虑——万一系统掉电,阀门自动关闭,不会水漫金山。
  • 常开:断电时阀门打开。用在一些特殊场景,比如排水系统。

嗯,这里要注意:常闭电磁阀在通电时是耗电的。如果你用电池供电,那电磁阀一直开着,电池很快就没电了。所以,电池供电的系统,我一般会用自锁式电磁阀——脉冲驱动,状态保持,不耗电。

功耗:普通电磁阀启动电流可能到500mA~1A,保持电流也有200mA左右。所以,驱动电路不能直接用MCU的GPIO去推,必须用MOS管或继电器

核心要点:电磁阀驱动电路,我推荐用N沟道MOS管 + 续流二极管。MOS管选型时注意Vgs阈值电压,3.3V的MCU要选逻辑电平型MOS管,比如AO3400。续流二极管用1N4007就行,防止电磁阀断电时反电动势烧MOS管。

4.4 水泵驱动电路设计要点

水泵是系统里功率最大的器件。驱动电路设计不好,轻则MCU复位,重则烧板子。

水泵分两种:直流有刷泵无刷直流泵(BLDC)

直流有刷泵:便宜,控制简单。但电刷会磨损,寿命短。驱动电路就是一个大功率MOS管,加PWM调速。注意:

  • MOS管要留足够的余量。比如水泵额定电流2A,MOS管至少选5A以上的。
  • 大电容在电源端。水泵启动瞬间电流可能是额定电流的3~5倍。不加电容,电压会被拉低,MCU直接复位。
  • TVS管。水泵是感性负载,关断时会产生高压尖峰。TVS管可以吸收这个尖峰。

无刷直流泵:效率高,寿命长,噪音小。但控制复杂,需要专门的BLDC驱动芯片,比如DRV11873、TMC6300。这些芯片内部集成了MOS管和换相逻辑,你只需要给PWM信号就行。

我个人的建议:

  • 小功率(< 50W):用直流有刷泵,成本低,电路简单。
  • 大功率(> 50W)或需要长时间运行:用无刷泵,虽然贵,但省心。
一个实用电路结构:我常用的水泵驱动电路是「光耦隔离 + MOS管 + 续流二极管 + TVS管」。光耦隔离是为了保护MCU,防止水泵故障时高压窜到控制板。光耦型号用PC817或EL357,MOS管用IRF540N或NCE3080。这个电路我用了好几年,没出过问题。

4.5 整体供电与布线

最后说一句供电。传感器、电磁阀、水泵,电压可能不一样。传感器一般3.3V或5V,电磁阀12V,水泵12V或24V。所以,你需要多路电源。

我一般这样设计:

  • 一个24V开关电源作为总电源。
  • 24V直接给水泵供电(如果水泵是24V)。
  • 24V通过DC-DC降压模块降到12V,给电磁阀供电。
  • 12V再通过LDO降到5V或3.3V,给MCU和传感器供电。

这样做的好处是:各级电源独立,互不干扰。水泵启动时电压波动,不会影响到MCU。

注意:电磁阀和水泵的电源线,一定要跟传感器信号线分开走。我见过有人把强电线和信号线绑在一起,结果电磁阀一动作,传感器读数就跳变。这就是电磁干扰。解决办法:强电线用双绞线或屏蔽线,信号线远离强电线,至少间隔5cm。

好了,核心硬件选型就这些。下一章咱们开始画原理图,把这些器件连起来。