The Control Problem
You tell a robot arm to pick up a cup. Those four words contain a universe of complexity. The robot does not understand 'pick up.' It understands voltages, currents, encoder pulses, and torque commands. Bridging the gap between a human-level goal — reach the cup, grasp it, lift it without crushing it — and the microsecond-by-microsecond signals sent to electric motors is called the control problem. Every robot, from a warehouse picker to a surgical assistant to a Mars rover, exists to solve this problem in some form.
What Control Actually Means
In the engineering sense, control is the discipline of causing a dynamic system to behave in a desired way. A dynamic system is one whose state changes over time — a robot arm's joint angles change, a drone's altitude and attitude change, a wheeled robot's position on a map changes. A control system reads the current state, compares it to a desired state (called the reference or setpoint), and computes commands that drive the system toward the reference. Three components appear in every control problem: The plant is the physical system being controlled — the robot, motor, or mechanism. It has dynamics: apply a torque and the joint accelerates; remove the torque and friction decelerates it. The controller is the algorithm that decides what commands to send. It takes as input the current state (measured or estimated) and the reference, and outputs a control signal — a voltage, a torque command, a desired velocity. The sensor provides measurements of the plant's state. Joint encoders, inertial measurement units (IMUs), force-torque sensors, cameras, and LIDAR all feed information back to the controller. Together these three form a feedback loop: sense, decide, actuate, repeat — typically at frequencies from 100 Hz to tens of kilohertz, depending on the task.
Sense, decide, actuate, repeat. Every feedback control system — from a thermostat to a humanoid robot — executes this loop. The sophistication lies in how 'decide' is implemented: a thermostat uses a threshold, a robot arm uses a PID controller, a modern humanoid uses a whole-body optimization solved in real time.
Open-loop versus closed-loop control is the most important high-level distinction in the field. An open-loop controller sends commands based purely on a pre-computed plan, without sensing the actual result. A microwave timer is open-loop: it runs for the specified time regardless of whether the food is actually hot. A simple motor driver that applies a fixed voltage for a fixed duration is open-loop. Open-loop control is simple and fast but fragile: any disturbance, modeling error, or variation in the plant causes error to accumulate uncorrected. If a robot arm is commanded to rotate 45 degrees and it actually rotates 47 degrees due to a worn gear, an open-loop system never finds out. Closed-loop control (feedback control) continuously reads the plant's actual state and adjusts commands accordingly. The robot arm that reads its encoder and corrects toward the commanded angle is closed-loop. Nearly all real robotic systems use closed-loop control because physical systems are never perfectly modeled, disturbances are always present, and errors must be corrected rather than ignored.
Match each robotic control concept to its precise definition.
Terms
Definitions
Drag terms onto their definitions, or click a term then click a definition to match.
Why Control Is Hard: Sources of Difficulty
Control theory might seem straightforward — if the arm is too far left, push it right. But four sources of difficulty make the problem genuinely hard. Modeling error: every controller implicitly or explicitly uses a model of the plant. That model is an approximation. The actual mass of a joint changes when the robot picks something up; friction coefficients vary with temperature; cables stretch under load. Commands computed from an imperfect model produce imperfect motion. Delay: sensors take time to read, compute time is nonzero, actuators respond with latency. A controller that acts on information that is 10 milliseconds stale is perpetually chasing a moving target. In fast systems — a drone spinning propellers at 400 Hz — a 10 ms delay is four full control cycles of lag. Disturbances: the physical world pushes back. Wind, terrain irregularities, contact with objects, vibrations from the motor itself — all of these are unmodeled forces that push the plant away from the desired trajectory. Nonlinearity: most real physical systems are nonlinear. A joint's effective inertia changes as the arm's configuration changes; aerodynamic drag scales with velocity squared; friction has a discontinuity at zero velocity (called stiction). Classical linear control theory works beautifully for linear systems and reasonably well for slightly nonlinear ones, but large nonlinearities require more sophisticated approaches.
An unstable controller does not simply perform poorly — it can cause a robot to oscillate violently, damage its hardware, or harm people nearby. The first design goal of any controller is stability: the guarantee that errors do not grow without bound. Performance (speed, accuracy, efficiency) is secondary to stability.
A factory robot arm is programmed to rotate exactly 90 degrees to pick up a part. During a shift, worn gears cause it to systematically overshoot by 3 degrees, but the program is never updated. This is an example of which type of control and which failure mode?
Which of the following best describes why closed-loop control is preferred over open-loop control in most real robotic systems?
Map a Real Robot's Control Loop
- Choose any real robotic system: a drone, a robotic vacuum, an industrial welding arm, a self-driving car, or a prosthetic hand.
- Step 1: Identify the plant. What is the physical mechanism being controlled? What are its key state variables (e.g., joint angle, altitude, wheel velocity)?
- Step 2: Identify at least two sensors this system uses. For each sensor, name what it measures and at what approximate rate.
- Step 3: Describe the setpoint in concrete terms. What exactly is the controller trying to achieve at each moment in time?
- Step 4: Describe one realistic disturbance that could push the system away from its setpoint. How would a closed-loop controller detect and respond to it?
- Step 5: Identify one place where the controller's model of the plant is an approximation — something real about the plant that the model ignores or simplifies.
- Present your control-loop map to the class. The goal is to make the abstract framework concrete using a system that actually exists.