網路設定 (Stereo ace)#
本主題中關於 Linux 的特定資訊是以使用 Ubuntu 20.04 的預設桌面 GUI 為基礎。由於在 Linux 下設定網路介面有多種方式,請參閱您的 Linux 發行版說明文件以了解更多詳細資訊。
網路設定逐步指南#
以下步驟將引導您在網路設定中完成Stereo ace 攝影機的設定流程。
- 決定您要如何為相機指派 IP 位址。請考慮以下事項:
- 您計劃使用多少台相機?
- 您正在使用多少個網路介面卡?是否為每個相機配備專用介面卡?
如需詳細資訊,請參閱建議的網路架構。 - 您是否有可用的 DHCP 伺服器?
如果您有 DHCP 伺服器,請使用它。這會讓設定變得簡單許多。
如果您沒有 DHCP 伺服器,您的選項是使用靜態 IP 位址或 Auto IP:- Auto IP 僅在您沒有將多個網路介面卡設定為使用 Auto IP 時才能使用。將多個介面卡設定為 Auto IP 會導致無法偵測相機。
- 如果您使用多個具有靜態位址的網路介面卡,每個介面卡必須位於不同的子網路中。
- 設定網路介面的 IP 位址。
- 使用 pylon IP Configurator 設定相機的 IP 位址。
-
在 pylon IP Configurator 中檢查連線。
- 如果狀態為 OK,則表示一切正常。
-
如果狀態為 Not reachable,請檢查以下項目:
- 確認沒有其他應用程式正在存取相機。
- 確認網路介面的子網路遮罩與相機的子網路遮罩相同。
- 確認網路介面與相機的位址位於相同的子網路中。
範例:如果子網路遮罩為 255.255.0.0,則 IP 位址的前兩個區段必須相同。 - 確認所有其他網路介面都已設定為與相機所連接之子網路不同的子網路。
- 確認沒有其他網路裝置使用與相機相同的位址。
-
如果未列出相機,請檢查以下項目:
- 相機是否已實體連接至正確的網路介面?
- 停用相機所連接之網路介面的防火牆。
- 調整 效能設定。
- 疑難排解
如果在串流時發生掉格或錯誤訊息,最常見的原因是網路連線不穩定或效能不足。 - 檢查是否能進一步最佳化 Windows 或 Linux 系統上的網路設定。
- 停用相機所連接之網路介面的 防火牆。
建議的網路架構#
規劃網路有兩種方法。以下列出兩者的差異,以協助您選擇合適的設定。
點對點網路架構#
其中一個選項是在相機與主機電腦之間建立點對點(peer-to-peer)連線。
相機可以連接至個別的 GigE 網路介面,或連接至主機電腦中的多連接埠介面卡。
- 優點:每台相機都與主機電腦有獨立的連線。因此,每台相機都能享有完整的連線頻寬來傳輸擷取的影像。這表示您可以讓每台相機以其完整的擷取速率運作。
- 缺點:單一電腦可以連接的相機數量有限。
資訊
在點對點連線中,每個介面都必須位於不同的子網路中,且每台相機的 IP 位址必須位於其所連接之介面的子網路內。
範例:介面的 IP 位址為 192.168.1.1、192.168.2.1、192.168.3.1 等,子網路遮罩設為 255.255.255.0。接著,相機的 IP 位址可以設為:192.168.1.100、192.168.2.100、192.169.3.100 等,子網路遮罩設為 255.255.255.0。
透過網路交換器連接#
或者,您也可以透過網路交換器(switch)在相機與主機電腦之間建立連線。
以下範例顯示連接至 4 連接埠網路交換器的 1 連接埠 GigE 網路卡。您也可以使用多連接埠網路卡或多個交換器。
- 優點: 允許將多個相機連接至單一主機電腦。
- 優點: 允許更長的整體纜線長度,因為各裝置之間的纜線長度最高可達 100 公尺。
- 缺點:此交換器僅具備單一 GigE 連接埠可連接至電腦。各台攝影機必須共享此單一通道所提供的頻寬。該單一通道的可用頻寬約為 125 MByte/s。若此頻寬不足,只需進行簡單的系統轉換,切換至 5GigE 上行鏈路即可將速度提升至五倍。
資訊
當多個相機連接至交換器時,交換器必須具備足夠的緩衝能力。這可讓交換器在單一輸出線路上傳輸資料的同時,暫存來自相機的傳入資料。
所有相機必須具有位於相同子網路(即網路卡的子網路)中的位址。
範例:如果電腦的位址為 192.168.1.1,相機可以採用 IP 位址 192.168.1.100、192.168.1.101 等。
建議的網路介面卡#
為了獲得最佳效能與可靠性,Basler 建議使用 Intel PRO 1000、I210、I340 和 I350 系列的網路卡。
網路介面卡 IP 設定#
以下是設定網路卡 IP 位址最常見的兩種方式:
- 指派固定(也稱為「靜態」或「永久」)位址
- 透過 DHCP (Dynamic Host Configuration Protocol) 或 Auto IP(Automatic Private IP Addressing,基於鏈路本地位址 (LLA))設定自動定址。
Windows#
指派固定 IP 位址#
若要為網路卡指派固定 IP 位址:
- 開啟 網路連線 視窗,位於 Windows 控制台中。
若要快速存取,請按下 Win+R,輸入ncpa.cpl,然後按下 輸入. - 以滑鼠右鍵按一下用於相機的網路卡連線,然後按一下 內容。
隨即會開啟內容視窗。 - 按兩下 網際網路通訊協定第 4 版 (TCP/IPv4)。
隨即會開啟網際網路通訊協定第 4 版 (TCP/IPv4) 內容視窗。 - 按一下 使用下列的 IP 位址。
- 在 IP 位址、子網路遮罩和預設閘道欄位中,輸入 IP 位址、子網路遮罩和預設閘道位址。
-
在偏好的 DNS 伺服器和替代 DNS 伺服器欄位中,輸入主要和次要 DNS 伺服器位址。(通常不需要網域名稱伺服器。)

-
對所有適用的網路卡重複步驟 2 到 6。
資訊
在相機設計導入期間,您可以使用下列設定來非常快速地建立網路連線:
- 請為您的網路卡在自動 IP 位址範圍 (169.254.0.1 至 169.254.255.254) 內設定一個固定位址,子網路遮罩為 255.255.0.0。
- 為您的相機設定自動 IP 位址指派。
- 如果您的電腦有多張網路介面卡,每張介面卡必須位於不同的子網路中。
- 建議的固定 IP 位址範圍為 172.16.0.1 至 172.32.255.254(子網路遮罩為 255.255.0.0)以及 192.168.0.1 至 192.168.255.254(子網路遮罩為 255.255.255.0)。根據 IP 標準,這些位址範圍已保留供私人使用。
- 如果您要為相機指派固定 IP 位址,請記住,為了讓相機與網路卡正常通訊,相機必須與其連接的網路卡位於相同的子網路中。
透過 DHCP / Auto IP 指派 IP 位址#
如果網路卡設定為透過 DHCP / Auto IP 接收其 IP 位址,其運作方式如下:
- 網路卡會嘗試從 DHCP 伺服器取得 IP 位址。如果 DHCP 伺服器可用,它會從伺服器接收 IP 位址並使用該位址。
- 如果沒有可用的 DHCP 伺服器,網路卡會使用 Auto IP 常式為自己指派一個 IP 位址。
大多數網路卡的預設設定都是 DHCP / Auto IP。在大多數情況下,與您的相機搭配使用的網路卡將沒有可用的 DHCP 伺服器。因此在預設設定下,網路卡最終會使用自動 IP 定址來為自己指派 IP 位址。
資訊
只能將一個網路卡設定為使用 Auto IP。如果有多個網路卡設定了 DHCP / Auto IP,Auto IP 指派將無法正常運作,且相機將無法透過 Auto IP 連線至網路。
如果您的電腦中有多個網路卡,Basler 建議您在網路中安裝 DHCP 伺服器,或為網路卡和相機指派靜態 IP 位址。
若要使用 DHCP / Auto IP 指派 IP 位址:
- 開啟 網路連線 視窗,位於 Windows 控制台中。
若要快速存取,請按下 Win+R,輸入ncpa.cpl,然後按下 輸入. - 以滑鼠右鍵按一下用於相機的網路卡連線,然後按一下 內容。
隨即會開啟內容視窗。 - 按兩下 網際網路通訊協定第 4 版 (TCP/IPv4)。
隨即會開啟網際網路通訊協定第 4 版 (TCP/IPv4) 內容視窗。 - 請確保已選取 自動取得 IP 位址。
這會使網路卡優先檢查 DHCP 伺服器。 - 按一下 替代組態 標籤。
此標籤上的設定用於設定當找不到 DHCP 伺服器時,網路卡將使用的 Auto IP 位址指派。 -
請確保已選取 自動私有 IP 位址。

Linux#
若要設定網路卡:
- 透過 顯示應用程式 或右上角的圖示開啟 設定 應用程式。
-
在 網路 標籤上,按一下您的相機所連接之網路卡旁邊的齒輪圖示。

-
按一下 IPv4 標籤。

- 對於 DHCP,將 IPv4 方法 設定為 自動 (DHCP)。
- 對於靜態位址指派,請將 IPv4 方法 設定為 手動,然後在 位址 區域中輸入 位址、網路遮罩,以及必要的 閘道。
- 對於自動位址指派,請將 IPv4 方法 設定為 僅限本機連結。
-
按一下 套用 以儲存設定。
相機 IP 位址設定#
若要變更相機的 IP 組態,請使用 pylon IP Configurator:
- Windows:按一下 Start > Basler > pylon IP Configurator。
- Linux:執行下列指令:/opt/pylon/bin/ipconfigurator
資訊
如需詳細資訊,請參閱 pylon IP Configurator 線上說明(僅限 Windows)或本說明文件中的 pylon IP Configurator 章節。
自動 IP (LLA):此選項無法使用。不過,如果您的相機設定為透過 DHCP 伺服器指派 IP 位址,且找不到 DHCP 伺服器,相機將會回復至自動 IP 以自行設定 IP 位址。相對地,如果您想要使用自動 IP,請在未提供 DHCP 伺服器的情況下選取 DHCP 選項。
防火牆設定#
Windows#
停用 Windows 防火牆是一項極端的措施,通常不建議這樣做。不過,在某些情況下,為了修正效能問題,可能會需要這麼做。
若要關閉特定網路卡上的防火牆:
- 按下 Win+R,輸入 wf.msc,然後按下 Enter 鍵。
隨即會開啟具有進階安全性的 Windows 防火牆視窗。 -
按一下Windows 防火牆內容。

隨即會開啟本機電腦上的具有進階安全性的 Windows 防火牆內容…視窗。
-
按一下您要關閉防火牆保護的設定檔標籤頁。
通常這會是公用設定檔標籤頁。不過,如果您使用的是專用網路卡,Basler 建議同時停用其他設定檔的防火牆保護。 -
按一下自訂。

隨即會開啟公用設定檔的受保護網路連線視窗。該視窗會列出已開啟防火牆的連線。

-
清除連接相機的連線。這會關閉其防火牆保護。
- 對您想要關閉防火牆保護的所有設定檔重複步驟 3 至 5。
Linux#
必須為連接相機的網路卡停用防火牆。否則,可能會無法進行裝置搜尋以及接收來自相機的資料串流。
若要停用防火牆,請輸入:
效能最佳化#
Windows#
如果您的網路卡不支援效能驅動程式,將會預設安裝濾鏡驅動程式。若情況如此,必須先設定網路卡,才能將其與相機搭配使用。
首先,Basler 建議停用可能會干擾濾鏡驅動程式的特定通訊協定或服務。
若要停用通訊協定或服務:
- 開啟 網路連線 視窗,位於 Windows 控制台中。
若要快速存取,請按下 Win+R ,輸入ncpa.cpl,然後按下 輸入. - 以滑鼠右鍵按一下用於相機的網路卡連線,然後按一下 內容。
隨即會開啟內容視窗。 -
清除除了 pylon GigE Vision Driver 與 Internet Protocol Version 4 (TCP/IPv4) 以外的所有核取方塊:

-
對所有適用的網路卡重複步驟 2 和 3。
其次,Basler 建議針對某些轉接器的屬性進行優化。
若要最佳化轉接器的屬性:
- 開啟 網路連線 視窗,位於 Windows 控制台中。
若要快速存取,請按下 Win+R ,輸入ncpa.cpl,然後按下 輸入. - 右鍵點擊相機所使用的網路介面卡連線,然後點擊「 內容 」。
「內容」視窗隨即開啟。 - 按下「設定」。
網路驅動程式的設定視窗隨即開啟。 - 按下「進階」。
- 請調整以下屬性(請參閱下方的註解):
- 將「Jumbo Frames」屬性設定為最大值。
若無「Jumbo Frames」屬性,請選擇與幀大小相關的參數,並將其設定為最大值。 - 選取與接收描述符數量相關的參數(例如:「接收描述符」),並將其設定為最大值。
- 請選取與 CPU 中斷數量相關的參數(例如「中斷調控率」),並將其設定為較低的數值,例如 1000。設定 CPU 中斷數量的方法可能因您的網路介面卡而異。您可能需要使用另一個參數來啟用中斷調控功能。
- 選取與傳輸速度及雙工模式相關的參數(例如:「傳輸速度與雙工模式」),並將其設定為自動(例如:「自動協商」)。
- 將「Jumbo Frames」屬性設定為最大值。
- 請針對所有適用的網路介面卡,重複步驟 2 至 5。
Linux#
要防止封包遺失,首先應啟用巨型幀(jumbo frames) 並增加UDP 的接收緩衝區大小。若已執行上述設定,但仍發生封包遺失問題,請嘗試調整即時優先級、環形緩衝區大小以及中斷調製率。
啟用巨型幀#
使用巨型幀對於降低開銷和 CPU 負載至關重要。幀大小越大,產生的 CPU 中斷就越少,因此 CPU 負載也隨之降低。請透過將最大傳輸單位 (MTU) 設定為其最大值 9000,來啟用巨型幀,方法是使用 ifconfig 指令。
要設定 的 MTU,請 eth0 將網路介面設定為 9000,請輸入:
增加 UDP 接收緩衝區大小#
為了確保使用Stereo ace 相機時能穩定擷取影像,Basler建議將系統的UDP 最大接收緩衝區大小增加,以確保影像擷取的穩定性。建議最大大小至少為4 MB。
若要增加UDP 的最大接收緩衝區大小,請輸入:
若要讓此設定永久生效,您可以將net.core.rmem_max設定新增至/etc/sysctl.conf檔案中。
設定即時優先順序#
Pylon SDK 會使用一個執行緒來接收影像資料。它會嘗試將接收執行緒的優先級設定為即時執行緒優先級,以將抖動和封包遺失降至最低。這通常需要特殊的權限。
然而,對於採用Linux 2.6.13 或更高版本核心的系統,可以允許沒有 root 權限的程序設定即時排程政策。在 Ubuntu 系統上,您可以透過/etc/security/limits.conf檔案,以使用者或群組為單位,控制非特權程序的最大即時優先級。
例如,在/etc/security/limits.conf 中加入以下這行,即可允許所有使用者執行會將執行緒優先級設為即時優先級的應用程式:
修改/etc/security/limits.conf需要 root 權限。
修改/etc/security/limits.conf檔案後,您必須先登出,然後再重新登入。有關/etc/security/limits.conf檔案的更多詳細資訊,請參閱limits.conf的 man 頁面。
Basler 建議,對於所有將執行基於 pylon SDK 的應用程式的使用者,應將其最大即時優先級設定為 ≥1。
對於 2.6.12 或更早版本的內核,Basler 建議以 root 權限執行基於 pylon SDK 的應用程式,或為基於 pylon 的應用程式設定 SUID 位元。
資訊
當應用程式的 SUID 位元被設定時,執行時連結器在啟動該應用程式時會忽略 LD_LIBRARY_PATH 變數的值。
您可以使用「pylon 3D Viewer 」來檢查 GigE 函式庫是否具備設定即時執行緒優先級所需的權限。啟動「pylon 3D Viewer 」後,從裝置清單中開啟一台攝影機裝置。在「功能」窗格中,展開「串流參數」節點。其中「ReceiveThreadPriority」參數表示接收執行緒的優先級。若該值為零,則表示該函式庫不具備設定即時執行緒優先級所需的權限。 若值大於零,則表示該執行緒是依照即時執行緒優先級進行排程的。
增加環形緩衝區大小#
接收 (Rx) 環形緩衝區定義了網路介面卡 (NIC) 驅動程式用於接收並處理來自攝影機的影像資料所使用的緩衝區數量。通常,環形緩衝區的設定較小,而在處理大量網路流量的系統上,可能需要增加其大小。
若要使用ethtool指令增加環形緩衝區的大小:
範例: 要設定接收(Rx)和傳輸(Tx)環形緩衝區的大小,請 eth0 將網路介面設定為 4096,請輸入:
資訊
您的網路介面卡可能不支援上述設定。若 ethtool 回傳錯誤,請跳過此項優化。
設定中斷調節速率#
中斷調控率(IMR)定義了延遲與效能之間的權衡關係。IMR 控制著中斷節流率(ITR),即控制器調控中斷的速率。ITR 越低,驅動程式的反應就越靈敏,但 CPU 負載也會隨之增加,因為會產生更多中斷。 另一方面,ITR 越高,處理中斷的延遲就越大,但 CPU 負載則越低。因此,對於大多數應用,Basler 建議使用較高的 IMR 值,例如「Extreme」或 3600。若您需要更低的延遲,請使用較低的值。
若要使用ethtool指令設定中斷調控率:
範例: 若要套用針對 eth0 網路介面,請輸入:
資訊
您的網路介面卡可能不支援上述設定。若 ethtool 回傳錯誤,請跳過此項優化。
疑難排解#
抓取時發生錯誤
問題:嘗試從多台攝影機擷取影像時,會顯示「PrepareGrab (StartStreaming) 針對該裝置失敗」或「系統資源不足,無法完成 API 操作」的錯誤訊息。
解決方法: 當可用的開放檔案描述符數量用盡時,可能會發生此情況。通常可透過以下指令為當前程序增加此限制:ulimit -n
未顯示相機
問題:即使等待超過一分鐘,我仍無法在應用程式中看到我的攝影機。
視攝影機與轉接器的 IP 設定而定,系統可能需要長達一分鐘的時間,才會為攝影機指派有效的 IP 位址。
解決方案:如果 pylonIP Configurator 可用,請啟動 pylonIP Configurator (/opt/pylon/bin/ipconfigurator)。攝影機是否顯示在IP Configurator 中?
- 若攝影機的狀態顯示為「無法連線」,請檢查攝影機的 IP 位址及網路介面卡的 IP 位址。攝影機與網路介面卡必須使用同一子網內的 IP 位址。請參閱上文的「網路介面卡 IP 設定」一節。
- 若攝影機未顯示於「IP Configurator 」中,最可能的原因是防火牆已啟用。請針對攝影機將要連接的網路介面卡停用防火牆。若您未啟用防火牆,則核心中啟用的反向路徑過濾功能可能會導致無法偵測到攝影機。請參閱下一個問題說明以獲取更多詳細資訊。
無法設定攝影機
問題:我的應用程式無法偵測到我的攝影機。我無法重新設定攝影機,使其再次顯示。
解決方案:首先請確認,相機所連接的網路介面卡上未啟用防火牆。
若仍無法偵測到相機,可能是由於核心中的反向路徑過濾功能阻礙了您的應用程式偵測相機。當相機的 IP 位址與其所連接的網路介面卡不在同一個子網內時,便可能發生此情況。
若要檢查過濾功能是否已啟用,請執行以下指令:
在輸出結果中,請尋找以下幾行:
其中eth1是指相機所連接的網路介面卡。net.ipv4.conf.all.rp_filter是一個全局開關,必須關閉。net.ipv4.conf.eth1.rp_filter則顯示指定網路介面卡的過濾功能是否已啟用。若要停用過濾功能,必須先關閉所有網路介面卡以及特定網路介面卡(此範例中為eth1)的過濾功能。請使用以下指令在執行期間變更過濾行為:
重新啟動您的應用程式,並檢查是否偵測到攝影機。重新設定攝影機,並使用「寫入設定」將變更永久儲存。您可以透過執行相同的指令,但將數值設為 1,來重新啟用篩選功能。若要永久關閉篩選功能,您可以編輯/etc/sysctl.conf 中的相同數值。
自Linux 核心版本 2.6.32 起,rp_filter 設定支援嚴格與寬鬆兩種過濾模式。若要接受非對稱路由的封包,請修改/etc/sysctl.conf:
錯誤代碼 0x81010014
問題:擷取影像時會出現錯誤,錯誤代碼為 0x81010014。此錯誤代碼表示電腦收到的影像不完整,也就是說,網路封包已遺失。
解決方案 1:將UDP 的最大接收緩衝區大小增加至足夠大的值。此舉可讓 pylon SDK 將套接字緩衝區大小增加至 2 MB,以確保影像擷取穩定。
Solution 2:請確保應用程式具有必要的權限,能將接收執行緒優先順序 (receive thread's priority)設定為即時執行緒優先順序。
Solution 3:檢查纜線。對於 GigE,建議使用 Cat 5e 纜線。不良的纜線 Quality 或受損的纜線可能會導致無法復原的傳輸錯誤。
未顯示影像
Problem: 我的應用程式似乎正在擷取影像,但未顯示任何影像。
Solution 1:從命令列啟動您的應用程式,以查看是否列印任何訊息。
Solution 2:您的應用程式僅收到不完整的影格。在這種情況下,會顯示例如 Failed to grab image: GX status 0x81010014 的錯誤訊息。請參閱先前的問題以取得如何解決此問題的提示。
Solution 3:由於其他原因導致擷取影像失敗。請將應用程式所列印的錯誤訊息回報給 Basler 技術支援。
後續步驟#
您的相機現已準備就緒。有關如何開始使用的資訊,請參閱《Stereo ace 相機使用指南》。