Setpoint

On this page 7

A setpoint is the desired value of a controlled variable that a feedback controller tries to reach and hold, such as a joint angle of 45 degrees, a wheel speed of 2 meters per second or a gripper force of 10 newtons. In robotics control systems, the controller continuously compares the setpoint with the measured process variable and acts on the difference, called the control error.

The term comes from process control and is used interchangeably with reference or command in robotics. A setpoint can be constant, changed in steps by an operator, or updated hundreds or thousands of times per second by a trajectory generator.

How a setpoint drives a feedback loop

A setpoint drives a feedback loop by defining the error signal: the controller computes error as the setpoint minus the measured value and adjusts its output to reduce that error toward zero. In a PID controller, the proportional, integral and derivative terms all act on this error or on parts of it.

The following table names the signals that surround a setpoint in a typical loop.

SignalMeaningRobotics example
SetpointDesired value of the controlled variableTarget joint angle
Process variableMeasured actual valueEncoder-measured joint angle
Control errorSetpoint minus process variableRemaining angle to travel
Controller outputCommand sent to the actuatorMotor current or voltage
DisturbanceExternal influence on the processPayload weight, friction, contact
Signals in a setpoint-driven control loop

Good control means two different things: setpoint tracking, following changes of the target quickly and without excessive overshoot, and disturbance rejection, holding the target when loads change. A single controller tuning rarely optimizes both, which is why many robot controllers treat the setpoint path separately from the feedback path.

Setpoints in cascaded robot controllers

Robot motion control usually uses cascaded loops, where the output of an outer loop becomes the setpoint of the next inner loop. A position controller produces a velocity setpoint, the velocity controller produces a current setpoint, and the current loop drives the motor.

LoopSetpoint typeTypical update rate
Position loopJoint or axis positionAbout 0.5 to 4 kHz
Velocity loopJoint or wheel speedAbout 1 to 10 kHz
Current or torque loopMotor current proportional to torqueAbout 10 to 40 kHz
Force or impedance loopContact force or stiffness targetAbout 0.5 to 2 kHz
Task-space loopEnd-effector poseAbout 100 Hz to 1 kHz
Typical setpoint levels in a servo drive

A practical rule is that each inner loop should be several times faster than the loop that feeds it, often by a factor of five to ten, so that the inner loop reaches its setpoint well before the outer loop issues a new one. Violating this separation produces oscillation that no amount of outer-loop tuning can fix.

Shaping setpoint changes

Abrupt setpoint changes cause overshoot, actuator saturation and mechanical shock, so robotic systems rarely send raw step setpoints to a loop. Instead they shape the setpoint over time or adjust how the controller reacts to it.

The table below compares common shaping techniques.

TechniqueHow it worksMain benefit
Trajectory generationSmooth position, velocity and acceleration profileLimits jerk and vibration
Rate limiting or rampingCaps how fast the setpoint may changeAvoids saturation on large steps
Setpoint filteringLow-pass filter on the setpointReduces overshoot without retuning
Setpoint weightingProportional term uses a fraction of the setpointSeparates tracking from disturbance rejection
Derivative on measurementDerivative acts on the process variable onlyEliminates derivative kick on steps
FeedforwardAdds model-based command from the setpointFaster tracking with less error
Techniques for handling setpoint changes

Trapezoidal and S-curve velocity profiles are the most common trajectory shapes for industrial axes. S-curves limit jerk, which reduces vibration in flexible arms and protects gearboxes, at the cost of slightly longer motion times.

Setpoint is closely related to several neighboring terms, and the distinctions matter in controller design and documentation. The setpoint is a target value; a trajectory is a time sequence of setpoints; and in model predictive control the controller optimizes against a reference trajectory over a horizon.

  • Reference is usually a synonym for setpoint, preferred in control theory texts.
  • Trajectory is a time-parameterized series of setpoints for position, velocity and acceleration.
  • Goal in navigation is a final pose; planners turn it into many intermediate setpoints.
  • Open-loop command is sent without feedback, so it has no setpoint error to correct.
  • Operating point describes where a system is linearized, not where the controller is told to go.

Common setpoint problems and fixes

Many control issues blamed on tuning actually come from how setpoints are generated or delivered. The following table links typical symptoms to their causes.

SymptomLikely causeFix
Large overshoot after stepsStep setpoint with aggressive gainsUse trajectory or setpoint weighting
Spike in actuator commandDerivative acting on setpoint changeSwitch to derivative on measurement
Jump when switching modesSetpoint not aligned with current stateInitialize setpoint for bumpless transfer
Steady-state offsetNo integral action or unreachable setpointAdd integral term, check limits
Jerky motionSetpoints arriving late or irregularlyUse real-time timing and interpolation
Setpoint-related symptoms

Setpoints must also respect physical and safety limits. Joint position, velocity and torque setpoints should be clamped to safe ranges before they reach the loop, because a controller will otherwise try to reach an impossible target and drive its integrator into windup.

The idea in brief

A setpoint is the target a machine is told to reach. It works like the temperature you choose on a thermostat. The heating system keeps checking the real temperature and works until it matches the chosen value.

In a robot, setpoints say how far a joint should turn, how fast a wheel should spin or how firmly a gripper should squeeze. The controller constantly measures the difference and corrects it, many times every second.

A practical scenario

A six-axis robot arm in a packaging line must move a box between two conveyors in under one second. The motion planner produces a smooth S-curve trajectory and sends new joint position setpoints at 1 kHz to each drive.

Inside each drive, the position loop turns the setpoint error into a velocity setpoint, and the velocity loop turns its error into a current setpoint for the motor. Velocity and acceleration feedforward derived from the trajectory supply most of the required command, so the feedback loops only correct small deviations.

Compared with sending a single target position as a step, the shaped setpoints reduce overshoot and vibration, keep the box from slipping in the gripper and allow a shorter cycle time without exceeding motor torque limits.