EasyManua.ls Logo

Scanlab RTC6 PCIe Board - Querying Signals and Status Values; Terminating Infinite Movements; Waittime Parameter

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
286
innovators for industry
Querying Signals and Status Values
The current status of stepper motor signals (ENABLE,
DIRECTION, CLOCK and SWITCH), the currently
defined CLOCK pulse period and the current values of
internal position variables for both stepper motors
can be queried by get_stepper_status.
The get_stepper_status command also returns the
Busy and Init statuses of both stepper motors. The
Init status is set during a reference run and the Busy
status during set-position movements.
As long as the Init status is set, no set-position
commands (stepper_abs, stepper_rel, etc.) are
permitted; control commands (except stepper_init)
are denied with a get_error return code of
RTC6_BUSY
and list commands wait until the Init status gets
reset. In some circumstances, the list itself or the
movement process must be aborted.
Terminating Infinite Movements
Depending on chosen parameters, very long or even
infinite stepper motor movements can be initiated by
stepper_init, stepper_abs, for example, if no limit
switch exists in the specified direction or if a very
large set-position value is combined with a long pulse
period.
If an infinite movement is started by a control
command (for example, stepper_abs), then this
control command completes at the latest when
the positive time (in seconds) supplied for the
WaitTime
parameter has expired. However, the
stepper motor’s infinite movement itself
continues and you need to separately abort it by
setting the CLOCK pulse period (for example, by
the control command stepper_control) to 0
(emergency stop) or by defining an appropriate
new set position.
If you start an infinite movement by a
list command (for example, stepper_abs_list)
and wait for its completion by stepper_wait,
then further list execution is blocked as long as
the infinite movement is not aborted by a control
command such as stepper_control with
Period
= 0 or an appropriate new set position.
You could also abort the list by stop_execution
or an external stop. But here, too, the stepper
motor’s infinite movement needs to be separately
stopped with stepper_control(
Period
= 0).
WaitTime Parameter
The
WaitTime
parameter of the control commands can
be used to set them to return to the calling program
after the specified time (in seconds) has elapsed,
regardless of whether the stepper motor movement
is complete or not.
With
WaitTime
= 0, the command returns
immediately. In this case, users must ensure that no
unallowed commands are called. In particular,
initialization should not be canceled before it is
comp
lete. Otherwise, this leads to incorrect reference
positions.

Table of Contents