Motion Objects

Introduction  

 

A Motion object manages a single axis or group of axes. Its primary function is to provide an interface to command movement on a coordinate system. It also provides status information about all the axes under its control, so motion can be either stopped or resumed in a controlled manner, especially in the event of error recovery. The Motion object is really a host-based object, with a corresponding Motion Supervisor object in the controller. The Motion Supervisor handles the real-time issues associated with axis data and status synchronization.

Some careful consideration should be given to Motion object (Motion Supervisor) to axis mapping. While it's possible to have multiple Motion objects share the same axes, only one Motion Supervisor can command motion to an axis at a time. Motion object to axis maps can be changed dynamically at any time, but Motion Supervisor to axis maps should NOT be changed when the axes are moving.

To learn more about using MPI Motion Attributes and MEI Motion Attributes, click here.

Methods
Create, Delete, Validate Methods
  mpiMotionCreate Create Motion object
  mpiMotionDelete Delete Motion object
  mpiMotionValidate Validate Motion object
     
Configuration and Information Methods
  mpiMotionConfigGet Get Motion configuration
  mpiMotionConfigSet Set Motion configuration
  mpiMotionFlashConfigGet Get Motion flash config
  mpiMotionFlashConfigSet Set Motion flash config
  mpiMotionParamsGet Get Motion parameters
  mpiMotionParamsSet Set Motion parameters
  meiMotionParamsValidate Validate Motion parameters
  mpiMotionPositionGet Get position parameters of all axes associated with Motion
  mpiMotionPositionSet Set position parameters of all axes associated with Motion
  mpiMotionStatus Get Motion status
  mpiMotionTrajectory Get trajectories for all Axis associated with Motion
     
Event Methods
  mpiMotionEventNotifyGet Get event mask
  mpiMotionEventNotifySet Set event mask
  mpiMotionEventReset Reset events specified in event mask
     
Action Methods
  mpiMotionAction Perform an action on a Motion
  mpiMotionModify Modify parameters of Motion while it is executing
  mpiMotionStart Start Motion (idle state > moving state)
     
Memory Methods
  mpiMotionMemory Set address to be used to access Motion memory
  mpiMotionMemoryGet Get bytes of Motion memory and place it into application memory
  mpiMotionMemorySet Put (set) bytes of application memory into Motion memory
     
Relational Methods
  mpiMotionControl Return handle of Control object associated with Motion
  mpiMotionNumber Get index of Motion
  mpiMotionAxis Return handle of axis by index number
  mpiMotionAxisAppend Append axis to list
  mpiMotionAxisCount Return number of axes in list
  mpiMotionAxisFirst Return handle to first axis in list
  mpiMotionAxisIndex Return index value of an axis in list
  mpiMotionAxisInsert Insert axis into list associated with Motion
  mpiMotionAxisLast Return handle to last axis in list
  mpiMotionAxisListGet Get list of axes associated with Motion
  mpiMotionAxisListSet Create a list of axes associated with Motion
  mpiMotionAxisNext Get handle to next axis in list
  mpiMotionAxisPrevious Get handle to previous axis in list
  mpiMotionAxisRemove Remove handle to axis in list
     

Data Types
  MPIMotionAttr / MEIMotionAttr  
  MEIMotionAttrHold  
  MEIMotionAttrHoldSource  
  MEIMotionAttrHoldType  
  MPIMotionAttrMask / MEIMotionAttrMask  
  MEIMotionAttrOutput  
  MEIMotionAttrOutputType  
  MPIMotionAttributes / MEIMotionAttributes  
  MPIMotionBESSEL  
  MPIMotionBSPLINE  
  MPIMotionConfig / MEIMotionConfig  
  MPIMotionDecelTime  
  MEIMotionFrame  
  MEIMotionFrameBufferStatus  
  MPIMotionMessage / MEIMotionMessage  
  MPIMotionParams / MEIMotionParams  
  MPIMotionPoint  
  MPIMotionPT  
  MPIMotionPVT  
  MPIMotionSCurve  
  MPIMotionSCurveJerk  
  MPIMotionSPLINE  
  MEIMotionTrace  
  MPIMotionTrapezoidal  
  MPIMotionType / MEIMotionType  
  MPIMotionVelocity  
     

Macros
  mpiMotionATTR  
  mpiMotionAttrMaskBIT  
  mpiMotionTYPE