3 月 14 日,在加州理工学院 W. M. Keck 工程实验室大楼楼上的一个工作空间里,八只机械臂正在炫耀它们的东西。在构建和编程它们的本科生的监督下,每个机器人都执行了独特的任务。一只胳膊捡起并布置玩具火车轨道,另一只胳膊拼图七巧板,而第三只胳膊玩西洋双陆棋,另一只胳膊在卡罗姆游戏中在棋盘上弹奏圆盘。与此同时,没有一个学生碰过控制器。机械臂自行完成任务。
这是 ME/CS/EE 134 机器人系统的最后一场演讲/开放日,这是一门为期 10 周的课程,由加州理工学院机械和土木工程教学教授 Günter Niemeyer 教授。Niemeyer 设计了这门课程,旨在为学生提供一项挑战,要求他们作为一个团队工作,依靠机械工程、计算机科学和电气工程的技能来开发一个有形的完全集成的机器人。
“挑战实际上包括所有元素。这不仅仅是机械的,“Niemeyer说。“它包括所有的传感、检测、逻辑和行为,使机械臂成为一个功能齐全的系统。
在提供 ME/CS/EE 134 的第四年,八组三到四名学生组成团队,构建桌面手臂,这些手臂在编程任务方面既具有交互性又具有反应性。
“学生,尤其是加州理工学院的学生,非常擅长解决问题和学习理论。但重要的是要知道这些概念的实际含义以及如何或何时使用它们,“Niemeyer 说。“很难培养这种直觉,除非你真正玩弄事物并了解什么是重要的。
为了使系统自主运行,需要大量的编程。计算机科学专业的大四学生尼尔·詹瓦尼(Neil Janwani)是该团队的成员,该团队对机器人进行编程以玩卡罗姆(carrom),这种游戏被认为起源于数百年前的印度次大陆。当机械臂拿起磁盘,然后向黑板中心弹动时,他解释说,这是他在加州理工学院学习期间使用过的最复杂的硬件系统。
Janwani说,这一挑战要求他的团队开发比纯在线或理论项目更强大的代码。“作为一名学生,你没有意识到硬件上的情况可能会有很大不同,而且事情并不总是你所期望的,”Janwani说。例如,一个区域的眩光可能会改变摄像机的视野,或者当人们四处走动时可能会投射阴影。因此,程序员必须提出能够处理所有这些不同情况的代码。“开发这种更强大的代码真的很棒,因为它为我们在工业中的实际研究和工作做好了准备,”Janwani说。
Niemeyer向学生们强调,这些系统在执行任务时不需要完美无缺——例如,每次都把乒乓球弹到一个红色塑料杯里。但是机器人需要做出反应,注意何时出现故障或发生意外情况,并知道如何恢复或重试。Niemeyer说,要成功地创造这种自我检查行为,并建立一个能够意识到其环境某些方面的机器人,确实需要整个团队的专业知识。
“很少有人能真正掌握所有的机器人技术。这个领域太宽泛了,“Niemeyer说。“我要求学生们尝试互相教导,至少要欣赏他们团队中的其他技能。我认为对他们来说,对他们可以交流的其他领域有足够的了解非常重要,他们理解为什么以一种或另一种方式这样做更好,并欣赏大局。
新闻旨在传播有益信息,英文版原文来自https://www.caltech.edu/about/news/robotic-arms-show-off-student-teamwork-and-ingenuity