2. Basler相机曝光模式详解

在Basler相机的曝光控制体系中,曝光模式决定了“曝光何时开始、何时结束、由谁控制时长”这三个核心问题。很多图像质量问题——运动模糊、亮度不一致、多相机不同步——根源并不在增益或光源,而在于曝光模式选错了。本节围绕pylon Viewer中可配置的几种典型曝光模式展开,重点讲清Timed、TriggerWidth、ExposureActive三种模式的工作机制、适用场景,以及如何在pylon Viewer中完成切换与验证。

一、曝光模式的本质:谁在控制曝光时间

Basler相机的曝光时间由内部定时器或外部信号边沿决定。理解曝光模式,关键是区分两个角色:曝光起始触发源和曝光时长决定者。前者可能是软件命令、硬件触发信号或帧有效信号;后者可能是相机内部设定的固定值,也可能是外部信号的脉冲宽度。

在pylon Viewer的Features面板中,ExposureMode节点提供可选值,常见包括Timed、TriggerWidth、ExposureActive(部分型号还支持TriggerControlled或Off)。不同模式对应不同的ExposureTime行为:在Timed模式下ExposureTime是有效参数;在TriggerWidth模式下该参数被忽略,曝光时长完全由触发信号高电平宽度决定。

Basler 曝光模式时序对比 Timed 模式:曝光时长 = ExposureTime 设定值 触发信号 脉冲 曝光窗口 固定曝光时间(如 5000 μs) ← 与触发脉冲宽度无关 TriggerWidth 模式:曝光时长 = 触发脉冲宽度 触发信号 脉冲宽度可变 曝光窗口 曝光时间 = 脉冲宽度 ← ExposureTime 参数被忽略 ExposureActive 模式:输出曝光状态信号 触发信号 脉冲 ExposureActive 高电平 = 正在曝光 ← 用于同步光源/外部设备

二、Timed模式:最常用的固定曝光

Timed模式是Basler相机的默认曝光模式。其工作逻辑是:相机收到触发信号(或自由运行时的帧起始信号)后,启动内部定时器,曝光持续ExposureTime所设定的时间,然后读出图像。曝光时长与触发信号的宽度无关,只取决于参数值。

适用场景包括:静态或低速运动物体的检测、光源亮度稳定的环境、需要精确控制曝光量一致性的批量拍摄。例如在电子元件外观检测中,物体静止或由步进电机间歇送料,使用Timed模式配合固定光源,可以保证每张图像亮度一致。

在pylon Viewer中的配置步骤:连接相机后,打开Features面板,找到ExposureMode,将其设为Timed;然后在ExposureTime中输入目标值,例如5000(单位μs)。若相机处于自由运行模式,曝光会按帧率周期自动重复;若使用硬件触发,则每次触发产生一次固定时长曝光。

Timed模式下,若触发信号频率过高,可能出现触发丢失或曝光重叠。此时应检查ExposureTime与触发周期的关系,确保曝光时间小于触发间隔。

三、TriggerWidth模式:用脉冲宽度定义曝光

TriggerWidth模式将曝光时长的控制权完全交给外部触发信号。相机检测到触发信号上升沿后开始曝光,检测到下降沿后结束曝光。因此,曝光时间等于触发脉冲的高电平持续时间,ExposureTime参数在此模式下不起作用。

这种模式适合需要动态调整曝光时间的场景。例如,在流水线上检测不同反光率的物体时,可以通过外部控制器(如PLC或FPGA)根据物体表面特性实时改变脉冲宽度,从而在同一套硬件下获得自适应曝光。又如在高速飞行拍摄中,通过精确控制脉冲宽度来匹配运动速度,减少运动模糊。

配置方法:在pylon Viewer中将ExposureMode切换为TriggerWidth,然后确保TriggerSelector设为FrameStart,TriggerMode设为On,TriggerSource选择对应的硬件输入线路(如Line1)。此时ExposureTime节点通常会变为只读或显示为无效值,这是正常现象。

使用TriggerWidth模式时,脉冲宽度不能小于相机的最小曝光时间,也不能超过最大曝光时间限制。过窄的脉冲可能导致曝光不足或图像全黑;过宽的脉冲可能引起运动模糊或帧率下降。建议先用示波器确认触发信号质量。

四、ExposureActive模式:输出曝光状态用于同步

ExposureActive严格来说不是一种“曝光时长决定模式”,而是一种曝光状态输出功能。它让相机在曝光进行期间,通过指定的输出线路(如Line2)输出一个高电平信号。这个信号可以驱动频闪光源、激光器或外部采集设备,实现“曝光期间才亮灯”的精确同步。

典型应用是频闪照明:将ExposureActive信号连接到LED光源的触发端,只有当相机真正在曝光时,光源才点亮。这样可以大幅提高光源利用效率,延长LED寿命,同时避免环境光干扰。在多相机系统中,也可以用ExposureActive信号作为其他相机的触发源,实现主从同步。

在pylon Viewer中配置ExposureActive输出:进入DigitalIO或LineSelector相关节点,选择目标输出线路(如Line2),将LineSource设为ExposureActive。随后可以在ExposureActive相关参数中调整信号极性(高有效或低有效)和延迟。配置完成后,用示波器或相机的IO监视功能观察输出波形,确认其与曝光窗口对齐。

五、模式切换演示与验证要点

在pylon Viewer中切换曝光模式时,建议按以下顺序操作,避免参数冲突:

  1. 先停止采集(Stop),确保相机处于空闲状态。
  2. 在Features面板中找到ExposureMode,从下拉列表选择目标模式。
  3. 根据模式调整关联参数:Timed模式设置ExposureTime;TriggerWidth模式确认触发源和触发使能;ExposureActive模式配置输出线路。
  4. 重新开始采集(Continuous或Single),观察图像亮度和运动模糊情况。
  5. 使用ExposureActive输出或相机的时间戳功能,验证曝光窗口与触发信号的时序关系。

验证时,可以故意改变触发脉冲宽度:在Timed模式下,图像亮度应保持不变;在TriggerWidth模式下,图像亮度应随脉冲宽度变化。这个对比实验能直观确认模式是否真正生效。

模式 曝光时长决定者 ExposureTime参数 典型场景
Timed 相机内部定时器 有效 静态检测、固定光源
TriggerWidth 外部触发脉冲宽度 忽略 动态曝光调整、高速飞行拍摄
ExposureActive 取决于基础曝光模式 取决于基础模式 频闪同步、多相机主从触发

需要特别注意的是,ExposureActive通常是在Timed或TriggerWidth基础上叠加的输出功能,而不是替代它们。也就是说,你仍然需要选择一个基础曝光模式来决定曝光时长,ExposureActive只负责把“正在曝光”这个状态告诉外部设备。理解这一点,就能避免在配置时把输出功能和曝光控制混为一谈。

最后,曝光模式的选择应与触发模式、帧率、光源方案一起考虑。例如,使用TriggerWidth时,如果触发源来自编码器,脉冲宽度会随速度变化,曝光时间也随之变化,这可能导致图像亮度波动。此时可以配合自动增益或光源亮度补偿来稳定图像。实际调试中,建议先用pylon Viewer的Single模式逐帧观察,确认时序正确后再切换到连续采集。