第四章 探测器驱动电路:偏置电压生成、TEC温控电路设计、读出电路(ROIC)时序控制、低噪声电源设计
好,咱们进入第四章。这一章可以说是整个热成像系统的“心脏起搏器”——探测器驱动电路。你想想看,探测器本身再牛,如果驱动电路做得稀烂,出来的图像照样是一团浆糊。我这些年调试过的板子,至少有一半的问题都出在驱动这一块。
说白了,驱动电路要干四件事:给探测器一个稳定的偏置电压、把温度稳住、让读出电路按节奏工作、以及提供干净的电源。咱们一个一个来拆解。
4.1 偏置电压生成——探测器的“生命线”
非制冷红外探测器,不管是氧化钒还是非晶硅,都需要一个极其稳定的偏置电压。这个电压直接决定了探测器的响应率和噪声基底。我见过有人直接用DCDC输出接个电阻分压就给探测器供电,结果图像上全是横条纹——嗯,那画面太美我不敢看。
核心要求:偏置电压的纹波要控制在1mV以内,最好是亚毫伏级别。温度漂移也要小,一般要求小于50ppm/℃。
我的推荐方案:
- 使用超低噪声LDO(如ADP150、LP5907),噪声典型值在10μVrms左右
- LDO输出后加一级RC滤波,时间常数取10ms以上
- 分压电阻使用0.1%精度、25ppm/℃的金属膜电阻
- 在探测器引脚附近放置10μF钽电容 + 0.1μF陶瓷电容
避坑指南:我曾经在一个项目里用了普通贴片电阻做分压,结果温度一变化,偏置电压就飘了5mV,图像亮度跟着环境温度一起变。后来换成高精度低温漂电阻,问题才解决。记住,偏置电压的稳定性,直接等于图像的稳定性。
4.2 TEC温控电路设计——给探测器一个“恒温箱”
非制冷探测器虽然叫“非制冷”,但它内部其实有一个微型TEC(热电制冷器),用来把探测器芯片的温度稳定在一个固定点,通常是室温附近。为什么要这么做?因为探测器的响应率随温度变化很大,如果不控温,你看到的图像会随着环境温度漂移。
温控系统的组成:
- 温度传感器:通常集成在探测器内部,是一个NTC热敏电阻或二极管
- PID控制器:可以用模拟PID,也可以用数字PID(MCU/FPGA实现)
- H桥驱动:驱动TEC双向电流,实现加热或制冷
我个人习惯用数字PID,因为参数调整方便。模拟PID虽然响应快,但调试起来太痛苦了——换一个电阻就得重新算一遍。
一个简单的数字PID实现思路:
// 伪代码示例
error = target_temp - current_temp;
integral += error * dt;
derivative = (error - last_error) / dt;
output = Kp * error + Ki * integral + Kd * derivative;
// 限幅,防止积分饱和
if (output > MAX) output = MAX;
if (output < -MAX) output = -MAX;
// 输出到H桥
if (output > 0) {
// 加热模式
set_h_bridge(HEAT, output);
} else {
// 制冷模式
set_h_bridge(COOL, -output);
}
注意:TEC的驱动电流不要超过探测器手册规定的最大值,否则会烧毁TEC。我见过有人把电流设到1.5A,结果TEC直接冒烟——那味道,至今难忘。
4.3 读出电路(ROIC)时序控制——让像素“排队”出来
ROIC(Readout Integrated Circuit)是探测器内部的“数据搬运工”。它把每个像素的模拟电压信号,按照一定的时序,一行一行地输出出来。说白了,就像电影院散场,你得让观众按顺序走,不能一窝蜂挤出来。
典型的ROIC时序信号包括:
- 主时钟(MCLK):系统基准时钟,通常几MHz到几十MHz
- 行同步(LSYNC):每开始一行时触发
- 帧同步(FSYNC):每开始一帧时触发
- 数据输出(DATA):串行或并行的模拟/数字信号
这些时序信号通常由FPGA或CPLD产生。为什么不用MCU?因为MCU的定时器精度不够,而且IO口数量也有限。我建议用FPGA,哪怕是最小型的ICE40系列,也完全够用。
一个典型的ROIC时序要求(以某款384×288探测器为例):
| 参数 | 最小值 | 典型值 | 最大值 | 单位 |
|---|---|---|---|---|
| MCLK频率 | 4 | 8 | 16 | MHz |
| 帧周期 | 16.6 | 33.3 | 40 | ms |
| 行周期 | 40 | 80 | 100 | μs |
| 数据建立时间 | 10 | 20 | - | ns |
| 数据保持时间 | 10 | 20 | - | ns |
个人经验:调试ROIC时序时,一定要用示波器同时抓MCLK、LSYNC、FSYNC和DATA四路信号。我曾经因为FPGA内部布线延迟,导致数据建立时间不够,图像上出现了一行一行的错位。后来在约束文件里加了时序约束才搞定。
4.4 低噪声电源设计——干净的“血液”
探测器对电源噪声极其敏感。你想想看,一个像素的模拟电压变化可能只有几毫伏,如果电源上有个10mV的纹波,那图像上就是一片噪声。所以,低噪声电源设计是驱动电路的重中之重。
设计要点:
- 分区供电:模拟电路和数字电路要分开供电,中间用磁珠或0Ω电阻隔离
- LDO选型:模拟电源用超低噪声LDO,数字电源可以用普通LDO或DCDC
- 滤波电容:每个电源引脚附近都要有0.1μF + 10μF的组合
- PCB布局:电源走线要短而粗,避免形成环路
一个典型的电源树设计:
电池/适配器 (12V)
│
├─ DCDC (5V) ── LDO (3.3V) ── 数字电源 (FPGA、MCU)
│
└─ LDO (5V) ── LDO (3.3V) ── LDO (1.8V) ── 模拟电源 (探测器、运放)
│
└─ π型滤波 ── 偏置电压 (Vbias)
警告:千万不要把DCDC的输出直接接到探测器的模拟电源上!DCDC的开关噪声通常在几十mV级别,足够把图像毁掉。我见过有人这么干,结果图像上全是50kHz的开关噪声条纹——嗯,那叫一个“艺术”。
4.5 整体设计流程与调试建议
好了,四个模块都讲完了。在实际项目中,我建议按以下顺序来设计:
- 先确定电源树,把模拟和数字电源分开
- 再设计偏置电压生成电路,确保纹波和温漂达标
- 然后设计TEC温控电路,让探测器工作在恒温状态
- 最后用FPGA产生ROIC时序,并验证时序是否满足要求
调试的时候,我习惯先不接探测器,用示波器把电源、偏置电压、时序信号都测一遍,确认没问题了再接探测器。否则,一旦接上探测器,出了问题很难分清是驱动电路的问题还是探测器本身的问题。
最后一句:驱动电路做得好,热成像系统就成功了一半。另一半是什么?咱们后面几章慢慢聊。
公众号:蓝海资料掘金营,微信deep3321