3D Null Space Explorer for Redundant Robot Arms
Interactive browser-based 3D simulation exploring null space self-motion of a redundant robot arm with real-time IK, manipulability visualization, and adaptive damping.
The Problem
We built an interactive 3D simulation of a redundant robot arm that runs entirely in the browser. You can grab the end effector and drag it around, and the arm solves inverse kinematics in real time using damped least squares with adaptive regularization. The key feature is the null space slider, you can slide it and watch the arm completely reshape itself while the hand stays perfectly still, demonstrating the self-motion manifold concept from Murray, Li & Sastry. The simulation supports 4–10 revolute joints with alternating y/z axes for full 3D motion, a manipulability ellipsoid computed via eigendecomposition of JJᵀ, and an end-effector trail to confirm null space motion preserves the tip position. We handle singularity avoidance with adaptive damping (λ ramps up when manipulability drops below 0.01), and a drift-correction pass snaps the end effector back after each null space step to counteract floating-point accumulation.
Approach
The robot uses product-of-exponentials forward kinematics with accumulated rotation matrices and a 3×n Jacobian (position-only control). IK is solved via damped pseudoinverse (Jᵀ(JJᵀ + λ²I)⁻¹) running 5 iterations per frame with clamped step sizes. Null space motion is projected through (I − J†J)z where z is a proportional push toward zero configuration, controlled by the slider. The manipulability ellipsoid is rendered from the eigendecomposition of JJᵀ using iterative Givens rotations on the 3×3 matrix.
Results
