Acquisition Mode#
資訊
- 此功能無法透過「pylon Viewer 」功能樹存取。相反地,當您使用「pylon Viewer 」工具列中的「單張拍攝」和「連拍」按鈕時,系統會自動設定拍攝模式。
- pylon C++ API 和 pylon .NET API 提供了用來設定
AcquisitionMode參數會自動設定。Basler 建議使用這些事件處理常式。
如需更多資訊,請參閱《pylon API 文件》中的Grab (C++)和Grab (.NET)程式碼範例。
使用功能#
指定擷取模式#
若要指定擷取模式,請設定 AcquisitionMode 參數設定為以下值之一:
可用的擷取模式#
單幀擷取模式#
在「單張影像」拍攝模式下,相機將僅拍攝一張影像。
執行完Acquisition Start 指令後,相機便會等待觸發訊號。觸發訊號可以是由相機內部產生(自由運行),也可以由外部提供(觸發式影像擷取)。
資訊
若要檢查攝影機是否正在等待觸發訊號,請監控攝影機的「觸發等待」訊號,或使用 Acquisition Status 功能(若可用)。
當接收到「幀起始」觸發訊號或「行起始」觸發訊號,並完成影像擷取後,攝影機將停止影像擷取。若要擷取另一張影像,必須再次執行Acquisition Start 指令。
連續擷取模式#
在「連續拍攝」模式下,相機將持續拍攝並傳輸影像,直到關閉拍攝功能為止。
執行完`Acquisition Start ` 指令後,相機將等待觸發訊號。觸發訊號可由相機內部產生(自由運行影像擷取),或由外部提供(觸發式影像擷取)。相機將持續擷取影像,直到執行 `Acquisition Stop ` 指令為止。
範例程式碼#
// Configure single frame acquisition on the camera
camera.AcquisitionMode.SetValue(AcquisitionMode_SingleFrame);
// Switch on image acquisition
camera.AcquisitionStart.Execute();
// The camera waits for a trigger signal.
// When a Frame Start trigger signal has been received,
// the camera executes an Acquisition Stop command internally.
// Configure continuous image acquisition on the camera
camera.AcquisitionMode.SetValue(AcquisitionMode_Continuous);
// Switch on image acquisition
camera.AcquisitionStart.Execute();
// The camera waits for trigger signals.
// (...)
// Switch off image acquisition
camera.AcquisitionStop.Execute();
INodeMap& nodemap = camera.GetNodeMap();
// Configure single frame acquisition on the camera
CEnumParameter(nodemap, "AcquisitionMode").SetValue("SingleFrame");
// Switch on image acquisition
CCommandParameter(nodemap, "AcquisitionStart").Execute();
// The camera waits for a trigger signal.
// When a Frame Start trigger signal has been received,
// the camera executes an Acquisition Stop command internally.
// Configure continuous image acquisition on the camera
CEnumParameter(nodemap, "AcquisitionMode").SetValue("Continuous");
// Switch on image acquisition
CCommandParameter(nodemap, "AcquisitionStart").Execute();
// The camera waits for trigger signals.
// (...)
// Switch off image acquisition
CCommandParameter(nodemap, "AcquisitionStop").Execute();
// Configure single frame acquisition on the camera
camera.Parameters[PLCamera.AcquisitionMode].SetValue(PLCamera.AcquisitionMode.SingleFrame);
// Switch on image acquisition
camera.Parameters[PLCamera.AcquisitionStart].Execute();
// The camera waits for a trigger signal.
// When a Frame Start trigger signal has been received,
// the camera executes an Acquisition Stop command internally.
// Configure continuous image acquisition on the camera
camera.Parameters[PLCamera.AcquisitionMode].SetValue(PLCamera.AcquisitionMode.Continuous);
// Switch on image acquisition
camera.Parameters[PLCamera.AcquisitionStart].Execute();
// The camera waits for trigger signals.
// (...)
// Switch off image acquisition
camera.Parameters[PLCamera.AcquisitionStop].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 single frame acquisition on the camera */
errRes = PylonDeviceFeatureFromString(hdev, "AcquisitionMode", "SingleFrame");
CHECK(errRes);
/* Switch on image acquisition */
errRes = PylonDeviceExecuteCommandFeature(hdev, "AcquisitionStart");
CHECK(errRes);
/* The camera waits for a trigger signal. */
/* When a Frame Start trigger signal has been received, */
/* the camera executes an Acquisition Stop command internally. */
/* Configure continuous image acquisition on the camera */
errRes = PylonDeviceFeatureFromString(hdev, "AcquisitionMode", "Continuous");
CHECK(errRes);
/* Switch on image acquisition */
errRes = PylonDeviceExecuteCommandFeature(hdev, "AcquisitionStart");
CHECK(errRes);
/* The camera waits for trigger signals. */
/* (...) */
/* Switch off image acquisition */
errRes = PylonDeviceExecuteCommandFeature(hdev, "AcquisitionStop");
CHECK(errRes);
# Configure single frame acquisition on the camera
camera.AcquisitionMode.Value = "SingleFrame"
# Switch on image acquisition
camera.AcquisitionStart.Execute()
# The camera waits for a trigger signal.
# When a Frame Start trigger signal has been received,
# the camera executes an Acquisition Stop command internally.
# Configure continuous image acquisition on the camera
camera.AcquisitionMode.Value = "Continuous"
# Switch on image acquisition
camera.AcquisitionStart.Execute()
# The camera waits for trigger signals.
# (...)
# Switch off image acquisition
camera.AcquisitionStop.Execute()
您也可以 use the pylon Viewer 來輕鬆設定參數。