独立(或有能力)机器人模拟器


13

我是一名软件工程师,他是一个非营利性组织的志愿者,该组织将年轻女孩介绍给技术。我们最近一直在讨论将这些孩子介绍给机器人技术的方法,我很好奇我们拥有哪些类型的低成本选择。

一个非常吸引人的想法是拥有一个在线模拟器,或者(更可取的是)一个离线的独立模拟器,我们可以使用它来构建和编程简单的机器人。也许无非就是将组件拖在一起,然后对这些组件之间的交互进行编程。

我可以在外展中使用哪些解决方案?


以我的经验,在模拟器中,不工作且外观一般的机器人(作为机器人)比成熟的外观酷似机器人的注意力更多。只要它不是真实的,它就可能是所有孩子都喜欢的电脑游戏或卡通片。
沙巴兹(Shahbaz)2012年

我们需要一个模拟器,以便女孩们可以实际学习编程概念并将其投入使用。模拟器不需要很漂亮-可以只不过是粗略的几何形状。代码很重要。
桑普森

Answers:


7

Stage和Gazebo分别是开源2D和3D模拟器。它们是由Player项目创建和维护的。它们非常易于使用,并且具有许多预先构建的地图和机器人。根据您的听众的经验,您可能需要做一些繁重的工作(即构建配置文件和主类)。

他们还有其他一些好处。首先,只要您将主控制代码创建为播放器插件,那么它们就可以轻松适应实际的机器人。其次,已经构建了许多插件来与实际硬件一起使用。第三,他们与ROS合作


4

可能有点贵(75瑞士法郎),但我还是建议Colobot。这是一个很好的,几乎像游戏的环境,机器人需要帮助人类使太空基地变得可居住。机器人由孩子编程,同时执行越来越复杂的任务。该程序以一种面向目标,有趣的方式教授编程的基础知识。


3

Microsoft机器人技术是免费的,并且包括模拟器。它并不是世界上最简单的环境,但是它强大且适合于实际的机器人技术。我认为在老师的事先参与下进行设置可能会有用。乐高,Neato和其他一些机器人都有一个模拟器“包”,可以用C#或可视化拖放语言对它们进行编程。

再次,我认为需要进行一些前期工作才能使年轻人易于使用,但这并不难,考虑到您的要求,这将是我的方法。我要说的是,就复杂性而言,在Windows(Windows)与带有Gazebo / ROS的Linux环境之间,Windows环境将稍微复杂一些,尽管其中大部分希望在准备工作中被隐藏。



2

V-Rep(虚拟机器人实验平台)在它可以进行的各种模拟中似乎非常广泛。它是免费的,用于教育目的,并带有多种工具。您可以观看此YouTube视频进行演示。


1

也许不是完整的机器人模拟器,但我们使用3D CAD,Autodesk Inventor进行了大量模拟。通常,我们会为CAD制作一个类似于我们希望用于硬件的界面。这样,我们可以将CAD模型用作虚拟原型,以:

  • 尽早发现设计错误。碰撞,行程不足等
  • 它对于找到诸如对准误差之类的误差的补偿也很有用。使用CAD,我们可以一个一个地建模不同的误差并测试我们的补偿。能够引入已知符号的大错误很方便。
  • CAD还提供诸如惯性矩之类的答案。
  • 我们还使用CAD模型生成设备程序。

如果我错了,请指正我,但CAD非常注重正确地对硬件和物理建模,而不是针对机器人编程。OP对教学编程而不是工程学感兴趣,所以我认为CAD系统无法解决他的问题
ThomasH 2013年

@ThomasH我们已经成功地对CAD的api进行了编程,并且这种方式能够进行很多开发。我应该删除吗?
2013年

1
无需删除。这不是一个不好的答案,只是因为我认为这不适合OP。无论如何,投票通常都会推动最合适的回答,而OP会接受最有帮助的回答。但是您可能仍然对遇到此问题的类似问题感兴趣的人感兴趣
ThomasH 2013年

1

您可能要签出“ MindRover ”。由于原始网站已关闭,因此现在已经较旧且很难找到,但仍可以在EbayAmazon上找到。尽管是面向游戏/任务的,但它涉及从一组机器人组件中进行拾取,将它们放在机箱上,然后将它们连接在一起。这款游戏确实做得很好,可以用来探索简单到半高级的概念。此处的一些屏幕截图:http : //images.google.com/images?q=mindrover

如果您正在寻找一些具有现实功能的更严肃的东西,您可能想看看FlowStone for Education。我没有使用过它,但是我相信它是理想的机器人编程工作的可视化编程环境。

最后,尽管不是软件或仿真,但我最近遇到了phblj关于reddit的有关引入编程技术评论,我认为它真的很好(尤其适用于机器人编程)。引用:

我与孩子一起使用的计算机的一个很好的例子:一个孩子成为了“程序”,并给出了如何制作花生酱和果冻三明治的说明,但他们看不到我的举动。我是计算机,完全按照说明进行操作。欢闹的结果。(不要从花生棒上取下盖子,也不要从我放入的盒子里拿出面包)。一分钟后,另一个孩子站起来尝试。他们走得更远,但仍然挣扎。“把花生酱放在面包上”导致罐子放在面包上,等等。它花了几个孩子,但最终我们得到了它。如果您有助手,请他们按照他们的指示编写说明,创建“程序”。

然后,您可以进行解释,但真正困扰的是,每个孩子都“比计算机聪明”。但是那台计算机确实非常快地遵循了说明。因此,他们需要使用他们的智能和计算机速度,并进行编程!

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.