Skip to content

abandonrules/hexapod-robot-simulator

 
 

Repository files navigation

Build Status codecov Code Climate HitCount License: MIT Code style: black PRs welcome! first-timers-only

Mithi's Hexapod Robot Simulator

Twisting turning and tilting Adjusting camera view

Announcement

You might be interested in checking out my rewrite in Javascript, live at: https://hexapod.netlify.app/ , which is like 10000000x faster. If you'd like to build you're own user interface with Node, you can download the algorithm alone as a package in the npm registry: Hexapod Kinematics Library. There is also a "fork" modified where you can use the app to control a physical hexapod robot as you can see in the gif below.

drawing

Features

STATUS FEATURE DESCRIPTION
🎉 Forward Kinematics Given the angles of each joint, what does the robot look like?
🎉 Inverse Kinematics What are the angles of each joint to make the robot look the way I want? Is it even possible? Why or why not?
🎉 Uniform Movements If all of the legs behaved the same way, how will the hexapod robot as a whole behave?
🎉 Customizability Set the dimensions and shape of the robot's body and legs. (6 parameters)
🎉 Usability Control the camera view, pan, tilt, zoom, whatever.
🎉 Simplicity Minimal dependencies. Depends solely on Numpy for calculations. Uses only Plotly Dash for plotting, Dash can be safely replaced if a better 3d plotting library is available.
Stability Check (WIP) If we pose the robot in a particular way, will it fall over?
Fast Okay, it's not as fast as I wanted, but when run locally, it's okay
Bug-free Fine, right now there's still room for improvement
Well-tested Yeah, I need to compile test cases first

Preview

image image
image image

Requirements

  • Python 3.8.1
  • Plotly Dash 1.18.1
  • Plotly Dash Daq 0.5.0
  • Numpy 1.19.5
  • See also ./requirements.txt

Run

$ python index.py
Running on http://127.0.0.1:8050/

Screenshots

Kinematics
IK

More Information

Check the Wiki for more additional information

🤗 Contributors

About

A hexapod robot simulator built from first principles

Resources

License

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 84.4%
  • CSS 15.3%
  • Other 0.3%