Skip to main content

ControllerWithRobotModel Class

Declaration

class moveit_pro_controllers::ControllerWithRobotModel { ... }

Included Headers

#include <ros2_control_utils.hpp>

Derived Classes

classJointTrajectoryAdmittanceController
classJointVelocityController
classVelocityForceController

Public Constructors Index

ControllerWithRobotModel ()=default

Public Member Functions Index

boolconfigurePlanningGroup (const std::shared_ptr< rclcpp_lifecycle::LifecycleNode > &node, const std::string_view &planning_group_name, bool chain_required=true)
boolconfigureToolFrames (const std::string &controller_name, const std::vector< std::string > &sensor_frames, const std::vector< std::string > &ee_frames)
voidsubscribeToRobotDescription (const std::shared_ptr< rclcpp_lifecycle::LifecycleNode > &node)
tl::expected< void, std::string >loadRobotModel (const std::shared_ptr< rclcpp_lifecycle::LifecycleNode > &node)
voidsetRobotDescription (const std_msgs::msg::String::ConstSharedPtr robot_description)
voidsetRobotDescriptionSemantic (const std_msgs::msg::String::ConstSharedPtr robot_description_semantic)
boolgetJointPositionLimits (const std::vector< std::string > &joint_names, Eigen::VectorNd &lower_position_limits, Eigen::VectorNd &upper_position_limits) const
const moveit_pro::base::RobotModel &getRobotModel () const
const moveit_pro::base::RobotState &getRobotState () const
moveit_pro::base::RobotState &getRobotState ()
const std::string &getPlanningGroupName () const
const std::vector< std::string > &getJointNames () const
std::size_tgetDofCount () const
const moveit_pro::base::JointModelGroup *getJointModelGroup () const
const moveit_pro::base::LinkModel *getBaseLink () const
const moveit_pro::base::LinkModel *getFirstEndEffectorLink () const
std::span< moveit_pro::base::LinkModel const *const >getEndEffectorLinks () const
const moveit_pro::base::LinkModel *getFirstSensorLink () const
std::span< moveit_pro::base::LinkModel const *const >getSensorLinks () const

Private Member Functions Index

tl::expected< void, std::string >parseRobotDescription (const std::string &robot_description, const std::string &robot_description_semantic)

Private Member Attributes Index

rclcpp::Subscription< std_msgs::msg::String >::SharedPtrrobot_description_subscription_
rclcpp::Subscription< std_msgs::msg::String >::SharedPtrrobot_description_semantic_subscription_
std::stringrobot_description_
std::stringrobot_description_semantic_
std::mutexrobot_description_mutex_
std::unique_ptr< moveit_pro::base::rdf_loader::RDFLoader >rdf_loader_
std::shared_ptr< moveit_pro::base::RobotModel >robot_model_
std::unique_ptr< moveit_pro::base::RobotState >robot_state_
std::stringplanning_group_name_
std::vector< std::string >joint_names_
std::size_tdof_count_ = 0
const moveit_pro::base::JointModelGroup *joint_model_group_ = nullptr
const moveit_pro::base::LinkModel *base_link_ = nullptr
std::vector< const moveit_pro::base::LinkModel * >ee_links_
std::vector< const moveit_pro::base::LinkModel * >sensor_links_

Public Static Functions Index

static booldofWithinCapacity (std::size_t dof_count)

Definition at line 180 of file ros2_control_utils.hpp.

Public Constructors

ControllerWithRobotModel()

moveit_pro_controllers::ControllerWithRobotModel::ControllerWithRobotModel ()
default

Definition at line 183 of file ros2_control_utils.hpp.

Public Member Functions

configurePlanningGroup()

bool moveit_pro_controllers::ControllerWithRobotModel::configurePlanningGroup (const std::shared_ptr< rclcpp_lifecycle::LifecycleNode > & node, const std::string_view & planning_group_name, bool chain_required=true)

Declaration at line 186 of file ros2_control_utils.hpp, definition at line 183 of file ros2_control_utils.cpp.

configureToolFrames()

bool moveit_pro_controllers::ControllerWithRobotModel::configureToolFrames (const std::string & controller_name, const std::vector< std::string > & sensor_frames, const std::vector< std::string > & ee_frames)

Declaration at line 190 of file ros2_control_utils.hpp, definition at line 252 of file ros2_control_utils.cpp.

getBaseLink()

const moveit_pro::base::LinkModel * moveit_pro_controllers::ControllerWithRobotModel::getBaseLink ()
inline

Definition at line 256 of file ros2_control_utils.hpp.

getDofCount()

std::size_t moveit_pro_controllers::ControllerWithRobotModel::getDofCount ()
inline

Definition at line 246 of file ros2_control_utils.hpp.

getEndEffectorLinks()

std::span< moveit_pro::base::LinkModel const *const > moveit_pro_controllers::ControllerWithRobotModel::getEndEffectorLinks ()
inline

Definition at line 265 of file ros2_control_utils.hpp.

getFirstEndEffectorLink()

const moveit_pro::base::LinkModel * moveit_pro_controllers::ControllerWithRobotModel::getFirstEndEffectorLink ()
inline

Definition at line 261 of file ros2_control_utils.hpp.

getFirstSensorLink()

const moveit_pro::base::LinkModel * moveit_pro_controllers::ControllerWithRobotModel::getFirstSensorLink ()
inline

Definition at line 270 of file ros2_control_utils.hpp.

getJointModelGroup()

const moveit_pro::base::JointModelGroup * moveit_pro_controllers::ControllerWithRobotModel::getJointModelGroup ()
inline

Definition at line 251 of file ros2_control_utils.hpp.

getJointNames()

const std::vector< std::string > & moveit_pro_controllers::ControllerWithRobotModel::getJointNames ()
inline

Definition at line 240 of file ros2_control_utils.hpp.

getJointPositionLimits()

bool moveit_pro_controllers::ControllerWithRobotModel::getJointPositionLimits (const std::vector< std::string > & joint_names, Eigen::VectorNd & lower_position_limits, Eigen::VectorNd & upper_position_limits)

Declaration at line 207 of file ros2_control_utils.hpp, definition at line 412 of file ros2_control_utils.cpp.

getPlanningGroupName()

const std::string & moveit_pro_controllers::ControllerWithRobotModel::getPlanningGroupName ()
inline

Definition at line 234 of file ros2_control_utils.hpp.

getRobotModel()

const moveit_pro::base::RobotModel & moveit_pro_controllers::ControllerWithRobotModel::getRobotModel ()
inline

Definition at line 217 of file ros2_control_utils.hpp.

getRobotState()

const moveit_pro::base::RobotState & moveit_pro_controllers::ControllerWithRobotModel::getRobotState ()
inline

Definition at line 224 of file ros2_control_utils.hpp.

getRobotState()

moveit_pro::base::RobotState & moveit_pro_controllers::ControllerWithRobotModel::getRobotState ()
inline

Definition at line 229 of file ros2_control_utils.hpp.

getSensorLinks()

std::span< moveit_pro::base::LinkModel const *const > moveit_pro_controllers::ControllerWithRobotModel::getSensorLinks ()
inline

Definition at line 274 of file ros2_control_utils.hpp.

loadRobotModel()

tl::expected< void, std::string > moveit_pro_controllers::ControllerWithRobotModel::loadRobotModel (const std::shared_ptr< rclcpp_lifecycle::LifecycleNode > & node)

Declaration at line 199 of file ros2_control_utils.hpp, definition at line 347 of file ros2_control_utils.cpp.

setRobotDescription()

void moveit_pro_controllers::ControllerWithRobotModel::setRobotDescription (const std_msgs::msg::String::ConstSharedPtr robot_description)

Declaration at line 202 of file ros2_control_utils.hpp, definition at line 333 of file ros2_control_utils.cpp.

setRobotDescriptionSemantic()

void moveit_pro_controllers::ControllerWithRobotModel::setRobotDescriptionSemantic (const std_msgs::msg::String::ConstSharedPtr robot_description_semantic)

Declaration at line 203 of file ros2_control_utils.hpp, definition at line 339 of file ros2_control_utils.cpp.

subscribeToRobotDescription()

void moveit_pro_controllers::ControllerWithRobotModel::subscribeToRobotDescription (const std::shared_ptr< rclcpp_lifecycle::LifecycleNode > & node)

Declaration at line 194 of file ros2_control_utils.hpp, definition at line 305 of file ros2_control_utils.cpp.

Private Member Functions

parseRobotDescription()

tl::expected< void, std::string > moveit_pro_controllers::ControllerWithRobotModel::parseRobotDescription (const std::string & robot_description, const std::string & robot_description_semantic)

Declaration at line 283 of file ros2_control_utils.hpp, definition at line 316 of file ros2_control_utils.cpp.

Private Member Attributes

base_link_

const moveit_pro::base::LinkModel* moveit_pro_controllers::ControllerWithRobotModel::base_link_ = nullptr

Definition at line 305 of file ros2_control_utils.hpp.

dof_count_

std::size_t moveit_pro_controllers::ControllerWithRobotModel::dof_count_ = 0

Definition at line 301 of file ros2_control_utils.hpp.

ee_links_

std::vector<const moveit_pro::base::LinkModel*> moveit_pro_controllers::ControllerWithRobotModel::ee_links_

Definition at line 306 of file ros2_control_utils.hpp.

joint_model_group_

const moveit_pro::base::JointModelGroup* moveit_pro_controllers::ControllerWithRobotModel::joint_model_group_ = nullptr

Definition at line 304 of file ros2_control_utils.hpp.

joint_names_

std::vector<std::string> moveit_pro_controllers::ControllerWithRobotModel::joint_names_

Definition at line 300 of file ros2_control_utils.hpp.

planning_group_name_

std::string moveit_pro_controllers::ControllerWithRobotModel::planning_group_name_

Definition at line 299 of file ros2_control_utils.hpp.

rdf_loader_

std::unique_ptr<moveit_pro::base::rdf_loader::RDFLoader> moveit_pro_controllers::ControllerWithRobotModel::rdf_loader_

Definition at line 294 of file ros2_control_utils.hpp.

robot_description_

std::string moveit_pro_controllers::ControllerWithRobotModel::robot_description_

Definition at line 289 of file ros2_control_utils.hpp.

robot_description_mutex_

std::mutex moveit_pro_controllers::ControllerWithRobotModel::robot_description_mutex_

Definition at line 291 of file ros2_control_utils.hpp.

robot_description_semantic_

std::string moveit_pro_controllers::ControllerWithRobotModel::robot_description_semantic_

Definition at line 290 of file ros2_control_utils.hpp.

robot_description_semantic_subscription_

rclcpp::Subscription<std_msgs::msg::String>::SharedPtr moveit_pro_controllers::ControllerWithRobotModel::robot_description_semantic_subscription_

Definition at line 288 of file ros2_control_utils.hpp.

robot_description_subscription_

rclcpp::Subscription<std_msgs::msg::String>::SharedPtr moveit_pro_controllers::ControllerWithRobotModel::robot_description_subscription_

Definition at line 287 of file ros2_control_utils.hpp.

robot_model_

std::shared_ptr<moveit_pro::base::RobotModel> moveit_pro_controllers::ControllerWithRobotModel::robot_model_

Definition at line 295 of file ros2_control_utils.hpp.

robot_state_

std::unique_ptr<moveit_pro::base::RobotState> moveit_pro_controllers::ControllerWithRobotModel::robot_state_

Definition at line 296 of file ros2_control_utils.hpp.

sensor_links_

std::vector<const moveit_pro::base::LinkModel*> moveit_pro_controllers::ControllerWithRobotModel::sensor_links_

Definition at line 307 of file ros2_control_utils.hpp.

Public Static Functions

dofWithinCapacity()

bool moveit_pro_controllers::ControllerWithRobotModel::dofWithinCapacity (std::size_t dof_count)
static

Declaration at line 214 of file ros2_control_utils.hpp, definition at line 407 of file ros2_control_utils.cpp.


The documentation for this class was generated from the following files:


Generated via doxygen2docusaurus 2.2.2 by Doxygen 1.9.8.