本文转自雷锋网,如需转载请至雷锋网官网申请授权。
如上所示,总共需要花费清单如下:一个3D打印的底座:5美元;四个轮子:3.5美元;三节电池:7美元;两个速度传感器:2美元;一个马达驱动器:3美元;一个微控制器:8美元。
之所以使用手机作为Bobo的大脑,是因为如今智能手机的功能越来越强大,手机的相机质量和处理器速度等方面也正在不断提高。即使是商业手机也配有惯性测量单元(inertial measurement units)、GPS、Wi-Fi、蓝牙、蜂窝调制解调器以及专门用于AI神经网络模型Inference的芯片。有些手机配件的性能比电脑处理器(desktop processor)还要出色!
研究者将智能手机插入一个电机体(electromechanical body)内,主要用于传感、数据融合和计算。此外,底盘最多可容纳四台马达(motor),还留有一些空位用于安装控制器、微控制器、LED灯、智能手机安装座(smartphone mount)和USB数据线。
在充电方面,电池组与专门的充电端口连接,向马达供电,并有一块Andruino Nano板(一个基于易用硬件和软件的开源电子平台)通过USB与智能手机配对,向机器人提供串行通信链路(serial communication link)和电量(power)。
机器人的两个前轮还配备了能够传送测距信号的传感器,以及与马达连接的引脚(pin)实时调整速度和方向。
Bobo的软件堆层也较为简易,仅包含两个通过串行链接进行通信的组件。操作人员可以在智能手机上安装一个安卓app,然后通过app的界面,在运行更高级别的感知和把控工作量的同时进行数据集的收集。此外,在Arduino上运行的程序能够进行简单的驱动,并测量里程计与电池电压等等。
安装了安卓app之后,OpenBot还能通过你们现有的兼容了蓝牙设备的PS4、Xbox和Switch等游戏控制器进行操控。控制器上的按钮可以设定功能,在寻找路径的模型(path-finding model)中进行数据收集和交换。这些模型包括方便上手的自动导航模型,可以检测并跟踪机器人视线内的人员。
整个组装过程也很简单,只需坐在桌子前“动手”即可,即使没那么心灵手巧的人,只要拿出拼图的耐心,想必就能完成。
这样一台简单的机器人,效果究竟如何呢?
研究人员用中端手机小米Note 8、华为P30 Lite和小米Poco F1等设备进行了测试,如上图所示,可以实现以每秒10帧或更快的速度跟踪人员活动,因为这些手机装备了专门的AI加速器。即使是配置最差的诺基亚2.2,也能成功检测到目标人员,并跟踪目标对象长达约一半测试时长。
在自主导航任务中,它还能够巧妙地躲避办公区走廊的盆栽植物。
2. 手把手教程已开源
前面也提到,整个机器人的成本,除去手机之外,不到50美元(350元人民币)。机器人的身体采用的是3D 打印零件,以及一台智能手机(二手旧手机也可)。
上图为作者5量车的零件批发价格
机器人背后的技术已经用论文的形式进行公布,而制作步骤,作者也在GitHub上进行了开源。相关零件也给出了购买渠道。就连3D打印图纸也良心放出,甚至还给出了3D打印机的参数设置。
GitHub地址:https://github.com/intel-isl/OpenBot/tree/master/body
论文地址:https://arxiv.org/pdf/2008.10631.pdf
同时还给出了20个安装过程的注意事项,可以说的良心手把手教程了:例如,如有必要,将电线连接到马达上;将速度传感器和超声波传感器连接到5V和GND等等。
在论文中,作者也介绍了利用智能手机的原由,即智能手机的优势不止快速提升的硬件能力,它们还具备蓬勃发展的软件生态系统。
智能手机在相机质量和处理器速度上不断提高,配备GPS、Wi-Fi、蓝牙、蜂窝调制解调器以及用于AI推理的专用芯片,有些性能甚至优于台式处理器。
整个小型电动车(机器人)分为两个部分,第一部分是硬件,也就是50美元就能搞定的那些零件;第二部分是软件堆栈,其功能是让智能手机将小车作为机身,并实现实时感知和计算的移动导航。
硬件的构造包括机械设计和电路设计两部分,机械设计如下图所示:
电路设计如下图所示:顶部包括电池、电机控制器、微控制器、速度传感器、指示灯LED和智能手机;底部包括,可选定制PCB以减少布线。
而软件堆栈也包含两部分:安卓应用和 Arduino 程序。其中,安卓应用在智能手机上运行,可以提供操作界面,收集数据集,运行高阶的感知和控制任务。Arduino 程序负责低阶的驱动和度量,如度量车轮里程、监控电池电压等等。
软件和硬件完备之后,英特尔的研究人员训练机器人,期望能够完成两个任务,一个是行人跟踪,另一个是自动导航。
驾驶策略的训练流程
在自主导航任务中,研究人员用了一个类似于“条件模仿学习的命令输入变体(command-input variant of Conditional Imitation Learning)”的神经网络,训练了一个在大多数智能手机上都能实时运行的驾驶策略。另外,研究人员将其与现有的驾驶策略进行比较,并获得与基线相似的性能,而所需参数减少了大约一个数量级。