#include <srh_muscle_joint_position_controller.hpp>
Public Member Functions | |
virtual void | getGains (double &p, double &i, double &d, double &i_max, double &i_min) |
bool | init (pr2_mechanism_model::RobotState *robot, const std::string &joint_name, boost::shared_ptr< control_toolbox::Pid > pid_position) |
bool | init (pr2_mechanism_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) |
SrhMuscleJointPositionController () | |
virtual void | starting () |
virtual void | update () |
Issues commands to the joint. Should be called at regular intervals. | |
virtual | ~SrhMuscleJointPositionController () |
Private Member Functions | |
void | read_parameters () |
read all the controller settings from the parameter server | |
Private Attributes | |
int | command_acc_ |
Command accumulator, time to keep the valves open/shut, sign gives the direction. | |
boost::shared_ptr < realtime_tools::RealtimePublisher < sr_robot_msgs::JointMusclePositionControllerState > > | controller_state_publisher_ |
sr_deadband::HysteresisDeadband < double > | hysteresis_deadband |
We're using an hysteresis deadband. | |
std::string | joint_name_ |
double | max_force_demand |
clamps the force demand to this value | |
boost::shared_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_muscle_joint_position_controller.hpp.
Definition at line 42 of file srh_muscle_joint_position_controller.cpp.
Definition at line 47 of file srh_muscle_joint_position_controller.cpp.
void controller::SrhMuscleJointPositionController::getGains | ( | double & | p, |
double & | i, | ||
double & | d, | ||
double & | i_max, | ||
double & | i_min | ||
) | [virtual] |
Reimplemented from controller::SrController.
Definition at line 200 of file srh_muscle_joint_position_controller.cpp.
bool controller::SrhMuscleJointPositionController::init | ( | pr2_mechanism_model::RobotState * | robot, |
const std::string & | joint_name, | ||
boost::shared_ptr< control_toolbox::Pid > | pid_position | ||
) |
Definition at line 52 of file srh_muscle_joint_position_controller.cpp.
bool controller::SrhMuscleJointPositionController::init | ( | pr2_mechanism_model::RobotState * | robot, |
ros::NodeHandle & | n | ||
) | [virtual] |
Reimplemented from controller::SrController.
Definition at line 123 of file srh_muscle_joint_position_controller.cpp.
void controller::SrhMuscleJointPositionController::read_parameters | ( | ) | [private] |
read all the controller settings from the parameter server
Definition at line 380 of file srh_muscle_joint_position_controller.cpp.
bool controller::SrhMuscleJointPositionController::resetGains | ( | std_srvs::Empty::Request & | req, |
std_srvs::Empty::Response & | resp | ||
) | [virtual] |
Reimplemented from controller::SrController.
Definition at line 180 of file srh_muscle_joint_position_controller.cpp.
bool controller::SrhMuscleJointPositionController::setGains | ( | sr_robot_msgs::SetPidGains::Request & | req, |
sr_robot_msgs::SetPidGains::Response & | resp | ||
) |
Definition at line 158 of file srh_muscle_joint_position_controller.cpp.
void controller::SrhMuscleJointPositionController::starting | ( | ) | [virtual] |
Reimplemented from controller::SrController.
Definition at line 146 of file srh_muscle_joint_position_controller.cpp.
void controller::SrhMuscleJointPositionController::update | ( | void | ) | [virtual] |
Issues commands to the joint. Should be called at regular intervals.
Reimplemented from controller::SrController.
Definition at line 205 of file srh_muscle_joint_position_controller.cpp.
Command accumulator, time to keep the valves open/shut, sign gives the direction.
Definition at line 73 of file srh_muscle_joint_position_controller.hpp.
boost::shared_ptr<realtime_tools::RealtimePublisher<sr_robot_msgs::JointMusclePositionControllerState> > controller::SrhMuscleJointPositionController::controller_state_publisher_ [private] |
Reimplemented from controller::SrController.
Definition at line 61 of file srh_muscle_joint_position_controller.hpp.
sr_deadband::HysteresisDeadband<double> controller::SrhMuscleJointPositionController::hysteresis_deadband [private] |
We're using an hysteresis deadband.
Reimplemented from controller::SrController.
Definition at line 70 of file srh_muscle_joint_position_controller.hpp.
std::string controller::SrhMuscleJointPositionController::joint_name_ [private] |
Definition at line 78 of file srh_muscle_joint_position_controller.hpp.
double controller::SrhMuscleJointPositionController::max_force_demand [private] |
clamps the force demand to this value
Reimplemented from controller::SrController.
Definition at line 64 of file srh_muscle_joint_position_controller.hpp.
boost::shared_ptr<control_toolbox::Pid> controller::SrhMuscleJointPositionController::pid_controller_position_ [private] |
Internal PID controller for the position loop.
Definition at line 58 of file srh_muscle_joint_position_controller.hpp.
double controller::SrhMuscleJointPositionController::position_deadband [private] |
the position deadband value used in the hysteresis_deadband
Definition at line 67 of file srh_muscle_joint_position_controller.hpp.