Foundations of Robotics - Chapter 17 Robot Hexapod Build Labs

A guide to a textbook chapter I wrote for robotic enthuisiats!

Helpful content to those who read my book chapter. While comments are enabled on this post, there’s a chance I’ll miss them. Feel free to contact me though linkedin, git, discord or whatever (see links at the website footer).

PLEASE NOTE: This post is still being written, I will be attempting to finish it off before 2025 ends :)

Introduction

In 2022, I was invited to contribute a chapter to the textbook “Foundations of Robotics: A Multidisciplinary Approach with ROS and Python.” This book was designed as an introductory resource for undergraduate students, encompassing a wide range of topics in robotics, from serial link manipulators to SLAM (Simultaneous Localisation and Mapping) and human-robot interaction. As robotics continues to evolve into a more diverse and multidisciplinary field, this book aims to provide beginners with a broad understanding of where robotics research can lead and how to approach the development of new systems. The book is available for free in PDF format on its open-source website.

I specifically authored Chapter 17 of this textbook named Robot Hexapod Build Labs. This chapter presents a series of example tasks covering the mathematical foundations of a serial link robot and introduces the basics of writing serial protocols. These topics are covered across four sub-projects. This post will be quite long, as it covers the

In this blog post, I will provide a high-level overview of the chapter and offer solutions to the questions at the end of each project. This will help readers understand why these concepts are so important to learn. Additionally, I will outline potential expansions on the topics introduced, giving interested readers a broader perspective on why these concepts are essential for aspiring robotics engineers. With that said, let’s dive in.

Introductory Questions

“Project One: Defining the Robot System” is the first project and presents the example serial-link leg we will be using in this chapter with visualisation (see below). This robot leg is part of a hexapod design presented previously in the book (see Chapter 12), we will simply be treating the robot leg as a single serial-link system as a part of learning the foundational mathmatics.

drawer1

The robot leg which we will be mathmatically modelling.

So, let’s first look at Section 17.2.3.1. There are a series of tasks/questions from the content outline in Section 17.2. I would highly encourage readers to first read through the content first and attempt to answer the questions yourself first. So the questions are as listed below:

Task One — Basic Questions

1.A — Take the robot leg shown above and indicate the type of mechanical device of the leg (i.e., a parallel structure or a serial-link robot).

1.B — Referring to the definitions in Chapter 10, list suitable techniques for modelling the following relationships:

  • 1.B.i Position relationships: How would the position of the tip/foot relate to the actuator positions?
  • 1.B.ii Velocity relationships: How would the speed of the tip/foot relate to the actuator velocities?
  • 1.B.iii Dynamics relationships: How would the desired motion, forces and torques at the foot/tip relate to the torques produced by the actuators?

Task Two — Research Components

2.A — The original hexapod design used the MX-28r actuator. What design considerations might have driven that choice? You may make reasonable assumptions; consider:

  • The overall weight of the hexapod and how the mass is distributed across the legs.
  • The weight and placement of components such as the battery and on-board electronics.
  • Actuator mass and torque capacity relative to expected loads and maneuvers.

2.B — Review the list of suitable actuators linked from the book’s website. For each candidate:

  • Inspect the datasheet and note strengths and weaknesses (e.g., position/velocity tracking fidelity, torque ratings, control interfaces, collision handling features, form factor).
  • Identify the optimal actuator for this hexapod model, justifying your selection based on tracking performance, collision robustness during locomotion, strength, and weight.

My Answers and Arguements - Please pause here if you don’t want to see the answers yet

Last chance to try and answer the questions if you haven't ...

1.A — Take the robot leg shown above and indicate the type of mechanical device of the leg (i.e., a parallel structure or a serial-link robot).

***So, the robot shown in the image above is a serial link manipulator. These types of robot structures are characterised as systems with sequential joint-link pairings. A robot arm is common example of serial-link structures, where each joint will have it’s own independant actuation, and then directly link to the next actuator through a rigid body structure, repeating this process to build a chain of joint-link pairs sequentially.

As a result, the robots end-effector position can be easily calculated from the joint positions relative to base frame by using matrix multiplication and homogenous transforms. A type of machine that don’t fit into this definition includes delta robots, which are defined as a parallel mechanism. Unlike serial-link robots, delta machines use multiple kinematic chains to connect the end-effector to the base coordinate. Therefore joint flexibility is constrained by the other kinematic chains in the mechanisms design.***

1.B — Referring to the definitions in Chapter 10, list suitable techniques for modelling the following relationships:

  • 1.B.i Position relationships: How would the position of the tip/foot relate to the actuator positions?

TestText1

drawer1

The DH parameters of the serial-link robot leg.

TestText2

  • 1.B.ii Velocity relationships: How would the speed of the tip/foot relate to the actuator velocities?
  • 1.B.iii Dynamics relationships: How would the desired motion, forces and torques at the foot/tip relate to the torques produced by the actuators?

2.A — The original hexapod design used the MX-28r actuator. What design considerations might have driven that choice? You may make reasonable assumptions; consider:

  • The overall weight of the hexapod and how the mass is distributed across the legs.
  • The weight and placement of components such as the battery and on-board electronics.
  • Actuator mass and torque capacity relative to expected loads and maneuvers.

2.B — Review the list of suitable actuators linked from the book’s website. For each candidate:

  • Inspect the datasheet and note strengths and weaknesses (e.g., position/velocity tracking fidelity, torque ratings, control interfaces, collision handling features, form factor).
  • Identify the optimal actuator for this hexapod model, justifying your selection based on tracking performance, collision robustness during locomotion, strength, and weight.

Leg Position Kinematics

…existing code…

Leg Position Kinematics

The Core Problem

Codifying The DH Parameters

Basic Position Kinematic

Advanced Position Kinematics

Leg Velocity Kinematics

I hope this learning content was educational and helpful