4. 硬件系统架构:整体硬件框图与信号链路分析

做热成像相机,硬件架构是地基。地基没打好,后面算法调得再好也白搭。

我记得刚入行那会儿,带我的老工程师跟我说过一句话:「热成像系统,说白了就是一条信号链。你把这根链条上的每个环节吃透了,设计就不会跑偏。」这么多年下来,我越来越觉得这话在理。

今天咱们就把这条链条拆开,一个一个看。

4.1 整体硬件框图

先看一张我手绘的系统框图。别嫌丑,这结构我用过很多次,量产验证过的。

热成像相机硬件系统架构框图 红外焦平面阵列 非制冷型 VOx / a-Si 分辨率 384×288 / 640×512 模拟信号输出 模拟前端 (AFE) 低噪声放大器 + 相关双采样 可编程增益控制 (PGA) 14/16-bit ADC 输出 FPGA / DSP 非均匀校正 (NUC) 坏点替换 + 滤波 图像增强 (直方图/细节) 数字视频流输出 主控 MCU ARM Cortex-M/RISC-V UI 交互 / 存储 通信 (USB/UART/WiFi) 电源管理 (PMIC) 多路 LDO / DC-DC 转换器 | 上电时序控制 | 低功耗待机模式 温度传感器 (TEC / 测温) 反馈至 FPGA 做温度补偿 存储 (Flash / SD卡) 校准参数 / 图像存储 显示 (LCD / OLED) 图像预览 / UI 显示 通信接口 USB / UART / SPI / I2C 图例 信号处理链路 电源/控制链路 辅助/外设 存储/显示/通信

这张图我建议你多看几眼。每个模块之间怎么连、数据怎么流,心里要有数。

4.2 信号链路逐级分析

信号链路是热成像系统的命脉。从红外辐射打到传感器上,到最终屏幕上显示出一张清晰的热图,中间经过了好几个关键环节。咱们一个一个来过。

4.2.1 传感器:红外焦平面阵列

传感器是整个系统的起点。目前主流的是非制冷型,材料分两种:氧化钒(VOx)和非晶硅(a-Si)。

我个人习惯用 VOx 的,因为它的温度灵敏度更高,噪声等效温差(NETD)能做到 40mK 以下。a-Si 的优点是工艺成熟、成本低,但噪声指标稍差一些。

关键参数:
  • 分辨率: 384×288 是入门级,640×512 是中高端。分辨率越高,像元间距越小(17μm / 12μm),对光学系统的要求也越高。
  • NETD(噪声等效温差): 这个值越小越好。50mK 以下算及格,30mK 以下算优秀。
  • 帧率: 一般 25Hz 或 30Hz,高速应用需要 60Hz 以上。

传感器输出的是模拟信号,而且是差分信号。为什么用差分?因为信号幅度很小,只有几毫伏到几十毫伏,差分传输能有效抑制共模噪声。

4.2.2 模拟前端(AFE)

模拟前端是信号链里最容易出问题的地方。我在项目中遇到过好几次,明明传感器没问题,但图像就是有横条纹,查到最后发现是 AFE 的电源纹波太大。

AFE 的核心功能有三个:

  1. 低噪声放大: 把传感器输出的微弱信号放大到 ADC 能处理的幅度。增益一般在 10~100 倍之间。
  2. 相关双采样(CDS): 消除复位噪声和固定模式噪声。这个技术说白了就是「减掉背景」,只保留有用的信号变化。
  3. 模数转换: 把模拟信号变成数字信号。位深很重要——14-bit 是底线,16-bit 更好。位深不够,动态范围就窄,图像容易过曝或欠曝。
我的经验: AFE 的布局布线要格外小心。模拟地和数字地要分开,电源要加 LC 滤波。我见过有人把 AFE 放在开关电源旁边,结果图像全是噪点,根本没法用。

4.2.3 FPGA / DSP:图像处理核心

数字信号进来之后,就到了 FPGA 或 DSP 的地盘。这里要干几件大事:

处理环节 说明 我的建议
非均匀校正(NUC) 每个像元的响应不一致,需要做两点校正或多点校正 量产时每台设备都要单独标定,参数存在 Flash 里
坏点替换 传感器总有坏点,用相邻像元的值插值替换 坏点表在出厂前要测好,运行时动态更新
数字滤波 去除随机噪声,常用中值滤波或双边滤波 滤波强度要可调,太强会丢失细节
图像增强 直方图均衡、细节增强(DDE) DDE 算法是核心,做得好坏直接影响画质

FPGA 和 DSP 怎么选?我个人的看法是:

  • 如果要做实时性要求高的处理(比如 60fps 的 NUC + 滤波),FPGA 更合适,因为它是硬件并行处理。
  • 如果算法复杂、需要频繁迭代(比如深度学习降噪),DSP 或带 NPU 的 SoC 更灵活。
注意: FPGA 的时序约束一定要做扎实。我曾经在一个项目里因为跨时钟域没处理好,导致图像偶尔出现「花屏」,查了整整三天才找到原因——一个异步 FIFO 的深度设小了。

4.2.4 主控 MCU

MCU 不直接参与图像处理,但它管着整个系统的「后勤」:

  • 用户交互:按键、菜单、OSD 叠加
  • 存储管理:把图像存到 SD 卡或 Flash
  • 通信协议:USB 传输、WiFi 图传、UART 调试
  • 电源管理:控制各模块的供电和休眠

MCU 选型时,我建议留够余量。别只看主频,要看外设资源——至少要有 2 个 SPI、2 个 I2C、1 个 USB 和足够的 GPIO。不然做到后面发现接口不够用,那就尴尬了。

4.2.5 电源管理

电源管理是热成像系统里最容易被低估的模块。传感器需要低噪声电源,FPGA 需要多路电压且有时序要求,MCU 需要低功耗待机。

典型的电源树是这样的:

电池 (3.7V Li-ion)
  ├── DC-DC (3.3V) → FPGA I/O、MCU、Flash
  ├── LDO (2.5V) → FPGA 内核
  ├── LDO (1.8V) → FPGA 辅助、DDR
  ├── LDO (1.2V) → FPGA 高速收发器
  └── LDO (3.3V 超低噪声) → 传感器 + AFE 模拟供电

注意看,传感器和 AFE 的供电我专门用了超低噪声 LDO,而且跟数字电源做了物理隔离。为什么?因为开关电源的纹波会直接耦合到模拟信号里,产生固定图案噪声。

避坑指南: 我曾经在一个原型板上偷懒,传感器和 FPGA 共用一个 3.3V LDO。结果图像上全是 100kHz 的纹波噪声,怎么滤波都滤不掉。后来老老实实加了一路独立的超低噪声 LDO,问题立刻解决。

4.3 信号链路总结

把整条链路串起来看,信号是这样走的:

  1. 红外辐射 → 传感器像元吸收 → 温度变化 → 电阻/电容变化 → 电压信号输出
  2. 模拟差分信号 → AFE 放大 + CDS + ADC → 14/16-bit 数字信号
  3. 数字信号 → FPGA 做 NUC + 坏点替换 + 滤波 + 增强 → 视频流
  4. 视频流 → MCU 叠加 OSD + 存储 + 显示输出 → 用户看到热图

每个环节都会引入噪声和失真。设计的目标就是让每个环节的「信噪比损失」最小化。说白了,就是别让信号在传输过程中「变脏」。

嗯,硬件架构这块就先聊到这儿。下一节咱们会深入讲传感器选型,到时候我会拿几个实际项目里的传感器做对比,告诉你哪些坑我踩过、哪些参数是虚标的。


公众号:蓝海资料掘金营,微信deep3321