MPIFilterGainIndex

Definition

typedef enum {
	MPIFilterGainIndexINVALID    = -1,

	/* Gain table index for normal firmware. */
	MPIFilterGainIndexNO_MOTION  = 0,
	MPIFilterGainIndexACCEL      = 1,
	MPIFilterGainIndexDECEL      = 2,
	MPIFilterGainIndexVELOCITY   = 3,

	/* Gain table index for Custom 1 firmware. */
	MPIFilterGainIndexSTOPPING2  = 0,
	MPIFilterGainIndexSTOPPING1  = 1,
	MPIFilterGainIndexSETTLING   = 2,
	MPIFilterGainIndexMOVING     = 3,
	MPIFilterGainIndexSTOPPING3  = 4,

	/* Gain table index for Custom 5 firmware. */
	MPIFilterGainIndexMIN        = 0,
	MPIFilterGainIndexMAX        = 1,
	MPIFilterGainIndexNONE       = 2,
	MPIFilterGainIndexSLOPE      = 3,

	MPIFilterGainIndexEND        = 5,
	MPIFilterGainIndexALL        = MPIFilterGainIndexEND,	/* used for gain get/set() */
	MPIFilterGainIndexFIRST      = MPIFilterGainIndexINVALID + 1,

	MPIFilterGainIndexDEFAULT    = MPIFilterGainIndexNO_MOTION
} MPIFilterGainIndex;

 

Required Header: stdmpi.h

Change History: Modified in 04.00.

Description

MPIFilterGainIndex is an enumeration for the gain index used in gain scheduling.

In standard firmware, only
     MPIFilterGainIndexNO_MOTION,
     MPIFilterGainIndexACCEL,
     MPIFilterGainIndexDECEL, and
     MPIFilterGainIndexVELOCITY
are used. The gain index that is currently used can be found with mpiFilterGainIndexGet(...).

Gain Scheduling is a feature that switches filter gains for the acceleration, deceleration, constant velocity, and idle states of motion. The post filters are not affected by gain scheduling. Standard algorithms are used with gain scheduling (PID, PIV). To change the gain scheduling type from NONE (uses only the gains in gain table index 0), use MPIFilterConfig. GainSwitchType is set with mpiFilterConfigSet(...).

When setting filter gain parameters using mpiFilterGainGet(...) and mpiFilterGainSet(...), use the gain index value to write to a gain index of your choosing.

 

MPIFilterGainIndexNO_MOTION No commanded motion. Trajectory parameters Velocity, Acceleration, and Jerk equal zero.
MPIFilterGainIndexACCEL Acceleration portion of the commanded move.
MPIFilterGainIndexDECEL Deceleration portion of the commanded move.
MPIFilterGainIndexVELOCITY Constant velocity portion of the commanded move. Gain switching is configured by setting the GainSwtichType, GainDelay, and GainWindow in the MPIFilterConfig{...} structure and calling mpiFilterConfigGet/Set(...). The GainSwitchType has the following options:

See Also

MPIFilterConfig | mpiFilterConfigGet | mpiFilterConfigSet | MPIFilterSwitchType | mpiFilterGainIndexSet | mpiFilterGainIndexGet | mpiFilterGainGet | mpiFilterGainSet | Gain Tables