Skip to content

Get Jacobian

SUMMARY

Get Jacobian returns the 6×6 geometric Jacobian matrix of the robot at the current or specified joint configuration. The matrix maps joint velocities to TCP spatial velocities and is the cornerstone of velocity-level kinematics and Cartesian-space control.

The Jacobian is returned as a 36-element flat list in row-major order.

SUPPORTED ROBOTS

This skill is currently supported on Universal Robots only. Calling this method on other robot brands will raise a NotImplementedError.

The Skill

python
jacobian = robot.get_jacobian()

The Code

Example: Read the Jacobian at the Current Configuration

Connect to the robot, read the Jacobian, and log it.

python
from loguru import logger
from telekinesis.synapse.robots.manipulators import universal_robots

robot_ip = "192.168.1.2"  # replace with your robot's IP

robot = universal_robots.UniversalRobotsUR10E()
# Connect
robot.connect(ip=robot_ip)

jacobian = robot.get_jacobian()
logger.info(f"Jacobian (6x6 flat): {jacobian}")

# Disconnect
robot.disconnect()

The Explanation of the Code

get_jacobian returns the 6×6 geometric Jacobian J(q) evaluated at the given joint configuration. The Jacobian maps joint velocities q̇ to TCP spatial velocities (linear + angular): v_tcp = J(q) · q̇. The result is a 36-element flat list in row-major order. The optional tcp parameter specifies a custom TCP pose offset [x, y, z, rx, ry, rz] relative to the flange; leaving it empty uses the currently configured TCP.

How to Tune the Parameters

ParameterTypeDefaultDescription
qlist[float][]6-element joint configuration [q1…q6] [deg]. Empty list uses the current configuration.
tcplist[float][]TCP pose offset [x, y, z, rx, ry, rz] relative to the flange. Empty list uses the configured TCP.

Return Value

TypeDescription
list[float]36-element flat list representing the 6×6 geometric Jacobian, in row-major order.

Where to Use the Skill

  • Velocity kinematics — Convert between joint velocities and Cartesian TCP velocities
  • Cartesian-space control — Compute joint torques from Cartesian force/torque via Jᵀ·F
  • Singularity analysis — Detect near-singular configurations by evaluating the Jacobian determinant
  • Redundancy resolution — Use the Jacobian pseudo-inverse for minimum-norm joint velocity solutions

When Not to Use the Skill

Do not use Get Jacobian when: