Aikido
|
Robot interface for defining basic behaviors of a robot. More...
#include <aikido/robot/Robot.hpp>
Public Member Functions | |
virtual | ~Robot ()=default |
virtual std::unique_ptr< aikido::trajectory::Spline > | smoothPath (const dart::dynamics::MetaSkeletonPtr &metaSkeleton, const aikido::trajectory::Trajectory *path, const constraint::TestablePtr &constraint)=0 |
Returns a timed trajectory that can be executed by the robot. More... | |
virtual std::unique_ptr< aikido::trajectory::Spline > | retimePath (const dart::dynamics::MetaSkeletonPtr &metaSkeleton, const aikido::trajectory::Trajectory *path)=0 |
Returns a timed trajectory that can be executed by the robot. More... | |
virtual std::unique_ptr< aikido::trajectory::Spline > | retimePathWithKunz (const dart::dynamics::MetaSkeletonPtr &metaSkeleton, const aikido::trajectory::Trajectory *path, double maxDeviation, double timestep)=0 |
Returns a timed trajectory computed with KunzRetimer. More... | |
virtual std::future< void > | executeTrajectory (const trajectory::TrajectoryPtr &trajectory) const =0 |
Executes a trajectory. More... | |
virtual boost::optional< Eigen::VectorXd > | getNamedConfiguration (const std::string &name) const =0 |
Returns a named configuration. More... | |
virtual void | setNamedConfigurations (std::unordered_map< std::string, const Eigen::VectorXd > namedConfigurations)=0 |
Sets the list of named configurations. More... | |
virtual std::string | getName () const =0 |
virtual dart::dynamics::ConstMetaSkeletonPtr | getMetaSkeleton () const =0 |
dart::dynamics::MetaSkeletonPtr | getMetaSkeleton () |
virtual aikido::statespace::dart::ConstMetaSkeletonStateSpacePtr | getStateSpace () const =0 |
aikido::statespace::dart::MetaSkeletonStateSpacePtr | getStateSpace () |
virtual void | setRoot (Robot *robot)=0 |
Sets the root of this robot. More... | |
virtual void | step (const std::chrono::system_clock::time_point &timepoint)=0 |
Simulates up to the provided timepoint. More... | |
virtual constraint::dart::CollisionFreePtr | getSelfCollisionConstraint (const statespace::dart::ConstMetaSkeletonStateSpacePtr &space, const dart::dynamics::MetaSkeletonPtr &metaSkeleton) const =0 |
Returns self-collision constraint. More... | |
virtual constraint::TestablePtr | getFullCollisionConstraint (const statespace::dart::ConstMetaSkeletonStateSpacePtr &space, const dart::dynamics::MetaSkeletonPtr &metaSkeleton, const constraint::dart::CollisionFreePtr &collisionFree) const =0 |
TODO: Consider changing this to return a CollisionFreePtr. More... | |
Robot interface for defining basic behaviors of a robot.
A concrete implementation of robot should support a collection of planning methods.
|
virtualdefault |
|
pure virtual |
Executes a trajectory.
[in] | trajectory | Timed trajectory to execute |
Implemented in aikido::robot::ConcreteRobot, and aikido::robot::ConcreteManipulator.
|
pure virtual |
TODO: Consider changing this to return a CollisionFreePtr.
Combines provided collision constraint with self collision constraint.
[in] | space | Space in which this collision constraint operates. |
[in] | metaSkeleton | Metaskeleton for the statespace. |
[in] | collisionFree | Collision constraint. |
Implemented in aikido::robot::ConcreteRobot, and aikido::robot::ConcreteManipulator.
dart::dynamics::MetaSkeletonPtr aikido::robot::Robot::getMetaSkeleton | ( | ) |
|
pure virtual |
Implemented in aikido::robot::ConcreteRobot, and aikido::robot::ConcreteManipulator.
|
pure virtual |
Implemented in aikido::robot::ConcreteRobot, and aikido::robot::ConcreteManipulator.
|
pure virtual |
Returns a named configuration.
[in] | name | Name of the configuration |
Implemented in aikido::robot::ConcreteRobot, and aikido::robot::ConcreteManipulator.
|
pure virtual |
Returns self-collision constraint.
[in] | space | Space in which this collision constraint operates. |
[in] | metaSkeleton | Metaskeleton for the statespace. |
Implemented in aikido::robot::ConcreteRobot, and aikido::robot::ConcreteManipulator.
aikido::statespace::dart::MetaSkeletonStateSpacePtr aikido::robot::Robot::getStateSpace | ( | ) |
|
pure virtual |
Implemented in aikido::robot::ConcreteRobot, and aikido::robot::ConcreteManipulator.
|
pure virtual |
Returns a timed trajectory that can be executed by the robot.
[in] | metaSkeleton | Metaskeleton of the path. |
[in] | path | Geometric path to execute. |
Implemented in aikido::robot::ConcreteRobot, and aikido::robot::ConcreteManipulator.
|
pure virtual |
Returns a timed trajectory computed with KunzRetimer.
[in] | metaSkeleton | Metaskeleton of the path. |
[in] | path | Geometric path to execute. |
[in] | maxDeviation | Maximum deviation allowed from original path. |
[in] | timestep | Time step between trajectory points. |
Implemented in aikido::robot::ConcreteRobot, and aikido::robot::ConcreteManipulator.
|
pure virtual |
Sets the list of named configurations.
[in] | namedConfigurations | Map of name, configuration |
Implemented in aikido::robot::ConcreteRobot, and aikido::robot::ConcreteManipulator.
|
pure virtual |
Sets the root of this robot.
[in] | robot | Parent robot |
Implemented in aikido::robot::ConcreteRobot, and aikido::robot::ConcreteManipulator.
|
pure virtual |
Returns a timed trajectory that can be executed by the robot.
[in] | metaSkeleton | Metaskeleton of the path. |
[in] | path | Geometric path to execute. |
[in] | constraint | Must be satisfied after postprocessing. Typically collision constraint is passed. |
Implemented in aikido::robot::ConcreteRobot, and aikido::robot::ConcreteManipulator.
|
pure virtual |
Simulates up to the provided timepoint.
[in] | timepoint | Time to simulate to. |
Implemented in aikido::robot::ConcreteRobot, and aikido::robot::ConcreteManipulator.