#include <srh_joint_position_controller.hpp>
Public Member Functions | |
virtual void | getGains (double &p, double &i, double &d, double &i_max, double &i_min) |
bool | init (ros_ethercat_model::RobotState *robot, ros::NodeHandle &n) |
virtual bool | resetGains (std_srvs::Empty::Request &req, std_srvs::Empty::Response &resp) |
bool | setGains (sr_robot_msgs::SetPidGains::Request &req, sr_robot_msgs::SetPidGains::Response &resp) |
SrhJointPositionController () | |
virtual void | starting (const ros::Time &time) |
virtual void | update (const ros::Time &time, const ros::Duration &period) |
Issues commands to the joint. Should be called at regular intervals. | |
Private Member Functions | |
void | read_parameters () |
read all the controller settings from the parameter server | |
void | resetJointState () |
void | setCommandCB (const std_msgs::Float64ConstPtr &msg) |
set the position target from a topic | |
Private Attributes | |
sr_deadband::HysteresisDeadband < double > | hysteresis_deadband |
We're using an hysteresis deadband. | |
boost::scoped_ptr < control_toolbox::Pid > | pid_controller_position_ |
double | position_deadband |
the position deadband value used in the hysteresis_deadband |
Definition at line 36 of file srh_joint_position_controller.hpp.
Definition at line 43 of file srh_joint_position_controller.cpp.
void controller::SrhJointPositionController::getGains | ( | double & | p, |
double & | i, | ||
double & | d, | ||
double & | i_max, | ||
double & | i_min | ||
) | [virtual] |
Reimplemented from controller::SrController.
Definition at line 174 of file srh_joint_position_controller.cpp.
bool controller::SrhJointPositionController::init | ( | ros_ethercat_model::RobotState * | robot, |
ros::NodeHandle & | n | ||
) | [virtual] |
Implements controller::SrController.
Definition at line 48 of file srh_joint_position_controller.cpp.
void controller::SrhJointPositionController::read_parameters | ( | ) | [private] |
read all the controller settings from the parameter server
Definition at line 268 of file srh_joint_position_controller.cpp.
bool controller::SrhJointPositionController::resetGains | ( | std_srvs::Empty::Request & | req, |
std_srvs::Empty::Response & | resp | ||
) | [virtual] |
Reimplemented from controller::SrController.
Definition at line 157 of file srh_joint_position_controller.cpp.
void controller::SrhJointPositionController::resetJointState | ( | ) | [private] |
Definition at line 282 of file srh_joint_position_controller.cpp.
void controller::SrhJointPositionController::setCommandCB | ( | const std_msgs::Float64ConstPtr & | msg | ) | [private, virtual] |
set the position target from a topic
Reimplemented from controller::SrController.
Definition at line 275 of file srh_joint_position_controller.cpp.
bool controller::SrhJointPositionController::setGains | ( | sr_robot_msgs::SetPidGains::Request & | req, |
sr_robot_msgs::SetPidGains::Response & | resp | ||
) |
Definition at line 132 of file srh_joint_position_controller.cpp.
void controller::SrhJointPositionController::starting | ( | const ros::Time & | time | ) | [virtual] |
Reimplemented from controller::SrController.
Definition at line 120 of file srh_joint_position_controller.cpp.
void controller::SrhJointPositionController::update | ( | const ros::Time & | time, |
const ros::Duration & | period | ||
) | [virtual] |
Issues commands to the joint. Should be called at regular intervals.
Implements controller::SrController.
Definition at line 179 of file srh_joint_position_controller.cpp.
sr_deadband::HysteresisDeadband<double> controller::SrhJointPositionController::hysteresis_deadband [private] |
We're using an hysteresis deadband.
Reimplemented from controller::SrController.
Definition at line 61 of file srh_joint_position_controller.hpp.
boost::scoped_ptr<control_toolbox::Pid> controller::SrhJointPositionController::pid_controller_position_ [private] |
Internal PID controller for the position loop.
Definition at line 55 of file srh_joint_position_controller.hpp.
double controller::SrhJointPositionController::position_deadband [private] |
the position deadband value used in the hysteresis_deadband
Definition at line 58 of file srh_joint_position_controller.hpp.