MLAxisWritePos
Function - Sets a new value to an axis’ current location.
- If a convertor is not connected, zero Pipe Position and Pipe Offset.
- If a convertor is connected (pipe active also), the pipe position and offset are left alone.
- The actual position is then set equal to the target position, and the Zero Offset is adjusted for no motion.
- The Reference position and Generator Positions are then realigned so that the new reference position creates no step in motion.
- The lag between reference position and actual position is absorbed in the generator position.
Inputs
|
Input |
Data Type |
Range |
Unit |
Default |
Description |
|---|---|---|---|---|---|
|
ID |
DINT |
1 to 1024 |
N/A |
No default |
ID of the Axis block. |
|
Position |
LREAL |
No range |
User units |
No default |
The new value for the axis’ current location. |
Outputs
|
Output |
Data Type |
Range |
Unit |
Description |
|---|---|---|---|---|
|
Default (.Q) |
BOOL |
FALSE, TRUE |
N/A |
|
Remarks
- Previous function name: MLAxisSetZero
- After this function is called, the axis’ current location has a value equal to the Position argument.
This data are illustrated here:
Figure 1: Axis Block Positions Diagram
-
-
All positions are in user units with modulo applied if active, unless specified.
|
Position / Offset |
Description |
|---|---|
|
This is the actual position of the underlying axis as reported by the drive.
ActualPos := FeedbackPos + ZeroOffset |
|
|
|
|
This is the summation of all previous commands (i.e., calls to functions which perform motion) to the Axis internal motion generator. See either such as MLAxisAbs, MLAxisMoveVel, or MLAxisRel.
|
|
|
|
|
|
|
This adjusts the coordinate system so the Actual Position reports correct values after homing or using MLAxisWritePos. |
FBD Language Example
FFLD Language Example
IL Language Example
Not available.
ST Language Example
MLAxisWritePos(PipeNetwork.Axis1, 0) ;







