space-robot-dq: a Python library for dual quaternion kinematics, dynamics, and control of free-floating space robot manipulators
This article presents space-robot-dq, an open-source Python library for the kinematics, dynamics, and resolved-rate control of free-floating space robot manipulators using dual quaternion algebra. Unlike ground-based robots, space manipulators operate on platforms with no fixed base. When the arm moves, the spacecraft reacts to conserve momentum, changing the mapping between joint motion and end-effector motion. The library implements Product of Exponentials forward kinematics in dual quaternion arithmetic, numerical and analytical Jacobians, optimization-based inverse kinematics, the Umetani–Yoshida generalized Jacobian for momentum-coupled systems, and closed-loop resolved-rate controllers for a momentum-conserving free-floating plant with base pose propagation. It supports arbitrary N -DOF serial chains of revolute joints through a declarative configuration interface. The implementation is verified by 153 unit tests across four robot architectures and a 19-check benchmark suite. Independent validation covers forward-kinematics agreement below 10 –11 m against two reference implementations that share no code with the library and first-order-convergent stationarity of the system’s center of mass, while construction-level consistency checks confirm momentum residuals at the 10 –15 level. Two control studies quantify the practical consequences of the free-floating coupling. In Cartesian tracking of a 0.27 m maneuver, a controller using the fixed-base Jacobian accumulates 26.372 mm root mean square (RMS) error even with feedback, whereas the generalized-Jacobian controller tracks at 0.2512 mm RMS (a 105-fold difference that measures the cost of the model mismatch alone, because both controllers run on the same plant). In a capture-approach scenario, the end-effector maintains a full 6-DOF grasp pose against a client tumbling at 5° per second, holding 0.008429 mm and 0.000581° RMS with the generalized Jacobian versus 4.267 mm and 0.22° with the fixed-base model (506-fold and 379-fold differences attributable to the neglected coupling), while the spacecraft base drifts 2.4°, an attitude cost the library quantifies for mission design. All figures and numbers in this article are reproduced by a single, deterministic script included in the repository.
Authors
- Hadi Jahanshahi (ORCID: https://orcid.org/0000-0001-7810-6479)
- Zheng H. Zhu
Institutions
- York University (CA)
- University of York (GB)
Publication Details
- Journal
- Frontiers in Space Technologies
- Published
- 2026-11-11
- DOI
- https://doi.org/10.3389/frspt.2026.1955127
- Primary Topic
- Robotic Mechanisms and Dynamics
- Type
- article
- Field-Weighted Citation Impact
- 0.00