com.kuka.nav.path
Class VirtualPathMotion

java.lang.Object
  extended by com.kuka.nav.command.AbstractParameterizable
      extended by com.kuka.nav.command.AbstractCommand<T,E>
          extended by com.kuka.nav.command.Motion<VirtualPathMotion,VirtualPathMotionContainer>
              extended by com.kuka.nav.path.VirtualPathMotion
All Implemented Interfaces:
com.kuka.command.ICommand<VirtualPathMotion,VirtualPathMotionContainer>, com.kuka.command.IParameterizableCommand<VirtualPathMotion,VirtualPathMotionContainer>, com.kuka.nav.command.BlendableMotion<VirtualPathMotion>, com.kuka.nav.recover.RecoverableCommand<VirtualPathMotion>, com.kuka.parameters.IParameterizable

public class VirtualPathMotion
extends com.kuka.nav.command.Motion<VirtualPathMotion,VirtualPathMotionContainer>
implements com.kuka.nav.command.BlendableMotion<VirtualPathMotion>, com.kuka.nav.recover.RecoverableCommand<VirtualPathMotion>

Represents the motion of a mobile robot along a 'virtual path' from a start position to a goal position. The desired platform orientation during the movement can be 0 or 180 degrees specified relative to the path - the platform will choose the orientation that is closest to the current platform orientation.

The tracking accuracy is monitored during the movement and can be inspected in the corresponding motion container. If the deviations become higher than specified in setTrackingAccuracyTrans(double) or setTrackingAccuracyRot(double), then the movement will be stopped with a failure.


Constructor Summary
protected VirtualPathMotion(com.kuka.parameters.IParameterMap params)
          Copy constructor.
  VirtualPathMotion(String pathName)
          Creates a new motion on the virtual path with the given name.
  VirtualPathMotion(String pathName, com.kuka.nav.Orientations orientations)
          Creates a new motion on the virtual path with the given name and a set of allowed orientations.
  VirtualPathMotion(VirtualPath path)
          Creates a new motion on the given virtual path.
  VirtualPathMotion(VirtualPath path, com.kuka.nav.Orientations orientations)
          Creates a new motion on the given virtual path and a set of allowed orientations.
 
Method Summary
 VirtualPathMotion copy()
           
 double getBlendingCart()
           
 com.kuka.nav.Orientations getOrientations()
          Returns the set of orientations allowed for this virtual path motion.
 double getTrackingAccuracyRot()
          Returns the rotational accuracy during the movement in [m].
 double getTrackingAccuracyTrans()
          Returns the translational accuracy during the movement in [m].
 VirtualPath getVirtualPath()
          Returns the corresponding virtual path the mobile robot should move on.
 String getVirtualPathName()
          Returns the name of the corresponding virtual path the mobile robot should move on.
 boolean hasRecoverActions()
           
 boolean isReversed()
          Returns true if the underlying path should be traversed in opposite directions.
 VirtualPathMotion recoverWhen(com.kuka.nav.recover.RecoverCondition condition, com.kuka.nav.recover.RecoverAction action)
           
 VirtualPathMotion setBlendingCart(double value)
           
 VirtualPathMotion setOrientations(com.kuka.nav.Orientations orientations)
          Sets the set of allowed orientations for this virtual path motion.
 VirtualPathMotion setReversed(boolean reversed)
          Changes the direction in which the underlying virtual path is traversed.
 VirtualPathMotion setTrackingAccuracyRot(double accuracy)
          Sets the rotational accuracy during the movement in [m].
 VirtualPathMotion setTrackingAccuracyTrans(double accuracy)
          Sets the translational accuracy during the movement in [m].
 VirtualPathMotion setVirtualPath(VirtualPath path)
          Sets the virtual path the mobile robot should move on.
 VirtualPathMotion setVirtualPathName(String pathName)
          Sets the name of the virtual path the mobile robot should move on.
 
Methods inherited from class com.kuka.nav.command.Motion
getAcceleration, getAccelerationOverride, getDeceleration, getDecelerationOverride, getMaxAcceleration, getMaxDeceleration, getMaxVelocity, getTimeout, getVelocity, getVelocityOverride, setAcceleration, setAccelerationOverride, setDeceleration, setDecelerationOverride, setMaxAcceleration, setMaxDeceleration, setMaxVelocity, setTimeout, setVelocity, setVelocityOverride
 
Methods inherited from class com.kuka.nav.command.AbstractCommand
getDescription, self, setDescription
 
Methods inherited from class com.kuka.nav.command.AbstractParameterizable
getParameters, paramHelper
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.kuka.parameters.IParameterizable
getParameters
 

Constructor Detail

VirtualPathMotion

public VirtualPathMotion(String pathName)
Creates a new motion on the virtual path with the given name. Note that there must exist a virtual path with the given name on the same map as the commanded robot is located on. The robot's orientation relative to the path will be 0 degree. To specify the orientations see VirtualPathMotion(String, Orientations).

Parameters:
pathName - the name of the virtual path

VirtualPathMotion

public VirtualPathMotion(String pathName,
                         com.kuka.nav.Orientations orientations)
Creates a new motion on the virtual path with the given name and a set of allowed orientations. Note that there must exist a virtual path with the given name on the same map as the commanded robot is located on. Currently only 0 and 180 degree relative to the path are allowed as orientations (or Orientations.FORWARD and Orientations.BACKWARD).

Parameters:
pathName - the name of the virtual path
orientations - the set of allowed orientations

VirtualPathMotion

public VirtualPathMotion(VirtualPath path)
Creates a new motion on the given virtual path. Note that the given virtual path must be located on the same map as the commanded robot. The robot's orientation relative to the path will be 0 degree. To specify the orientations see VirtualPathMotion(VirtualPath, Orientations).

The data source object VirtualPathData can be used to retrieve persisted virtual paths.

Parameters:
path - the virtual path

VirtualPathMotion

public VirtualPathMotion(VirtualPath path,
                         com.kuka.nav.Orientations orientations)
Creates a new motion on the given virtual path and a set of allowed orientations. Note that the given virtual path must be located on the same map as the commanded robot. Currently only 0 and 180 degree relative to the path are allowed as orientations (or Orientations.FORWARD and Orientations.BACKWARD).

The data source object VirtualPathData can be used to retrieve persisted virtual paths.

Parameters:
path - the virtual path
orientations - the set of allowed orientations

VirtualPathMotion

protected VirtualPathMotion(com.kuka.parameters.IParameterMap params)
Copy constructor. Creates a mew instance of the class containing the deep copy of the specified parameter map.

Parameters:
params - parameter map containing the command parameters.
Method Detail

getVirtualPathName

public String getVirtualPathName()
Returns the name of the corresponding virtual path the mobile robot should move on.

Returns:
the name of the corresponding virtual path

setVirtualPathName

public VirtualPathMotion setVirtualPathName(String pathName)
Sets the name of the virtual path the mobile robot should move on. Note that there must exist a virtual path with the given name on the same map as the commanded robot is located on. This parameter will be overwritten with the name of the virtual path given by setVirtualPath(VirtualPath).

Parameters:
pathName - the name of the virtual path
Returns:
this motion

getVirtualPath

public VirtualPath getVirtualPath()
Returns the corresponding virtual path the mobile robot should move on. Note that if only the name of the virtual path was specified for this motion this call returns null.

Returns:
the corresponding virtual path the mobile robot should move on or null if only the name of the virtual path was specified for this motion

setVirtualPath

public VirtualPathMotion setVirtualPath(VirtualPath path)
Sets the virtual path the mobile robot should move on. Note that the given virtual path must be located on the same map as the commanded robot.

The data source object VirtualPathData can be used to retrieve persisted virtual paths.

Parameters:
path - the virtual path the mobile robot should move on
Returns:
this motion

getOrientations

public com.kuka.nav.Orientations getOrientations()
Returns the set of orientations allowed for this virtual path motion.

Returns:
the set of orientations allowed for this virtual path motion

setOrientations

public VirtualPathMotion setOrientations(com.kuka.nav.Orientations orientations)
Sets the set of allowed orientations for this virtual path motion. Currently only 0 and 180 degree relative to the path are allowed as orientations (or Orientations.FORWARD and Orientations.BACKWARD).

Parameters:
orientations - the set of allowed orientations for this virtual path motion
Returns:
this motion

isReversed

public boolean isReversed()
Returns true if the underlying path should be traversed in opposite directions. The direction can be changed using setReversed(boolean).

Returns:
true if the underlying path should be traversed in opposite directions

setReversed

public VirtualPathMotion setReversed(boolean reversed)
Changes the direction in which the underlying virtual path is traversed. If set to false the path is traversed in the same direction as it was defined. If set to false the path is traversed in opposite direction. The current behavior can be retrieved using isReversed().

Parameters:
reversed - defines if the path should be traversed in opposite direction
Returns:
this motion

getTrackingAccuracyTrans

public double getTrackingAccuracyTrans()
Returns the translational accuracy during the movement in [m].

Returns:
the translational accuracy during the movement in [m]

setTrackingAccuracyTrans

public VirtualPathMotion setTrackingAccuracyTrans(double accuracy)
Sets the translational accuracy during the movement in [m].

Parameters:
accuracy - the translational accuracy during the movement in [m]
Returns:
this motion

getTrackingAccuracyRot

public double getTrackingAccuracyRot()
Returns the rotational accuracy during the movement in [m].

Returns:
the rotational accuracy during the movement in [m]

setTrackingAccuracyRot

public VirtualPathMotion setTrackingAccuracyRot(double accuracy)
Sets the rotational accuracy during the movement in [m].

Parameters:
accuracy - the rotational accuracy during the movement in [m]
Returns:
this motion

getBlendingCart

public double getBlendingCart()
Specified by:
getBlendingCart in interface com.kuka.nav.command.BlendableMotion<VirtualPathMotion>

setBlendingCart

public VirtualPathMotion setBlendingCart(double value)
Specified by:
setBlendingCart in interface com.kuka.nav.command.BlendableMotion<VirtualPathMotion>

hasRecoverActions

public boolean hasRecoverActions()
Specified by:
hasRecoverActions in interface com.kuka.nav.recover.RecoverableCommand<VirtualPathMotion>

recoverWhen

public VirtualPathMotion recoverWhen(com.kuka.nav.recover.RecoverCondition condition,
                                     com.kuka.nav.recover.RecoverAction action)
Specified by:
recoverWhen in interface com.kuka.nav.recover.RecoverableCommand<VirtualPathMotion>

copy

public VirtualPathMotion copy()
Specified by:
copy in interface com.kuka.command.ICommand<VirtualPathMotion,VirtualPathMotionContainer>
Overrides:
copy in class com.kuka.nav.command.AbstractCommand<VirtualPathMotion,VirtualPathMotionContainer>


Copyright © 2019. All rights reserved.