com.kuka.roboticsAPI.motionModel
Class BasicMotions

java.lang.Object
  extended by com.kuka.roboticsAPI.motionModel.BasicMotions

public final class BasicMotions
extends Object

Utility class to execute basic robot motions.


Field Summary
static double MINBLENDVALUE
          Minimum possible value to activate relative blending for motions.
 
Method Summary
static MotionBatch batch(RobotMotion<?>... motions)
          Creates a new batch robot motion.
static CIRC circ(AbstractFrame auxiliaryFrame, AbstractFrame destination)
          Creates a CIRC motion.
static RelativeCIRC circRel(ITransformation transformation)
          Creates a relative CIRC motion.
static LIN lin(AbstractFrame destination)
          Creates a LIN motion.
static RelativeLIN linRel()
          Creates a relative LIN motion object.
static RelativeLIN linRel(double x, double y, double z)
          Creates a relative LIN motion object with the given offset.
static RelativeLIN linRel(double x, double y, double z, AbstractFrame referenceFrame)
          Creates a relative LIN motion object with the given offset, relative to a reference frame.
static RelativeLIN linRel(double x, double y, double z, double alphaRad, double betaRad, double gammaRad)
          Creates a relative LIN motion object with the given offset.
static RelativeLIN linRel(double x, double y, double z, double alphaRad, double betaRad, double gammaRad, AbstractFrame referenceFrame)
          Creates a relative LIN motion object with the given offset, relative to a reference frame.
static RelativeLIN linRel(ITransformation frameTransformation)
          Creates a relative LIN motion object.
static RelativeLIN linRel(ITransformation frameTransformation, AbstractFrame relativeFrame)
          Creates a relative LIN motion object, relative to a reference frame.
static PositionHold positionHold(IMotionControlMode controlMode, long timeout, TimeUnit timeUnit)
          Creates a PositionHold motion that will hold the robot at it's current position.
static CartesianPTP ptp(AbstractFrame destination)
          Creates a Cartesian PTP motion.
static PTP ptp(double... jointAngles)
          Creates a PTP motion.
static PTP ptp(JointPosition jointAngles)
          Creates a PTP motion.
static PTPHome ptpHome()
          Creates a PTP motion to the home position of the robot.
static SPL spl(AbstractFrame destination)
          Creates a SPL motion.
static Spline spline(SplineMotionCP<?>... motions)
          Creates a new spline batch.
static SplineJP splineJP(SplineMotionJP<?>... motions)
          Creates a new joint-space spline batch.
static RelativeSPL splRel()
          Creates a relative SPL motion.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MINBLENDVALUE

public static final double MINBLENDVALUE
Minimum possible value to activate relative blending for motions.

See Also:
Constant Field Values
Method Detail

batch

public static MotionBatch batch(RobotMotion<?>... motions)
Creates a new batch robot motion.

Parameters:
motions - a sequence of motion segments
Returns:
a robot motion batch

spline

public static Spline spline(SplineMotionCP<?>... motions)
Creates a new spline batch.

Parameters:
motions - spline segments.
Returns:
a spline batch

lin

public static LIN lin(AbstractFrame destination)
Creates a LIN motion.

Parameters:
destination - The destination.
Returns:
The created motion.

linRel

public static RelativeLIN linRel(double x,
                                 double y,
                                 double z)
Creates a relative LIN motion object with the given offset.

The RelativeLIN will move the robot relative to its current position in any direction. The robot will move in TCP-Orientation.

Parameters:
x - the offset in x direction in [mm]
y - the offset in y direction in [mm]
z - the offset in z direction in [mm]
Returns:
The created motion.

linRel

public static RelativeLIN linRel(double x,
                                 double y,
                                 double z,
                                 AbstractFrame referenceFrame)
Creates a relative LIN motion object with the given offset, relative to a reference frame.

The RelativeLIN will move the robot relative to its current position in any direction. The robot will move in the orientation of the reference frame.

Parameters:
x - the offset in x direction in [mm]
y - the offset in y direction in [mm]
z - the offset in z direction in [mm]
referenceFrame - This frame describes the coordinate system in which the transformation will be interpreted.
Returns:
The created motion.

linRel

public static RelativeLIN linRel(double x,
                                 double y,
                                 double z,
                                 double alphaRad,
                                 double betaRad,
                                 double gammaRad)
Creates a relative LIN motion object with the given offset.

The RelativeLIN will move the robot relative to its current position in any direction. The robot will move in TCP-Orientation.

Parameters:
x - the offset in x direction in [mm]
y - the offset in y direction in [mm]
z - the offset in z direction in [mm]
alphaRad - Offset value in [rad]
betaRad - Offset value in [rad]
gammaRad - Offset value in [rad]
Returns:
The created motion.

linRel

public static RelativeLIN linRel(double x,
                                 double y,
                                 double z,
                                 double alphaRad,
                                 double betaRad,
                                 double gammaRad,
                                 AbstractFrame referenceFrame)
Creates a relative LIN motion object with the given offset, relative to a reference frame.

The RelativeLIN will move the robot relative to its current position in any direction. The robot will move in the orientation of the reference frame.

Parameters:
x - the offset in x direction in [mm]
y - the offset in y direction in [mm]
z - the offset in z direction in [mm]
alphaRad - Offset value in [rad]
betaRad - Offset value in [rad]
gammaRad - Offset value in [rad]
referenceFrame - This frame describes the coordinate system in which the transformation will be interpreted.
Returns:
The created motion.

linRel

public static RelativeLIN linRel(ITransformation frameTransformation)
Creates a relative LIN motion object.

The RelativeLIN will move the robot relative to its current position in any direction. The robot will move in TCP-Orientation.

Parameters:
frameTransformation - The transformation for the motion
Returns:
The created motion.

linRel

public static RelativeLIN linRel(ITransformation frameTransformation,
                                 AbstractFrame relativeFrame)
Creates a relative LIN motion object, relative to a reference frame.

The RelativeLIN will move the robot relative to its current position in any direction. The robot will move in the orientation of the relative frame.

Parameters:
frameTransformation - The transformation for the motion
relativeFrame - The frame of the coordinate system (directions) for the move (new base)
Returns:
The created motion.

linRel

public static RelativeLIN linRel()
Creates a relative LIN motion object.

The RelativeLIN will move the robot relative to its current position in any direction. Per default the robot will move in TCP-Orientation. You can specify a new Frame as reference for this motion, instead of default TCP. Robot will move in the orientation of the new frame.

Returns:
The created motion.

spl

public static SPL spl(AbstractFrame destination)
Creates a SPL motion.

Parameters:
destination - The destination.
Returns:
The created motion.

splRel

public static RelativeSPL splRel()
Creates a relative SPL motion.

Returns:
The created motion.
This element is an undocumented internal feature. It is not intended to be used by applications as it might change or be removed in future versions.

circRel

public static RelativeCIRC circRel(ITransformation transformation)
Creates a relative CIRC motion.

Parameters:
transformation - The transformation of the frame relative to the current frame
Returns:
The created motion.
This element is an undocumented internal feature. It is not intended to be used by applications as it might change or be removed in future versions.

circ

public static CIRC circ(AbstractFrame auxiliaryFrame,
                        AbstractFrame destination)
Creates a CIRC motion. A CIRC motion is a motion along a circular path. The path is defined as the circle through the starting point of the motion, the given auxiliary frame and the given target frame. Per default, the motion execution will follow the path through the auxiliary frame and stop at the target frame. The motion execution can be altered with CIRC.setCircAngle(double).

The CIRC motion may be used inside a Spline to indicate a CIRC segment, or can be used for a standalone CIRC motion, too.

Parameters:
auxiliaryFrame - The auxiliary frame to calculate the CIRC segment.
destination - The destination.
Returns:
The CIRC motion.

positionHold

public static PositionHold positionHold(IMotionControlMode controlMode,
                                        long timeout,
                                        TimeUnit timeUnit)
Creates a PositionHold motion that will hold the robot at it's current position. It is intended to use the position hold command with an impedance mode.

Please note, if a valid timeout value (>= 0) for the PositionHold command has been defined, this will be used as a command stop condition, otherwise this command has no implicit stop condition. In this case it has to be cancelled manually using the cancel-method of the ExecutionEngine or you have to specify your own stop condition.

Parameters:
controlMode - The control mode for the position hold command.
timeout - The maximum time the position hold command is active. For endless timeout use a value < 0.
timeUnit - The unit of the timeout.
Returns:
The created motion.

splineJP

public static SplineJP splineJP(SplineMotionJP<?>... motions)
Creates a new joint-space spline batch.

Parameters:
motions - spline segments.
Returns:
a joint-space spline batch

ptp

public static PTP ptp(double... jointAngles)
Creates a PTP motion.

Parameters:
jointAngles - The joint angles (in [rad]).
Returns:
The created motion.

ptp

public static PTP ptp(JointPosition jointAngles)
Creates a PTP motion.

Parameters:
jointAngles - The joint angles (in [rad]).
Returns:
The created motion.

ptp

public static CartesianPTP ptp(AbstractFrame destination)
Creates a Cartesian PTP motion.

Parameters:
destination - The destination.
Returns:
The created motion.

ptpHome

public static PTPHome ptpHome()
Creates a PTP motion to the home position of the robot.

Returns:
The created motion.


Copyright © 2019. All rights reserved.