Acquisition Start 以及「停止」(dart E )#
資訊
- 這些命令無法透過 pylon Viewer 功能樹狀結構使用。相反地,
AcquisitionStart進行明確的生命週期管理即呼叫AcquisitionStop當您使用「pylon Viewer 」工具列上的擷取按鈕時,系統會自動產生指令。 - pylon C++ API 提供了可自動處理這些指令的攝影機類別。Basler 建議使用這些類別。
如需更多資訊,請參閱隨 Baslerpylon Software Suite 一併提供的《C++ 程式設計師指南與參考文件》中的「Grab」程式碼範例。
使用功能#
若要開啟影像擷取,請執行 AcquisitionStart 指令。
若要關閉影像擷取,請執行 AcquisitionStop 指令。
在……之後 AcquisitionStop 當該指令執行後,會發生以下情況:
- 如果相機目前未擷取畫格,影像擷取將會立即關閉。
- 如果相機目前正在讀出影像資料,系統會允許讀出程序完成。之後,影像擷取便會關閉。
- 若相機當前正在進行幀曝光,則會中止曝光。相機將立即停止曝光並開始讀出影像資料。系統會允許讀出過程完成。之後,影像擷取功能將被關閉。
範例程式碼#
// Configure continuous image acquisition on the cameras
camera.AcquisitionMode.SetValue(AcquisitionMode_Continuous);
// Switch on image acquisition
camera.AcquisitionStart.Execute();
// (...)
// Switch off image acquisition
camera.AcquisitionStop.Execute();
// Switch image acquisition back on
camera.AcquisitionStart.Execute();
INodeMap& nodemap = camera.GetNodeMap();
// Configure continuous image acquisition on the cameras
CEnumParameter(nodemap, "AcquisitionMode").SetValue("Continuous");
// Switch on image acquisition
CCommandParameter(nodemap, "AcquisitionStart").Execute();
// (...)
// Switch off image acquisition
CCommandParameter(nodemap, "AcquisitionStop").Execute();
// Switch image acquisition back on
CCommandParameter(nodemap, "AcquisitionStart").Execute();
// Configure continuous image acquisition on the cameras
camera.Parameters[PLCamera.AcquisitionMode].SetValue(PLCamera.AcquisitionMode.Continuous);
// Switch on image acquisition
camera.Parameters[PLCamera.AcquisitionStart].Execute();
// (...)
// Switch off image acquisition
camera.Parameters[PLCamera.AcquisitionStop].Execute();
// Switch image acquisition back on
camera.Parameters[PLCamera.AcquisitionStart].Execute();
/* Macro to check for errors */
#define CHECK(errc) if (GENAPI_E_OK != errc) printErrorAndExit(errc)
GENAPIC_RESULT errRes = GENAPI_E_OK; /* Return value of pylon methods */
/* Configure continuous image acquisition on the cameras */
errRes = PylonDeviceFeatureFromString(hdev, "AcquisitionMode", "Continuous");
CHECK(errRes);
/* Switch on image acquisition */
errRes = PylonDeviceExecuteCommandFeature(hdev, "AcquisitionStart");
CHECK(errRes);
/* (...) */
/* Switch off image acquisition */
errRes = PylonDeviceExecuteCommandFeature(hdev, "AcquisitionStop");
CHECK(errRes);
/* Switch image acquisition back on */
errRes = PylonDeviceExecuteCommandFeature(hdev, "AcquisitionStart");
CHECK(errRes);
# Configure continuous image acquisition on the cameras
camera.AcquisitionMode.Value = "Continuous"
# Switch on image acquisition
camera.AcquisitionStart.Execute()
# (...)
# Switch off image acquisition
camera.AcquisitionStop.Execute()
# Switch image acquisition back on
camera.AcquisitionStart.Execute()
/* Macro to check for errors */
#define CHECK(errc) if (GENAPI_E_OK != errc) printErrorAndExit(errc)
GENAPIC_RESULT errRes = GENAPI_E_OK; /* Return value of pylon methods */
/* Configure continuous image acquisition on the cameras */
errRes = PylonDeviceFeatureFromString(hdev, "AcquisitionMode", "Continuous");
CHECK(errRes);
/* Switch on image acquisition */
errRes = PylonDeviceExecuteCommandFeature(hdev, "AcquisitionStart");
CHECK(errRes);
/* (...) */
/* Switch off image acquisition */
errRes = PylonDeviceExecuteCommandFeature(hdev, "AcquisitionStop");
CHECK(errRes);
/* Switch image acquisition back on */
errRes = PylonDeviceExecuteCommandFeature(hdev, "AcquisitionStart");
CHECK(errRes);
您也可以使用 pylon Viewer 輕鬆設定參數。