Impedance and admittance control let a robot regulate how it physically responds when motion and force interact. Instead of commanding only “go to this position” or only “apply this force,” these methods shape the relationship among displacement, velocity, acceleration, and contact wrench so the robot can behave like a programmable mechanical system.
This lesson follows OSREC.007: Robot Force Control. Force control introduced contact-force objectives. Impedance and admittance control extend that idea by deliberately choosing the robot’s apparent stiffness, damping, and inertia during interaction.
Sapienza University of Rome — Robotics 2 lecture on impedance, compliance, and admittance control.
Learning Objectives
- Explain impedance control as a commanded force/torque response to motion error.
- Explain admittance control as a commanded motion response to measured force/torque.
- Relate stiffness, damping, and virtual inertia to compliant robot behavior.
- Understand why torque-controlled and position-controlled robots often favor different architectures.
- Explain how force/torque sensing, backdrivability, sample rate, delay, and environment stiffness affect stability.
- Recognize common tuning failures in contact tasks.
- Build a safe simulation-first workflow for compliant-control experiments.
Start With the Mechanical Analogy
A common target behavior is a virtual mass-spring-damper system. In one Cartesian direction, an idealized relationship can be written as Md ë + Dd ė + Kd e = Fext, where e is displacement from an equilibrium pose, Md is desired inertia, Dd is desired damping, Kd is desired stiffness, and Fext is external force.
The matrices become six-dimensional in Cartesian space for x, y, z, roll, pitch, and yaw. A controller can make one direction stiff and another compliant. That is useful for insertion, polishing, surface following, human-guided motion, and tasks where the environment location is not perfectly known.
Impedance Control
Impedance control maps motion error into force or torque behavior. A simple Cartesian controller behaves like a virtual spring and damper around an equilibrium pose. If the end effector is displaced from that pose, the controller produces a restoring wrench whose magnitude depends on the chosen stiffness and damping.
Modern Robotics describes impedance control as one of the major robot-control objectives alongside motion, force, and hybrid motion-force control. Franka Robotics provides production-oriented Cartesian and joint impedance examples that explicitly render spring-damper behavior through commanded joint torques.
A simplified Cartesian wrench law is Fcmd = K(xd – x) + D(vd – v). Robot dynamics, gravity, Coriolis effects, Jacobian transformations, torque limits, saturation, and implementation details must still be handled correctly in a real manipulator.
A 2026 robotics discussion examines when impedance control can work without an external force/torque sensor and why transmission backdrivability and torque-control quality matter.
Admittance Control
Admittance control reverses the input-output viewpoint. The controller measures an external wrench and computes how the robot should move according to a virtual mechanical model. Force becomes the input; position or velocity reference becomes the output.
The ROS 2 ros2_control admittance controller exposes virtual mass, damping ratio, stiffness, selected Cartesian axes, force/torque sensor handling, gravity compensation, and kinematic transformation settings. This is a practical example of an admittance layer generating motion references from measured wrench.
Admittance control is especially useful when a robot already has a strong inner position or velocity loop but cannot expose direct low-level torque control. The outer admittance loop converts contact force into a motion correction that the inner loop can track.
A Practical Distinction
- Impedance: motion deviation goes in; force/torque response comes out.
- Admittance: measured force/torque goes in; motion response comes out.
- Torque-controlled, backdrivable arms: often suit direct impedance control well.
- Position-controlled, high-ratio or less-backdrivable robots: often suit admittance architectures better when an external force/torque sensor is available.
These are engineering tendencies rather than rigid laws. Real systems can combine inner torque loops, outer motion loops, force observers, joint torque sensing, end-effector force/torque sensors, and model-based estimation in many different ways.
Engineering Educator Academy — impedance-control treatment for robot motion in compliant environments.
Stiffness Changes How Hard the Robot Pushes Back
Stiffness determines how strongly displacement from the equilibrium pose creates restoring force. High Cartesian stiffness makes the end effector resist displacement strongly. Low stiffness makes the robot feel softer and more compliant.
If the desired stiffness in one translational axis is 1000 N/m, then a 5 mm displacement corresponds to a first-order spring force of about 5 N before damping, inertia, gravity, and other controller terms are considered. Raising stiffness increases positional authority but can also increase contact force and sensitivity to delay, noise, calibration error, and rigid environments.
Damping Controls Oscillation
Damping opposes velocity. Too little damping can let the robot oscillate after contact. Too much damping can make the system sluggish and can amplify undesirable behavior when combined with filtering or discrete-time delay.
For a scalar mass-spring-damper target, damping ratio is commonly written as ζ = D / (2√(MK)). Critical damping corresponds to ζ = 1 in the ideal second-order model. Real robot dynamics are coupled, nonlinear, sampled, filtered, saturated, and delayed, so this relation is a starting point rather than a guarantee.
Virtual Mass Changes How Quickly Motion Responds to Force
In admittance control, larger virtual mass generally makes the commanded motion accelerate less for the same external force. Smaller virtual mass makes the robot respond more quickly but can magnify force-sensor noise and make the loop more sensitive to discrete-time implementation.
The ROS 2 admittance-controller documentation exposes separate virtual mass, damping, and stiffness values for all six Cartesian axes. This is useful because an assembly task may require different behavior normal to a surface than along the surface.
Cartesian Versus Joint Impedance
Joint impedance shapes the spring-damper behavior of individual joints. Cartesian impedance shapes behavior at the end effector in task space. Cartesian control is often easier to reason about for contact tasks because stiffness can be assigned along physically meaningful directions.
Franka Robotics exposes both joint and Cartesian impedance settings. Its Cartesian impedance example renders a spring-damper system around an equilibrium pose and allows different translational and rotational stiffness values.
The Environment Is Part of the Closed Loop
Contact control is different from free-space motion because the environment closes the mechanical loop. A soft foam surface, a human hand, a rigid steel fixture, and a flexible cable present very different contact dynamics.
A controller that is stable and smooth in free space can become oscillatory when it contacts a stiff environment. High stiffness, sensor delay, low update rate, poor filtering, communication jitter, unmodeled elasticity, actuator saturation, and aggressive virtual inertia reduction can all reduce stability margin.
A 2026 control-theory discussion compares impedance and admittance approaches for precision insertion and emphasizes that environment stiffness and the robot’s available inner-loop control architecture influence the choice.
Passivity and Energy Matter
One powerful way to reason about physical interaction is energy. A passive mechanical environment does not generate unlimited energy. A poorly designed digital controller, however, can inject energy through delay, discretization, aggressive compensation, or unstable gain selection.
Passivity-based analysis and energy-monitoring methods are widely used in physical human-robot interaction and haptics because they provide a framework for asking whether the controller can remain well behaved when connected to an uncertain environment. Engineers should treat stability as an interaction property, not as a gain-tuning result proved only in free space.
Force/Torque Sensors Are Useful but Not Always Mandatory
Admittance control commonly relies on a measured external wrench from a six-axis force/torque sensor. Impedance control can sometimes be implemented without an external F/T sensor when joint torque sensing, current sensing, disturbance observers, or sufficiently accurate model-based torque estimation are available.
Sensor choice affects observability, bandwidth, noise, bias, gravity compensation, collision detection, and stability. An external F/T sensor also measures tool weight and inertial effects unless those components are compensated correctly.
Filtering Helps Noise but Adds Delay
Force/torque measurements are noisy, so filtering is often necessary. Every filter also changes phase and delay. Excessive low-pass filtering can make a contact controller respond too late, increasing overshoot or destabilizing a stiff interaction.
Do not tune a force filter independently from the control loop. Record the sampling rate, cutoff or filter coefficient, sensor bandwidth, controller update rate, network delay, and environment stiffness together.
Null-Space Behavior Still Needs Control
A redundant manipulator can satisfy a Cartesian impedance objective while still having extra joint freedom. That null-space motion may need its own posture objective, damping, joint-limit avoidance, collision avoidance, or secondary optimization.
This connects directly to OSREC.002: Robot Jacobians. Task-space wrench maps to joint torque through the Jacobian transpose, while null-space projectors can preserve secondary behavior that does not disturb the primary task.
Impedance Near Singularities
Near a kinematic singularity, the manipulator loses motion authority in one or more Cartesian directions and required joint velocities or torques can become extreme. Cartesian impedance commands must therefore respect Jacobian conditioning, actuator limits, joint limits, and numerical robustness.
Do not interpret a high Cartesian stiffness request as permission to demand impossible joint torque. Saturation can fundamentally change the closed-loop dynamics and invalidate the behavior assumed during controller design.
Contact-Task Example: Peg-in-Hole
A peg-in-hole task illustrates why compliant control is useful. Pure rigid position control can create large contact forces when the peg is slightly misaligned. A compliant controller can remain relatively stiff along the insertion direction while allowing limited lateral or angular correction.
One design might use moderate stiffness in x and y, lower rotational stiffness for alignment, sufficient damping to suppress chatter, and a force or torque threshold to detect abnormal contact. The correct values depend on geometry, friction, robot bandwidth, sensor noise, payload, environment stiffness, and allowable contact load.
Simulation Before Hardware
Compliant controllers should be developed in simulation and on low-risk hardware before aggressive contact testing. Gazebo, MuJoCo, Isaac Sim, vendor simulators, and custom dynamics models can expose sign errors, coordinate-frame mistakes, unstable gains, and saturation behavior before a real robot contacts a rigid fixture.
Simulation is not final proof because real transmission friction, sensor delay, structural compliance, contact stiffness, backlash, communication jitter, and actuator limits differ from the model. Treat simulation as an engineering filter, then validate gradually on real hardware.
Tuning Workflow
- Verify robot model, payload, TCP, frames, gravity compensation, and force/torque sensor bias.
- Test free-space motion before intentional contact.
- Start with low stiffness and conservative virtual inertia.
- Add damping until free-space and light-contact transients are well behaved.
- Increase stiffness only as required by task accuracy.
- Check force peaks and oscillation against multiple environment stiffnesses.
- Verify behavior at the full controller update rate with real filtering and communication delay.
- Test saturation, joint limits, workspace limits, singularity proximity, and collision thresholds.
- Record commanded wrench, measured wrench, position error, velocity, joint torque, and controller state together.
- Re-test after payload, tool, fixture, sensor, network, or software changes.
Common Failure Patterns
- Robot chatters on contact: stiffness may be too high, damping too low, environment too stiff, update rate too slow, or delay/filtering too large.
- Robot feels sluggish: virtual mass or damping may be too high, or the inner motion loop may be bandwidth-limited.
- Force drifts while stationary: inspect F/T zeroing, thermal drift, gravity compensation, tool mass, sensor frame, and bias.
- Motion moves away from applied force: inspect sign conventions and coordinate transforms.
- Stable in free space but unstable on contact: treat environment stiffness and delay as part of the loop.
- Good behavior near one pose but poor elsewhere: inspect Jacobian conditioning, payload model, joint limits, transmission friction, and anisotropic dynamics.
- Repeated saturation: reduce demanded stiffness/acceleration and verify actuator and torque limits.
Engineering Exercise
Model one translational axis as a virtual mass-spring-damper. Choose M = 2 kg and K = 200 N/m. Compute the critical damping value using D = 2√(MK). Then simulate a 10 N step external force and compare the displacement response for damping ratios of 0.5, 1.0, and 2.0.
Next, increase environment stiffness while leaving the controller gains unchanged. Observe whether contact oscillation or numerical sensitivity increases. Finally, add a small measurement delay and low-pass filter to see why a controller that is stable in an ideal continuous-time model can behave differently in implementation.
Knowledge Check
- What does impedance control map motion error into?
- What does admittance control map measured force into?
- What does increasing stiffness do to apparent compliance?
- What role does damping play?
- Why can stiff contact destabilize a controller that behaves well in free space?
- Why is an external F/T sensor common in admittance control?
- Why can too much filtering hurt contact stability?
- What mathematical object maps Cartesian wrench into joint torque?
Answers
- A force or torque response according to a chosen mechanical impedance.
- A motion response, commonly a position, velocity, or acceleration reference generated by a virtual mechanical model.
- It makes the robot resist displacement more strongly and therefore feel less compliant.
- It dissipates motion energy and suppresses oscillation around the equilibrium behavior.
- The environment becomes part of the closed loop; high contact stiffness combined with delay, sampling, filtering, and aggressive gains can reduce stability margin.
- The controller needs a measured external wrench to compute the commanded motion response.
- Filtering adds phase lag and delay even while reducing noise.
- The transpose of the manipulator Jacobian.
Primary references: Modern Robotics — Control System Overview, Franka Robotics — Cartesian Impedance Control Example, Franka ROS 2 — Cartesian Impedance Example, and ros2_control — Admittance Controller.
Previous Related Lessons
- OSREC.007: Robot Force Control
- OSREC.006: Robot Feedback Control
- OSREC.005: Robot Dynamics
- OSREC.004: Robot Trajectory Planning
- OSREC.002: Robot Jacobians
BitcoinVersus.Tech Editor’s Note:
We volunteer daily to ensure the credibility of the information on this platform is Verifiably True. If you would like to support to help further secure the integrity of our research initiatives, please donate using the QR code provided


Leave a Reply