Function group ‚lut programming – Kamera Werk Dresden CMOS User Manual

Page 37

Advertising
background image

Manual: CMOS Industrial Camera LOGLUX

i5

Version 1.08 (04/07)



KAMERA WERK DRESDEN GmbH

Page 37 of 46

PARAM_TEMP0
PARAM_TEMP1

Register PARAM_TEMP0 reads the temperature on the sensor board, and
register PARAM_TEMP1 the temperature inside the camera.

Example:

r $908

;reads the sensor temperature

Function group ‚LUT programming‘

This function group is used for programming the three user-specific look-up tables available.

Register

Address

Format

Description

Value range

Meaning

TMFLASH1_WORD_0000
...
TMFLASH1_WORD_03FE

$10000

...

$107FE

1024

words

1st function value of LUT1
...
1024th function value of LUT1

$0000

...

$03FF

Place where function
value y allocated to
greyscale value x is found

TMFLASH1_DESCRIPTION

$10800

256 bytes

Description of LUT1

ASCII character set

TMFLASH1_ERASE_QUADLET

$10820

1 long

Erase sequence for LUT1

$6C656473

TMFLASH2_WORD_0000
...
TMFLASH2_WORD_03FE

$11000

...

$117FE

1024

words

1st function value of LUT2
...
1024th function value of LUT2

$0000

...

$03FF

Place where function
value y allocated to
greyscale value x is found

TMFLASH2_DESCRIPTION

$11800

256 bytes

Description of LUT2

ASCII character set

TMFLASH2_ERASE_QUADLET

$11820

1 long

Erase sequence for LUT2

$6C656473

TMFLASH3_WORD_0000
...
TMFLASH3_WORD_03FE

$12000

...

$127FE

1024

words

1st function value of LUT3
...
1024th function value ofLUT3

$0000

...

$03FF

Place where function
value y allocated to
greyscale value x is found

TMFLASH3_DESCRIPTION

$12800

256 bytes

Description of LUT3

ASCII character set

TMFLASH3_ERASE_QUADLET

$12820

1 long

Erase sequence for LUT3

$6C656473

Table 7 : Registers of function group 'LUT programming

Three register banks ($10000 ... $107FE for LUT1, $11000 ... $117FE for LUT2 and $12000 ...
$127FE for LUT3) are available for three user-specific LUTs. In addition to the function values y
allocated to each of the possible 1024 greyscale values x of the sensor, also a description of the
respective LUT functions is contained in these register banks.
Prior to the word-wise filling of the LUTx with function values, the respective erase sequence must be
entered into register TMFLASHx_ERASE_QUADLET. It is not possible to overwrite individual function
values in a LUT.

Example:

w $10800 $6C656473

;erase sequence for LUT1

w $10000 $03FE

;1st function value LUT1

w $10001 $03FD

;2nd function value LUT1

w $10002 $03FC

;3rd function value LUT1

...
w $107FC $0002

;1022nd function value LUT1

w $107FD $0001

;1023rd function value LUT1

w $107FE $0000

;1024th function value LUT1

The example describes what function values need to be entered in the user-specific LUT1 to generate
an inverted image (provided the missing function values are added in the above-mentioned manner).
Programming aids are recommended to be used for the generation and programming of the function
values. Two such aids are included in the software package for the CMOS industrial camera
LOGLUX

i5 CL. One is a MathCAD

2000 document which permits the function values to be easily

generated and saved in a file by defining the corresponding mathematical functions. The other is a
simple Delphi

6 program allowing the function values generated by the afore-mentioned document

to be programmed into the camera 'in one go'. Should the MathCAD

2000 application not be

available, any other suitable program can be used to generate the function values. In this case, if the
above Delphi 6 program is intended to be used for programming, the function value file should have
the following format:

The separating character for every function value is [CRNL, carriage return + new line]. This

character has the same effect as actuating the ENTER key.

The file must comprise 1024 unsigned integer function values.

The value range must not exceed the limit 2

10

-1 (1023).

The end of the file shall read [file name].LUT.

Advertising