ABSTRACT

This chapter will explore variations on low-level joint control in robot operating system (ROS). It illustrates use of three simple controllers: position control, velocity control and force control. These examples will use a single degree-of-freedom robot with a prismatic joint. At the joint level, smooth and coordinated motion is achieved using a joint-space interpolator that operates on trajectory messages. Higher-level controls, example for Cartesian motion control, ultimately depend on lower-level control in joint space. In the one-DOF robot case, the minimal joint controller does not accept velocity feed-forward commands. One specifies joint range-of-motion limits, velocity limits, effort limits and damping. The unified robot description format (URDF) must specify a transmission and actuator for each controlled joint. The joint command samples are packaged into a trajectory message along with associated arrival times, and this message is transmitted to the trajectory action server within the action goal.