IDS Peak comfortSDK, genericSDK, IPL, and AFL developer manuals are external documents. Please contact us if you need them.
Specifies the activation mode of the PWMTriggerSource signal. The corresponding pulse-width modulation module that should be configured is defined in PWMSelector.
Name |
PWMTriggerActivation[PWMSelector] |
Category |
|
Interface |
Enumeration |
Access |
Read/Write |
Unit |
- |
Visibility |
Beginner |
Values |
LevelHigh |
Standard |
IDS |
Availability uEye+ |
|
Availability uEye |
|
Values description
•LevelHigh: Specifies that the trigger is considered valid as long as the level of the PWMTriggerSource signal is HIGH.
•LevelLow: Specifies that the trigger is considered valid as long as the level of the PWMTriggerSource signal is LOW.
Pulse width modulation (PWM) is not supported by the following uEye models: •UI-304xLE •UI-313xLE •UI-327xLE •UI-359xLE Rev. 1 / UI-359xLE Rev. 2 •UI-386xLE •UI-388xLE |
Code example
C++
// Before accessing PWMTriggerActivation, make sure PWMTriggerSource is set correctly
// Set PWMTriggerSource to "AcquisitionActive"
nodeMapRemoteDevice->FindNode<peak::core::nodes::EnumerationNode>("PWMTriggerSource")->SetCurrentEntry("AcquisitionActive");
// Determine the current entry of PWMTriggerActivation
std::string value = nodeMapRemoteDevice->FindNode<peak::core::nodes::EnumerationNode>("PWMTriggerActivation")->CurrentEntry()->SymbolicValue();
// Get a list of all available entries of PWMTriggerActivation
auto allEntries = nodeMapRemoteDevice->FindNode<peak::core::nodes::EnumerationNode>("PWMTriggerActivation")->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 PWMTriggerActivation to "LevelHigh"
nodeMapRemoteDevice->FindNode<peak::core::nodes::EnumerationNode>("PWMTriggerActivation")->SetCurrentEntry("LevelHigh");
C#
// Before accessing PWMTriggerActivation, make sure PWMTriggerSource is set correctly
// Set PWMTriggerSource to "AcquisitionActive"
nodeMapRemoteDevice.FindNode<peak.core.nodes.EnumerationNode>("PWMTriggerSource").SetCurrentEntry("AcquisitionActive");
// Determine the current entry of PWMTriggerActivation
string value = nodeMapRemoteDevice.FindNode<peak.core.nodes.EnumerationNode>("PWMTriggerActivation").CurrentEntry().SymbolicValue();
// Get a list of all available entries of PWMTriggerActivation
allEntries = nodeMapRemoteDevice.FindNode<peak.core.nodes.EnumerationNode>("PWMTriggerActivation").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 PWMTriggerActivation to "LevelHigh"
nodeMapRemoteDevice.FindNode<peak.core.nodes.EnumerationNode>("PWMTriggerActivation").SetCurrentEntry("LevelHigh");
Python
# Before accessing PWMTriggerActivation, make sure PWMTriggerSource is set correctly
# Set PWMTriggerSource to "AcquisitionActive" (str)
nodeMapRemoteDevice.FindNode("PWMTriggerSource").SetCurrentEntry("AcquisitionActive")
# Determine the current entry of PWMTriggerActivation (str)
value = nodeMapRemoteDevice.FindNode("PWMTriggerActivation").CurrentEntry().SymbolicValue()
# Get a list of all available entries of PWMTriggerActivation
allEntries = nodeMapRemoteDevice.FindNode("PWMTriggerActivation").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 PWMTriggerActivation to "LevelHigh" (str)
nodeMapRemoteDevice.FindNode("PWMTriggerActivation").SetCurrentEntry("LevelHigh")