Hardware & control
Forward kinematics
Forward kinematics computes the pose of robot links or end effectors from a specified robot configuration and kinematic model. It propagates known joint transformations through the kinematic chain; it does not determine the forces, torques, or motion that produced that configuration.
Also known as: direct kinematics, forward robot kinematics
Updated
Configuration maps to pose
Modern Robotics presents forward kinematics using products of rigid transformations. Given the joint variables, link geometry and frame definitions, the calculation returns where a chosen link is and how it is oriented.
For a branching humanoid model, the same principle applies along each chain from the base to a hand, foot, camera or other link. A floating-base pose must also be supplied when poses are required in a world frame.
Forward and inverse kinematics solve opposite questions
Forward kinematics answers, “Where is the hand for these joint values?” Inverse kinematics asks, “Which joint values place the hand here?” The forward map is normally deterministic for a fixed model and configuration, while the inverse problem may have multiple solutions, no solution or singular cases.
Neither calculation is a dynamics simulation. It does not predict acceleration under torque, contact forces, actuator delay or structural flex. Those effects can make measured hardware poses differ from ideal kinematic predictions.
Model conventions determine the result
Incorrect joint axes, origins, signs or link dimensions produce incorrect poses even when the implementation is mathematically sound. Calibration offsets and the exact robot revision matter.
When a dataset provides both joint state and link pose, state whether the pose was measured independently or computed by forward kinematics. Include the robot-description version and coordinate frames. Computed poses should not be presented as independent ground-truth evidence for the same kinematic model that generated them.
Sources
Related terms
Hardware & control
Robot kinematics
Robot kinematics describes the geometric relationship between a robot’s joint configuration and the position, orientation and velocity of its links or end-effector, without modelling the forces that cause the motion. Forward kinematics computes pose from joint values; inverse kinematics searches for joint values that achieve a requested pose.
Hardware & control
Inverse kinematics
Inverse kinematics (IK) finds robot configurations that satisfy a desired position, orientation or other geometric constraints. It reverses the question asked by forward kinematics: instead of computing where a hand or foot is from the joint values, it searches for joint values that place it at a target. A target can have multiple solutions or no feasible solution.
Hardware & control
Joint space
Joint space is a coordinate space whose variables describe a robot's joint configuration, such as revolute-joint angles and prismatic-joint displacements. A point represents one configuration subject to the robot model and joint limits; a path or trajectory represents how that configuration changes.
Hardware & control
Task space
Task space is a coordinate space used to express quantities directly relevant to a robot task, such as an end-effector pose, centre-of-mass position, gaze direction, contact force, or several objectives together. It describes what should be achieved, while joint space describes the robot configuration used to achieve it.
Hardware & control
Coordinate frame
A coordinate frame is a defined origin and set of oriented axes used to express positions, orientations, motions, forces, or other spatial quantities. A value has no complete geometric meaning until its frame and convention are known. Transformations relate measurements expressed in frames such as world, robot base, camera, end effector, object, or sensor.
Hardware & control
Robot Jacobian
A robot Jacobian is a configuration-dependent matrix that maps joint velocities to a specified task velocity, such as the linear and angular velocity of an end effector. It describes instantaneous motion, rather than the end effector's finite displacement or the forces needed to accelerate the robot.