本期的拆解对象是微软Xbox 360的Kinect传感器。机器视觉可以满足针对微软Xbox 360开发的Kinect传感器外设中的家庭娱乐需求。Kinect彻底摒弃了游戏控制器,使玩家置身于游戏之中。
以色列特拉维夫的Fabless半导体公司PrimeSense借助PrimeSensor参考设计实现了技术上的一大壮举。据该公司介绍,这种参考设计能让计算机“感知三维世界,并将这些感知信息转换为同步图像。”在这种方案中,房间及房间内的人将被一种点阵图案所照射,这种图案由近红外激光器产生,使用者是看不见的。一类激光设备的使用可以提供远距离聚焦,对游戏玩家没有伤害。
CMOS图像传感器用于检测上述红外点阵图案的反射片段,并将每个片段的强度映射为到传感器的相应距离,其深度维度(z轴)的分辨率精细至1厘米。空间分辨率(x和y轴)在毫米数量级,来自第二个CMOS图像传感器的RGB输入经过像素对齐可以给捕获的数据增加颜色。
Kinect使用三维位置和运动数据产生每个玩家化身对应的屏上运动。机动化的齿轮传动装置使图像传感器始终对准动作主体。当玩家移动时,Kinect也随之移动。4个麦克风用于抵消回波和背景噪声,同时帮助确定是哪位玩家发出的语音命令。想像这种技术用于其它应用并不困难,但目前还只是作为一种视频游戏接口。
微软之前预期2010年底前能售出几百万台Kinect设备,因此几种常用器件出现第二种和第三种来源就不足为奇了。例如,三种不同Kinect设备中的64MB DDR2 SDRAM插座上插的分别是三星、Elpida和海力士三家公司的等效器件。同样,Silicon Storage Technology(SST)公司的1MB NOR闪存占据着其中一台Kinect设备上的一个插槽,而另外一台设备的同一插槽安装的是意法微电子的产品。
Kinect含有大量运放和其它小型元件,它们也可能有多种来源供候选。因此不同Kinect的内部电路可能有所不同。尽管如此,通过我们的拆解可以发现以下这些内容是确定的。
Kinect的“眼睛”是一对摄像头,两者用的都是Aptina Imaging公司的CMOS图像传感器。其中的红外照相机使用的是MT9M001传感器,之所以选这种较老的型号可能是因为它具有相对较大的5.2μmx5.2μm像素尺寸,而较大的像素可以在低光照条件下更好地工作。再加上正确的滤波,使得这种传感器非常适合红外应用。
图1:Kinect彻底摒弃了游戏控制器,使玩家置身于游戏之中。
{pagination}
RGB输入来自采用MT9M112传感器的彩色摄像头。这两种传感器都具有130万像素的分辨率,这意味着需要采用压缩功能以便与PrimeSense PS1080相接。PS1080这种“传感处理型”系统级芯片可以控制红外投影仪,处理来自两个照相机的输入,并汇聚音频输入。
PS1080通过USB 2.0与应用处理器通信。这里的应用处理器是Marvell的产品,它的Aspen裸片标记透露出其型号是PXA168,这是一种低功耗、低成本、频率在千兆赫兹以上、令游戏爱好者深感惊喜的处理器。在关键输入设备的周围是来自欧胜微电子(Wolfson)公司的一对WM8737L立体声模数转换器,它们内部都集成了麦克风前置放大器以配合前述麦克风组。
Kinect内部还有一个MEMS加速度计,来自Kionix公司的KXSD9。由于Kinect的运动范围有限,因此这个加速度计可能是倾斜控制环的一部分,其它部分还包括Allegro Microsystems公司的步进器和直流电机驱动器A3906。另外值得一提的元件包括NEC公司的uPD720114 USB集线器控制器和TI公司的一对元件:TAS1020B USB音频流控制器和ADS7830 8位8通道模数转换器。
也许比Kinect的元器件组合更有趣的事实是:上述全部功能仅需150美元就可完全拥有。在撰写本文时,许多电脑爱好者正在竞相为Kinect开发开源代码,并且成功在即。微软也许并不认可这种做法,但包括了解内部细节的一些聪明人士说不定哪天就能创建出他们自己的应用来。
与此同时,那些没有时间自己动手的人也可以想像Kinect以外的可能性:没有遥控器的电视机;没有鼠标、没有触控板也没有触摸屏的电脑;可负担的家庭安全性提升;针对老年人和残疾人士的大量援助设施。不管你是尝试将Kinect连接到自制机器人,限制其用于有针对性的游戏目的,还是其它行动,你一定会再次见到这种技术。
图2:Kinect控制器的元器件组合。
作者: Bob Widenhofer
高级产品分析师
UBM TechInsights公司
本文来自《电子工程专辑》2011年3月刊,版权所有,拒绝转载。