31 pub_ = nh.
advertise<std_msgs::Float64MultiArray>(
"joint_group_velocity_controller/command", 1);
39 std_msgs::Float64MultiArray vel_msg;
43 vel_msg.data.push_back(q_dot_ik(i));
59 pub_ = nh.
advertise<std_msgs::Float64MultiArray>(
"joint_group_position_controller/command", 1);
67 if (updateIntegration(q_dot_ik, current_q))
70 std_msgs::Float64MultiArray pos_msg;
86 pub_ = nh.
advertise<trajectory_msgs::JointTrajectory>(
"joint_trajectory_controller/command", 1);
94 if (updateIntegration(q_dot_ik, current_q))
96 trajectory_msgs::JointTrajectoryPoint traj_point;
97 traj_point.positions = pos_;
101 traj_point.time_from_start = period_;
103 trajectory_msgs::JointTrajectory traj_msg;
106 traj_msg.points.push_back(traj_point);
123 pub_ = nh.
advertise<sensor_msgs::JointState>(
"joint_states", 1);
126 js_msg_.position.clear();
127 js_msg_.velocity.clear();
128 js_msg_.effort.clear();
148 js_msg_.position.push_back(pos);
149 js_msg_.velocity.push_back(0.0);
150 js_msg_.effort.push_back(0.0);
162 if (updateIntegration(q_dot_ik, current_q))
165 boost::mutex::scoped_lock lock(mutex_);
166 js_msg_.position = pos_;
167 js_msg_.velocity = vel_;
178 boost::mutex::scoped_lock lock(mutex_);
std::vector< double > limits_min
void publish(const boost::shared_ptr< M > &message) const
virtual void processResult(const KDL::JntArray &q_dot_ik, const KDL::JntArray ¤t_q)
virtual void initialize(ros::NodeHandle &nh, const TwistControllerParams ¶ms)
virtual void processResult(const KDL::JntArray &q_dot_ik, const KDL::JntArray ¤t_q)
Class providing a ControllerInterface publishing JointStates.
virtual void processResult(const KDL::JntArray &q_dot_ik, const KDL::JntArray ¤t_q)
Timer createTimer(Rate r, Handler h, Obj o, bool oneshot=false, bool autostart=true) const
double integrator_smoothing
Publisher advertise(const std::string &topic, uint32_t queue_size, bool latch=false)
virtual void initialize(ros::NodeHandle &nh, const TwistControllerParams ¶ms)
Base class for controller interfaces.
virtual void initialize(ros::NodeHandle &nh, const TwistControllerParams ¶ms)
std::vector< double > limits_max
Class providing a ControllerInterface publishing JointGroupPositionCommands.
TwistControllerParams params_
std::vector< std::string > joints
virtual void initialize(ros::NodeHandle &nh, const TwistControllerParams ¶ms)
Class providing a ControllerInterface publishing velocities.
#define PLUGINLIB_EXPORT_CLASS(class_type, base_class_type)
LimiterParams limiter_params
void publishJointState(const ros::TimerEvent &event)
Class providing a ControllerInterface publishing a JointTrajectory.
virtual void processResult(const KDL::JntArray &q_dot_ik, const KDL::JntArray ¤t_q)