Chapter 8 Reference Manual
Ranger E/D
96 ©SICK AG • Advanced Industrial Sensors • www.sick.com • All rights reserved
iCon API
To solve the overflow problem you can try the following:
Increase the memory buffer for the frame grabber to make the queue larger.
The size of the internal buffer can be changed with the setBufferSize() method.
Increase the camera’s cycle time to make the camera deliver scans at a slower rate.
Call getNextIconBuffer() at a more regular interval.
Increase the priority of the thread and/or process.
Please note that context switching and other operating system activities will interrupt your
process/thread at random intervals, which can cause the memory buffers to overflow if
you do not have enough processing margin to allow for this overhead.
8.2.5 Mark Data
If the camera is configured to deliver mark data with the scans, the mark data is supplied
as a separate sub-component in each component in the data format.
Normal Mark Data
When the camera is configured to deliver normal mark data (the Mark with parameter is
set to 0 or 1), it consists of two values per scan:
Mark value The encoder value or number of scans. (32-bits signed integer, DWORD)
Status Status and error information for a profile (32-bits bitfield):
Flag Bit Description
INVALID 0 Set if data was lost during transmission
– 1-15 Reserved
OVER_TRIG 16-23 Number of overtrigs that have occurred
– 24-26 Reserved
ENCODER_B 27 Set if the signal on In2 on the Encoder
connector is high (Encoder Phase 2)
ENCODER_A 28 Set if the signal on In1 on the Encoder
connector is high (Encoder Phase 1)
– 29 Reserved
ENABLE 30 Set if the signal on In1 on the Power I/O
connector is high (Enable)
– 31 Reserved
Extended Mark Data
When the camera is configured to deliver extended mark data (the Mark with parameter is
set to 2 or 3), it consists of five values per scan:
Mark value The encoder value. This value is increased and decreased depending on
the setting of the Trig mode parameter. (32-bits signed integer, DWORD)
Status Status and error information for a profile. Same as for normal mark data.
(32-bits bitfield)
Sample time Time stamp for the current profile acquisition. This is ≥ tick time. 32-bits
unsigned integer. Initial value is undefined.
Tick time Time stamp for the most recent encoder tick. 32-bits unsigned integer.
Scan ID Sequence number of scan. Reset at enable or start measure.
The time base for the clock used for the ticks is 33 MHz, which gives around 2 minutes of
counting before wrap around.