RTC
®
5 PC Interface Board
Rev. 1.9 e
7 Basic Functions for Scan Head and Laser Control
144
During initialization of the RTC
®
5 (with
load_program_file), the scaling function
Scale(Position)
= 1.0
will be loaded for the full
position range, with the effect that no position-
dependent correction will be executed.
Notes on Loading and Determining Nonlinearity
Curves
The command load_auto_laser_control loads a
table for the nonlinearity curve Scale(Percent) from
an ASCII text file. The text file can contain one or more
tables.
Each table can contain up to 50 data points
(Percent Scale(Percent)) for various percent values.
The RTC
®
5 determines the nonlinearity curve
Scale(Percent) from this data by linear interpolation.
For the table, the following rules apply:
• Each table must start with the instruction
(Caption)
[
AutoLaserCtrlTable
<No>]
where
<No>
must be replaced by a nonnegative
integer which denotes the table number.
• If the table contains multiple
[AutoLaserCtrlTable<No>]
entries with the same
<No>
, then only the instructions after the first
entry will be used; instructions that follow further
entries will be ignored. Only instructions up to the
next ’[’ character (that is not preceded by a
semicolon) are used.
• Each data point (Percent | Scale(Percent)) is
described by two instructions:
Percent<n> = <Value>
Scale<n> = <Value>
where
<n>
must be replaced by an integer
(1
<n>
50) which denotes the number of the
data point. The values
<Value>
can be specified as
(unsigned) floating point numbers. Use the
period
(.)
as the decimal separator.
• If the table contains multiple data points with the
same Index
<n>
, then the most recently read one
will be used and the previous ones ignored.
• If the table contains multiple data points with the
same percent value Percent, then the data point
with the largest Index
<n>
will be used and the
others ignored. Equality is checked to within
±0.01°.
• The percent value refers to the 100% value (that
can additionally be further changed through
vector-defined laser control, see page 147) set via
set_auto_laser_control (
Value
parameter).
In the following example, a nonlinearity factor of
1.2 is set for a 1.5x multiple of the 100% value:
Percent<n> = 150
Scale<n> = 1.2
•For
<Value>
, the following ranges apply
0.0 Percent 400.0 and
0.0 Scale(Percent) 4.0.
• Each instruction must be in a separate line.
• Spaces and tabs in a line (e.g. between ’
=
’ and
<Value>
) are ignored.
• Empty lines are ignored.
• Data points with invalid values are ignored.
• The data point of a particular index
<n>
is ignored
if the corresponding
Percent<n>
and/or
Scale<n>
definition is missing.
• The semicolon ’;’ can be used for comments. All
characters in a line following a semicolon are
ignored.
• The instructions for data points in the table can
be ordered as desired.
• Indices for data point pairs in the table can be
selected as desired within the range [1…50] (the
table will then be automatically sorted by
ascending percent values).
• If the table contains no valid data point, then the
command load_auto_laser_control will have no
effect (return value 1 or 13).
• If there is no entry for Percent = 0.0, then an
entry with
Scale
=Min(
Scale<i>
) will be
inserted (the smallest allowed value defined in
the table will be used for lower percent values).
Likewise for Percent = 400.0 with
Max(
Scale<i>
).
During initialization of the RTC
®
5 (with
load_program_file), the function
Scale(Percent)
= 1.0
will be loaded for the full
percent range (no nonlinearity). Alternatively, this
can also be achieved with
Name
=0 in
load_auto_laser_control.