EasyManua.ls Logo

Scanlab RTC6 PCIe Board - Reference Runs and Position Initialization; Set-Position Movements

Scanlab RTC6 PCIe Board
1004 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
RTC6 boards
Doc. Rev. 1.0.21 en-US
9 Programming Peripheral Interfaces
285
innovators for industry
Reference Runs and Position Initialization
With stepper_init, you can initiate reference runs to
limit switches. Here, the desired direction can be
specified by the
Dir
parameter. To ensure that,
despite mechanical play or long signal transit times,
the reached end position still does not lie beyond the
limit switch, you can define a tolerance value
Tol
that
moves the stepper motor in the opposite direction
after reaching the limit switch.
SCANLAB recommends executing a (fast)
reference run with a short CLOCK pulse period
Period
first and then a further (shorter but slower)
reference run with a longer CLOCK pulse period.
Once the reference run has been successfully
completed, the position variable (for the current
position) is set to the value defined by parameter
Pos
as the reference for subsequent set-position
movements. The reached reference position is offset
from the limit switch position by ±
Tol
(direction
dependent).
During reference run, the status is “Init” (Bit #5 = 1),
see Section ”Querying Signals and Status Values”,
page 286. The limit switch position is traversed 4
times and a mean limit switch position is calculated
from this. Then the stepper motor moves away from
the limit switch by
Tol
steps in the opposite direction
to stepper_init
Dir
.
Tol
must be large enough to
overcome a possible hysteresis. During this set-
position movement, see Section ”Set-Position
Movements”, page 285, the status is no longer “Init”
but “Busy” (Bit #4 = 1). If you select
Pos
=
Tol
with
stepper_init, the average position of the limit switch
is 0. The only resulting inaccuracy is the fluctuation of
the limit switch position measurement when the limit
switch position is passed over 4 times.
If
Period
= 0 and/or
Dir
< 0, no reference run is
carried out. Instead, the current stepper motor
position becomes the new reference position (with
the value newly defined in
Pos
as the position
variable).
Because stepper_init always stops a previously
begun stepper motor movement, you could also use
stepper_init as an emergency stop for the stepper
motor.
Parallel execution of reference runs for both stepper
motors is also possible, but cannot be simultaneously
started through a single command.
Set-Position Movements
Set-position movements can be initiated by
stepper_abs, stepper_rel, stepper_abs_no and
stepper_rel_no or the corresponding list commands.
Specify absolute set-position values for _abs
commands and relative values for _rel commands
(always as CLOCK pulse units). _no commands only
produce set-position movements for one stepper
motor output, the other set-position commands do
so for both stepper motor output ports
simultaneously.
With stepper_wait, you can interrupt further
execution of a list until a started stepper motor
movement is completed.
The list commands for set-position movements are
short list commands. Therefore, a stepper motor
movement can also execute synchronously with a
galvanometer scanner movement.
If the limit switch activates during a set-position
movement, then the movement immediately aborts
and cannot be resumed as a normal set-position
movement. You either have to request a
reference run or mechanically or via the software, see
below, deactivate the limit switch. If a stepper motor
movement aborts once (for example, also by
Period
= 0), then the existing set position gets
overwritten by the current position value. Therefore
the stepper motor movement to the original
set position cannot be resumed by eliminating the
cause of interruption (limit switch or CLOCK pulse
period = 0). Instead, it needs to be newly
retriggered.
To work around this behavior, the consideration of
the limit switch can be deactivated by
stepper_disable_swi
tch. Then, the “release” can
occ
ur without carrying-out an initialization
movement once again, even if a limit switch is
present. The deactivation is especially useful, if a
continuously rotating rotary axis is controlled by the
stepper motor. During an initialization movement a
possible deactivation of a limit switch is not
considered.

Table of Contents