其他工作 (microDisplay X)#
設定使用者偏好設定#
- microDisplay X 的 GUI 顯示(小程式顯示以及參數值的十進位/十六進位/二進位顯示)
- 擷取參數(緩衝區數量、擷取逾時、最大 DMA 緩衝區大小)
- 相機偵測與相機控制的行為
若要設定您使用 microDisplay X 的偏好設定:
- 在 microDisplay X 的 Tools 功能表中,選取 Settings。
-
在開啟的對話方塊中,調整您想要變更的設定:
- 小程式顯示: 按一下 GUI,以及在 Applet Layout / View Mode中,決定小程式在程式視窗的小程式配置窗格中的顯示方式。選擇您希望以處理程序(Process Mode)還是以資源類型(Resource Mode)來列出小程式的資源(連接埠):
- 在 process mode 中,屬於一個處理程序(一個擷取通道)的資源(連接埠)會作為實體 Acquisition Process 列在小程式配置窗格中。
- 在 resource mode 中,於 DMAs 下方會列出所有作用中的 DMA 連接埠(載入於 microDisplay X 中的小程式)。於 Camera Ports 下方會列出連接至相關擷取卡的的所有相機。
- 預設整數顯示模式:在程式視窗中顯示參數與像素值時,您可選擇十進位、十六進位與二進位。
-
擷取參數:若要設定擷取參數,請按一下 Acquisition 並定義您的偏好設定:

-
探索設定:若要設定探索參數,請按一下 Discovery 並定義您的偏好設定:

- 小程式顯示: 按一下 GUI,以及在 Applet Layout / View Mode中,決定小程式在程式視窗的小程式配置窗格中的顯示方式。選擇您希望以處理程序(Process Mode)還是以資源類型(Resource Mode)來列出小程式的資源(連接埠):
儲存小程式組態#
在 microDisplay X 中或透過 Framegrabber API 設定好 Applet 後,即可儲存您的組態。
儲存 Applet 組態可讓您在下次載入 Applet(於擷取卡上、microDisplay X 中和/或您的軟體中)時,所有參數都已經設定完成。
資訊
請確保在儲存與使用 Applet 組態時,使用的是相同的 Framegrabber SDK 版本。例如,如果您使用 Framegrabber SDK 5.9.0 版本設定 Applet 並儲存該組態,則應僅在 5.9.0 版本的環境中載入該組態。
以下章節提供您處理 MCF 檔案所需的所有資訊。
MCF 與 MFS 檔案#
MCF 檔案#
當您儲存 Applet 組態時,組態資料會儲存至檔案中。組態檔案的副檔名為 *.mcf。(MCF = microEnable Configuration File)
MCF 檔案以文字格式儲存,因此您不僅可以透過 microDisplay X 或 API 變更個別參數的設定,也可以直接在此檔案中進行變更。

MCF 檔案包含:
- 其所屬的 Applet 名稱。
- 您已進行的所有參數設定(唯一的例外:欄位值)。
- 如有需要,指向 MFS 檔案的連結(其中包含您在 Applet 組態期間定義的欄位值)。
獨立 XML 檔案中的相機組態
MCF 檔案不包含相機組態。您可以將相機組態儲存於獨立的 *.xml 檔案中。MCF 檔案僅包含 Applet 組態。
MFS 檔案#
Applet 的組態可能包含欄位參數,例如 LUT。這些欄位參數並未直接儲存在 MCF 檔案中,而是儲存在副檔名為 *.mfs 的獨立檔案中。(MFS = microEnable Field Storage)
您永遠不需要直接處理 MFS 檔案:
- 如果您的 Applet 組態包含欄位參數,則在儲存 Applet 組態時,MFS 檔案將與 MCF 檔案一起自動建立。
- 載入 Applet 組態時,只需載入 MCF 檔案即可,因為 MFS 檔案的內容(欄位參數)將與 MCF 檔案一起自動載入。
資訊
針對每個擷取卡型號,皆提供一組免費的 Applet。這些 Applet 稱為 Acquisition Applets。所有 Acquisition Applets 的副檔名皆為 *.dll。Acquisition Applets 以 Applet 套件的形式提供(每個擷取卡型號一組)。Applet 套件可以與 Framegrabber SDK 一起安裝,或透過個別的 Applet 套件安裝程式進行安裝(可於 Basler 網站的下載專區取得)。安裝後,Acquisition Applets 會位於 Framegrabber SDK 安裝目錄下的 Dll 子目錄中。(例如:C:\Program Files\Basler\FramegrabberSDK5.x.x\Dll。)Acquisition Applets 可在可程式化與不可程式化的擷取卡上執行(亦即 A 系列與 V 系列擷取卡)。
所有 Acquisition Applets 皆包含欄位參數。因此,每次儲存 Acquisition Applet 的組態時,都會建立兩個檔案:*.mcf 檔案與 *.mfs 檔案。不過,您不需要個別處理 *.mfs 檔案,因為在儲存/載入 *.mfs 檔案時,它總是會自動建立/載入。
下列陣列(欄位參數)是所有或部分 Acquisition Applets 的一部分:
- LUT
- KneeLUT
- PoCXPStatePort_x (僅限 marathon CXP 擷取卡)
- PoCXPCurrentPort_x (僅限 marathon CXP 擷取卡)
- PoCXPVoltagePort_x (僅限 marathon CXP 擷取卡)
資訊
將所有欄位資料儲存至獨立的檔案中,可保持 applet 組態檔 MCF 簡潔,並有助於維持向下相容性。
在 microDisplay X 中進行儲存與載入#
在 microDisplay X 中將小程式組態儲存至檔案#
在 microDisplay X 中,您可以將目前載入的 applet 組態儲存至檔案。
-
從 File 選單中,選取 Save Configuration。

-
選取您要儲存 applet 組態檔 (*.mcf) 的目錄。
- 為您的 *.mcf 檔案命名。
- 按一下 Save。
*.mcf 檔案會建立並儲存於您在第二步驟中指定的目錄中。如果 applet 組態包含欄位值,系統會建立一個額外的 *.mfs 檔案,其中包含 applet 組態的所有欄位參數值。如果 applet 包含欄位參數,系統將會自動建立 MFS 檔案。
在 microDisplay X 中從檔案載入小程式組態#
-
在 microDisplay X 中,選取您要使用已組態 applet 的擷取卡。

-
從 File 選單中,選取 Open Configuration。

-
在開啟的對話方塊中,瀏覽至包含您 applet 組態的目錄。
- 選取您要使用的 *.mcf 檔案,然後按一下 Open。
已組態的 applet 會載入至 microDisplay X 中,並在擷取卡上啟用。如果 applet 組態包含欄位參數,系統將會自動從對應的 *.mfs 檔案載入欄位值。您不需要另外載入 *.mfs 檔案。
透過 Framegrabber API 進行儲存與載入#
透過 Framegrabber API 將小程式組態儲存至檔案#
若要儲存 applet 組態檔,Framegrabber API (程式庫 fglib5.lib,標頭檔 basler_fg.h):
int Fg_saveConfig (Fg_Struct *Fg, const char *Filename)
參數:
Fg:您系統中的擷取卡 (主機板索引)。請在此指定您要從中儲存主動組態 (主動 applet 及其參數化) 的擷取卡。Filename:請在此指定組態檔的名稱與路徑。副檔名一律為 *.mcf。
如果小程式(applet)組態包含欄位值,將會建立一個額外的 *.mfs 檔案,其中包含該小程式組態的所有欄位參數值。如果小程式包含欄位參數,系統會自動建立 MFS 檔案。
透過 Framegrabber API 從檔案載入小程式組態#
若要從檔案載入小程式組態,可以使用各種函式(庫 fglib5.lib,標頭檔 basler_fg.h):
擷取卡初始化#
您可以透過 *.mcf 檔案直接初始化主機板。由於 MCF 檔案包含小程式名稱,因此擷取卡將使用 MCF 檔案中所指定的小程式進行初始化,並且儲存在 *.mcf 檔案中的小程式組態(參數化)已在擷取卡上設定。
如果您的小程式組態包含欄位參數,且對應的 *.mfs 檔案與 *.mcf 檔案儲存在同一目錄中,則在呼叫此函式時會自動載入欄位參數。
Fg_Struct* Fg_InitConfig (const char * Config_Name, unsigned int BoardIndex)
參數:
Config_Name:請在此指定組態檔的名稱與路徑。副檔名一律為 *.mcf。BoardIndex:在此指定您要使用 *.mcf 檔案初始化的擷取卡(透過其主機板索引)。呼叫Fg_InitConfig後,擷取卡將使用 *.mcf 檔案中命名的小程式以及同一檔案中指定的小程式組態進行初始化。
載入小程式組態#
您也可以在已使用小程式初始化擷取卡之後,載入小程式的組態。
使用此函式的先決條件:
- 已透過函式初始化擷取卡
FG_Init或作為主裝置搭配FG_InitEx. - 儲存在 *.mcf 檔案中的小程式組態適用於初始化擷取卡所使用的小程式。(如有疑問,請檢視 *.mcf 檔案。小程式名稱記載於 *.mcf 檔案的前幾行。)
如果您的小程式組態包含欄位參數,且對應的 *.mfs 檔案與 *.mcf 檔案儲存在同一目錄中,則在呼叫此函式時會自動載入欄位參數。
用於在擷取卡初始化後載入小程式組態的函式:
int Fg_loadConfig (Fg_Struct *Fg, const char *Filename)
參數:
Fg:在此指定您要使用 *.mcf 檔案中所包含的小程式組態進行參數化的擷取卡(透過主機板索引)。Filename:請在此指定組態檔的名稱與路徑。副檔名一律為 *.mcf。
資訊
使用完擷取卡後,別忘了透過函式釋放擷取卡資源
int Fg_FreeGrabber (Fg_Struct *Fg)
此函式還會釋放先前透過以下項目為此擷取卡配置的影格緩衝區: Fg_AllocMem().