Kinematic modeling and control of serial-link robotic manipulators using dqrobotics Python: From zero to hero.
This executable book contains eight lessons representing serial-link manipulator modeling in dual quaternions using dqrobobotics
described in Adorno & Marques Marinho (2021). It is a derivative
work of a dqrobotics
MATLAB course from Murilo M. Marinho.
The theory used in this book is described in works such as Adorno, 2011, Adorno, 2017, and Marinho et al. (2019).
Using this book¶
Each lesson is a Jupyter notebook. Each lesson can be downloaded, opened, and executed with popular IDEs, such as VSCode and PyCharm. The reader is expected to follow it sequentially.
Contents¶
Number | Title and Link | Content |
---|---|---|
1 | DQ1 Python Basics | The very basics of Python and numpy , including simple mathematical operations. |
2 | DQ2 Quaternion Basics using DQ Robotics | Representing and manipulating quaternions using dqrobotics Python. Unit quaternions are also introduced and used to represent the rotation of rigid bodies |
3 | DQ3 Dual Quaternion Basics using DQ Robotics | Representing and manipulating dual quaternions using dqrobotics Python. Unit dual quaternions are introduced and used to represent the pose transformation of rigid bodies. |
4 | DQ4 Dual Quaternion Basics using DQ Robotics - Part 2 | Unit dual quaternions are used to represent lines and planes. Distance functions between points, lines, and planes are also introduced |
5 | DQ5 Robot Control Basics using DQ Robotics - Part 1 | The basics of the kinematic control of serial-link robotic manipulators. Forward kinematics model, inverse kinematics model, task-space velocity and position control using a 1-DoF planar robot. |
6 | DQ6 Robot Control Basics using DQ Robotics - Part 2 | Modeling serial robots using the Denavit-Hartenberg (DH) parameters; the forward kinematics model using the DH parameters; the pose, rotation, translation Jacobians; translation, rotation, and pose task-space controlers; all using a 3-DoF planar robot. |
7 | DQ7 Robot Control Basics using DQ Robotics - Part 3 | Understanding and handling task-space singularities with a 7-DoF planar robot. |
8 | DQ8 Optimization-based Robot Control | Revisiting the topic of kinematic control using mathematical optimization formulation, implement joint-space and task-space constraints using quadratic programming. |
- Adorno, B. V., & Marques Marinho, M. (2021). DQ Robotics: A Library for Robot Modeling and Control. IEEE Robotics & Automation Magazine, 28(3), 102–116. 10.1109/mra.2020.2997920
- Adorno, B. V. (2011). Two-arm Manipulation: From Manipulators to Enhanced Human-Robot Collaboration [Theses, Université Montpellier II - Sciences et Techniques du Languedoc]. https://theses.hal.science/tel-00641678
- Adorno, B. V. (2017). Robot Kinematic Modeling and Control Based on Dual Quaternion Algebra — Part I: Fundamentals. https://hal.science/hal-01478225
- Marinho, M. M., Adorno, B. V., Harada, K., & Mitsuishi, M. (2019). Dynamic Active Constraints for Surgical Robots Using Vector-Field Inequalities. IEEE Transactions on Robotics, 35(5), 1166–1185. 10.1109/tro.2019.2920078