Open Core Interface - MLPI
MLPI-MotionLogicProgrammingInterface(mlpi4LabVIEW)  1.26.2
MotionLib
Collaboration diagram for MotionLib:

Modules

 Motion Configuration
 
 Movement Functions
 
 Version and Permission
 
 Structs, Types, ...
 

Detailed Description

This motion library provides functionality for defining an axis, commanding motion and getting axis information.

Note
There are numerous getter and setter for accessing axis properties like position, velocity ... . All these functions using parameter accesses to read and write values. This can take some time as this parameter accesses are concurrent with other parameter accesses of parts of the system (IndraWorks, HMI ...). In this case a short access resp. real time access cannot be guaranteed. For a fast real time access you have to use a container with parts of the global PLC variable AxisData of the regarding axes. This variable is part of the GVL "GVL_Base" of the library "BASELIB".
For more information about the contents and format of the global PLC variable AxisData, type "ML_AXIS_DATA_SM" please consult the IndraWorks help.

The conceptual difference between a drive or device and an axis is that a drive or device is the physical device that is connected to the sercos bus and can be configured via S and P parameters. An axis is assigned to a drive or device and is accessible through A parameters. Multiple axes can be assigned to a drive or device (for example, one axis is a real axis that is moving the drive, a second axis is connected to the same drive, but implements an encoder axis).

Note
You find a more detailed description of the concept of axis in the IndraWorks help system of the XLC/MLC product.

The following functions all deal with the motion of an axis. In general, "axis" is used to address an axis. The motion commands can be divided roughly in single axis commands, where a single axis is moved, synchronous commands, where axes are moved in relation to master and utility functions like power or homing of an axis. Each motion command usually uses a structure to pass on the information about a particular move. The command will be executed in the control and returns a handle. This handle must be used in future requests for getting status information. The handle and the axis reference a particular motion command. One axis can have multiple active commands (for example, power is one and a move is commanded). On the contrary, a currently executed move will be interrupted as soon as a new move is commanded.

Note
There are different axis types and an axis can be linked to different drive types. Thus, not every command is supported by each different axis. If a command returns an error, then please check if you are operating with the expected axis type. Check the drive or control documentation for additional information about the motion system.
The MotionLib functions trace their debug information mainly into the module MLPI_MOTION_LIB and in addition into the modules MCI_ADMIN* and MLPI_BASE_MODULES. For further information, see also the detailed description of the library TraceLib and the notes about Using the Trace for debugging.