Advanced Move Types
🧰

Advanced Move Types

In the “Creating a Cue” section of this manual, we already covered how to create the most common move type: an absolute move.

There are other move types available, allowing you to create more complex moves. The options available change if you’re working with a linear or rotary axis.

Linear Move Types

Move types available on a linear axis
Move types available on a linear axis

Absolute Move

This is an absolute position anywhere in a range of movement. For example, on a measuring tape that runs from 0 to 6000mm, there is only one 1000mm mark.

The direction of the move depends on the position of the axis when it is fired:

  • If that position is higher than the target, the axis will move in a negative direction.
  • If that position is lower than the target it will move in a positive direction.

As long as the target position is within the range of the soft limits, the move will be valid.

Relative Move

This type describes the move relative to its current position.

The direction of the move depends on the target value, which includes a + or -:

  • A move of +50mm will move the axis 50mm in the positive direction.
  • A move of -100mm will move the axis 100mm in the negative direction.
⚠️
Remember, this type of move is always based on an axis’s current position. If you stop a relative move, when you restart it, the final position will be relative to the stopped position not the original starting position.
⚠️
If you try and start a relative move that takes it beyond the soft limits, it will cause an MCFB Error. See “Dealing with Errors”.

Continuous + / Continuous -

This is a continuous move in the direction indicated.

The axis will run at the given speed until it reaches a soft limit and come to a stop. In this move type the target position is ignored.

⚠️
A continuous move cannot be overlayed on top of another move. See “Overlaying Moves”.

Rotational Move Types

Move types available on a rotational axis
Move types available on a rotational axis

There are two types of rotational axis: absolute and modulo.

Absolute Rotational

This works similarly to a linear axis, where you use absolute range of values that stretch out in each direction from zero:

  • Starting at 0° to move one revolution clockwise you would plot a target of 360°.
  • To plot a second revolution clockwise, starting at 360°, you would plot a target of 720°.

An Absolute Rotational axis can use all the same move types as a linear axis and it behaves in the same way.

Modulo Rotational

This uses an absolute range of 0-359° for the end position. The number of revolutions before stopping at the end position is dealt with separately.

You can imagine the target positions as numbers on a clock 90° is always at three o’clock, 180° is always at six etc.

There are different move types that are for use only on Modulo Rotational Axes:

CW / ACW

Clockwise and anti-clockwise moves rotate an axis in a specified direction until it reaches the end position.

The direction of the move depends on the move type chosen:

  • Starting at 180° to move clockwise to 90° you would set a target of 90° and a direction of CW.
  • Starting at 180° to move anti-clockwise to 90° you set plot the same target of 90° and a direction of ACW.
  • Starting at 0° to move clockwise one revolution and then finish at 0°, you would set a target of 360°.

For every revolution you want to take before ending at your target position add 360° per revolution.

  • Starting at 180° to move clockwise one revolution and then finish 90°, you would set a target for 360° (one revolution) + 90° = CW 450°.
⚠️
A revolution is actually defined by the number of times you go past a reset position — this is usually zero. Check your programming carefully, depending on the start position of the revolve and the reset position might mean you do not do a full rotation before reaching your end position.
⚠️
A CW / ACW move cannot be overlayed on top of another move. See “Overlaying Moves”.

Shortest

This move type will travel the shortest distance to get to the target.

The direction of the move depends which direction is fastest:

  • Starting at a position of 370° and setting a target of 90°, the axis would move clockwise to 90°.
  • Starting at 140° and setting a target of 90° the axis would move anti-clockwise to 90°.
⚠️
Using this move type may cause the axis to move in an unexpected direction if you run moves out of their normal sequence. Make sure you understand how an axis will act before running a move.
⚠️
A Shortest move cannot be overlayed on top of another move. See “Overlaying Moves”.

Current

This move type uses the same method as a CW / ACW move.

The direction of the move is set by the revolves last run move:

  • If you have just run a move CW to 180°, a target of 270° will move CW to 270°.
  • If you have just run a move ACW to 180°, a target of 270° will move ACW to 270°.
⚠️
Using this move type may cause the axis to move in an unexpected direction if you run moves out of their normal sequence. Make sure you understand how an axis will act before running a move.
⚠️
A Current move cannot be overlayed on top of another move. See “Overlaying Moves”.

Home

This move type runs a homing sequence and is specifically for use when a home sensor has been installed.

When you run a Home move, the axis will head towards the target, if it sees the home sensor it will reverse direction until the home sensor is cleared, then very slowly move back in original direction, until the home sensor is triggered once more.

The axis will stop at this point and re-reference itself to the target position.

⚠️
Always check using a reference mark that the homing process has been completed correctly. If the axis has not triggered the home sensor on its way to the target, the homing process will not run.
⚠️
A Home move cannot be overlayed on top of another move. See “Overlaying Moves”.