Introduction
There are several control techniques for a manipulator:
- Linear control (classical control theory) is the simplest method
- Non-linear control, such as computed torque control, uses a model of the robot
This note covers the linear method. For the non-linear method, see Non-linear Control Methods.
Classical joint control
In classical joint control, each joint of the robot is treated as a simple joint servomechanism. A controller drives a DC servo motor, which turns the link through a gear train.

In the early days of robotics, independent joint control was popular. Each joint is a separate single input, single output (SISO) system, so the closed loop analysis is decoupled and you can use classical techniques.
How it works
- Model one joint (DC motor, gear train and link) as a transfer function
- Add a controller in a unity feedback loop
- Choose the controller type (P, PD or PID) and its gains
- Check the stability and performance of the closed loop
flowchart LR TD["θ_L^d(s)"] --> SUM(("Σ")) SUM -->|"E(s)"| GC["G_c(s)<br/>controller"] GC -->|"V_a(s)"| GP["G_p(s)<br/>motor and link"] GP --> TL["θ_L(s)"] TL -->|"−"| SUM
Closed loop transfer function
From the block diagram:
The open loop transfer function is . The closed loop transfer function is:
Limitation
Robot dynamics are highly non-linear, and the joints are coupled. The linear approach makes approximations so that each joint is a linear system. These approximations limit the performance of the system.