Motion Hold

What is Motion Hold?

Motion Hold is a feature available to any motion on an Axis or MultiAxis. The feature allows the user to command (and therefore load) a motion that should not execute immediately. The motion will be triggered by some real-time condition monitored by the RMP firmware.
There are three main types of Motion Hold:
  • I/O triggered motion - A motion holds its execution until an I/O value reaches the desired state.
  • Position triggered motion - A motion holds its execution until an Axis position is exceeded.
  • Software triggered motion - A motion holds its execution until a bit is set in the RMP’s firmware memory.

Why use Motion Hold?

Motion Hold is especially useful when a motion needs to have a very tight synchronization with some other process -- when the synchronization must be accurate to less than one millisecond. A Windows app cannot offer this level of synchronization so it must be configured into the RMP for processing in the real-time firmware for sub-millisecond response to start motion.
Some examples of when Motion Hold might be used for various types:
EXAMPLE 1 - IO Triggered Motion
An Axis may need to perform its motion precisely when a digital input bit changes state.
EXAMPLE 2 - Position Triggered Motion
An Axis may need to wait for some other Axis to move into a safe position before it can start its motion.
EXAMPLE 3 - Software Triggered Motion
An Axis object (Or two axes) that has independent motion but must be started synchronously (can also be accomplished using MultiAxis). The Windows application will set a bit in RMP firmware memory which will trigger both Axis objects to start within the same RMP sample period.
Export as PDF
Copy link
On this page
What is Motion Hold?
Why use Motion Hold?
📜 Motion Hold Sample Apps (C#)