Abstract
A robot manipulator has a base with a connected arm by a shoulder joint, and a control system and force selector. Based on a target trajectory for a distal end of the arm instructions, a target motion and an effective force applied to the base that causes the base to execute the target motion is determined. An applied force on the robot manipulator results in a determination of a virtual ZMP force applied to the base that would either counteract an observed motion of a ZMP of the robot manipulator or act to move the ZMP back to within a predetermined support region, and/or an external force applied. Data defining the effective force and the virtual ZMP force and/or the external force applied to the base and determines a target force based on the data is received. The base executed a motion in response to the target force.