Post

Hexapod

Design, Implementation, Simulation, Testing

Hexapod

Hexapod: Design, Implementation, and Testing

A highly versatile, robust, and feature rich hexapod. Features that it is has include, a complete ROS2 based Controller, Upgradable design, Cameras for perception, Feet contact sensors, Reinforcement learning based control for walking on rough terrain(Work In Progress), Various walking Gaits, Various motion filter modes.

ROS2 Based Controller

The ROS2 based controller, here I am using a PS4 controller to give commands.

Simulation in Gazebo Simulator (Classical Control):

Overview

This shows the classical style hexapod controller, wherein, it follows:

  • x_translation, y_translation, and Z_height, of hull.
  • Linear (x,y) velocity of body.
  • {Roll, Pitch}(Closed Loop Control) and {Yaw}(Open Loop) of hull.
  • Tripod, Ripple, and Amble gaits.
  • Motion filters / Modes

Reinforcement Learning in Isaac Gym

It learned to Walk

Unexpected Interesting Stuff

Attempted camera based Learning (Not emough V-RAM on my laptop)

Overview

The goal is to train a model that adapts the hexapod’s leg movements to maintain a stable hull while following velocity commands.

  • The first video demonstrates the hexapod learning to follow basic linear and angular velocity commands.
  • The second video is amusing.
  • The third video showcases the use of camera input from each environment’s hexapod, highlighting the potential to incorporate camera data during training.

Technical Details

Hardware

  • Hexapod (In development): Custom 3D-Printed parts, 30Kg-cm Serial-bus servos, Aluminum (2mm), Cameras.
  • Sensors: Contact sensors, 3-axis inclination, 3-axis acceleration.
  • Controller: Raspberry Pi, ESP32-based Servo Driver.

Images

Hexapod Internal View

Internal view of the hexapod.

Hexapod Complete Build

Complete hexapod build.

Demonstration Video

Software

  • Programming Language: Embedded C, Python, C++.
  • Autonomy: Wireless Teleoperation, Wired teleoperation, Camera guided Motion.

Source Code

The complete codebase and documentation are available on GitHub.

Acknowledgments

Software: me, Hardware was funded by, IIT Dhanbad.

What’s Next?

A lot of cool stuff.

  • Reinforcement Learning
  • Improving the code structure
  • Publishing the Controller
This post is licensed under CC BY 4.0 by the author.