Danaher Motion
06/2005
Single-Axis Motion
Combining non-zero end-point moves in the motion buffer produces
multi-
step moves
. For example:
Program
Attach A1
Call AxisSetup
Call SercosSetup
Sys.En = On
A1.En = On
Sys.Motion = On
A1.Motion = On
A1.Abs = Off
A1.StartType = Gcom
‘Do Two-step Move
Move A1 100 VCruise = 20 VFinal = 10
Move A1 100 VCruise = 10 VFinal = 0
‘Wait for move to complete and axis to settle out
While A1.IsSettled = 0
Sleep 10
‘Sleep in loop to keep from overloading CPU resources
End While
‘Disable, detach and exit
A1.En = Off
Detach A1
End Program
produces the following profile.
In the above example, A1.STARTTYPE = GCOM. The second move begins
when the first move is generated. You must use STARTTYPE = GCOM
when chaining a non-zero end-point move to another move. You cannot use
STARTTYPE = IMMED or SIMM because the new move immediately
overwrites the old move. You cannot use STARTTYPE = INPOS because
you want the second part of the profile to begin immediately after the first.
The delay from waiting for INPOS adds error if the second move is
incremental. For any move type, the move may be delayed indefinitely
because moving motors never come in position unless the system is
specifically tuned to do that.
You can combine non-zero end point moves to produce profiles with as
many steps as you need. However, there are a few restrictions:
1.
STARTTYPE for all non-zero end-point moves (VELOCITYFINAL<>0)
must be GCOM.
2.
VELOCITYCRUISE
and
VELOCITYFINAL
are always positive. The
direction is set by target position.
M-SS-005-03 Rev
E
95