= Joint Position Controller = <> == Overview == The Joint Position Controller commands a desired position to the joint. The position is controlled using PID control to specify the effort to the joint. When started, the controller will command to the current position. The commands from the position controller will be constrained by the [[pr2_controller_manager/safety_limits|safety limits]] of the robot, so position commands near the joint limits may not be achieved. == ROS API == {{{ #!clearsilver CS/NodeAPI param { 0.name=joint 0.type=string 0.default=Required 0.desc=The joint to control 1.name=pid/p 1.type=double 1.default=Required 1.desc=The proportional gain relating efforts to the error in position 2.name=pid/d 2.type=double 2.default=0.0 2.desc=Derivative gain, relating efforts to velocity (derivative of position) 3.name=pid/i 3.type=double 3.default=0.0 3.desc=Integral gain 4.name=pid/i_clamp 4.type=double 4.default=0.0 4.desc=Bounds enforced on the integral windup } sub { 0.name=command 0.type=std_msgs/Float64 0.desc=The position to command } }}} Example configuration: {{{#!yaml elbow_flex_position_controller: type: JointPositionController joint: r_elbow_flex_joint pid: p: 100.0 d: 10.0 }}}