邁德威視工業相機LabView 開發指導

在 Labview 中可以通過 NI MAX 工具和我們提供的基於 DLL 調用的例程兩種方式進行開發。

8.1 使用 NI MAX 開發

1. 先連接上相機,然後運行 NI MAX 後。可以在”設備和接口”的NI-IMAQdx Devices 下,找到我們的相機,如圖 8.1 所示。雙擊後,即可得到如圖 8.2 所示的相機預覽畫面(需要點擊圖 8.2 上方的 Grab 按

鈕後才能預覽)。

2. 在圖 8.2 中,可以進行分辨率的切換。

3. 點擊圖 8.2 中的 Camera Attributers 標籤後,可以進行相機其他參數的設置。如圖 8.3 所示。該接口下,由於受協議的限制,只允許設置相機的部分參數,其他參數的設置,您可以通過我們的演示軟件,調整好後,保存下來(相機參數可以保存成一個檔,無論您使用哪種方式開發該參數檔都可以被有效的自動加載),再用 NI MAX 打開,同樣有效果。


邁德威視工業相機LabView 開發指導

圖 8.1 NI MAX 設備清單


邁德威視工業相機LabView 開發指導

圖 8.2 預覽界面


邁德威視工業相機LabView 開發指導

圖 8.3 NI MAX 中相機的參數配置

8.2 基於 DLL 檔調用方式進行開發

該方式的例程位於安裝目錄的 DEMO/Labview/useDLL 文件夾下,演示瞭如何通過調用 SDK 的 DLL 檔(MVCAMSDK.dll)進行開發。該例程有如下特點:

1. 支持黑白和彩色的相機自動識別,黑白相機使用 U8 格式的灰度圖像進行顯示;彩色相機使用 U32 格式的彩色圖像進行顯示。

2. 支持多相機同時開發使用。只需要將 CameraInitEx 接口調用中第一個參數遞增即可。輸入 0 表示初始化第一個相機,輸入 1 表示初始化第二個相機,其餘 VI 源碼可全部直接複製。

3. 該例程可適用於我司所有型號的相機,無論分辨率大小、觸發模式、傳輸接口如何,該例程均可自動識別,無需手動修改任何變量。

4. 相機的參數支持保存和加載(檔方式)。通過其他軟件修改好的相機參數檔,也可以被該例程加載,減少手工輸入代碼的工作量。


8.3 Labview 中使用多個相機

該方式的例程位於安裝目錄的 DEMO/Labview/TwoCameras 目錄下,這個例程也是基於 DLL 方式的,演示了在 Labview 中如何同時使用多個相機。例程中給出的是 2 個相機同時使用的方法,可以是相同型號的 2 個相機,也可以是不同型號的,甚至是不同接口的多個相機,例如 1 個 USB2.0,1 個 USB3.0,1 個 GIGE 相機,都可以使用這種方式進行多相機開發。使用 2 個以上的相機同時開發時,請參考本例程中的方式進行擴展,目前 SDK 的多相機數量限制為 64個,當需要同時使用 64 個以上的相機時,請與我們技術支持取得聯繫,可進一步擴展多相機支持數量。

8.4 Labview 多相機的區分

當使用多相機時開發時,往往需要每臺相機的對應關係,不同的相機,將用來完成不同的任務。區分多相機的方法有很多種,可以通過相機內唯一序號、相機名稱、相機內自定義數據等多種方式。在 Labview 中,我們提供以下 2 種方式來區分多相機:

 使用自定義數據的方式。我們提供了接口,可以在相機中讀寫自定義的數據,您可以根據這些數據,來區分不同的相機。但是這種方法必須是已經在初始化相機後,才能讀取到自定義的數據,因此 Labview 的程序設計中,必須在第 211 頁相機初始化完成後,再通過接口獲得自定義數據後,判斷是哪一個相機,再進行相應的分支處理。(例程中已經提供了相機自定義數據的讀寫方式)

 使用自定義設備名的功能。該過程和 5.3 章節 Halcon 中區分多相機類似。

第一步,如圖 6.4 中所示,分別將 2 臺相機的設備名改成 Camera1 和Camera2。第二步,在 Labview 中,調用 CameraInitEx2 接口來進行相機的初始化,第一個參數分別傳入字符串"Camera1"和"Camera2"。修改後,名字被固化到相機內部,永久有效,不受接口、計算機更換的影響。該例程位於安裝目錄的 DEMO/Labview/TwoCamerasEx 目錄下。


邁德威視工業相機LabView 開發指導

圖 8.4 修改相機暱稱


分享到:


相關文章: