.

MPIMotorEventConfig / MEIMotorEventConfig

Definition: MPIMotorEventConfig

 
typedef struct MPIMotorEventConfig {
    MPIAction             action;
    MPIMotorEventTrigger  trigger;
    MPI_BOOL              direction;  
    float                 duration;   /* seconds */
} MPIMotorEventConfig;
  Change History: Modified in the 03.03.00

Description

MPIMotorEventConfig is a structure used to configure Motor Events.

 
action

The action to be taken on the associated axis when the event is triggered (when the event status changes from FALSE to TRUE).

trigger

The trigger configuration for an event.

direction

Only used for Hardware and Software limits.  Setting direction to TRUE requires the direction of motion to be in direction of the Limit to trigger the event.  If direction is set to FALSE, a limit event can be generated regardless of the direction of motion.

duration

time that Limit (e.g. Home, Pos. and Neg. Limits, User Limit) must be asserted before Event is generated. Value in seconds.

NOTE: The duration parameter for the home limit should be zero for standard configurations. A non-zero value will result in the home limit being missed.

 

Definition: MEIMotorEventConfig

 
typedef MEIXmpLimitData	MEIMotorEventConfig;

typedef struct {
    MEIXmpLimitCondition    Condition[MEIXmpLimitConditions];
    MEIXmpStatus            Status;
    MEIXmpLogic             Logic;
    MEIXmpLimitOutput       Output;
    long                    Count;
    long                    State;
} MEIXmpLimitData;

Description

MEIMotorEventConfig is an enumeration of encoder feedback inputs for a motor.

 
condition is a structure that configures the conditional statements evaluated to generate a Limit Event. Each limit may have up to two conditions (MEIXmpLimitConditions = 2). This structure is described in further detail on the User Limits page.
status an enum that defines what actions the XMP will take when a user limit evaluates TRUE. Always set Status to at least MEIXmpStatusLIMIT to notify the motor object that a limit has occurred. Valid Status values are listed in the Values of Status table below.
logic an enum that sets the logic applied between the two condition block outputs, Condition[0] and Condition[1]. Valid Logic values are listed in the Values of Logic table below.
output is a structure that allows specific action to be taken when the Limit Event is generated. In addition to generating a Motion Action, a Limit can write to any other valid XMP Firmware register defined in the *OutputPtr with value described by AndMask and OrMask. This structure is described in further detail on the User Limits page.
count For internal use only. The MPI method, mpiMotorEventConfigSet(...) will not write these values.
state For internal use only. The MPI method, mpiMotorEventConfigSet(...) will not write these values.

 

Values of Status Action to be taken
MEIXmpStatusLIMIT None
MEIXmpStatusLIMIT | MEIXmpStatusPAUSE Axes attached to the motor will be Paused
MEIXmpStatusLIMIT | MEIXmpStatusSTOP Axes attached to the motor will be Stopped
MEIXmpStatusLIMIT | MEIXmpStatusABORT Axes attached to the motor will be Aborted
MEIXmpStatusLIMIT | MEIXmpStatusESTOP Axes attached to the motor will be E-Stopped
MEIXmpStatusLIMIT | MEIXmpStatusESTOP_ABORT Axes attached to the motor will be E-Stopped and Aborted

 

Values of Logic Evaluates Motor object notified that a limit has occurred if...
MEIXmpLogicNEVER Nothing No event is generated
MEIXmpLogicSINGLE Condition[0] Condition[0] = = TRUE
MEIXmpLogicOR Condition[0], Condition[1] (Condition[0] || Condition[1]) = = TRUE
MEIXmpLogicAND Condition[0], Condition[1] (Condition[0] && Condition[1]) = = TRUE
other MEIXmpLogic enums For internal use only.  

See Also

MPIMotorEventConfig and Motor Limit Configuration
Error Limit and Limit Switch Errors
User Limits

mpiMotorEventConfigGet | mpiMotorEventConfigSet | MPIEncoderFault

 

       Legal Notice  |  Tech Email  |  Feedback
      
Copyright ©
2001-2021 Motion Engineering