English
Language : 

AMIS-30624_13 Datasheet, PDF (17/52 Pages) ON Semiconductor – I2C Micro-stepping Motor Driver
AMIS−30624, NCV70624
Dual Positioning
A SetDualPosition command allows the user to
perform a positioning using two different velocities. The first
motion is done with the specified Vmin and Vmax velocities
in the SetDualPosition command, with the acceleration
(deceleration) parameter already in RAM, to a position
Pos1[15:0] also specified in SetDualPosition.
Then a second relative motion to a physical position
Pos1[15:0] + Pos2[15:0] is done at the specified
Vmin velocity in the SetDualPosition command (no
acceleration). Once the second motion is achieved, the
ActPos register is reset to zero, whereas TagPos register
is not changed.
When the Secure position is enabled, after the dual
positioning, the secure positioning is executed. The figure
below gives a detailed overview of the dual positioning
function. After the dual positioning is executed an internal
flag is set to indicate the AMIS−30624/NCV70624 is
referenced.
Profile:
Vmax
When Stall Detection is enabled, this
movement is stopped when a stall is
detected.
A new motion will
start only after
Tstab
Vmin
first movement
Tstab
second
movement
Tstab
Secure
positioning
(if enabled)
0
00
Motion status:
0
00
0
00
0
During one Vmin time the
ActPos is 0
5 steps
xx
Position:
01
40
01
50
Assume:
Pos: xx
First Position = 300
Second Position = 5
Secure Position = 50
ActPos: 300 ActPos: 0
ActPos: 0
ResetPos
ResetPos
Figure 8. Dual Positioning
ActPos: 50
Remark: This operation cannot be interrupted or influenced by any further command unless the occurrence of the conditions
driving to a motor shutdown or by a HardStop command. Sending a SetDualPosition command while a motion is
already ongoing is not recommended.
24. The priority encoder is describing the management of states and commands.
25. A DualPosition sequence starts by setting TagPos buffer register to SecPos value, provided secure position is enabled otherwise TagPos
is reset to zero. If a SetPosition(Short) command is issued during a DualPosition sequence, it will be kept in the position buffer memory and
executed afterwards. This applies also for the command GotoSecurePosition.
26. Commands such as GetFullStatus1 or GetFullStatus2 will be executed while a Dual Positioning is running.
27. The Pos1, Pos2, Vmax and Vmin values programmed in a SetDualPosition command apply only for this sequence. All other motion
parameters are used from the RAM registers (programmed for instance by a former SetMotorParam command). After the DualPosition
motion is completed, the former Vmin and Vmax become active again.
28. Commands ResetPosition, SetDualPosition, and SoftStop will be ignored while a DualPosition sequence is ongoing, and will not be executed
afterwards.
29. Recommendation: a SetMotorParam command should not be sent during a SetDualPosition sequence: all the motion parameters
defined in the command, except Vmin and Vmax, become active immediately.
Position Periodicity
Depending on the stepping mode the position can range
from −4096 to +4095 in half−step to −32768 to +32767 in
1/16th micro−stepping mode. One can project all these
positions lying on a circle. When executing the command
SetPosition, the position controller will set the
movement direction in such a way that the traveled distance
is minimal.
The figure below illustrates that the moving direction
going from ActPos = +30000 to TagPos = –30000 is
clockwise.
If a counter clockwise motion is required in this example,
several consecutive SetPosition commands can be
used. One could also use for larger movements the command
RunVelocity.
http://onsemi.com
17