传感器基础:从物理世界到电信号的桥梁

做模拟信号链设计,传感器是绕不开的第一关。我常说,传感器就是系统的「眼睛」和「耳朵」。你想想看,没有它,ADC再厉害也白搭。

这一章咱们聊聊传感器的分类、选型要点,以及怎么跟ADC做好匹配。嗯,这里面的坑不少,我当年可没少踩。

传感器分类:温度、压力、光、磁

传感器种类多得很,但模拟信号链里最常见的就是这四大类。我按自己的经验给你捋一捋。

温度传感器

温度传感器分接触式和非接触式。接触式里,热电偶和RTD(电阻温度探测器)是主力。

  • 热电偶:测温范围宽(-200°C到2000°C),但输出信号小,只有几毫伏。我做过一个高温炉项目,用的就是K型热电偶,冷端补偿没做好,数据飘得厉害。
  • RTD:精度高,稳定性好,但贵。铂电阻PT100最常见,0°C时100Ω,每度变化约0.385Ω。
  • 热敏电阻:便宜,灵敏度高,但非线性严重。说白了,适合精度要求不高的场合。

压力传感器

压力传感器核心是压阻效应或电容变化。我见过最多的是MEMS压阻式压力传感器。

  • 绝压传感器:参考真空,测绝对压力。
  • 表压传感器:参考大气压,测相对压力。
  • 差压传感器:测两个端口压力差。工业流量测量常用这个。

记得有一次,我选了个表压传感器做海拔高度测量,结果读数一直不对。后来才发现,表压传感器会随天气变化漂移。嗯,这个坑你们别踩。

光传感器

光传感器种类多,光电二极管、光电晶体管、环境光传感器等等。

  • 光电二极管:响应快,线性好,但输出电流小(pA到μA级)。需要跨阻放大器(TIA)来转换。
  • 环境光传感器:集成度高,直接输出数字信号或模拟电压。手机屏幕亮度调节就用这个。

我做过一个光纤通信项目,用的就是高速光电二极管。那会儿为了降低暗电流噪声,折腾了好几个礼拜。

磁传感器

磁传感器主要分霍尔效应和磁阻效应两类。

  • 霍尔传感器:测磁场强度,输出与磁场成比例的电压。便宜,但灵敏度一般。
  • 磁阻传感器:灵敏度高,功耗低。AMR、GMR、TMR三种,TMR最灵敏。

电机转子位置检测,我习惯用霍尔传感器。但如果你要做高精度角度测量,磁阻传感器更合适。

传感器选型要点

选传感器,说白了就是找平衡。我总结了几个关键点,你选型时对照着看。

选型维度 关键问题 我的建议
测量范围 被测物理量的最大值和最小值是多少? 留20%余量,别卡着上限用
精度与分辨率 系统需要多高的精度? 传感器精度要比系统要求高3-5倍
响应时间 信号变化快不快? 动态测量选响应快的,静态无所谓
工作环境 温度、湿度、振动、电磁干扰如何? 工业环境优先选工业级,别省钱
输出接口 模拟还是数字?电压、电流还是电阻? 看后端ADC的输入类型来定

我的小技巧:选型时先看数据手册的「绝对最大额定值」,再看「电气特性」。很多工程师只看典型值,结果一上电就烧了。我曾经就吃过这个亏。

传感器输出特性:电压、电流、电阻

传感器的输出信号,无非三种形式:电压、电流、电阻。每种都有它的脾气。

电压输出

最常见。比如热电偶输出几毫伏,霍尔传感器输出几伏。电压输出传感器,直接连ADC就行,但要注意阻抗匹配。

  • 高阻抗输出:比如pH电极,输出阻抗高达1GΩ。必须用高输入阻抗的放大器缓冲。
  • 低阻抗输出:比如运放输出的传感器,直接连ADC没问题。

电流输出

工业上常用4-20mA电流环。为什么用电流?因为电流信号抗干扰能力强,长距离传输不掉精度。

  • 4-20mA:4mA代表零值,20mA代表满量程。还能通过检测是否低于4mA来判断断线。
  • 0-20mA:没有断线检测功能,但范围更宽。

我做过一个工厂自动化项目,现场传感器离控制室有200米。用电压输出,信号衰减得没法看。换成4-20mA,问题立马解决。

电阻输出

RTD和热敏电阻就是典型。电阻变化需要转换成电压才能被ADC读取。

  • 分压电路:最简单,但精度受参考电压影响。
  • 惠斯通电桥:精度高,适合小电阻变化测量。
  • 恒流源激励:最稳定,但电路复杂些。

重点提醒:电阻传感器用分压法时,参考电压的噪声会直接耦合到测量结果里。我建议用低噪声LDO给传感器供电,别省那几毛钱。

传感器与ADC的接口匹配

传感器和ADC之间,不是随便连上就能用的。匹配不好,精度全白搭。

阻抗匹配

ADC的输入阻抗是有限的。如果传感器输出阻抗太高,信号会被分压,导致测量误差。

  • SAR型ADC:输入阻抗随采样频率变化,需要驱动运放。
  • Σ-Δ型ADC:输入阻抗高,但需要建立时间。

我建议:传感器输出阻抗超过10kΩ时,加一级运放缓冲。别偷懒。

电压范围匹配

ADC的输入范围是固定的(比如0-3.3V或0-5V)。传感器输出范围必须落在这个区间内。

  • 信号太小:加放大器,把信号放大到ADC满量程的80%左右。
  • 信号太大:加分压电阻或衰减器。
  • 有负电压:加电平移位电路,或者用双极性ADC。

噪声匹配

传感器噪声和ADC噪声要匹配。说白了,ADC的量化噪声要比传感器噪声小,否则ADC就是瓶颈。

  • 低噪声传感器:选高分辨率ADC(16位以上)。
  • 高噪声传感器:用低分辨率ADC(12位)就够了,别浪费钱。

注意:我曾经在一个项目中,用了24位ADC配一个噪声很大的压力传感器。结果ADC的LSB(最低有效位)一直在跳,根本读不到稳定值。后来换成16位ADC,反而效果更好。所以,ADC位数不是越高越好,要看传感器噪声。

采样率匹配

传感器响应速度决定了ADC的采样率需求。

  • 温度传感器:响应慢,几Hz采样就够了。
  • 压力传感器:几十到几百Hz。
  • 光传感器:可能到MHz级别。

采样率选高了,数据量大,功耗高。选低了,信号失真。我一般按传感器带宽的5-10倍来选采样率。

一个实际匹配案例

给你看个我常用的电路结构。假设用PT100测温度,输出电阻范围100Ω到138.5Ω(0°C到100°C)。

// PT100 电阻到电压转换(恒流源法)
// 恒流源输出 1mA,流过 PT100
// 0°C时:V = 1mA * 100Ω = 100mV
// 100°C时:V = 1mA * 138.5Ω = 138.5mV
// 电压变化范围:38.5mV

// 放大电路设计
// 目标:将38.5mV放大到3.3V满量程的80% ≈ 2.64V
// 所需增益:2.64V / 38.5mV ≈ 68.6
// 选标准增益:68(用两个电阻实现)

// ADC选型
// 分辨率要求:0.1°C精度
// 38.5mV对应100°C,0.1°C对应38.5μV
// 放大后:38.5μV * 68 ≈ 2.62mV
// 3.3V / 2^12 ≈ 0.8mV(12位ADC的LSB)
// 3.3V / 2^16 ≈ 50μV(16位ADC的LSB)
// 选16位ADC,LSB 50μV,可以分辨0.1°C

这个案例里,我用了恒流源激励,避免了分压法的参考电压噪声问题。放大器增益选了68倍,把信号放大到ADC的合适范围。ADC选了16位,刚好匹配传感器噪声水平。

经验之谈:实际做的时候,别忘了在传感器和ADC之间加一个低通滤波器。截止频率设在传感器带宽的2-3倍就行。能滤掉不少高频噪声,效果立竿见影。

好了,传感器基础就聊到这儿。下一章咱们深入讲讲ADC的选型和驱动电路设计。到时候我会拿几个实际项目案例,把匹配的细节掰开揉碎了讲。