cartesian_controller.h
Go to the documentation of this file.
1 /*
2  * Copyright 2017 Fraunhofer Institute for Manufacturing Engineering and Automation (IPA)
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9 
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 
18 #ifndef COB_CARTESIAN_CONTROLLER_CARTESIAN_CONTROLLER_H
19 #define COB_CARTESIAN_CONTROLLER_CARTESIAN_CONTROLLER_H
20 
21 #include <vector>
22 #include <string>
23 #include <boost/shared_ptr.hpp>
24 
25 #include <ros/ros.h>
26 #include <tf/transform_listener.h>
28 #include <tf/transform_datatypes.h>
29 
31 #include <cob_cartesian_controller/CartesianControllerAction.h>
32 
36 
38 
39 #define DEFAULT_CARTESIAN_TARGET "cartesian_target"
40 
42 {
43 public:
44  bool initialize();
45 
46  // Main functions
47  bool posePathBroadcaster(const geometry_msgs::PoseArray& cartesian_path);
48 
49  // Helper function
50  bool startTracking();
51  bool stopTracking();
52 
54  void goalCallback();
55  void preemptCallback();
56  void actionSuccess(const bool success, const std::string& message);
57  void actionPreempt(const bool success, const std::string& message);
58  void actionAbort(const bool success, const std::string& message);
59 
61  cob_cartesian_controller::MoveLinStruct convertMoveLin(const cob_cartesian_controller::MoveLin& move_lin_msg);
62  cob_cartesian_controller::MoveCircStruct convertMoveCirc(const cob_cartesian_controller::MoveCirc& move_circ_msg);
63 
64 private:
68 
71  bool tracking_;
72 
73  double update_rate_;
75 
77  std::string action_name_;
79  cob_cartesian_controller::CartesianControllerFeedback action_feedback_;
80  cob_cartesian_controller::CartesianControllerResult action_result_;
81 
84 };
85 
86 #endif // COB_CARTESIAN_CONTROLLER_CARTESIAN_CONTROLLER_H
CartesianController::action_name_
std::string action_name_
Action interface.
Definition: cartesian_controller.h:77
cob_cartesian_controller::MoveLinStruct
Definition: cartesian_controller_data_types.h:43
CartesianController::nh_
ros::NodeHandle nh_
Definition: cartesian_controller.h:65
SAS_CartesianControllerAction_t
actionlib::SimpleActionServer< cob_cartesian_controller::CartesianControllerAction > SAS_CartesianControllerAction_t
Definition: cartesian_controller.h:37
test_move_circ_interface.success
success
Definition: test_move_circ_interface.py:37
CartesianController::root_frame_
std::string root_frame_
Definition: cartesian_controller.h:74
CartesianController::utils_
CartesianControllerUtils utils_
Definition: cartesian_controller.h:82
CartesianController::trajectory_interpolator_
boost::shared_ptr< TrajectoryInterpolator > trajectory_interpolator_
Definition: cartesian_controller.h:83
CartesianController::tf_broadcaster_
tf::TransformBroadcaster tf_broadcaster_
Definition: cartesian_controller.h:67
boost::shared_ptr
CartesianController::target_frame_
std::string target_frame_
Definition: cartesian_controller.h:74
ros.h
CartesianController::actionPreempt
void actionPreempt(const bool success, const std::string &message)
Definition: cartesian_controller.cpp:332
CartesianController::tracking_
bool tracking_
Definition: cartesian_controller.h:71
CartesianController::preemptCallback
void preemptCallback()
Definition: cartesian_controller.cpp:317
CartesianController::convertMoveCirc
cob_cartesian_controller::MoveCircStruct convertMoveCirc(const cob_cartesian_controller::MoveCirc &move_circ_msg)
Definition: cartesian_controller.cpp:275
CartesianControllerUtils
Definition: cartesian_controller_utils.h:32
simple_action_server.h
trajectory_interpolator.h
CartesianController::actionAbort
void actionAbort(const bool success, const std::string &message)
Definition: cartesian_controller.cpp:340
CartesianController::stop_tracking_
ros::ServiceClient stop_tracking_
Definition: cartesian_controller.h:70
cob_cartesian_controller::MoveCircStruct
Definition: cartesian_controller_data_types.h:48
CartesianController::goalCallback
void goalCallback()
Action interface.
Definition: cartesian_controller.cpp:173
transform_broadcaster.h
CartesianController::action_result_
cob_cartesian_controller::CartesianControllerResult action_result_
Definition: cartesian_controller.h:80
tf::TransformBroadcaster
cartesian_controller_utils.h
CartesianController::action_feedback_
cob_cartesian_controller::CartesianControllerFeedback action_feedback_
Definition: cartesian_controller.h:79
test_move_circ.goal
goal
Definition: test_move_circ.py:34
ros::ServiceClient
CartesianController::startTracking
bool startTracking()
Definition: cartesian_controller.cpp:77
CartesianController::posePathBroadcaster
bool posePathBroadcaster(const geometry_msgs::PoseArray &cartesian_path)
Definition: cartesian_controller.cpp:140
transform_listener.h
CartesianController::update_rate_
double update_rate_
Definition: cartesian_controller.h:73
transform_datatypes.h
CartesianController::start_tracking_
ros::ServiceClient start_tracking_
Definition: cartesian_controller.h:69
CartesianController::chain_tip_link_
std::string chain_tip_link_
Definition: cartesian_controller.h:74
CartesianController::tf_listener_
tf::TransformListener tf_listener_
Definition: cartesian_controller.h:66
actionlib::SimpleActionServer
tf::TransformListener
CartesianController::initialize
bool initialize()
Definition: cartesian_controller.cpp:29
cartesian_controller_data_types.h
CartesianController::convertMoveLin
cob_cartesian_controller::MoveLinStruct convertMoveLin(const cob_cartesian_controller::MoveLin &move_lin_msg)
Definition: cartesian_controller.cpp:261
CartesianController::actionSuccess
void actionSuccess(const bool success, const std::string &message)
Definition: cartesian_controller.cpp:324
CartesianController::acceptGoal
cob_cartesian_controller::CartesianActionStruct acceptGoal(boost::shared_ptr< const cob_cartesian_controller::CartesianControllerGoal > goal)
Definition: cartesian_controller.cpp:290
CartesianController::as_
boost::shared_ptr< SAS_CartesianControllerAction_t > as_
Definition: cartesian_controller.h:78
ros::NodeHandle
cob_cartesian_controller::CartesianActionStruct
Definition: cartesian_controller_data_types.h:55
CartesianController::stopTracking
bool stopTracking()
Definition: cartesian_controller.cpp:113
CartesianController
Definition: cartesian_controller.h:41


cob_cartesian_controller
Author(s): Christoph Mark
autogenerated on Mon May 1 2023 02:44:52