阿尔德巴兰(上海)有限公司
NAO
——创造交互型的机器人
阿尔德巴兰(上海)有限公司
本文介绍NAO机器人的基本功能以及阿尔德巴兰公司的发展历程。
机器人,NAO,可编程,交互,开源
机器人NAO是各种软、硬件巧妙结合的独特产物,由大量传感器、电机和软件构成,所有软件由专门设计的操作系统NAOqi来控制。
NAO虽然目前还尚未进入家庭,但已在教育界成为一颗耀眼的明星。在70多个国家里,它走入中学和大学的信息技术和科技专业课堂,许多大学生借助NAO,以寓教于乐、学以致用的方式学习编程。
NAO也征服了一大批程序开发人员。在他们眼里,NAO是一个功能强大、具有惊人表现力的应用程序创建平台,可以让大量设想变为现实,由此开辟出程序开发的新天地,也为日后创作出面向大众的机器人铺平了道路。
NAO是一个身高58cm的可编程仿人机器人,内含以下构件:
1)拥有25个自由度的身体,主要元件为电机和电动致动器;
2)传感器系统,包括:2个摄像头、4个麦克风、声纳测距仪、2套红外线接收器和发送器、1个惯性器件板、9个触摸传感器和8个压力传感器;
3)多种交流设备,包括语音合成器、LED灯及2个高保真扬声器;
4)英特尔ATOM 1.6 GHz处理器(位于头部),运行Linux内核,并支持Aldebaran公司独家开发的中间件(NAOqi);
5)第二个CPU位于躯干;
6)27.6瓦时电池,根据使用情况,可为NAO提供超过1.5个小时的自主动力。
2.1 全方位行走
NAO行走使用的是一个简单的动态模型(直线倒立摆)和二次规划,通过关节传感器反馈的信息保持稳定,保证行走的鲁棒性,免受小干扰,并可吸收躯干在正向和侧向平面上的摆动。NAO可在多种地面上行走,如地毯、瓷砖地、木地板等,而且在行走过程中能够顺利地从一种地面走到另一种地面上。
NAO的运动模块基于广义逆运动学,可处理笛卡尔坐标系、关节控制、平衡、冗余性和任务优先性。换言之,如果用户要求NAO伸出手臂,由于需要同时考虑到其手臂和腿部的关节,NAO在执行这个动作时会向前俯身。
为保持平衡,NAO会自动停止移动。
2.2 摔倒管理器
摔倒管理器可在NAO摔倒时起到一定的保护作用,其主要功能是探测NAO的质量中心是否超出了支撑多边形。后者由机器人的足底与地面的接触点来决定。一旦探测到机器人摔倒状况,所有运动任务都会被终止,NAO的双臂会根据摔倒方向采取保护姿势,机器人的质心会降低,刚度会降至零。
NAO拥有两个摄像头,可追踪、记忆并识别不同的图像和人脸。
NAO配备了2个920p摄像头,每秒最多可摄取30个图像。一个摄像头位于NAO前额,负责水平扫视。另一个位于嘴部,扫描周围环境。用户可通过软件获得NAO看到的图片和视频流。
NAO包含有一系列算法,可帮助机器人探测并识别出看到的人脸或形状。这样,NAO就可以认出和它说话的人,也可以找到皮球或更加复杂的物品。这些算法以尽量减少CPU使用资源为宗旨特别开发而成。
此外,用户可以通过NAO的软件开发工具包(SDK)自行开发模块,并与OpenCV接口(OpenCV是最初由英特尔公司开发的开源计算机视觉模块库);用户也可直接在NAO上运行模块,或是将其传送到与NAO相连的电脑上执行,从而可以很容易地使用OpenCV的显示功能,通过反馈的图像来开发和测试算法。
NAO使用4个麦克风来探测声音,并可通过语音识别和声音合成功能,运用8种语言与人交流。
4.1 声源定位
声源定位功能可帮助机器人辨别出声源方向。为了获得鲁棒且有用的输出数据,并同时考虑到内存和CPU的限制,NAO的声源定位基于一个名为“到达时间差”的方法。当近处一个声源发出声音时,NAO的4个麦克风接收到声波的时间会略有不同。
例如,如果一个人站在NAO左边和它说话,其声波会首先到达左侧麦克风,在几微秒后到达位于前方和后方的麦克风,最后到达右侧麦克风。这种时间差名为“双耳时间差”,可对其进行数学处理,以确定声源的位置。由此,NAO在每次听到声音时,都可通过4个麦克风上的“双耳时间差”数据,经过运算,确定声源的方向(方位角和仰角)。这个功能由名为“ALAudioSourceLocalization”的NAOqi模块来完成,并提供C++和Python接口,可使用Python脚本或NAOqi模块进行精确互动。
此外,Chorégraphe软件中包含两个指令盒,帮助用户在行为程序中很容易地使用该功能,如:探测、追踪并识别人;探测、追踪并识别发声物体;在某个特定方向进行语音识别;在某个特定方向识别说话的人;远程跟踪/安全应用程序;娱乐用应用程序。
4.2 音频信号处理
在机器人上,嵌入式处理器的运算能力往往很有限,因此有必要在电脑或服务器上进行某些远程运算。这一点在处理音频信号时尤其重要,在一个远程处理器上进行语音识别往往会更加有效、快速和准确。大多数智能手机都可完成此类远程语音识别。
不过,一些机器人用户会更喜欢将自行开发的信号处理算法直接安装在机器人上。NAOqi的环境使用简单对象访问协议(Simple Object Access Protocol,SOAP),通过网络收发音频信号,借助高级Linux声音构架库(ALSA)产生声音并储存在NAO上。
ALAudioDevice模块管理音频输入和输出。
NAO的语音功能可帮助用户在电信和人机互动领域开展广泛的研究和实验工作。例如,用户可把NAO用作交流工具,像对人一样和NAO对话。
5.1 触摸传感器
除了摄像头和麦克风以外,NAO还配备了电容式传感器,分别位于头顶(分为三部分)和双手。
用户可以通过触摸机器人向其发送信息,例如轻按头部一次,让NAO停止动作。这些传感器也可用于触发一些相关动作。
该系统配有LED灯,可显示接触类型。用户还可设定复杂的序列。
5.2 声纳测距仪
NAO配备有2个声纳信道,2个发送器和2个接收器。由此,NAO可估测与周围障碍物之间的距离,探测范围为0-70cm。
如果与障碍物相距不到15cm,NAO不会收到具体的距离数据,只会知道附近有一个物体。
6.1 以太网及无线上网
目前,NAO支持Wi-Fi 无线上网(b/g/n)和以太网。这是目前最常用的网络通信协议。此外,NAO还可通过安装在双眼内的红外线收发器连接到周围的物体上。NAO与Wi-Fi IEEE 802.11g标准兼容,可在WPA和WEP网络使用,从而可以连接到大多数家用和企业网络。NAO的操作系统支持以太网和Wi-Fi 连接。在设置Wi-Fi时,只需输入密码即可。
NAO的联网功能为开发其应用提供了大量空间,用户可使用网络上的任意一台电脑来控制NAO或为其编程。如:
1)通过IP地址,NAO可以知道自己身处何地,并向用户提供个性化的天气预报;
2)向NAO提出一个关于某主题的问题,它会自动链接到维基百科,找到并读出相应的解释 ;
3)将NAO连至一个音频流,它会为用户播放某个在线电台的广播节目;
4)使用XMPP技术(类似Google Chat讨论技术),远程控制NAO并获取其摄像头的视频流。
6.2 红外线
NAO可凭借红外线技术与其他NAO及其他使用红外线的设备进行交流。用户可设置NAO,通过红外线交流来控制其他设备(如“NAO,请把电视打开!”)。NAO还可接收由遥控器等红外线发射器发送的指令。当然,两个机器人NAO之间可直接交流。
红外线技术是目前最常见的设备控制方法,这使NAO很容易适应家庭自动化应用。NAO还可确定红外线信号是来自左侧还是右侧。
5年多以来,Aldebaran Robotics(阿尔德巴兰机器人公司)一直致力于为机器人平台开发嵌入式系统,并希望与广大仿人机器人研究人员、程序开发员及新兴项目策划和执行人员分享多平台建设工具、中央交流库和其他基本模块。用户可凭借Aldebaran Robotics公司的丰富经验,专注于开发精彩的创新程序。此外,用户还可获得强大的创新技术支持,而创新正是迅速成长的NAO社团的一大特色。
机器人技术及其相关应用尚处于起步阶段。因此,用户社团成员之间应积极合作,长期互通有无,着眼于未来,共同探索新的应用程序。
2005年,Bruno Maisonnier先生创立Aldebaran(阿尔德巴兰)公司,吸引了另五位机器人爱好者加盟,形成了“Aldebaran车间”。
“Aldebaran”一词意为毕宿五,是金牛座最亮的一颗星,直径是太阳的44倍。建立于公元前300年的波斯古国曾把毕宿五与心宿二、轩辕十四和北落师门合称四大王星,用于航海及陆地导航。
公司创建一年后,一支由12人组成的小团队创造出第一个真正意义上的NAO模型。这个模型虽然还无法满足大众的需要,但已引起专业研究人员的注意。
2008年,NAO接替索尼爱宝机器狗,当选为机器人世界杯RoboCup Soccer的标准联盟平台,NAO逐步成为大学里用于科研和教学的标准平台。
2010年,20个NAO在上海世博会的法国馆和巴黎大区馆的舞台上呈现了精彩的舞蹈表演,成为近1000万参观者注意的焦点。
随着时间推移,NAO的版本不断推陈出新。2011年推出的最新版NAO Next Gen融合了互动领域主要的科技成果。与此同时,机器人教学市场从大学扩展到中学。Aldebaran公司还设立了“Developer Program”(开发人员计划),旨在鼓励程序开发人员使用NAO,创建大众型应用程序。
2013年推出的“Autism Solution for Kids ”(儿童自闭症解决方案,简称为“ASK NAO”)运用机器人技术,向特教人员和患有自闭症的儿童提供了一个全新的教学工具。
时至今日,近400名Aldebaran员工在参与构筑我们的未来生活,已有超过5000个NAO活跃在世界各地。