️
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
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
架构即未来:现代企业可扩展的Web架构、流程和组织(原书第2版)
Martin L. Abbott、Michael T. Fisher / 陈斌 / 机械工业出版社 / 2016-4-15 / 99.00
任何一个持续成长的公司最终都需要解决系统、组织和流程的扩展性问题。本书汇聚了作者从eBay、VISA、Salesforce.com到Apple超过30年的丰富经验, 全面阐释了经过验证的信息技术扩展方法,对所需要掌握的产品和服务的平滑扩展做了详尽的论述,并在第1版的基础上更新了扩展的策略、技术和案例。 针对技术和非技术的决策者,马丁•阿伯特和迈克尔•费舍尔详尽地介绍了影响扩展性的各个方面,包......一起来看看 《架构即未来:现代企业可扩展的Web架构、流程和组织(原书第2版)》 这本书的介绍吧!