使用GigE相機擷取影像時跳出Error 0xBFF69031"The system cannot acquire images"

更新 Jan 17, 2023

產品資訊

硬件

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

軟體

  • Vision Development Module

驅動程式

  • IMAQ Vision

操作系統

  • Windows

問題敘述

我使用GigE相機在Measurement&Automation Explorer(NI-MAX)程式中擷取影像。但當我嘗試執行Snap或Grab功能時,MAX會跳出一個錯誤訊息,內容大致如下列表。我該如何修正?

Vision Acquisition Software 2014年8月或更早版本(IMAQdx 14.0.1或更早版本)
Error 0xBFF69031: The system did not receive a test packet from the camera. The packet size may be too large for the network configuration or a firewall may be enabled.

Vision Acquisition Software 2015年2月或之後(IMAQdx 14.5或更高版本)

The system cannot acquire images.  This is likely due to one of the following reasons:
1. The packet size may be too large for the network setup.
- Enable Jumbo Frames for the network adapter in use and confirm any other network hardware used supports Jumbo Frames.
- If Jumbo Frames cannot be enabled or is unsupported, decrease the Packet Size attribute to be 1500 bytes.  Note this increases processing overhead and potentially reduces maximum frame rate.  


2. A firewall may be blocking the network traffic from the camera
- Ensure the Firewall Traversal attribute is Enabled.
- Check if the firewall can be disabled on the network interface in use.

 

解決方案

有多種可行的方案可以解決此問題:
  • 在NI MAX的Acquisition Attributes 頁面中減小封包(packet size)大小。
  • 確保Camera Attributes中Firewall Traversal設置已啟用(Enabled)。
  • 嘗試禁用(disabling)Test Packet Parameters下的 Test Packet Enabled設定
  • 確認網絡介面卡是否設定為允許巨型封包(Jumbo Frame)。可以透過以下步驟在Windows Vista / 7/8/10上驗證此設定:
    • 點擊開始 > 設定 > 控制台 。

    • 選擇網絡和共用中心變更介面卡設定

    • 右鍵點擊GigE相機對應的網路連接孔,選擇內容

    • 連線方式的窗口下方,按下設定按鈕。

    • 進階選單內的內容>Jumbo Packet的選項調整為9014 Bytes

  • 禁用防火牆或將特定的以太網路孔創建為例外。
  • 訪問www.ni.com/drivers並下載與相機連接的電腦相容之最新Vision Acquisition軟體,並驗證是否安裝了最新的NI-IMAQdx驅動程式。
  • 檢驗Exposure Time是否低於Timeout
  • 如果上述這些方法都沒用,請聯繫NI Support  。

相關資訊

封包格式(Packet Size)決定每個封包中傳輸的位元組(bytes)數目。更改此參數會影響通過該匯流排(bus)傳輸影像所需的封包數。較大的數值可以更快地傳輸影像。若封包大小大於網絡接口允許的值可能導致錯誤發生。如果連接到相機的網絡介面卡(network adapter )不支持Jumbo Frame,則此值應設為1500

許多相機支援名為Firewall Traversal的GigE Visione屬性。這功能不僅可以解決封包超時錯誤,且無需在防火牆設定例外連接孔(port)。如何在NI-MAX啟用該屬性呢,請選擇Camera Attributes>>View Options>> All Attributes 。接下來,在下方樹狀目錄中導引至Acquisition Attributes >> Advanced Ethernet >> Firewall Traversal並勾選Enabled旁邊的框。

一般來說,網路驅動程式(network driver)會將大於1500 bytes的資料拆為多個封包。但是,GigE Vision標準允許封包大小高達9014 bytes。這些大型封包(也被稱為Jumbo Frame)允許您的相機更有效率地在網路上傳輸數據。許多網卡皆可以在裝置管理員中,右鍵點擊網路介面卡的內容選項,去允許傳遞大型封包。

藉由為所有本地傳入端口添加例外,讓來自GigE相機的封包可以繞過Windows防火牆。