This class represents the LED Strobe Controller.
See class VIB::Strobe in the VisionBox Interface Library for a detailed description.
- Examples
try{
pStrobe.Init(true);
Int32 minOffTime = pStrobe.SetLimits(
0,
24,
0,
1 * 1000,
0,
1000);
pStrobe.OnTime = 1*1000;
pStrobe.Validate = true;
pStrobe.Current = 200;
pStrobe.SwTrigger = true;
pVIBSystem.CloseDevice(pStrobe);
pVIBSystem = null;
}
catch(...)
{
throw;
}
|
|
Int32 | Current [get, set] |
| Current value of the strobe output. More...
|
|
UInt32 | MaxCurrent [get] |
| Returns the maximum strobe current in mA for the current configuration. More...
|
|
UInt32 | MaxOnTime [get] |
| Returns the maximum ON-time in microseconds for the current configuration. More...
|
|
UInt32 | MinOffTime [get] |
| Returns the minimum OFF-time in microseconds for the current configuration. More...
|
|
Int32 | OnTime [get, set] |
| ON-time of the strobe output for edge triggered modes in microseconds. More...
|
|
eSTROBE_OUTPUT_TYPE | OutputType [get, set] |
| Selects the output channel for the Strobe unit. More...
|
|
Boolean | SwTrigger [set] |
| Sets the trigger signal for software triggered and manual software mode. More...
|
|
UInt16 | Temperature [get] |
| Reads temperature of the FlashBox Strobe unit. More...
|
|
UInt32 | TriggerDelay [get, set] |
| Trigger delay. More...
|
|
eSTROBE_MODE | TriggerMode [get, set] |
| Contains the trigger mode. More...
|
|
eSTROBE_SOURCE | TriggerSource [get, set] |
| Trigger source for hardware triggered modes. More...
|
|
Boolean | TriggerSourceInvert [get, set] |
| Polarity of the trigger source for hardware triggered modes. More...
|
|
virtual VIB_NET::eDEVICE_TYPE | Type [get] |
| Returns the device type for the current instance, see eDEVICE_TYPE More...
|
|
Boolean | Validate [get, set] |
| Validate the current when setting Current. More...
|
|
Int32 | Voltage [get] |
| Contains the supply voltage for the strobe output. More...
|
|
virtual VIB_NET::eDEVICE_TYPE | Type [get] |
| Returns the device type for the current instance, see eDEVICE_TYPE More...
|
|
◆ eSTROBE_MODE
Mode definitions for the strobe unit, used with TriggerMode
Enumerator |
---|
SOFTWARE_EDGE | Software triggered
|
SOFTWARE_COPY | Manual ON/OFF by Software.
|
HARDWARE_EDGE | Hardware triggered by edge
|
HARDWARE_COPY | Hardware triggered by level.
|
◆ eSTROBE_OUTPUT_TYPE
Type definitions for setting the output channel of the Strobe unit, used with OutputType
Enumerator |
---|
OFF | The LED voltage is disconnected.
|
DEFAULT | Sets the default value.
|
EXTERNAL | External connectors are used (default)
|
INTERNAL | The internal ring light is used (only valid for the VisionCam XM)
|
◆ eSTROBE_SOURCE
Trigger source definitions for the strobe unit, used with TriggerSource
- Note
- The VisionBox AGE-X1 doesn't have a Multiplexer and therefore uses different source signals than new hardware generations.
Enumerator |
---|
MUX_OUT0 | Multiplexer Output 0.
|
MUX_OUT1 | Multiplexer Output 1.
|
MUX_OUT2 | Multiplexer Output 2.
|
MUX_OUT3 | Multiplexer Output 3.
|
MUX_OUT4 | Multiplexer Output 4.
|
MUX_OUT5 | Multiplexer Output 5.
|
MUX_OUT6 | Multiplexer Output 6.
|
MUX_OUT7 | Multiplexer Output 7.
|
MUX_OUT8 | Multiplexer Output 8.
|
MUX_OUT9 | Multiplexer Output 9.
|
MUX_OUT10 | Multiplexer Output 10.
|
MUX_OUT11 | Multiplexer Output 11.
|
MUX_OUT12 | Multiplexer Output 12.
|
MUX_OUT13 | Multiplexer Output 13.
|
MUX_OUT14 | Multiplexer Output 14.
|
MUX_OUT15 | Multiplexer Output 15.
|
MUX_OUT16 | Multiplexer Output 16.
|
MUX_OUT17 | Multiplexer Output 17.
|
MUX_OUT18 | Multiplexer Output 18.
|
MUX_OUT19 | Multiplexer Output 19.
|
MUX_OUT20 | Multiplexer Output 20.
|
MUX_OUT21 | Multiplexer Output 21.
|
MUX_OUT22 | Multiplexer Output 22.
|
MUX_OUT23 | Multiplexer Output 23
|
DIG_IN0 | DigitalInput 0 (VisionBox AGE-X1 only)
|
DIG_IN1 | DigitalInput 1 (VisionBox AGE-X1 only)
|
DIG_IN2 | DigitalInput 2 (VisionBox AGE-X1 only)
|
DIG_IN3 | DigitalInput 3 (VisionBox AGE-X1 only)
|
DIG_IN4 | DigitalInput 4 (VisionBox AGE-X1 only)
|
DIG_IN5 | DigitalInput 5 (VisionBox AGE-X1 only)
|
DIG_IN6 | DigitalInput 6 (VisionBox AGE-X1 only)
|
DIG_IN7 | DigitalInput 7 (VisionBox AGE-X1 only)
|
RS422_IN0 | RS422 input 0 (VisionBox AGE-X1 only)
|
RS422_IN1 | RS422 input 1 (VisionBox AGE-X1 only)
|
RS422_IN2 | RS422 input 2 (VisionBox AGE-X1 only)
|
TRIGGEN_OUT0 | TriggerGenerator output 0 (VisionBox AGE-X1 only)
|
TRIGGEN_OUT1 | TriggerGenerator output 1 (VisionBox AGE-X1 only)
|
TRIGGEN_OUT2 | TriggerGenerator output 2 (VisionBox AGE-X1 only)
|
TRIGGEN_OUT3 | TriggerGenerator output 3 (VisionBox AGE-X1 only)
|
◆ Strobe()
VIB_NET::Strobe::Strobe |
( |
| ) |
|
Default constructor for the device object
The device must be opened with Open() before it can be used.
◆ Calibrate()
String VIB_NET::Strobe::Calibrate |
( |
| ) |
|
Calibrates the strobe unit
Calibration of the strobe unit is normally not required because the hardware is delivered calibrated.
Connect a zero Ohm bridge between the LED+ and LED- terminals before calling this function.
After success, the calibration values are stored permanently.
- Returns
- Text containing the calibration result data
◆ Init()
void VIB_NET::Strobe::Init |
( |
Boolean |
ResetParameter | ) |
|
Initializes the Strobe unit.
- Parameters
-
ResetParameter | Reset the settings during initialization |
- Note
- The parameter is internally always forced to true!
- Example:
- C#: Strobe_Example.cs
Visual Basic: Strobe_Example.vb
◆ SetFixedCurrent()
Int32 VIB_NET::Strobe::SetFixedCurrent |
( |
Int32 |
SupplyVoltage, |
|
|
Int32 |
LoadVoltage, |
|
|
UInt32 |
MaxOnTime, |
|
|
UInt32 |
MinOffTime, |
|
|
UInt32 |
Current |
|
) |
| |
Sets a fixed operating point for the strobe output.
This function can be used as an alternative to SetLimits() and Current(). It allows for higher output power, if the difference between SupplyVoltage
and LoadVoltage
is small.
The output current will be set to the specified value and this function returns the calculated minimum OFF-time. The current can't be changed with Current() after calling this function. But Current() can still be used with the same current value in order to validate the actual current.
Background: SetLimits() assumes a resistive load characteristic, which can lead to higher internal power losses at lower currents. Because the current can be decreased by the user, SetLimits() will calculate the limits based on the worst-case current.
- Parameters
-
SupplyVoltage | Supply voltage used for the strobe output:
Value | Effect |
12...30 | The actual power supply voltage used. |
|
LoadVoltage | The voltage across the load when the output current is equal to Current |
MaxOnTime | Maximum allowed ON-time in µs (max. ~ 4 s; set MinOffTime to 0 to allow steady ON state) |
MinOffTime | Minimum allowed OFF-time in µs (max. ~ 4 s) |
Current | Output current in mA |
- Returns
- >= 0: Minimum allowed OFF-time (µs)
< 0: Error
- Warning
- In the case of wrong parameters the hardware can be damaged or destroyed!
◆ SetLimits()
Int32 VIB_NET::Strobe::SetLimits |
( |
Int32 |
LimitCurrent, |
|
|
Int32 |
MaxSupplyVoltage, |
|
|
Int32 |
MaxLoadVoltage, |
|
|
UInt32 |
MaxOnTime, |
|
|
UInt32 |
MinOffTime, |
|
|
UInt32 |
MaxCurrent |
|
) |
| |
Calculates the minimum permitted OFF-time or the maximum permitted current.
The operating parameters for the strobe output can be limited by the strobe unit or by the lighting hardware connected to the output. This function is be used to calculate and limit these parameters.
The MaxOnTime
, MinOffTime
and MaxCurrent
parameters should first be chosen by the user in a way, that the limits of the lighting unit are not exceeded.
Based on these parameters, this function ensures that the limits of the strobe unit are not exceeded. The parameter LimitCurrent
controls whether the minimum OFF-time or the maximum current will be reduced.
If the strobe active time exceeds the maximum ON-time, the output will be turned off by the FPGA, until the inactive time reaches the minimum OFF-time.
- Parameters
-
LimitCurrent | 0: Calculate the minimum allowed OFF-time
1: Calculate the maximum allowed current |
MaxSupplyVoltage | Supply voltage used for the strobe output:
Value | Effect |
12...30 | The actual power supply voltage used. |
-1 | The worst case supply voltage is assumed to calculate the limits (30 V). |
0 | Invalid. |
|
MaxLoadVoltage | The voltage across the load when the output current is equal to MaxCurrent (set to -1 to use worst-case value) |
MaxOnTime | Maximum allowed ON-time in µs (max. ~ 4 s; set MinOffTime to 0 to allow steady ON state) |
MinOffTime | Minimum allowed OFF-time in µs (max. ~ 4 s) |
MaxCurrent | Maximum allowed output current in mA |
- Returns
LimitCurrent = 0
: New minimum allowed OFF-time (µs)
LimitCurrent = 1
: New maximum allowed current (mA)
- Warning
- In the case of wrong parameters the hardware can be damaged or destroyed!
- Example:
- C#: Strobe_Example.cs
Visual Basic: Strobe_Example.vb
◆ Current
Current value of the strobe output.
For Validation of the strobe current use Strobe.Validate
= true before you set the new strobe current.
If the Strobe.Validate
parameter is set to 0, the characteristics value of the analog strobe circuit stored within an EEPROM is used without validation.
The Strobe.Validate
parameter can be set to 1 in order to measure and adjust the current. The deviation of the desired current can be minimized in this mode. If the deviation is too high, this function will return with an error. The strobe output is activated multiple times for 200 µs at the given current when calling this function. Please note that the Max. ON-time parameter must be 200 µs or more in this mode.
◆ MaxCurrent
VIB_NET::Strobe::MaxCurrent |
|
get |
◆ MaxOnTime
VIB_NET::Strobe::MaxOnTime |
|
get |
◆ MinOffTime
VIB_NET::Strobe::MinOffTime |
|
get |
◆ OnTime
◆ OutputType
VIB_NET::Strobe::OutputType |
|
getset |
Selects the output channel for the Strobe unit.
This function is primarily used by the VisionCam XM which can provide the LED current to the supply and I/O connector, or to the internal ring light (default).
- Parameters
-
- Returns
- Used OutputType
◆ SwTrigger
VIB_NET::Strobe::SwTrigger |
|
set |
Sets the trigger signal for software triggered and manual software mode.
true activates the strobe output, false deactivates the strobe output (only used in manual software mode)
- Example:
- C#: Strobe_Example.cs
Visual Basic: Strobe_Example.vb
◆ Temperature
VIB_NET::Strobe::Temperature |
|
get |
Reads temperature of the FlashBox Strobe unit.
◆ TriggerDelay
VIB_NET::Strobe::TriggerDelay |
|
getset |
Trigger delay.
The trigger delay is only used in software triggered and edged triggered hardware mode.
- Parameters
-
TriggerDelay | Delay in µs (max. ~4.s) |
- Returns
- Trigger delay in µs
- Example:
- C#: Strobe_Example.cs
Visual Basic: Strobe_Example.vb
◆ TriggerMode
VIB_NET::Strobe::TriggerMode |
|
getset |
Contains the trigger mode.
The strobe output can be used in four different modes:
- Software triggered (eSTROBE_MODE::SOFTWARE_EDGE):
The strobe output is activated by setting SwTrigger = true. The output will be reset after the ON-time has expired.
- Manual Software (eSTROBE_MODE::SOFTWARE_COPY):
The strobe output is set to ON/OFF by setting SwTrigger = true / SwTrigger = false. If the minimum OFF-time is greater than 0, the mode will be set to software triggered instead.
- Hardware by edge (eSTROBE_MODE::HARDWARE_EDGE):
The strobe output is activated on rising (non-inverted) or falling (inverted) edge of the external trigger input. Polarity can be changed with TriggerSource. The strobe output will be reset after the ON-time has expired.
- Hardware by level (eSTROBE_MODE::HARDWARE_COPY):
The strobe output is activated by the level of the external trigger input. If the minimum OFF-time is greater than 0, the trigger mode will be set to hardware by edge instead. - Example:
- C#: Strobe_Example.cs
Visual Basic: Strobe_Example.vb
◆ TriggerSource
VIB_NET::Strobe::TriggerSource |
|
getset |
◆ TriggerSourceInvert
VIB_NET::Strobe::TriggerSourceInvert |
|
getset |
◆ Type
Returns the device type for the current instance, see eDEVICE_TYPE
◆ Validate
VIB_NET::Strobe::Validate |
|
getset |
◆ Voltage