4、水质传感器选型与接口:pH、溶解氧、浊度、电导率传感器选型,I2C/UART/模拟接口对比
4.1 选型前的灵魂拷问:你要测什么?
做水质监测浮标,传感器选型是第一步。
我见过不少项目,硬件焊好了,代码写完了,下水一测——数据飘得像心电图。为什么?传感器没选对。
说白了,浮标环境跟实验室完全两码事。水流、温度变化、生物附着、供电限制,每一个都是坑。
我们先看四个核心参数:pH、溶解氧、浊度、电导率。这是水质监测的「四大金刚」,缺哪个都不完整。
4.2 pH传感器:别只看精度
pH传感器,市面上从几十块到几千块都有。我个人的习惯是:浮标项目至少选工业级。
为什么?实验室用的玻璃电极太娇贵。浮标在水里一漂就是几个月,电极表面容易结垢,漂移会越来越严重。
关键参数:
- 测量范围:0-14 pH(基本要求)
- 精度:±0.1 pH 以内(工业级)
- 响应时间:< 30秒
- 接口:模拟电压输出(最常见)或 RS485 Modbus
接口方面,我建议优先选模拟接口。为什么?因为浮标主控通常是低功耗单片机,自带ADC。模拟pH传感器直接接ADC引脚,电路简单,功耗也低。
但要注意一点:模拟信号容易受干扰。我曾经在一条船上测试,电机一启动,pH值直接跳了0.5。后来加了屏蔽线和RC滤波才稳住。
我的经验:模拟pH传感器输出阻抗很高(通常10MΩ以上),ADC输入阻抗必须匹配。否则测出来的电压会偏小,pH值也跟着偏。选ADC时,注意看输入阻抗参数。
4.3 溶解氧传感器:荧光法 vs 电化学法
溶解氧传感器,我踩过最大的坑就是电化学法。
电化学DO传感器便宜,但有个致命问题:需要定期换膜、加电解液。浮标在水里,你总不能每周捞起来维护一次吧?
所以,我个人强烈推荐荧光法溶解氧传感器。虽然贵一些,但免维护周期长,一般能撑半年到一年。
| 类型 | 优点 | 缺点 | 适用场景 |
|---|---|---|---|
| 电化学法 | 成本低、技术成熟 | 需频繁维护、漂移大 | 短期监测、实验室 |
| 荧光法 | 免维护、稳定性好 | 价格高、功耗略大 | 长期浮标监测 |
接口方面,荧光法DO传感器大多用UART(串口)输出。数据格式通常是Modbus RTU协议。你想想看,串口通信简单可靠,主控端只需要一个UART引脚就能搞定。
注意:荧光法DO传感器内部有光源和光电探测器,功耗比电化学法高。选型时一定要看工作电流。我见过有人选了50mA的DO传感器,结果电池容量不够,浮标只能撑3天。
4.4 浊度传感器:光散射法的门道
浊度传感器,说白了就是测水「浑不浑」。
原理上,主流是90度光散射法。光源打过去,接收器在侧面90度位置收散射光。散射光越强,浊度越高。
嗯,这里要注意:光源波长很关键。我习惯选红外LED(860nm)的传感器,因为可见光容易受水色干扰。比如水里有藻类,绿色光会被吸收,测出来的浊度就偏小。
接口选择上,浊度传感器比较灵活:
- 模拟输出:0-5V或4-20mA,直接接ADC。优点是简单,缺点是抗干扰差。
- UART输出:数字信号,抗干扰强。但要注意波特率匹配。
- I2C输出:少见,但有些高集成度传感器会用。
我个人更倾向UART接口。为什么?因为浊度传感器通常离主控板有一段距离(浮标结构限制),模拟信号走远了容易衰减。UART是差分信号?不,普通UART是单端,但至少是数字电平,抗干扰比模拟强。
避坑指南:我曾经用过一个模拟浊度传感器,线长2米,结果测出来数据波动很大。后来发现是线缆屏蔽层没接地。记住:模拟信号线一定要用屏蔽双绞线,单端接地。
4.5 电导率传感器:交流激励是必须的
电导率传感器,测的是水的导电能力。原理很简单:两个电极片,通电测电阻。
但有个坑:直流电会导致电极极化。极化之后,电极表面会形成双电层,测出来的电阻就偏大。所以,电导率传感器必须用交流激励。
市面上成熟的电导率传感器,内部都集成了交流信号发生电路。你只需要给它供电,它输出模拟电压或数字信号。
接口方面,我推荐I2C接口。为什么?
- I2C只需要两根线(SCL、SDA),节省IO口。
- 电导率传感器通常需要校准参数(电极常数K),I2C可以直接读写内部寄存器,方便存储校准值。
- 浮标主控一般有多个I2C外设(RTC、气压计等),共用总线没问题。
选型要点:
- 量程:淡水监测选0-5000 µS/cm,海水监测选0-100 mS/cm
- 电极材质:铂金或石墨,耐腐蚀
- 温度补偿:必须有,因为电导率随温度变化很大(约2%/℃)
4.6 接口对比:I2C vs UART vs 模拟
三种接口,各有各的脾气。我整理了一张表,你一看就明白:
| 接口类型 | 线数 | 传输距离 | 抗干扰 | 功耗 | 典型传感器 |
|---|---|---|---|---|---|
| 模拟(0-5V/4-20mA) | 1-2根 | 短(< 1m) | 差 | 低 | pH、部分浊度 |
| UART(TTL/RS232) | 2根(TX/RX) | 中(< 5m) | 中 | 中 | 溶解氧、浊度 |
| I2C | 2根(SCL/SDA) | 短(< 0.5m) | 好(差分?不,是开漏) | 低 | 电导率、部分pH |
你想想看,浮标内部空间有限,走线越少越好。I2C和UART都是两根线,但I2C可以挂多个设备,UART只能点对点。所以,如果传感器都在同一个电路板上,我优先选I2C。
但如果传感器需要拉线到远处(比如浮标底部的探头),UART更靠谱。模拟接口嘛,除非你预算紧张或者传感器只有模拟输出,否则我建议尽量避开。
重要提醒:I2C总线有电容限制。线太长或者挂的设备太多,信号会变形。我遇到过I2C通信偶尔失败,查了半天,原来是总线电容超了100pF。解决办法:降低I2C时钟频率,或者加总线缓冲器。
4.7 我的选型清单(实战版)
最后,给你一份我目前在用的选型清单,供参考:
- pH:模拟输出,工业级玻璃电极,精度±0.1 pH,带温度补偿
- 溶解氧:荧光法,UART输出,Modbus协议,免维护周期≥6个月
- 浊度:90度散射法,红外光源,UART输出,量程0-1000 NTU
- 电导率:交流激励,I2C接口,铂金电极,自动温度补偿
这套组合,我在三个浮标项目上验证过。数据稳定,维护周期长。当然,具体选型还得看你的预算和监测水域。如果是高污染水体,电极污染会更快,维护周期要缩短。
嗯,传感器选型就聊到这儿。下一节,我们讲传感器与主控的硬件连接,包括电平匹配、电源隔离这些实战细节。