MLAxisStop
Description
Stop with the specified deceleration.
After stopping the drive, you need to restart the motion by realigning the actual position with the reference position.
The purpose of the MLAxisStop Command is not to remove the input source, but to stop the drive from continuing to move.
When the stop occurs, the master keeps moving and the axis starts ignoring the Pipe Position value and begins a controlled stop based on the input parameters. Also at that point, any Axis Block level profile (issued from FB like MLAxisAbs, MLAxisRel...) are aborted. When the stop is complete, it is up to the application to decide how to move the axis, master, or both to a position where they can be realigned, and the master restarted (see more details about the Restarting Motion here).
The realign function is used to move the axis to a restart position in order to enable synchronized machine motion to start again. Once the realign function is successfully completed, the Pipe Position is again summed with the Generator Position to create the Reference Position. See more details here.
-
-
This function or function block returns cached data. See Programming a Dual Core Controller for more information.
Arguments
Input
ID |
Description |
ID Name of the Axis block. |
Data type |
DINT |
|
Range |
— |
|
Unit |
N/A |
|
Default |
— |
|
Start |
Description |
|
Data type |
BOOL |
|
Range |
0, 1 |
|
Unit |
N/A |
|
Default |
— |
|
Deceleration |
Description |
|
Data type |
LREAL |
|
Range |
— |
|
Unit |
User unit/sec2 |
|
Default |
— |
Output
Default (.Q) |
Description |
Comes true when the Axis is completely stopped. See more details here. |
Data type |
BOOL |
|
Unit |
N/A |
|
PipePos |
Description |
Corresponds to the Pipe Position input to the axis at the time the stop is triggered. |
Data type |
LREAL |
|
Unit |
User unit |
|
GenPos |
Description |
Corresponds to the Generator Position input to the axis at the time the stop is triggered. |
Data type |
LREAL |
|
Unit |
User unit |
|
RealignPos |
Description |
Realign Position is the Reference Position at which the stop is triggered. The Realign Position is obtained by converting the last value sent to the drive from drive interface units into user units. |
Data type |
LREAL |
|
Unit |
User unit |
|
StopPos |
Description |
Corresponds to the last Reference Position sent to the drive at the time when the Axis is completely stopped (see State Machine here). It is functionally different than the Actual Position because that position is the drive position converted to user units. The correct delta for the realign move to get in sync with the trajectory in order to realign the slave to the master is the current Reference Position minus the Stop Position for the realign move. After stopping, if the axis is disabled and the motor position is manually altered, this distance must be taken into account when performing the realign. |
Data type |
LREAL |
|
Unit |
User unit |
Related Functions
Example
Structured Text
Inst_MLAxisStop(PipeNetwork.AXIS1, bStop, 200000);
If Inst_MLAxisStop.Done Then
Axis1_PipePosition := Inst_MLAxisStop.PipePos;
Axis1_GeneratorPosition := Inst_MLAxisStop.GenPos;
Axis1_RealignPosition := Inst_MLAxisStop.RealignPos;
Axis1_StopPosition := Inst_MLAxisStop.StopPos;
End_if;
Ladder Diagram
Function Block Diagram