MPIAction

MPIAction

 

typedef enum {
    MPIActionINVALID,

    MPIActionNONE,
    MPIActionSTOP,
    MPIActionE_STOP,
    MPIActionE_STOP_ABORT,
    MPIActionABORT,

    MPIActionDONE,
    MPIActionSTART,
    MPIActionRESUME,
    MPIActionRESET,
} MPIAction;
Description
  MPIActionNONE Performs no action. Use with MPIMotorEventConfig to prevent a motor event from performing an action.
  MPIActionSTOP Makes a motion supervisor perform a stop. This action can be commanded with mpiMotionAction(.) or by a motor event on the controller. Please see MPIMotionDecelTime for more information about stop actions.
  MPIActionE_STOP Makes a motion supervisor perform an e-stop. This action can be commanded with mpiMotionAction(.) or by a motor event on the controller. Please see MPIMotionDecelTime for more information about e-stop actions.
  MPIActionE_STOP_ABORT Makes a motion supervisor perform an e-stop and then an abort. This action can be commanded with mpiMotionAction(.) or by a motor event on the controller. Please see MPIMotionDecelTime for more information about e-stop actions.
  MPIActionABORT Makes a motion supervisor perform an abort. This action can be commanded with mpiMotionAction(.) or by a motor event on the controller.
  MPIActionDONE is currently not supported and is reserved for future use.
  MPIActionSTART Intended to force a motion supervisor to start when it is waiting for some event (a delay or hold) before starting. This action is currently not supported.
  MPIActionRESUME Makes a motion supervisor to resume motion after a stop action has occurred. A motion supervisor can only resume a motion after a stop event, not an e-stop event. This action can be commanded with mpiMotionAction(.).
  MPIActionRESET Makes a motion supervisor return to an idle state after an error has occurred or after a stop, e-stop, abort, or e-stop/abort action has occurred. While abort actions and certain errors cause all associated motors to turn off their amp-enable lines, this action does not change the state of any amp-enable lines. One will have to call the method mpiMotorAmpEnableSet(.) to re-enable the amplifiers. This action can be commanded with mpiMotionAction(.).
     
Remarks
  MPIAction enumerations are used to perform some sort of action on an MPI object. Currently, only MPIMotion and MPIMotor use the MPIAction enumerations. One can command an MPIMotion object to perform some action with the mpiMotionAction(.) method, while one can get and set the types of actions that will be performed when certain motor events occur with the MPIMotorEventConfig structure with the mpiMotorEventConfigGet(.) and mpiMotorEventConfigSet(.) methods.

An MPIAction can be generated from the host or the firmware. Below is a table where MPIActions originate (start):

MPIAction Originating from Host Originating from
XMP Firmware
Start
Resume
Reset
Stop
mpiMotionAction(.) (currently unsupported)
mpiMotionAction(.)
mpiMotionAction(.)
mpiMotionAction(.)
NEVER
NEVER
NEVER
Event
E_Stop
ABORT
mpiMotionAction(.)
mpiMotionAction(.)
Event
Event
DONE NEVER NEVER
   
See Also mpiMotionAction | MPIMotionDecelTime | MPIMotorEventConfig
mpiMotorEventConfigGet | mpiMotorEventConfigSet | MPIEvent