️
Mithi's Hexapod Robot Simulator
- A bare minimum browser-based hexapod robot simulator built from first principles
️ - If you like this project, consider buying me a few
:coffee: cups of coffee .:two_hearts:
| |
|
|
|
| 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
| |
|
|---|---|
| |
|
️
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/
- Modify default settings with ./settings.py
- Dark Mode is the default - modify page styles with ./style_settings.py
:warning:
Known Issues
-
:exclamation: Priorities -
:exclamation: Help Wanted -
:exclamation: Bugs -
:exclamation: All
️
Conventions and Algorithms
- Definitions
- The Inverse Kinematics Algorithm used for this project
- How to find the ground contact points, tilt, and height of the hexapod
- How to make the hexapod step on the correct target ground contacts
- How to determine if the hexapod should twist and by how much
️
Screenshots
| |
|---|
| |
️
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
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
The Master Switch
Tim Wu / Knopf / 2010-11-2 / USD 27.95
In this age of an open Internet, it is easy to forget that every American information industry, beginning with the telephone, has eventually been taken captive by some ruthless monopoly or cartel. Wit......一起来看看 《The Master Switch》 这本书的介绍吧!