Please enable JavaScript to view this site.

IDS peak 2.8.0 / uEye+ firmware 3.33

Sets the automatic exposure control when ExposureMode is "Timed". Neither AcquisitionFrameRate nor Gain settings are changed. ExposureAuto can be combined with GainAuto.

Name

ExposureAuto

Category

AcquisitionControl

Interface

Enumeration

Access

Read/Write

Unit

-

Visibility

Beginner

Values

Off
Once
Continuous

Standard

SFNC

Availability uEye+

icon-gev icon-u3v

Availability uEye

-

Values description

Off: Exposure duration is user controlled using ExposureTime.

Once: Exposure duration is adapted once by the camera. Once it has converged, it returns to the "Off" state.

Continuous: Exposure duration is constantly adapted by the camera to maximize the dynamic range.

hint_info

This feature is not available with the SensorOperationMode "Linescan".

hint_info

Can only be changed if SequencerMode is "Off".

Code example

C++

// Determine the current entry of ExposureAuto
std::string value = nodeMapRemoteDevice->FindNode<peak::core::nodes::EnumerationNode>("ExposureAuto")->CurrentEntry()->SymbolicValue();
// Get a list of all available entries of ExposureAuto
auto allEntries = nodeMapRemoteDevice->FindNode<peak::core::nodes::EnumerationNode>("ExposureAuto")->Entries();
std::vector<std::shared_ptr<peak::core::nodes::EnumerationEntryNode>> availableEntries;
for(const auto & entry : allEntries)
{
  if ((entry->AccessStatus()!=peak::core::nodes::NodeAccessStatus::NotAvailable)
          && (entry->AccessStatus()!=peak::core::nodes::NodeAccessStatus::NotImplemented))
  {
      availableEntries.emplace_back(entry);
  }
}
// Set ExposureAuto to "Off"
nodeMapRemoteDevice->FindNode<peak::core::nodes::EnumerationNode>("ExposureAuto")->SetCurrentEntry("Off");

C#

// Determine the current entry of ExposureAuto
string value = nodeMapRemoteDevice.FindNode<peak.core.nodes.EnumerationNode>("ExposureAuto").CurrentEntry().SymbolicValue();
// Get a list of all available entries of ExposureAuto
allEntries = nodeMapRemoteDevice.FindNode<peak.core.nodes.EnumerationNode>("ExposureAuto").Entries();
List<string> availableEntries = new List<string>();
for(int i = 0; i < allEntries.Count(); ++i)
{
  if ((allEntries[i].AccessStatus() != peak.core.nodes.NodeAccessStatus.NotAvailable)
          && (allEntries[i].AccessStatus() != peak.core.nodes.NodeAccessStatus.NotImplemented))
  {
      availableEntries.Add(allEntries[i].SymbolicValue());
  }
}
// Set ExposureAuto to "Off"
nodeMapRemoteDevice.FindNode<peak.core.nodes.EnumerationNode>("ExposureAuto").SetCurrentEntry("Off");

Python

# Determine the current entry of ExposureAuto (str)
value = nodeMapRemoteDevice.FindNode("ExposureAuto").CurrentEntry().SymbolicValue()
# Get a list of all available entries of ExposureAuto
allEntries = nodeMapRemoteDevice.FindNode("ExposureAuto").Entries()
availableEntries = []
for entry in allEntries:
  if (entry.AccessStatus() != ids_peak.NodeAccessStatus_NotAvailable
          and entry.AccessStatus() != ids_peak.NodeAccessStatus_NotImplemented):
      availableEntries.append(entry.SymbolicValue())
 
# Set ExposureAuto to "Off" (str)
nodeMapRemoteDevice.FindNode("ExposureAuto").SetCurrentEntry("Off")

© 2024 IDS Imaging Development Systems GmbH