Skip to content

Auto Function Profile (dart E)#

The Auto Function Profile camera feature defines how gain and exposure time are balanced when the camera is making automatic adjustments.

Using the Feature#

Setting the Auto Function Profile#

To set the auto function profile:

  1. Set the Gain Auto auto function and the Exposure Auto auto function to Continuous.
  2. Set the AutoFunctionProfile parameter to one of the following values:
    • AntiFlicker50Hz: Enables flicker reduction for a power line frequency of 50 Hz (applies to, e.g., Europe).
    • AntiFlicker60Hz: Enables flicker reduction for a power line frequency of 60 Hz (applies to, e.g., North America).
    • AntiFlickerAuto: Enables flicker reduction with automatic power line frequency detection.
    • MinimizeExposureTime: The exposure time is kept as low as possible during the automatic adjustment process.
    • MinimizeGain (default): The gain is kept as low as possible during the automatic adjustment process.

Sample Code#

// Set the auto function profile to Minimize Gain
camera.AutoFunctionProfile.SetValue(AutoFunctionProfile_MinimizeGain);
// Set the auto function profile to Minimize Exposure Time
camera.AutoFunctionProfile.SetValue(AutoFunctionProfile_MinimizeExposureTime);
// Enable Gain and Exposure Auto auto functions and set the operating mode to Continuous
camera.GainAuto.SetValue(GainAuto_Continuous);
camera.ExposureAuto.SetValue(ExposureAuto_Continuous);
INodeMap& nodemap = camera.GetNodeMap();
// Set the auto function profile to Minimize Gain
CEnumParameter(nodemap, "AutoFunctionProfile").SetValue("MinimizeGain");
// Set the auto function profile to Minimize Exposure Time
CEnumParameter(nodemap, "AutoFunctionProfile").SetValue("MinimizeExposureTime");
// Enable Gain and Exposure Auto auto functions and set the operating mode to Continuous
CEnumParameter(nodemap, "GainAuto").SetValue("Continuous");
CEnumParameter(nodemap, "ExposureAuto").SetValue("Continuous");
// Set the auto function profile to Minimize Gain
camera.Parameters[PLCamera.AutoFunctionProfile].SetValue(PLCamera.AutoFunctionProfile.MinimizeGain);
// Set the auto function profile to Minimize Exposure Time
camera.Parameters[PLCamera.AutoFunctionProfile].SetValue(PLCamera.AutoFunctionProfile.MinimizeExposureTime);
// Enable Gain and Exposure Auto auto functions and set the operating mode to Continuous
camera.Parameters[PLCamera.GainAuto].SetValue(PLCamera.GainAuto.Continuous);
camera.Parameters[PLCamera.ExposureAuto].SetValue(PLCamera.ExposureAuto.Continuous);
/* 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 */
/* Set the auto function profile to Minimize Gain */
errRes = PylonDeviceFeatureFromString(hdev, "AutoFunctionProfile", "MinimizeGain");
CHECK(errRes);
/* Set the auto function profile to Minimize Exposure Time */
errRes = PylonDeviceFeatureFromString(hdev, "AutoFunctionProfile", "MinimizeExposureTime");
CHECK(errRes);
/* Enable Gain and Exposure Auto auto functions and set the operating mode to Continuous */
errRes = PylonDeviceFeatureFromString(hdev, "GainAuto", "Continuous");
CHECK(errRes);
errRes = PylonDeviceFeatureFromString(hdev, "ExposureAuto", "Continuous");
CHECK(errRes);
# Set the auto function profile to Minimize Gain
camera.AutoFunctionProfile.Value = "MinimizeGain"
# Set the auto function profile to Minimize Exposure Time
camera.AutoFunctionProfile.Value = "MinimizeExposureTime"
# Enable Gain and Exposure Auto auto functions and set the operating mode to Continuous
camera.GainAuto.Value = "Continuous"
camera.ExposureAuto.Value = "Continuous"

You can also use the pylon Viewer to easily set the parameters.