Skip to article frontmatterSkip to article content

https://marinholab.github.io/OpenExecutableBooksRobotics/

License

This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

CC BY-NC-SA 4.0

This project has been funded by

DurationFundFunder
Aug 24 - Jul 25Open Research FellowshipOffice for Open Research (UoM)

Contents

LevelTitle
BasicRobotic manipulators basics using numpy
AdvancedKinematic modeling and control of serial-link robotic manipulators using dqrobotics: From zero to hero.

Basic

These lessons are linked to the Robotic Manipulators unit at UoM.

LessonTitle
1Python basics
2Rigid body motion
3Forward kinematics
4Differential kinematics
5Kinematic control

Advanced

Eight lessons representing the Python version of the course below, related to dual-quaternion algebra using DQ Robotics.

Kinematic modeling and control of serial-link robotic manipulators using DQ Robotics: From zero to hero.
NumberTitleContent
1Python BasicsThe very basics of Python and numpy, including simple mathematical operations.
2Quaternion BasicsRepresenting and manipulating quaternions using dqrobotics Python. Unit quaternions are also introduced and used to represent the rotation of rigid bodies
3Dual Quaternion Basics (Part 1)Representing and manipulating dual quaternions using dqrobotics Python. Unit dual quaternions are introduced and used to represent the pose transformation of rigid bodies.
4Dual Quaternion Basics (Part 2)Unit dual quaternions are used to represent lines and planes. Distance functions between points, lines, and planes are also introduced
5Robot Control Basics (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.
6Robot Control Basics (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.
7Robot Control Basics (Part 3)Understanding and handling task-space singularities with a 7-DoF planar robot.
8Optimization-based Robot ControlRevisiting the topic of kinematic control using mathematical optimization formulation, implement joint-space and task-space constraints using quadratic programming.