图像采集和 I/O 控制#
input line 允许您控制相机,例如,在特定时间点触发图像拍摄。output line 可让您检索有关相机的信息,例如,正在拍摄图像时。
信息
本主题中的所有信息均适用于所有 blaze 和 Smart blaze 相机型号。为简便起见,下文统一使用“blaze”指代所有型号。
光电耦合 I/O 线路#
blaze 相机提供一个光耦输入行和一个光耦输出行:
Line0预配置为相机的输入行。Line1预配置为相机的输出行。
您不能更改 I/O 线路的线路模式。
光电耦合输入线路#
下图展示了使用光电耦合输入线路的典型电路:
输入线路连接到引脚 6。引脚 5 接地。
光电耦合输出线路#
下图展示了使用光电耦合输出线路的典型电路:
输出线路连接到引脚 4。引脚 5 接地。
电气要求#
输入线路#
| 电压 | 描述 |
|---|---|
| 30 VDC | 绝对最大电压。 切勿超过此电压,否则可能会损坏相机并导致保修失效。 |
| 0-24 VDC | 安全工作范围 |
| 0–1.0 VDC | 逻辑 0 |
| >2.2 VDC | 逻辑 1 |
- 最小电流:5 mA
- 典型电流:5-15 mA
响应时间#
- Typical response time (trigger to FrameActive): <300 µs
- 最大响应时间(触发到 FrameActive):500 µs
未实现信号的去抖动。因此,您必须确保输入线上的电信号是干净的(例如,通过使用 PLC 输出或应用低通滤波器)。
输出线路#
| 电压 | 描述 |
|---|---|
| 30 VDC | 绝对最大电压 |
| 3.3-24 VDC | 安全工作范围 |
- 最小电流:50 mA
- Leakage current: <60 µA
I/O 线缆#
Basler 建议使用 Power-I/O 线缆 M12,M,8P/开放。线缆文档包括了 I/O 线的引脚输出和颜色编码。
特征和配置#
即: DigitalIOControl 功能类别包含用于配置和监控 I/O 线路操作的各种功能。
Line Selector#
Line Selector 功能允许您选择要配置的 I/O 线路。要选择线路,请将 LineSelector 参数设置为所需的 I/O 线路,例如 Line1。
Line Status#
要确定 I/O 线路的状态:
- 设置
LineSelector参数至Line0用于输入线或Line1用于输出线。 - 获取
LineStatus参数。
值为 false (0) 意味着轮询时的 Line Status 为低。值为 true (1) 意味着轮询时的 Line Status 为高。
Line Logic#
要确定 I/O 线路的逻辑:
- 设置
LineSelector参数至Line0用于输入线或Line1用于输出线。 - 获取
LineLogic参数。
此为只读参数。
Line Source(仅输出线路)#
输出线 Line1 可以配置为通过 LineSource parameter. This allows you to monitor the status of the camera or to control external devices.
要配置线路源:
- 设置
LineSelector参数至Line1. - 设置
LineSource参数设置为以下值:Off: The line is always low.UserOutput0:该行被设置为UserOutputValue参数的UserOutput0.FrameActive:该信号为 高电平 ,此时相机正在采集生成深度图所需的所有子帧。FrameTriggerWait:该信号为 高电平 当相机准备好接收相应触发类型的触发信号时。
您可以使用 FrameActive 信号,以监测相机当前是否在曝光。当第一帧子帧的图像采集开始时,该信号变为高电平;当最后一帧子帧的采集结束时,该信号变为低电平。这也允许您使用 FrameActive 信号来同步多台相机和外部设备。
此外,如果您正在使用闪光灯,您可以使用 FrameTriggerWait 信号来找到触发闪光灯的最佳时机。
下图展示了时序。
示例: 如果传送带上的物体进入相机的视野进行检测,为了避免运动伪影,在 FrameActive 信号为高电平期间,传送带不应移动。
有关多相机操作的更多信息和替代方法,请参阅使用多个相机。
Line Inverter#
即: LineInverter parameter inverts the electrical signal level of an I/O line, i.e., its 线路状态 from high to low or vice versa.
要启用 Line Inverter:
- 设置
LineSelectorparameter to the desired I/O line. - 设置
LineInverter参数至trueto invert the electrical signal level of the I/O line selected or tofalseto disable inversion.
示例: If the input line Line0 is configured as a trigger input source, inverting the signal level means that the trigger will come at the falling edge of the trigger signal instead of on the rising edge.
For the output line Line1, the level of the selected output signal is inverted.
用户输出#
即: UserOutput 参数允许您手动控制输出行的状态。仅提供单个用户输出。
要设置用户输出状态:
- 设置
LineSelector参数至Line1. - 设置
LineSource参数至UserOutput0. - 设置
UserOutputSelector参数至UserOutput0. - 设置
UserOutputValue参数为所需的值:true:Line Status 为高电平 (1)。false:Line Status 为低电平 (0)。
对 UserOutputValue 参数的更改将立即在输出行上生效。
自由运行和触发器操作#
可以在 free run 模式和 triggered mode 下操作相机。
在 free run 中,根据配置的帧速率(默认值或通过 AcquisitionFrameRate 参数指定)在内部触发相机。
在自由运行模式下,您可以使用 Precision Time Protocol 和 Synchronous Free Run 功能同步多个相机的触发。
在 triggered mode, an external trigger source is used to trigger the camera, e.g., via software trigger or via hardware trigger (using input line Line0)。
The trigger is always a FrameTrigger, i.e., it triggers the acquisition of a single frame in the current Operating Mode.
自由运行图像采集#
要启用自由运行图像采集:
- 设置
TriggerSelector参数至FrameStart. - 设置
TriggerMode参数至Off.
触发图像采集#
信息
在相机再次准备好接收触发之前,新的触发信号将被忽略。两个触发信号之间的最短时间取决于相机的 Operating Mode(即允许的最大帧率)、I/O 信号的特性以及处理 I/O 信号所需的处理时间。您可以使用 FrameTriggerWait 信号来了解相机何时准备好接收触发信号。
当相机检测到过触发(overtrigger)时, LastError 参数将显示 错误代码 1.
提示
当使用触发图像采集时,您可以启用 Trigger Thermal Drift Stabilization 以保持测量精度。此功能可让相机在后台持续采集图像,从而防止触发事件之间的温度波动,确保结果一致且准确。
软件触发器#
要通过软件触发器启用图像采集:
- 设置
TriggerSelector参数至FrameStart. - 设置
TriggerSource参数至Software. - 设置
TriggerMode参数至On. - 使用以下方式触发单帧图像:
TriggerSoftware.
现在将获取单个深度图,进行处理并传输至客户端软件。
确保在软件触发器接收图像之前开始采集。
硬件触发器#
要通过硬件触发器启用图像采集:
- 设置
TriggerSelector参数至FrameStart. - 设置
TriggerSource参数至Line0. - 设置
TriggerMode参数至On.
图像在以下信号的上升沿触发:Line0(若LineInverter参数设置为false)或下降沿(若LineInverter参数为true)。图像经相机采集并处理后,将发送至主计算机。
确保在硬件触发器接收图像之前开始采集。