如果打开Kinect传感器的外壳(通常建议不这么做),你会发现一个结构复杂的设备,其中包含很多的感应器元件和处理芯片。事实上,内部传感器栏上甚至有一个小风扇,用于冷却所有的电子器件。
相对而言,Kinect是比较容易拆卸的,如图2-4所示。Kinect的电子芯片很多都采用非焊组装的方式,如果你能得到备换的零件,修复率应该会很高。
如图2-5所示,除了语音指令和体感操作指令外,Kinect没有其他形式的用户输入,其输入系统的关键是由麦克风和摄像头组成的感应器系统。
如图2-6所示,Kinect内部的确比想象中要复杂得多,其主板并非标准的单板压模工艺,而是分拆为成三个独立的部分,并且配有专用冷却风扇。
PrimeSense技术是微软Kinect传感器系统的基础。最初,该传感器被设计为与微软Xbox 360控制台游戏系统的自然人机交互输入。它的工作原理容易理解,但执行过程相当复杂。PS1080系统级芯片(SoC)则是一款完美支持PrimeSense技术的产品,可以将其理解为Kinect的“心脏”。
从外观上看,Kinect也有三只“眼睛”,它们自左向右分别是红外投影机、彩色摄像头、红外深度投影头。此外,Kinect还暗藏着四只“耳朵”—L形布局的麦克风阵列。
PS1080这款芯片独立地管理音频和视频信息,这些信息都可以通过USB接口进行访问。USB仅为PrimeSense单元提供电源,Kinect还需要额外的电源供给它的伺服系统。
以下是Kinect的组件的完整列表:
外壳、底座及4个不同类型的螺钉;
Moving Touch传动马达电动机(用于仰角控制);
散热风扇;
彩色摄像头;
红外摄像头;
红外投影机;
麦克风阵列(4个);
3部分主板;
14种关键芯片。
注意 核心的Primesense芯片来自以色列、存储芯片来自韩国三星,部分零配件来自中国台湾。Kinect和Xbox 360一样,都是在中国广东组装制造。
对Kinect的核心芯片描述的摘要如下:
Wolfson Stereo ADC with microphone preamp(立体声ADC与麦克风前置放大器);
Fairchild N-Channel PowerTrench MOSFET;
NEC USB 2.0 hub controller(USB 2.0集线器控制器);
Unidentified SAP package chip;
Camera interface controller(摄像头控制芯片);
Hynix 512Mb DDR2 SDRAM;
Analog Devices CMOS Rail-to-Rail Output Operational Amplifier(CMOS运算放大器);
TI 8-bit, 8-channel Sampling A/D converter;
Allegro low voltage stepper and single/dual motor driver(低功率步进器和单/双直流电动机驱动器);
ST 8Mbit NV flash memory(8MB闪存);
Marvell SoC camera interface controllerAP102(附带摄像头接口控制器的SoC);
PrimeSense PS1080 image sensor processor(SoC成像传感器处理器,PrimeSense的核心芯片);
TI USB audio controller (音频控制器);
KionixKXSD9 accelerometer (三轴加速度,测量是否水平,计算偏移用于补偿)。
你可以从网络上搜索到关于Kinect硬件拆解的相关文章。
Kinect的关键部件如图2-7所示。
图2-7所示Kinect关键部件及说明如下:
1)麦克风阵列:声音从4个麦克风采集,同时过滤背景噪声,可定位声源。
2)红外投影机:主动投射近红外光谱,照射到粗糙物体、或是穿透毛玻璃后,光谱发生扭曲,会形成随机的反射斑点(称为散斑),进而能被红外摄像头读取。
3)红外摄像头:分析红外光谱,创建可视范围内的人体、物体的深度图像。
4)仰角控制马达:可编程控制仰角的马达,用于获取最佳视角。
5)USB线缆:支持USB 2.0接口,用于传输彩色视频流、深度流、音频流等。必须使用外部电源,传感器才能充分发挥其功能。(Kinect的功率达到了12W,而普通USB一般是2.5W。)
6)彩色摄像头:用于拍摄视角范围内的彩色视频图像。
接下来,分别从控制芯片、红外投影、视频输入、音频输入、姿态控制调整等方面来分析Kinect硬件的内部结构。