. |
Motion Start EventsThe MPI supports two types of events that indicate when a move profile begins and ends, Start Events (MPIEventTypeMOTION_START) and Done Events (MPIEventTypeMOTION_DONE). The Start Event is triggered when the axis begins its command position trajectory generation portion of a new move profile. Using a trapezoidal move as an example, a new move profile is created in one of the following ways:
Note: A Start Event can not be created by mpiMotionTrapezoidalMove(...) with MPIMotionPointToPointAttrMaskBEHAVIOR and MPIMotionPointToPointBehaviorTypeMODIFY_ERROR_IF_NOT_MOVING, or by a triggered motion modify. Start Events supports the same info data as standard events. For example, the info data can be configured to return the motion ID. ScenariosThis section contains Velocity vs. Timing diagrams that provide the conditions generating a Start Event. Example 1.The following diagram illustrates a single move commanded when the axis is idle (command velocity is zero). Example 2.The following diagram illustrates a single move commanded with a delay and hold. Example 3.The following diagram illustrates a move modified by calling mpiMotionTrapezoidalMove(...) with MPIMotionPointToPointAttrMaskBEHAVIOR and MPIMotionPointToPointBehaviorTypeMODIFY,or by a triggered motion modify. Example 4.The following diagram illustrates a move appended by calling mpiMotionTrapezoidalMove (...) with no behavior specified. Example 5.The following diagram illustrates a move appended with mpiMotionTrapezoidalMove (...) with MPIMotionPointToPointAttrMaskBEHAVIOR and MPIMotionPointToPointBehaviorTypeAPPEND_WITHOUT_MOTION_DONE. Example 6.The following diagram illustrates a move appended by calling mpiMotionTrapezoidalMove (...) with MPIMotionPointToPointAttrMaskBEHAVIOR and MPIMotionPointToPointBehaviorTypeAPPEND_WITHOUT_MOTION_DONE or mpiMotionTrapezoidalMove (...) with MPIMotionPointToPointAttrMaskBEHAVIOR and MPIMotionPointToPointBehaviorTypeMODIFY when either call occurs after Done Event1: Example 7.The following diagram illustrates a move with multiple axes (X and Y) per MS and Single axis (X, Y) per MS. Note same conditions apply as described in the previous scenarios. For example, an mpiMotionTrapezoidalCartesianMove( MSxy ) generates motion Start Events on MSx, MSy, and MSxy.
|
| | Copyright © 2001-2021 Motion Engineering |