Introduction
Computed torque control is Control Law Partitioning applied to a robot. Robot dynamics are highly non-linear, and the joints are coupled. The model based portion cancels these non-linear terms, so the closed loop system is linear and decoupled.
The control law uses the Robot Dynamic Model:
Single link robot
For the single link robot , use with:
This gives . The servo portion is , with . So:
The torque is computed in this form and applied to the motor.
Multi input, multi output robot
A robot with joints is a MIMO system. Now and are vectors, and is an matrix. Choose:
Then the closed loop is . This is a set of separate unit masses:
So you can design each separately.
PD computed torque
The servo law for each joint:
In vector form, with diagonal gain matrices and :
The error equation is:
The full control law is:
flowchart LR TD["θ_d, θ_d-dot, θ_d-ddot"] --> SV["Servo<br/>v = θ_d-ddot + K_v E-dot + K_p E"] SV -->|"v"| MB["Model based<br/>τ = M v + C θ-dot + g"] MB -->|"τ"| R["Robot"] R -->|"θ, θ-dot"| SV R -->|"θ, θ-dot"| MB
PID computed torque
Add an integral term to remove the steady state error, with also diagonal:
Example
Design a PD computed torque controller for the two link polar robot with kg. The resonant frequency is 20 rad/s.

Note
The first example slide calls this robot the "2-link polar robot". The next slides call it a "2-link planar robot", but the model (with prismatic joint ) is the same two link polar robot.
Step 1: dynamic model (with m/s², so )
Step 2: model based portion
Step 3: servo portion
with and .
Step 4: gains
The characteristic equations are . Compare with :
- rad/s, so choose rad/s
- , so that (choose 20 for critical damping)
Step 5: control law
With , the damping ratio is . The lecture shows animations of this robot for (underdamped), (overdamped) and (critically damped).