.

Move Metrics

Definition

 
typedef struct {
    float   MoveTime;
    float   ElapsedTime;
    long    FinalTime;
    long    Overshoot;
    long    Direction;
    long    Delay;
    long    DelayCount;
} MEIXMPMetrics;

Description

The axis metrics contain data about the current executing move.

The overshoot is monitored from the end of commanded motion until the start of the next move's commanded motion or until DelayCount has reached Delay, whichever comes first.

These values are changed cyclically. Be sure to read them at an appropriate time.

Please check Controller Firmware to verify whether or not your firmware supports this feature.

 
MoveTime (float) The time the motion will take in servo samples.
ElapsedTime (float) The time elapsed since the motion started (in servo samples).
FinalTime (long)
     0 - while the commanded motion is taking place.
     0 - during the delay preceding a motion (if one is used).
     1 - during the settling period after the commanded motion.
Overshoot (long) The largest overshoot of the actual position past the commanded position during the duration set by Delay in counts.
Direction (long)
     1 - for a move in the positive direction.
    -1 - for a move in the positive direction.
Delay (long) This value defaults to zero. If this value is set, the firmware will keep track of the maximum position overshoot (actual position > commanded position) for Delay servo samples.
DelayCount (long) A counter that starts at the end of the commanded motion and counts up to Delay in servo samples.

Sample Code

A memory read is required to read/write the axis metrics.

 

MEIXmpMetrics metric; mpiControlMemoryGet(control, &metric, &firmware->Axis[n].Metric, sizeof(firmware->Axis[n].Metric));

See Also

 

 

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