wrench_manager.hpp
Go to the documentation of this file.
1 #ifndef __WRENCH_MANAGER__
2 #define __WRENCH_MANAGER__
3 
6 #include <geometry_msgs/WrenchStamped.h>
8 #include <ros/ros.h>
10 #include <tf/transform_listener.h>
11 #include <Eigen/Dense>
14 
16 {
21 class WrenchManager : public ManagerBase
22 {
23  public:
26 
38  bool initializeWrenchComm(const std::string &end_effector,
39  const std::string &sensor_frame,
40  const std::string &gripping_point_frame,
41  const std::string &sensor_topic,
42  const std::string &calib_matrix_param);
43 
52  bool wrenchAtGrippingPoint(const std::string &end_effector,
53  Eigen::Matrix<double, 6, 1> &wrench) const;
54 
62  bool wrenchAtSensorPoint(const std::string &end_effector,
63  Eigen::Matrix<double, 6, 1> &wrench) const;
64 
65  private:
67  std::map<std::string, std::string> sensor_frame_;
68  std::map<std::string, KDL::Frame> sensor_to_gripping_point_;
69  std::map<std::string, KDL::Wrench> measured_wrench_;
70  std::map<std::string, ros::Subscriber> ft_sub_;
71  std::map<std::string, ros::Publisher> processed_ft_pub_;
72  std::map<std::string, std::string> gripping_frame_;
73  std::map<std::string, Eigen::Matrix<double, 6, 6> > calibration_matrix_;
77 
83  void forceTorqueCB(const geometry_msgs::WrenchStamped::ConstPtr &msg);
84 };
85 
94 bool setWrenchManager(const ArmInfo &arm_info, WrenchManager &manager);
95 bool setWrenchManager(const ArmInfo &arm_info,
96  std::shared_ptr<WrenchManager> &manager);
97 } // namespace generic_control_toolbox
98 #endif
std::map< std::string, ros::Subscriber > ft_sub_
bool setWrenchManager(const ArmInfo &arm_info, WrenchManager &manager)
std::map< std::string, KDL::Frame > sensor_to_gripping_point_
bool wrenchAtGrippingPoint(const std::string &end_effector, Eigen::Matrix< double, 6, 1 > &wrench) const
std::map< std::string, std::string > gripping_frame_
WrenchManager(ros::NodeHandle nh_=ros::NodeHandle("~"))
std::map< std::string, std::string > sensor_frame_
void forceTorqueCB(const geometry_msgs::WrenchStamped::ConstPtr &msg)
bool wrenchAtSensorPoint(const std::string &end_effector, Eigen::Matrix< double, 6, 1 > &wrench) const
std::map< std::string, Eigen::Matrix< double, 6, 6 > > calibration_matrix_
std::map< std::string, KDL::Wrench > measured_wrench_
std::map< std::string, ros::Publisher > processed_ft_pub_
bool initializeWrenchComm(const std::string &end_effector, const std::string &sensor_frame, const std::string &gripping_point_frame, const std::string &sensor_topic, const std::string &calib_matrix_param)


generic_control_toolbox
Author(s): diogo
autogenerated on Thu Jun 6 2019 19:54:44