3. 驱动时序基础:行选通与帧同步、积分时间控制、读出电路(ROIC)工作原理

各位同学,今天咱们聊聊非制冷焦平面探测器的驱动时序。说实话,这部分内容是我当年入行时最头疼的。时序搞不对,探测器要么不出图像,要么出鬼影。我踩过的坑,今天一次性给你们讲透。

3.1 读出电路(ROIC)到底在干什么?

ROIC,全称是Readout Integrated Circuit。说白了,它就是个“像素管家”。每个像元产生的微弱电流信号,靠它来收集、放大、然后送出去。

我习惯把ROIC的工作分成三步:

  • 积分:像元吸收红外辐射,产生光生电荷。ROIC把这些电荷存起来。
  • 读出:一行一行地把电荷转换成电压,送出去。
  • 复位:读完之后,把像元清空,准备下一帧。

你想想看,一个320×240的阵列,有76800个像元。每个像元都要同步工作,没有ROIC根本不可能。

核心要点:ROIC的本质是一个“电荷搬运工”。它不负责探测,只负责把信号完整地搬出来。

3.2 行选通与帧同步:时序的骨架

驱动时序里,最重要的两个信号就是行选通和帧同步。我刚开始做项目时,总把这两个搞混。后来吃了亏才明白——它们一个管“行”,一个管“帧”。

3.2.1 帧同步信号(FSYNC)

帧同步信号,就是一帧图像的“起跑线”。它是个脉冲信号,高电平有效。当FSYNC拉高时,ROIC开始新一帧的积分和读出。

我在项目中遇到过一个问题:帧同步信号的脉宽太短,ROIC没反应过来。结果图像错位,像被撕开了一样。后来我查手册才发现,脉宽至少要满足ROIC的最小要求,通常是几个主时钟周期。

经验之谈:帧同步信号的脉宽,我一般设为主时钟周期的4-8倍。太短容易丢帧,太长浪费带宽。

3.2.2 行选通信号(LSYNC)

行选通信号,负责一行一行地“点名”。每来一个行选通脉冲,ROIC就输出一行像素数据。

举个例子,一个320×240的探测器,一帧有240行。帧同步来了之后,行选通要连续产生240个脉冲。每个脉冲对应一行数据。

嗯,这里要注意:行选通的频率决定了帧率。比如行频是100kHz,一帧240行,那帧率就是100000/240 ≈ 416帧/秒。当然,实际还要考虑消隐时间。

避坑指南:我曾经因为行选通和帧同步的时序关系没对齐,导致图像出现“行错位”。现象是画面像被剪刀剪过一样,上下两半对不上。后来发现是帧同步结束后,第一个行选通来得太早,ROIC还没准备好。

3.3 积分时间控制:曝光的核心

积分时间,就是像元收集电荷的时间。它直接决定了图像的亮度和信噪比。

积分时间怎么控制?说白了,就是控制“积分开始”和“积分结束”之间的时间差。在ROIC里,通常有两种方式:

  • 同步积分:所有像元同时开始积分,同时结束。适合高帧率应用。
  • 滚动积分:像元逐行开始积分,逐行结束。适合低噪声应用。

我个人习惯用同步积分。为什么?因为时序简单,不容易出错。但滚动积分也有它的好处——可以避免大电流冲击。

积分时间的长短,要根据场景来调。我做过一个项目,在户外强光下,积分时间设了50微秒就饱和了。但在室内弱光下,得调到2毫秒才能看到图像。

关键公式:积分时间 = 积分时钟周期 × 积分时钟个数。这个乘积决定了像元的满阱容量。

3.4 驱动时序的完整流程

好了,我们把上面三个要素串起来,看看一帧图像是怎么出来的。

下面这张图是我画的驱动时序流程图,你一看就明白:

非制冷焦平面探测器驱动时序流程图 帧同步信号(FSYNC) 行选通信号(LSYNC)—— 第1行 行选通信号(LSYNC)—— 第2行 行选通信号(LSYNC)—— 第3行 行选通信号(LSYNC)—— 第N行 帧结束,等待下一帧FSYNC 积分时间控制 在此区间内 逐行读出

从图上你能看到:帧同步来了,开始一帧。然后行选通一个接一个地来,每来一个,就读出一行数据。等所有行都读完了,这一帧就结束了。然后等待下一个帧同步。

积分时间呢?它是在帧同步有效期间,通过控制积分时钟来实现的。我习惯在帧同步拉高后,立即开始积分,然后在行选通开始前结束积分。

3.5 实际项目中的时序调试

讲个我自己的经历。有一次调试一款640×512的探测器,图像总是有竖条纹。我查了三天,最后发现是行选通的占空比不对。

ROIC手册上写的是:行选通高电平时间至少需要2微秒。我设了1.8微秒,觉得差一点没关系。结果呢?每行数据的前几个像素都是错的,累积起来就成了竖条纹。

后来我把高电平时间调到2.5微秒,问题立刻解决。所以啊,时序参数一定要留余量,别卡着极限值。

调试技巧:用示波器同时抓FSYNC、LSYNC和像素时钟。看它们之间的相位关系对不对。我一般会先看FSYNC的上升沿,然后数LSYNC的个数,确保和行数一致。

3.6 常见时序问题与对策

问题现象 可能原因 解决方法
图像错位 帧同步与行选通时序未对齐 调整帧同步脉宽,确保行选通在帧同步结束后才开始
竖条纹 行选通高电平时间不足 增加行选通高电平时间,留20%余量
图像闪烁 积分时间不稳定 使用硬件定时器控制积分时间,避免软件抖动
帧率偏低 行选通频率太低 提高主时钟频率,或减少消隐时间

这张表是我多年调试经验的总结。你遇到问题时,先对照着查一遍,能省不少时间。

重要提醒:不同厂家的ROIC,时序要求差别很大。FLIR的、ULIS的、还有国产的,参数都不一样。拿到新芯片,第一件事就是仔细看数据手册的时序图。别凭经验硬套,会出事的。

好了,驱动时序的基础就讲到这里。记住三个关键词:帧同步管帧、行选通管行、积分时间管曝光。把这三点搞明白,驱动时序这块你就入门了。

专注资料整理