跳至內容
測試伺服器
開發伺服器

Acquisition Mode#

「拍攝模式」相機功能讓您可在單張拍攝與連續拍攝之間進行選擇。

資訊

  • 此功能無法透過「pylon Viewer 」功能樹存取。相反地,當您使用「pylon Viewer 」工具列中的「單張拍攝」和「連拍」按鈕時,系統會自動設定拍攝模式。
  • pylon C++ API 和 pylon .NET API 提供了用來設定 AcquisitionMode 參數會自動設定。Basler 建議使用這些事件處理常式。

如需更多資訊,請參閱《pylon API 文件》中的Grab (C++)和Grab (.NET)程式碼範例。

使用功能#

指定擷取模式#

若要指定擷取模式,請設定 AcquisitionMode 參數設定為以下值之一:

  • SingleFrame: 啟用 單幀 擷取模式。
  • Continuous: 啟用 連續的 擷取模式。

可用的擷取模式#

單幀擷取模式#

在「單張影像」拍攝模式下,相機將僅拍攝一張影像。

執行完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 來輕鬆設定參數。