Public Types | |
enum | JointType { Prismatic = KinematicChain::Link::Prismatic, Revolute = KinematicChain::Link::Revolute } |
enum | CoordFrame { UnknownFrame, EndEffectorFrame, EndEffectorBaseFrame, BaseFrame, MountFrame, PlatformFrame, WorldFrame } |
Public Member Functions | |
TestRobot () | |
instantiate default robot (fixed platform with a single Puma manipulator) | |
TestRobot (ref< base::VFile > robotSpecification, const base::Point3 &initialPosition, const base::Orient &initialOrientation) | |
instantiate robot from file specification | |
TestRobot (ref< const robot::RobotDescription > robotDescription, const base::Point3 &initialPosition, const base::Orient &initialOrientation) | |
instantiate robot from a description | |
TestRobot (const base::IVector &jointType, const base::Vector &alpha, const base::Vector &a, const base::Vector &d, const base::Vector &theta) | |
instantiate a fixed platform with a single manipulator specified via D-H parameters | |
virtual String | className () const |
virtual array< std::pair< String, String > > | controlInterfaces () const |
virtual ref< ControlInterface > | getControlInterface (String interfaceName="") throw (std::invalid_argument) |
virtual bool | isDescriptionProvided () const |
is there a description of this robot available? | |
const base::Point3 | getPosition () const |
< get world frame position of robot | |
const base::Orient | getOrientation () const |
< get world frame orientation of robot | |
void | setPosition (const base::Point3 &pos) |
void | setOrientation (const base::Orient &orient) |
void | placeToolInProximity (ref< const ToolDescription > toolDescription, Int manipIndex=0) |
void | removeToolFromProximity (Int manipIndex=0) |
remove any tool from within grasping range of the end-effector | |
virtual ref< const RobotDescription > | getRobotDescription () const throw (std::logic_error) |
get a description of the robot, if provided. Throws an exception if no description can be provided. | |
virtual ref< RobotDescription > | newRobotDescription () const |
virtual ref< PlatformDescription > | newPlatformDescription () const |
virtual ref< ManipulatorDescription > | newManipulatorDescription () const |
virtual ref< ToolDescription > | newToolDescription () const |
base::Matrix4 | coordFrameTransform (CoordFrame from, CoordFrame to=PlatformFrame, Int manipulatorIndex=0, const base::Matrix4 &T=base::Matrix4(), const base::Point3 &platformPosition=base::Point3(), const base::Orient &platformOrientation=base::Orient()) const |
virtual bool | isSameKindAs (const ReferencedObject &) const |
virtual bool | isSameKindAs (const Object &) const |
void | reference () const |
bool | unreference () const |
const int | referenceCount () const |
void | enableOnUnreferenceCall (bool enabled) |
virtual void | onUnreference () const |
Static Public Member Functions | |
CoordFrame | coordFrame (const String &frameString) |
convert String coord. frame specifier to CoordFrame | |
String | coordFrame (CoordFrame coordFrame) |
convert coord. frame specifier to String | |
Protected Member Functions | |
void | create (String manipName, const base::IVector &jointType, const base::Vector &alpha, const base::Vector &a, const base::Vector &d, const base::Vector &theta) |
void | initManipulators () |
void | setRobotDescription (ref< const RobotDescription > robotDescription) |
Protected Attributes | |
base::Point3 | position |
world frame position of robot | |
base::Orient | orientation |
world frame orientation of robot | |
array< Vector > | qa |
joint parameters of manipulators | |
array< Vector > | tqa |
joint parameters of tools (index corresponds to manipulators (qa) - i.e. at most one tool per manipulator) | |
array< bool > | toolProximity |
is a tool in proximity of manipulator end-effector? | |
array< bool > | toolGrasped |
is manipulator grasping a tool? | |
array< ref< const ToolDescription > > | tools |
which tool (in proximity and possibly being grasped) | |
int | _refCount |
bool | onUnreferenceEnabled |
Definition at line 45 of file TestRobot.
|
|
|
|
|
instantiate default robot (fixed platform with a single Puma manipulator)
|
|
instantiate robot from file specification
|
|
instantiate robot from a description
|
|
instantiate a fixed platform with a single manipulator specified via D-H parameters
|
|
return the name of the object's class type. Must be defined by derived classes. Implements base::Object. |
|
A Robot provides a number of ControlInterfaces for various parts, such as its drive platform, manipulators and other sensors etc. Refer to documentation for specific concrete Robot implementation for specific ControlInterface names and descriptions. This method enumerates the ControlInterface names and their types. The interfaces can be obtained by passing the name to the getControlInterface() method. Reimplemented from robot::Robot. |
|
convert coord. frame specifier to String
|
|
convert String coord. frame specifier to CoordFrame
|
|
Obtain transformation that will transform between coordinate frames Some transformations will require further information, such as specifying the forward kinematics transform from the base frame to the end-effector frame, or which manipulator (EndEffector[Base]Frame, BaseFrame & MountFrame) Transformations involving the WorldFrame require the platform position and orientation. |
|
|
|
If enabled, each call to unreference() will also call virtual method onUnreference() Definition at line 115 of file Referenced. References base::Referenced::onUnreferenceEnabled. |
|
TestRobot provides the following ControlInterfaces (name:type): platformPosition:PlatformPositionControl
manipulatorPositionN:JointPositionControl
manipulatorProximityN:LinkProximitySensors
manipulatorToolGripN:ToolGripControl
toolPositionN:JointPositionControl
Implements robot::Robot. |
|
< get world frame orientation of robot
|
|
< get world frame position of robot
Definition at line 99 of file TestRobot. References base::Point3. |
|
get a description of the robot, if provided. Throws an exception if no description can be provided.
Definition at line 64 of file Robot. References Exception, and robot::Robot::isDescriptionProvided(). |
|
|
|
is there a description of this robot available?
Reimplemented from robot::Robot. |
|
|
|
Definition at line 52 of file ReferencedObject. |
|
Reimplemented in robot::sim::SimulatedRobot. Definition at line 76 of file Robot. References NewObj. |
|
Reimplemented in robot::sim::SimulatedRobot. Definition at line 75 of file Robot. References NewObj. |
|
Definition at line 74 of file Robot. References NewObj. |
|
Definition at line 77 of file Robot. References NewObj. |
|
Called by unreference() if enabled via enableOnUnreferenceCall(true). Typically overridden in subclasses that wish to know about unreference() calls - for example to handle manually breaking cyclic references Reimplemented in robot::control::ControllableAdaptor::AdaptorControlInterface, and robot::control::ControllableAdaptor. Definition at line 121 of file Referenced. Referenced by base::Referenced::unreference(). |
|
because tools are not physically simulated, we can 'magically' indicate that a tool is within grasping range of the end-effector |
|
Increment the reference count by one, indicating that this object has another pointer which is referencing it. Definition at line 65 of file Referenced. References base::Referenced::_refCount. |
|
Return the number pointers currently referencing this object. Definition at line 112 of file Referenced. References base::Referenced::_refCount. Referenced by robot::control::ControllableAdaptor::AdaptorControlInterface::onUnreference(). |
|
remove any tool from within grasping range of the end-effector
|
|
|
|
Definition at line 103 of file TestRobot. References base::Point3. |
|
|
|
Decrement the reference count by one, indicating that a pointer to this object is referencing it. If the refence count goes to zero, it is assumed that this object is nolonger referenced and is automatically deleted. Definition at line 81 of file Referenced. References base::Referenced::_refCount, Exception, base::Referenced::onUnreference(), and base::Referenced::onUnreferenceEnabled. |
|
Definition at line 136 of file Referenced. Referenced by base::Referenced::reference(), base::Referenced::referenceCount(), base::Referenced::Referenced(), base::Referenced::unreference(), and base::Referenced::~Referenced(). |
|
Definition at line 137 of file Referenced. Referenced by base::Referenced::enableOnUnreferenceCall(), base::Referenced::Referenced(), and base::Referenced::unreference(). |
|
world frame orientation of robot
|
|
world frame position of robot
|
|
joint parameters of manipulators
|
|
is manipulator grasping a tool?
|
|
is a tool in proximity of manipulator end-effector?
|
|
which tool (in proximity and possibly being grasped)
|
|
joint parameters of tools (index corresponds to manipulators (qa) - i.e. at most one tool per manipulator)
|