对机械臂运动进行 3D 建模,有什么想法吗?

问题描述 投票:0回答:3

我希望您不介意我询问一些有关机器人系统建模的建议。我最近对使用逆运动学 (IK) 来控制 5 自由度机器人操纵器非常感兴趣。我在 IK 方面有扎实的基础,但我遇到的问题是如何可视化操纵器如何相对于关节角度移动。

我已经研究过使用 3D 工具包(例如 Blender、Panda3D、vPython)来创建手臂的 3D 模型,但我不确定是否应该寻找具有物理支持的东西。我也不确定使用这些包对运动建模的效果如何。有人有什么建议吗?我并不是在寻找像微软的 Robotic Studio 这样的成熟的机器人模拟器,我想从基础知识开始,首先了解一切是如何工作的,即用 Python 编写 IK 代码,然后以 3D 形式可视化运动。我对Python非常熟悉,所以与Python交互的东西会更好。

python modeling robotics inverse-kinematics
3个回答
2
投票

Blender 的伟大之处在于它的 API 实际上是用 Python 编写的!

此外,除了许多其他建模工具之外,它还很好地支持逆运动学(IK)。

Blender Cookie 是一个很棒的资源。

这里是在 Blender 中制作 IK 装备的教程。

Blenders python api 的文档非常广泛,它甚至内置了一个交互式 python shell,以便您可以在执行过程中看到脚本的效果。

Blender 使用的物理引擎是流行的子弹物理引擎,它已被用于许多商业游戏以及一些故事片(其中包括 2012 年)。


0
投票

这并不是一个真正的难题,不是吗?想必您正在自己计算数学;因此,如果您的机械臂被可视化为几个长方体,那么您所需要的只是在 x、y、z 坐标处以及您提供的方向向量上渲染它们,并在需要时进行更新。 OpenGL 应该可以很好地做到这一点,你可以在 <50 lines.

中做到这一点

0
投票

Python-Ogre是非常成熟的C++引擎OGRE 3D的包装。我已经将它用于一个相当重要的项目,我会给 Python 包装器一个褒贬不一但大多是积极的评价。它非常有能力,并且很好地将所有 C++ 功能包装在一个主要是 Python 的接口中。您可以通过提供这些功能的众多 OGRE 扩展模块之一获得物理支持。

最大的缺点是 Python 接口的文档很差,你必须依赖 C++ 库的文档来理解某些事情。为了让您了解可能性,我能够使用 Python 和 PyV8(该语言是 Javascript)围绕 OGRE 实现一种脚本语言,因为我制作了一个 C++ 项目原型。

最终的原型非常成熟和健壮,我能够用高级 Javascript 包装 OGRE 的内部结构。使用脚本语言,我能够编写动画、材质、渲染和物理脚本。

© www.soinside.com 2019 - 2024. All rights reserved.