Actin®  Version 5.2.0
Software for Robotics Simulation and Control
EcVelocityController Class Reference

Holds a description of a velocity controller for one manipulator. More...

#include <ecVelocityController.h>

Inheritance diagram for EcVelocityController:
EcXmlCompoundType EcXmlObject

Classes

struct  SoftEndEffectorSetState
 

Public Types

enum  { JOINT_CONTROL_INDEX = EcFoundCommon::VOIDINDEX }
 
- Public Types inherited from EcXmlCompoundType
enum  {
  READONLYCOMPONENT = 0,
  READONLYATTRIBUTE
}
 special-descriptor codes More...
 

Public Member Functions

 EcVelocityController ()
 default constructor
 
virtual ~EcVelocityController ()
 destructor
 
 EcVelocityController (const EcVelocityController &orig)
 copy constructor
 
EcVelocityControlleroperator= (const EcVelocityController &orig)
 assignment operator
 
EcBoolean operator== (const EcVelocityController &orig) const
 equality operator
 
virtual EcXmlObjectclone () const EC_OVERRIDE
 clone - a virtual constructor to an EcXmlObject pointer
 
virtual void registerComponents () EC_OVERRIDE
 register components with the parent
 
virtual EcBoolean equality (const EcXmlObject *other) const EC_OVERRIDE
 equality - virtual equality to an EcXmlObject pointer
 
virtual EcXmlObjectnewObject () const EC_OVERRIDE
 virtual new that returns an EcXmlObject
 
virtual const EcEndEffectorSetjointControlEndEffectorSet () const
 gets the joint control end-effector set
 
virtual void setJointControlEndEffectorSet (const EcEndEffectorSet &value)
 sets the joint control end-effector set
 
virtual const EcControlExpressionDescriptionVectorcontrolDescriptions () const
 gets the list of control descriptions
 
virtual EcBoolean setControlDescriptions (const EcControlExpressionDescriptionVector &controlDescriptions)
 sets the vector of control descriptions
 
virtual const EcEndEffectorSetVectorendEffectorSets () const
 gets the list of end-effector sets (excluding the joint-control set)
 
virtual EcBoolean setEndEffectorSets (const EcEndEffectorSetVector &eeSets)
 sets the list of end-effector sets (excluding the joint-control set)
 
virtual EcU32 manipulatorIndex () const
 gets the manipulator index for this controller
 
virtual void setManipulatorIndex (EcU32 value)
 sets the manipulator index for this controller
 
virtual const EcManipulatorEndEffectorVelocityendEffectorVelocity () const
 gets the end effector velocity
 
virtual void setEndEffectorVelocity (const EcManipulatorEndEffectorVelocity &endEffectorVelocity)
 sets the end effector velocity
 
virtual const EcStatedSystemstatedSystem () const
 gets the stated system
 
virtual void setStatedSystem (const EcStatedSystem *statedSystem)
 sets the stated system
 
const EcDataMapdataMapPointer () const
 gets the data-map pointer for a specified manipulator
 
void setDataMapPointer (const EcDataMap *pDataMap)
 sets the data-map pointer for a specified manipulator
 
virtual EcSystemActiveStatesystemActiveState () const
 gets the system active state
 
virtual void setSystemActiveState (EcSystemActiveState *sysActState)
 sets the system active state
 
virtual EcPositionControllerpositionController () const
 gets the position controller
 
virtual void setPositionController (EcPositionController *pController)
 sets the position controller
 
virtual EcManipulatorActiveStateactiveState () const
 gets the active state
 
virtual EcManipulatorActivePositionStatepreviousActivePositionState () const
 gets the active state
 
virtual const EcVelocityStatecalculatedVelocityState () const
 gets the calculated velocity state
 
virtual void setCalculatedVelocityState (const EcVelocityState &value)
 sets the calculated velocity state
 
virtual void setTimeStep (EcReal timeStep)
 sets the time step
 
virtual void setPrimaryDeterminant (EcReal value)
 sets the primary determinants
 
virtual EcReal primaryDeterminant () const
 gets the primary determinants
 
virtual EcBoolean setEndEffectorRelativeLinkData (const EcU32 endEffectorIndex, const EcEndEffectorRelativeLinkData &relData)
 sets the relative link data
 
virtual const EcEndEffectorRelativeLinkDataendEffectorRelativeLinkData (const EcU32 endEffectorIndex) const
 
virtual void setNullSpace (const EcReArray &value)
 sets the nullspace of the Jacobian
 
virtual const EcReArraynullSpace () const
 gets the nullspace
 
virtual EcBoolean isControlExpressionDescriptionValid () const
 gets whether the active control expression description is valid
 
virtual const EcControlExpressionDescriptioncontrolExpressionDescription () const
 
virtual EcControlExpressionDescriptioncontrolExpressionDescription ()
 
virtual void setControlExpressionDescription (const EcControlExpressionDescription &controlExpressionDescription)
 sets the active control expression description
 
virtual const EcCoordinateSystemTransformationVectortoolOffsets () const
 gets the tool offsets
 
virtual void setToolOffsets (const EcCoordinateSystemTransformationVector &value)
 sets the tool offsets
 
virtual EcBoolean getToolOffset (EcU32 eeSetIndex, EcU32 eeIndex, EcBoolean &useToolOffset, EcCoordinateSystemTransformation &value) const
 Get the tool offset for a given end effector. More...
 
virtual EcBoolean setToolOffset (EcU32 index, const EcCoordinateSystemTransformation &value)
 
virtual EcBoolean setToolOffset (EcU32 eeSetIndex, EcU32 eeIndex, const EcCoordinateSystemTransformation &value)
 Sets the tool offset in link primary frame for a given end-effector. More...
 
virtual EcBoolean getToolOffset (EcU32 eeSetIndex, EcU32 eeIndex, EcCoordinateSystemTransformation &value) const
 Gets the tool offset for a given end effector. More...
 
virtual EcU32 addToolOffset (const EcCoordinateSystemTransformation &value)
 add a tool offset to the end of tool offset vector
 
virtual EcBoolean setToolOffsetIndex (EcU32 eeSetIndex, EcU32 eeIndex, EcU32 toolOffsetIndex)
 set tool offset index
 
virtual EcBoolean getToolOffsetIndex (EcU32 eeSetIndex, EcU32 eeIndex, EcU32 &toolOffsetIndex)
 get tool offset index
 
virtual EcInt32 setIsHardConstraint (const EcU32 eeSetIndex, const EcU32 eeIndex, const EcBoolean value)
 Set is hard constraint flag. More...
 
virtual EcBoolean allowDeviationNearSingularity () const
 gets whether to allow path deviation near singularity
 
virtual void setAllowDeviationNearSingularity (EcBoolean value)
 sets whether to allow path deviation near singularity
 
virtual EcBoolean calculate ()
 calculates the inverse velocity kinematics
 
virtual EcBoolean exactHandMotion () const
 check to see if end-effector motion exactly matches that desired
 
virtual const EcTokentoken () const EC_OVERRIDE
 gets the token
 
virtual EcBoolean read (EcXmlReader &stream) EC_OVERRIDE
 read this object from an XML stream
 
virtual EcBoolean write (EcXmlWriter &stream) const EC_OVERRIDE
 write this object to an XML stream
 
void initializeEndEffectorVelocity ()
 initialize XML components for reading and writing the desired end-effector velocity to zero
 
virtual void resetActiveState ()
 
virtual EcBoolean addDefaultControlDescriptionAndEndEffectorSet (const EcIndividualManipulator &manipulator)
 
virtual void addControlDescription (const EcControlExpressionDescription &value)
 adds a control description
 
virtual EcBoolean deleteControlDescription (EcU32 controlDescriptionIndex)
 
virtual EcBoolean setActiveControlDescription (EcU32 index)
 
virtual EcU32 activeControlDescriptionIndex () const
 
virtual void addEndEffectorSet (const EcEndEffectorSet &value)
 adds an end-effector set
 
virtual EcBoolean deleteEndEffectorSet (EcU32 index)
 deletes the end-effector set at a specified index
 
virtual EcBoolean setActiveEndEffectorSet (EcU32 index)
 
virtual const EcEndEffectorSetendEffectorSet () const
 gets the active end-effector set
 
EcEndEffectorSetendEffectorSet (EcBoolean normal=EcFalse)
 
virtual void setEndEffectorSet (const EcEndEffectorSet &endEffectorSet)
 sets the active end-effector set
 
virtual EcU32 activeEndEffectorSetIndex () const
 gets the index of the active end-effector set
 
virtual EcU32 activeEndEffectorIndex () const
 gets the index of the active end-effector for the active EE set
 
virtual EcU32 activeEndEffectorIndex (EcU32 eeSetIndex) const
 gets the index of the active end-effector for a given EE set. Returns 0 if eeSetIndex is invalid
 
virtual EcBoolean setActiveEndEffectorIndex (EcU32 index)
 sets the active end-effector for the active EE set
 
virtual EcBoolean setActiveEndEffectorIndex (EcU32 index, EcU32 eeSetIndex)
 sets the active end-effector for a given active EE set
 
virtual void connectComponents ()
 sets all data and pointers needed by member variables
 
virtual void connectStatedSystem ()
 connects the stated system to other components
 
virtual EcBoolean jointControlActive () const
 gets whether the joint control description is active
 
virtual EcJacobianStatejacobianState (EcBoolean normal=EcFalse) const
 
virtual EcReal baseSpeedFactor () const
 get the base speed factor.
 
virtual void setBaseSpeedFactor (EcReal value)
 
virtual EcReal speedFactor () const
 get the speed factor
 
virtual void setSpeedFactor (EcReal value)
 
virtual EcBoolean setSpeedFactor (EcU32 eeSetIndex, EcU32 eeIndex, EcReal value)
 Set the speed factor for a particular end-effector. More...
 
virtual void setEndEffectorSpeedFactor (EcReal value)
 
virtual EcBoolean setEndEffectorSpeedFactor (EcU32 index, EcReal value)
 
virtual EcReal baseAccelerationFactor () const
 get the base acceleration factor.
 
virtual void setBaseAccelerationFactor (EcReal value)
 
virtual EcReal accelerationFactor () const
 the acceleration factor
 
virtual void setAccelerationFactor (EcReal value)
 set the acceleration factor. Must be positive
 
virtual EcBoolean setAccelerationFactor (EcU32 eeSetIndex, EcU32 eeIndex, EcReal value)
 Set the acceleration factor for a particular end-effector. More...
 
virtual void setControlMode (const EcU32 mode)
 
virtual EcBoolean setControlMode (const EcU32 eeSetIndex, const EcU32 eeIndex, const EcU32 mode)
 set the control mode for the end-effector specified by index.
 
virtual void setEndEffectorFilteringActive (EcBoolean value)
 
virtual EcBoolean setEndEffectorFilteringActive (EcU32 index, EcBoolean value)
 
virtual void setPreviousVelocityState (EcVelocityState *value)
 set the pointer to the velocity state from previous cycle
 
virtual EcVelocityStatepreviousVelocityState () const
 get the pointer to the velocity state from previous cycle
 
virtual EcBoolean useSoftEndEffectorSet () const
 return whether the soft version of the active end effector set is being used
 
virtual void setUseSoftEndEffectorSet (EcBoolean value)
 
virtual void setStoredDesiredPlacement (const EcSizeT &eeId, const EcEndEffectorPlacement &placement)
 set desired end effector placement to the active end effector itself for storage
 
- Public Member Functions inherited from EcXmlCompoundType
 ECDECLARE_BIGFOUR (EcXmlCompoundType)
 
virtual EcBoolean xmlInit () EC_OVERRIDE
 xmlInitialize
 
virtual EcBoolean readAttributes (EcXmlReader &stream)
 read object attributes from an XML stream
 
virtual EcBoolean readElements (EcXmlReader &stream)
 read object elements from an XML stream
 
virtual EcBoolean writeAttributes (EcXmlWriter &stream) const
 write object attributes to an XML stream
 
virtual EcBoolean writeElements (EcXmlWriter &stream) const
 write object elements to an XML stream
 
virtual EcBoolean writeSchema (EcXmlSchema &stream) const EC_OVERRIDE
 write schema
 
virtual EcBoolean writeSchemaAttributes (EcXmlSchema &stream) const
 write schema attributes
 
virtual EcBoolean writeSchemaElements (EcXmlSchema &stream) const
 write schema elements
 
virtual void registerComponent (const EcToken &token, EcXmlObject *obj)
 register a single component More...
 
virtual void registerComponent (EcXmlObject *obj)
 register a single component More...
 
virtual void registerComponentReadOnly (const EcToken &token, EcXmlObject *obj)
 register a single component as read-only More...
 
virtual const EcXmlComponentMapcomponentMap () const
 get a reference to the component map
 
virtual void registerAttributeComponent (const EcToken &AttribToken, EcXmlObject *Obj)
 register a single attribute component More...
 
virtual void registerAttributeComponentReadOnly (const EcToken &AttribToken, EcXmlObject *Obj)
 register a single attribute component read-only More...
 
virtual const EcXmlComponentMapattributeComponentMap ()
 get a reference to the component attribute map
 
virtual const EcXmlSpecialDescriptorMapspecialDescriptorMap ()
 get a reference to the special-descriptor map
 
virtual void registerComponentDescriptor (const EcToken &xmlToken, const EcToken &descriptorToken, const EcString &descriptorString)
 register an XML token-string descriptor More...
 
virtual const EcXmlTokenStringDescriptorMapMaptokenStringDescriptorMap ()
 get a reference to the XML token-string descriptor map
 
virtual EcBoolean hasChildren () const
 return EcTrue if there are children components or EcFalse if an empty element.
 
virtual EcBoolean hasAttributes () const
 return EcTrue if there are attributes in the element.
 
- Public Member Functions inherited from EcXmlObject
 ECDECLARE_BIGFOUR (EcXmlObject)
 
virtual EcBoolean readAttribute (EcXmlReader &stream)
 read this attribute from an XML stream
 
virtual EcBoolean createSchema (const EcString &filename, const EcToken &objectName=EcXml::EcDefaultToken) const
 create schema
 
virtual EcBoolean xmlInitialized () const
 get XML initialized flag. This bit is set on initialization.
 
virtual void setXmlInitialized (EcBoolean val=EcTrue)
 set XML initialized flag. This bit is set on initialization.
 
virtual EcBoolean specified () const
 get specified flag. This bit is set upon reading from an XML file.
 
virtual void setSpecified (EcBoolean val=EcTrue)
 set specified flag. This bit is set upon reading from an XML file.
 
virtual EcBoolean isBasicType () const
 Return true/false for basic type.
 
virtual EcBoolean equalsDefault () const
 tests equality of XML object with default
 

Static Public Member Functions

static EcVelocityController nullObject ()
 get a null object
 

Protected Types

typedef std::map< EcU32, SoftEndEffectorSetStateU32SoftEndEffectorSetStateMap
 type definition of map of EcU32 and SoftEndEffectorSetState
 

Protected Member Functions

virtual void mapSoftEndEffectorSetStates ()
 create and map soft end effector set states with the existing end effector sets
 
virtual void setEndEffectorToolOffsetPointers ()
 set the pointers to the tool offsets on the end effectors
 
- Protected Member Functions inherited from EcXmlCompoundType
virtual EcBoolean readValueFromToken (const EcToken &token, EcXmlReader &stream)
 
virtual EcBoolean readValueFromSpecialToken (const EcToken &token, EcXmlReader &stream)
 read value from unregistered token
 
virtual EcBoolean readAttributeFromToken (const EcToken &token, EcXmlReader &stream)
 
virtual EcXmlComponentMapnewComponentMap () const
 allocate a new componentMap
 
virtual EcXmlSpecialDescriptorMapnewSpecialDescriptorMap ()
 allocate a new specialDescriptorsMap
 
virtual EcXmlTokenStringDescriptorMapMapnewTokenStringDescriptorMap ()
 allocate a new tokenStringDescriptorsMap
 
virtual void createComponentMap () const
 create component map
 
virtual void createAttributeComponentMap ()
 create attribute component map
 
virtual void createSpecialDescriptorMap ()
 create special-descriptors map
 
virtual void createTokenStringDescriptorMap ()
 create token-string descriptor map
 
virtual EcBoolean isReadOnlyComponent (const EcToken token) const
 check to see if the token corresponds to a read-only component
 
virtual EcBoolean isReadOnlyAttribute (const EcToken token) const
 check to see if the token corresponds to a read-only attribute
 
virtual EcXmlObjectlibraryAttribute ()
 

Static Protected Member Functions

static SoftEndEffectorSetState createSoftEndEffectorSetState (const EcEndEffectorSet &eeSet)
 create a SoftEndEffectorSetState for a given end effector set
 

Protected Attributes

EcEndEffectorSet m_JointControlEndEffectorSet
 the end effector set for joint control
 
EcControlExpressionDescriptionVector m_vControlDescriptions
 the control descriptions
 
EcEndEffectorSetVector m_vEndEffectorSets
 the end effector sets
 
EcXmlU32 m_ActiveControlDescriptionIndex
 the index of active control description
 
EcXmlU32 m_ActiveEndEffectorSetIndex
 the index of active end effector set
 
EcXmlU32Vector m_ActiveEndEffectorIndices
 the indices of active end effectors for all EE sets including the joint control EE set
 
EcCoordinateSystemTransformationVector m_vToolOffsets
 the vector containing all tool offsets for the robot
 
EcXmlBoolean m_AllowDeviationNearSingularity
 the flag indicating whether to allow path deviation near singularity
 
EcU32 m_ManipulatorIndex
 the manipulator index
 
EcManipulatorEndEffectorVelocity m_EndEffectorVelocity
 the end effector velocity
 
const EcStatedSystemm_pStatedSystem
 the stated system
 
EcVelocityState m_CalculatedVelocityState
 the manipulator calculated velocity state
 
EcSystemActiveStatem_pSystemActiveState
 the system active state
 
EcPositionControllerm_pPositionController
 the parent position controller
 
EcManipulatorActiveState m_ManipulatorActiveState
 the manipulator active state
 
EcManipulatorActivePositionState m_PreviousActivePositionState
 previous manipulator active stata
 
EcReal m_PrimaryDeterminant
 store the determinant
 
EcReArray m_NullSpace
 store the null space for two steps velocity control singularity detection
 
EcJacobianState m_JointControlJacobianState
 the Jacobian state for the joint control end-effector set
 
std::vector< EcJacobianStatem_vJacobianStates
 vector of Jacobian states
 
EcReal m_BaseSpeedFactor
 the base speed factor.
 
EcReal m_SpeedFactor
 
EcReal m_BaseAccelerationFactor
 the base acceleration factor.
 
EcReal m_AccelerationFactor
 the acceleration factor
 
EcVelocityStatem_pPrevVelocityState
 the velocity state from previous cycle
 
U32SoftEndEffectorSetStateMap m_SoftEndEffectorSetMap
 map of soft end effector set state
 
EcBoolean m_UseSoftEndEffectorSet
 flag indicating whether to use soft end effector set
 
- Protected Attributes inherited from EcXmlCompoundType
EcXmlComponentMapm_pComponentMap
 
EcXmlComponentMapm_pAttributeComponentMap
 
EcXmlSpecialDescriptorMapm_pSpecialDescriptorMap
 
EcXmlTokenStringDescriptorMapMapm_pComponentMapTokenStringDescriptor
 
- Protected Attributes inherited from EcXmlObject
EcU8 m_State
 the state of the object - eight boolean flags
 

Static Protected Attributes

static const EcEndEffectorSet m_theNullEndEffectorSet
 the null end effector set for error recovery
 
static const EcControlExpressionDescription m_theControlDescription
 the null control description for error recovery
 
- Static Protected Attributes inherited from EcXmlObject
static const EcU8 m_theXmlInitializedBit
 the bit used to describe xml initialization
 
static const EcU8 m_theSpecifiedBit
 the bit used to describe specification
 

Detailed Description

Holds a description of a velocity controller for one manipulator.

Definition at line 23 of file ecVelocityController.h.

Member Function Documentation

virtual EcU32 EcVelocityController::activeControlDescriptionIndex ( ) const
virtual

gets the index of the active control description

Returns
The index of the active control description.
virtual EcBoolean EcVelocityController::addDefaultControlDescriptionAndEndEffectorSet ( const EcIndividualManipulator manipulator)
virtual

adds a control control description, an effector set with default parameters, and a joint control end-effector set

Parameters
[in]manipulatorThe manipulator for which the control description will be added.
Returns
True if successful.
virtual const EcControlExpressionDescription& EcVelocityController::controlExpressionDescription ( ) const
virtual

gets the active control expression description. This should be called only if isControlExpressionDescriptionValid returns true to prevent out-of-range error.

virtual EcControlExpressionDescription& EcVelocityController::controlExpressionDescription ( )
virtual

gets the active control expression description – non-const version. This should be called only if isControlExpressionDescriptionValid returns true to prevent out-of-range error.

virtual EcBoolean EcVelocityController::deleteControlDescription ( EcU32  controlDescriptionIndex)
virtual

deletes a control description from a manipulator Deletes a control description from a manipulator. Note the after this operation, the indices of control descriptions for that manipulator may be shifted.

Parameters
[in]controlDescriptionIndexThe index of the control description to be deleted. If this index is currently the active index, then the active index will be changed to 0.
Returns
True if successful or false if controlDescriptionIndex is out of range. Also, if there's only one control description for this manipulator, then it will not be deleted and false will be returned.
virtual const EcEndEffectorRelativeLinkData& EcVelocityController::endEffectorRelativeLinkData ( const EcU32  endEffectorIndex) const
virtual

gets the relative link data. Returns identity if the indices are not valid.

EcEndEffectorSet& EcVelocityController::endEffectorSet ( EcBoolean  normal = EcFalse)

gets the active end-effector set – non-const version

Parameters
normalIf true, it'll always return the active normal EE set. If false (default), it will return the active EE set (could be soft EE set if useSoftEndEffectorSet() is true).
virtual EcBoolean EcVelocityController::getToolOffset ( EcU32  eeSetIndex,
EcU32  eeIndex,
EcBoolean useToolOffset,
EcCoordinateSystemTransformation value 
) const
virtual

Get the tool offset for a given end effector.

Parameters
[in]eeSetIndexthe end-effector set index
[in]eeIndexthe end-effector index
[out]useToolOffsetwhether the end-effector uses external tool offset
[out]valuethe tool offset
Returns
True if succeeded.
virtual EcBoolean EcVelocityController::getToolOffset ( EcU32  eeSetIndex,
EcU32  eeIndex,
EcCoordinateSystemTransformation value 
) const
virtual

Gets the tool offset for a given end effector.

See also
EcEndEffectorSet::getToolOffset
Parameters
[in]eeSetIndexthe end-effector set index
[in]eeIndexthe end-effector index
[out]valuethe tool offset
Returns
True if the indices are valid and the EE type is supported.
virtual EcJacobianState& EcVelocityController::jacobianState ( EcBoolean  normal = EcFalse) const
virtual

get the active jacobian state

Parameters
normalIf true, it'll always return the Jacobian state of the active normal EE set. If false (default), it will return that of the active EE set (could be soft EE set if useSoftEndEffectorSet() is true).
virtual void EcVelocityController::resetActiveState ( )
virtual

invalidates the active states and sets new position and velocity values This should be called whenever the state changes.

virtual EcBoolean EcVelocityController::setAccelerationFactor ( EcU32  eeSetIndex,
EcU32  eeIndex,
EcReal  value 
)
virtual

Set the acceleration factor for a particular end-effector.

Parameters
[in]eeSetIndexthe end-effector set index
[in]eeIndexthe end-effector index
[in]valuethe acceleration factor, must be in (0, 1]
virtual EcBoolean EcVelocityController::setActiveControlDescription ( EcU32  index)
virtual

sets the active control description by index.

Parameters
[in]indexThe index of the active control description to be set.
Returns
True if successful or false if value is out of range.
virtual EcBoolean EcVelocityController::setActiveEndEffectorSet ( EcU32  index)
virtual

sets the active end-effector set by index.

Parameters
[in]indexThe index of the active control description to be set. Use JOINT_CONTROL_INDEX to set the joint control end-effector set active.
Returns
True if successful or false if value is out of range.
virtual void EcVelocityController::setBaseAccelerationFactor ( EcReal  value)
virtual

set the base acceleration factor. Must be positive. The actual acceleration factor will be accelerationFactor()*baseAccelerationFactor().

See also
setAccelerationFactor()
virtual void EcVelocityController::setBaseSpeedFactor ( EcReal  value)
virtual

set the base speed factor. Must be positive. The actual speed factor will be speedFactor()*baseSpeedFactor(). This allows the robot to move slower or faster than limitations in the joint rate limits and end-effector speed limits.

See also
setSpeedFactor()
virtual void EcVelocityController::setControlMode ( const EcU32  mode)
virtual

set the control mode for all end-effectors in the active set

virtual void EcVelocityController::setEndEffectorFilteringActive ( EcBoolean  value)
virtual

set whether filtering is active of all end-effectors in the current end-effector set only. If it's false, then the end-effectors will essentially have no limits.

virtual EcBoolean EcVelocityController::setEndEffectorFilteringActive ( EcU32  index,
EcBoolean  value 
)
virtual

set whether filtering is active for the end-effector specified by index in the current end-effector set only. If it's false, then the end-effector will essentially have no limits. Returns false if index is invalid or true otherwise.

virtual void EcVelocityController::setEndEffectorSpeedFactor ( EcReal  value)
virtual

set the speed factor of all end-effectors in the current end-effector set only. The value will be multiplied by the base speed factor before being set to the end-effectors.

See also
baseSpeedFactor()
virtual EcBoolean EcVelocityController::setEndEffectorSpeedFactor ( EcU32  index,
EcReal  value 
)
virtual

set the speed factor for the end-effector specified by index in the current end-effector set only. The value will be multiplied by the base speed factor before being set to the end-effectors.

See also
baseSpeedFactor()
virtual EcInt32 EcVelocityController::setIsHardConstraint ( const EcU32  eeSetIndex,
const EcU32  eeIndex,
const EcBoolean  value 
)
virtual

Set is hard constraint flag.

The method does nothing if the flag does not change.

Parameters
[in]eeSetIndexthe end-effector set index
[in]eeIndexthe end-effector index
[in]valuetrue if hard constraint, false if soft constraint
Returns
-1 if the indices are invalid. 0 if the flag is the same. 1 if the flag is changed.
virtual void EcVelocityController::setSpeedFactor ( EcReal  value)
virtual

set the speed factor. This sets the speed factor for all end-effector sets as well as the underlying controller.Must be positive. The actual speed factor will be speedFactor()*baseSpeedFactor(). This allows the robot to move slower or faster than limitations in the joint rate limits and end-effector speed limits. For example, in jogging mode, we may set the base speed factor to be 0.2 (20%). Then, if the speed factor is 1, then the robot will move at 20%. If we set the speed factor to 0.5, then we will move at 0.2*0.5 = 0.1 (10%).

See also
baseSpeedFactor(), setBaseSpeedFactor()
virtual EcBoolean EcVelocityController::setSpeedFactor ( EcU32  eeSetIndex,
EcU32  eeIndex,
EcReal  value 
)
virtual

Set the speed factor for a particular end-effector.

Parameters
[in]eeSetIndexthe end-effector set index
[in]eeIndexthe end-effector index
[in]valuethe speed factor, must be in (0, 1]
virtual EcBoolean EcVelocityController::setToolOffset ( EcU32  index,
const EcCoordinateSystemTransformation value 
)
virtual

sets the tool offset at a given index Returns false if index is invalid or true otherwise.

virtual EcBoolean EcVelocityController::setToolOffset ( EcU32  eeSetIndex,
EcU32  eeIndex,
const EcCoordinateSystemTransformation value 
)
virtual

Sets the tool offset in link primary frame for a given end-effector.

See also
EcEndEffectorSet::setToolOffset
Parameters
[in]eeSetIndexthe end-effector set index
[in]eeIndexthe end-effector index
[in]valuethe new tool offset
Returns
True if the indices are valid and the EE type is supported.
virtual void EcVelocityController::setUseSoftEndEffectorSet ( EcBoolean  value)
virtual

set whether the soft version of the active end effector set is being used. Using soft end effector set allows end effectors to deviate from their intended path. This can help in anti-collision, avoid singularities, etc.

Member Data Documentation

EcReal EcVelocityController::m_SpeedFactor
protected

the speed factor, allowing the robot to move slower or faster than limitations in the joint rate limits and end-effector speed limits

Definition at line 776 of file ecVelocityController.h.


The documentation for this class was generated from the following file:
Created by Energid Technologies www.energid.com
Copyright © 2016 Energid. All trademarks mentioned in this document are property of their respective owners.