APIs, concepts, guides, and more
Motion

Overview of motion control types supported, including linear, rotational, cartesian, etc.

๐Ÿ”น Motion Types

  • Cartesian
  • G-Code
  • Path
  • Point to Point
  • Streaming
  • Velocity

โ“ FAQ

  1. Can you overwrite a motion command that is in progress?
    Yes, point-to-point motion commands can be overwritten on-the-fly.

  2. Can you blend a point to point move with a velocity move?
    Yes, you can command a [Axis](RSI::RapidCode::Axis).MoveTrapezoidal() "Axis.MoveTrapezoidal()" with a specified final velocity so that you can ensure at the time the axis gets to its target position, it will be moving at the specified velocity.

  3. How do you know when a move has been completed?
    You can use [RapidCodeMotion](RSI::RapidCode::RapidCodeMotion).MotionDoneGet() "MotionDoneGet()" methods to wait until or check if motion is complete. Both methods check the status bit of RSIEventTypeMOTION_DONE. See our Settling topic for more information.

  4. Can you pause, and then later resume a motion that is in progress?
    If you call [RapidCodeMotion](RSI::RapidCode::RapidCodeMotion).Stop() "Stop()" during motion, the axes will stop according to the specified stop time. Then you can either clear the previous motion command by calling [RapidCodeMotion](RSI::RapidCode::RapidCodeMotion).ClearFaults() "ClearFaults()" or you can resume the motion using Resume().

๐Ÿ”น Subsections

  • Motion Concepts : Learn more about some RMP motion capabilities.
  • Point to Point Motion : Perform synchronized or coordinated motion with one or many axes.
  • Velocity Motion : Types of velocity motions
  • Motion: Streaming : Stream data points for detailed motion control on single or multiple axes, using profiles tailored for precision and complexity. Adjust your motion dynamically.
  • Backlash Compensation : Address and reduce lost motion in mechanical systems caused by gaps between parts by setting backlash parameters.
  • Camming : Convert rotary motion into linear motion, or vice versa.
  • Cartesian Robot : Control robots or machines in Cartesian space using the Robot class, applicable to various systems like gantries, robotic arms, and CNC machines, with support for G-Code & PathMotion.
  • Compensator : Use compensators to add delta offsets to an axis's position based on stored position data for compensating surface irregularities.
  • Feed Rate : Adjust the speed of a loaded motion profile without affecting its trajectory, allowing for stops, pauses, and reversals along the path, useful for operations like retracing and altering operating speeds dynamically.
  • Feedback: Secondary (EL5101) : Utilize the EL5101 EtherCAT Terminal to interface with secondary encoders, enhancing measurement precision for various mechanical components by integrating additional position or velocity feedback into the EtherCAT network.
  • Gantry : Control a single linear axis with two motors.
  • G-Code : Use G-Code to specify coordinated motions in Cartesian space for specialized machines, with support for basic codes and a user interface for building or using pre-built configurations.
  • Gearing : Link two or more axes such that the slave axis position is a function of the master axis position, useful in various systems like in-feed and conveying systems, achieved electronically without mechanical linkage.
  • Motion Hold : Execute motion on an Axis or MultiAxis triggered by real-time conditions such as I/O values, axis positions, or software triggers.
  • Path Motion : Define complex 3D paths using lines and arcs for moving an end effector in Cartesian space.
  • Post Trajectory Gearing : Combine electronic gearing with point-to-point motion on a geared axis, applying the gearing offset after the slave axisโ€™ motion processing, enabling correctional or superimposed motions.