从GigE相机获取图像时出现报错0xBFF69031“系统无法获取图像”

更新 Jan 17, 2023

适用于

硬件

  • GIGE I/O Cable
  • GIGE I/O Board

软件

  • Vision Development Module

驱动

  • IMAQ Vision

操作系统

  • Windows

问题详述

我在Measurement&Automation Explorer(MAX)中试图从GigE相机获取图像。但是当我尝试执行Snap或Grab时,MAX返回一个看起来类似下列消息中的一种错误。我改如何纠正这个问题?

图像采集软件(Vision Acquisition Software) 2014年8月或更早版本(IMAQdx 14.0.1或更早版本)

错误0xBFF69031:系统未从摄像机接收测试数据包。对于网络配置而言,数据包大小可能太大,或者可能启用了防火墙。

图像采集软件(Vision Acquisition Software) 2015年2月或更高版本(IMAQdx 14.5或更高版本)

系统无法获取图像。这可能是由于以下原因之一:
1.对于网络配置而言,数据包大小可能太大。
- 为正在使用的网络适配器启用
巨型帧(Jumbo Frames),即将巨型帧设置为Enable状态,并确认使用的任何其他网络硬件都支持巨型帧。
- 如果无法启用或不支持巨型帧,请将数据
包大小(Packet Size)属性减少为1500个字节。请注意,这会增加处理开销并可能降低最大帧速率。

2.防火墙可能阻止来自摄像头的网络流
- 确保
穿越防火墙(Firewall Traversal)属性已启用。
- 检查是否可以在使用的网络接口上禁用防火墙。

 

解决方案

有多种可能的解决方案可以解决此问题:
  • 在NI MAX的采集属性(Acquisition Attributes)窗格中减小数据包大小。
  • 确保摄像机属性(Camera Attributes)中的穿越防火墙(Firewall Traversal)设置已启用。
  • 尝试禁用测试数据包参数(Test Packet Parameters)下的启用测试数据包( Test Packet Enabled)设置
  • 验证网络接口卡是否配置为允许巨型帧。
  • 禁用防火墙或为特定以太网端口创建例外。
  • 通过访问www.ni.com/drivers并下载与相机所连接的计算机兼容的最新Vision Acquisition软件,验证是否安装了最新的NI-IMAQdx驱动程序。
  • 验证曝光时间(Exposure Time)是否低于超时(Timeout) 。
  • 如果这些步骤都不起作用,请联系NI支持

相关信息

数据包大小指定每个数据包中传输的字节数。对此参数的更改会影响通过总线传输图像所需的数据包数。较大的值可以更快地传输图像。数据包大小大于网络接口的允许大小可能导致错误发生。如果连接到摄像机的网络适配器不支持巨型帧,则此值应为1500

许多相机支持名为穿越防火墙(Firewall Traversal)的GigE Vision属性。这将可以解决数据包超时错误,而无需为防火墙l创建自定义端口异常。要在相机属性(Camera Attributes)面板中显示采集属性(Acquisition Attributes),请选择视图选项(View Options)>>所有属性(All Attributes) 。接下来,在树中导航到采集属性(Acquisition Attributes)>> 高级以太网(Advanced Ethernet) >> 穿越防火墙(Firewall Traversal)并勾选中使能(Enabled)旁边的方框。

通常,网络驱动程序会将大于1500字节的任何数据拆分为多个数据包。但是,GigE Vision标准允许数据包大小高达9014字节。这些大型数据包(也称为巨型数据包)允许您的相机通过网络更有效地传输数据。通过右键单击网卡并选择属性(Properties),可以从设备管理器(Device Manager)中启用许多网卡中的巨型数据包。

通过为所有本地传入端口添加异常,来自GigE相机的数据包将绕过Windows防火墙。