A simple browser-based hexapod robot simulator built from first principles

栏目: IT技术 · 发布时间: 5年前

Mithi's Hexapod Robot Simulator

A simple browser-based hexapod robot simulator built from first principles A simple browser-based hexapod robot simulator built from first principles A simple browser-based hexapod robot simulator built from first principles A simple browser-based hexapod robot simulator built from first principles
STATUS FEATURE DESCRIPTION
:tada: Forward Kinematics Given the angles of each joint, what does the robot look like?
:tada: 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?
:tada: Uniform Movements If all of the legs behaved the same way, how will the hexapod robot as a whole behave?
:tada: Customizability Set the dimensions and shape of the robot's body and legs. (6 parameters)
:tada: Usability Control the camera view, pan, tilt, zoom, whatever.
:tada: 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.
:exclamation: Stability Check (WIP) If we pose the robot in a particular way, will it fall over?
:exclamation: Fast Okay, it's not as fast as I wanted, but when run locally, it's okay
:exclamation: Bug-free Fine, right now there's still room for improvement
:exclamation: Well-tested Yeah, I need to compile test cases first

Preview

A simple browser-based hexapod robot simulator built from first principles A simple browser-based hexapod robot simulator built from first principles
A simple browser-based hexapod robot simulator built from first principles A simple browser-based hexapod robot simulator built from first principles

Requirements

  • Python 3.8.1
  • Plotly Dash 1.10.0
  • Plotly Dash Daq 0.4.0
  • Numpy 1.18.1
  • See also ./requirements.txt

Run

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

:warning: Known Issues

Conventions and Algorithms

Screenshots

A simple browser-based hexapod robot simulator built from first principles
A simple browser-based hexapod robot simulator built from first principles

Notes

  • :exclamation: Now live on https://hexapod-robot-simulator.herokuapp.com ! BUT (and a big one) I highly suggest that you run it locally. When run locally, it's pretty speedy! On the other hand, the link above is barely usable. Might convert this to to be a fully client-side Javascript app later, maybe?

  • :exclamation: This implementation uses matrices, NOT quaternions. I'm aware that quaternions is far superior in every single way. In the (un)forseeable future, maybe?

  • :exclamation: Frankly, My IK algorithm isn't all that great, it's just something I came up with based on what I remember back in college plus browsing through the Mathematics Stack Exchange . It might not be the best, but it's the most intuitive that I can think of. If you want something closer to the state-of-the-art, maybe checkout Unity's Fast IK or ROS IKFast .

  • I believe that the idea that it's best to be kind to one another shouldn't be controversial. And I shouldn't be afraid to say that.

Contributors


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Clean Code

Clean Code

Robert C. Martin / Prentice Hall / 2008-8-11 / USD 49.99

Even bad code can function. But if code isn’t clean, it can bring a development organization to its knees. Every year, countless hours and significant resources are lost because of poorly written code......一起来看看 《Clean Code》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

随机密码生成器
随机密码生成器

多种字符组合密码

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具