关键词:机器人
来源:互联网 2021-05-24
波士顿动力大家都很熟悉,但该公司员工的工作和生活却很少有人了解。特别是新冠疫情在美国的蔓延,员工的日常工作和生活不可避免地受到了影响。本文就带大家看看波士顿动力的员工如何度过自己的一天。
工作中的 Jenny Barry。
本文的主人公是 Jenny Barry,她是马萨诸塞州沃尔瑟姆市波士顿动力总部的一位资深机器人专家。Barry 认为,自己工作中最有趣的部分是为机器人与外界的交互编写算法。她的团队负责让机器人执行一些行为,比如举起东西或跳上箱子等。
Barry 于 2014 年加入波士顿动力公司,之前在另一家机器人公司担任控制工程师。
自从小时候读过美籍犹太人科幻作家 Isaac Asimov 的作品之后,她便对机器人着了迷。2013 年,Barry 取得了 MIT 的博士学位,期间致力于复杂操作问题的规划研究。
在波士顿动力,Barry 表示自己有机会研究一些超酷的机器人,如人形机器人 Atlas、仓储机器人 Handle 和 Stretch。
作为一位资深机器人专家,Barry 及其团队编写、更新和维护机器人运动所需的代码。她编写的算法基本上是为机器人执行行为提供支持。
她表示要通过不断的迭代过程来实现机器人行为。测试代码可以确保机器人平稳运转,并达到最佳性能,这些对于创建在现实世界高效发挥作用的可靠产品和技术而言至关重要。
我们也许会好奇,这位资深机器人专家到底怎样度过自己的一天呢?是有趣还是枯燥呢?就让我们走进 Barry 的一天!(下文以第一人称表述)
早早起床,来杯热巧克力
我不喜欢咖啡和茶,疯狂迷恋甜食。起床后我会花时间陪伴家人,包括两岁大的女儿,然后再去查看机器人实验报告以及代码执行情况。
每天,我都会与自己团队(负责 Spot 和 Atlas)以及感知、控制和硬件等其他团队的成员碰面,确保我们在正在进行的项目、每周目标、公司发展计划等方面达成共识。
每周,我会与自己的五人团队碰一次面,以监督项目进程和解决遇到的任何问题。在碰面交流中,我们会根据「想要机器人实现的行为」来设定工作优先顺序。
最近,团队每周的优先工作是调整「促使仓储机器人 Strech 四处运动」的核心算法之一。我们花一周时间强化和改进调试流程,以充分理解机器人的运动。有时由于编码错误或硬件结构问题,机器人的运动与人体运动背道而驰。
我还启动了一个简化和加速模拟中代码运行的项目,这是因为在模拟中快速测试机器人是设计流程中的主要组成部分,特别是居家工作的时候。
在一周的工作中,我们还解决了机器人因障碍物无法拿起箱子时应该采取的行动。除此之外,我们还发现了系统报告一些识别箱子(identified box)时出现的问题,并讨论了不同的解决方案。一般来说,我每周的工作会根据机器人的开发阶段而实时调整。
疫情改变了我及团队的工作方式,但没有影响工作效率
疫情前,我几乎每天都要亲自操作 Stretch 机器人。但过去几个月,我完全「与世隔绝」,情况大大改变了。公司疫情期间的工作流程要求我们调整机器人开发进程,而不像以前那样走进实验室就行了。
当机器人不在现场时,我通常全天都要与团队联系,以确保一切设置得当。机器人身上和地面上的摄像头需要正常运行,从而可以拍摄机器人的运动录像,实现远程观察。
除了工作外,我的日常生活也发生了变化。由于居家办公,我需要远程管理自己的团队。我们每天通过 Google Meet、GChat 或邮件沟通,讨论机器人预期之外的行为或者为它们的新行为作出响应。
虽然居家办公时确保一切平稳运行不是一件容易的事,但我们已经找到了适用于团队的解决方案,可以令所有人保持高效并参与其中。
充分利用间隙时间来创建和审查代码
在会议或其他工作间隙中,我通常会检查自己和团队构建的代码。这可能包括创建一个更快的模拟构建(simulation build)、发布自己的代码以供评审,或者创建一个避免将代码发送至通电机器人的过程,因为这会导致机器人关闭电源。
我工作中最喜欢的部分:发现和修复棘手的代码差异,这可能包括发现和修复代码中的 bug,这些 bug 可以跟踪机器人看到的现实世界的一切,以及随时间推移它如何运动。当一个团队成员完成这样的任务时,我们认为是一个巨大的胜利。
我们创建了一个「bug board」,可以让团队成员标记出他们在测试代码时遇到的任何 bug。我强调要整理好这些 bug,并在一周内尽可能地去解决。这是一个很好的开始。周会上讨论遇到的 bug,并在必要时让其他人提供解决方案。
我还通过查看内部发布和共享的修正代码来监控团队在不同项目上的进展。我们的沟通渠道一直是开放的,所以检查并发现彼此代码中的错误有助于重新调整并成功完成手头的任务。
我们利用「job jar」来填补计划日程中的时间空白,以保持工作充实。机器人的实际操作对于测试代码是很有价值的,所以在等待这个机会的过程中,团队任何成员都可以从「job jar」中找到自己的任务,以保持工作效率。这也为其他成员提供了一个很好的机会来审查代码,并对任何给定的任务提出意见。
波士顿动力,引领未来的机器人
前段时间,波士顿动力向全世界展示了新型仓储机器人 Stretch,每小时搬运货物 800 箱,一次充电可工作 8 小时。我和我的团队协助提高了 Stretch 的卸货能力,这是整个 Stretch 团队开发的一种机器人行为。
我们还负责开发「Stretch 从箱子中抓取 Spot」的能力。
即使没有即将发布的产品,我们也一直在实验室里进行新的开发。
团队之间的协作对波士顿动力公司机器人的发展至关重要。我们团队的成功很大程度上依赖于与他人沟通,以及在现场或远程高效执行工作的能力。
这就是我在波士顿动力工作的方方面面,从概念到编码到故障排除,再到亲眼看到机器人执行我们编写的任务。我们今天的成就将引领未来的机器人,帮助人类并最终改善后代的生活。