在Android2.3 gingerbread系統(tǒng)中,google提供了11種傳感器供應(yīng)用層使用。
我們依次看看這十一種傳感器
1 加速度傳感器 加速度傳感器又叫G-sensor,返回x、y、z三軸的加速度數(shù)值。 該數(shù)值包含地心引力的影響,單位是m/s^2。 將手機(jī)平放在桌面上,x軸默認(rèn)為0,y軸默認(rèn)0,z軸默認(rèn)9.81。 將手機(jī)朝下放在桌面上,z軸為-9.81。 將手機(jī)向左傾斜,x軸為正值。 將手機(jī)向右傾斜,x軸為負(fù)值。 將手機(jī)向上傾斜,y軸為負(fù)值。 將手機(jī)向下傾斜,y軸為正值。
加速度傳感器可能是最為成熟的一種mems產(chǎn)品,市場(chǎng)上的加速度傳感器種類(lèi)很多。 手機(jī)中常用的加速度傳感器有BOSCH(博世)的BMA系列,AMK的897X系列,ST的LIS3X系列等。 這些傳感器一般提供±2G至±16G的加速度測(cè)量范圍,采用I2C或SPI接口和MCU相連,數(shù)據(jù)精度小于16bit。
2 磁力傳感器 磁力傳感器簡(jiǎn)稱(chēng)為M-sensor,返回x、y、z三軸的環(huán)境磁場(chǎng)數(shù)據(jù)。 該數(shù)值的單位是微特斯拉(micro-Tesla),用uT表示。 單位也可以是高斯(Gauss),1Tesla=10000Gauss。 硬件上一般沒(méi)有獨(dú)立的磁力傳感器,磁力數(shù)據(jù)由電子羅盤(pán)傳感器提供(E-compass)。 電子羅盤(pán)傳感器同時(shí)提供下文的方向傳感器數(shù)據(jù)。
3 方向傳感器 方向傳感器簡(jiǎn)稱(chēng)為O-sensor,返回三軸的角度數(shù)據(jù),方向數(shù)據(jù)的單位是角度。 為了得到精確的角度數(shù)據(jù),E-compass需要獲取G-sensor的數(shù)據(jù), 經(jīng)過(guò)計(jì)算生產(chǎn)O-sensor數(shù)據(jù),否則只能獲取水平方向的角度。 方向傳感器提供三個(gè)數(shù)據(jù),分別為azimuth、pitch和roll。 azimuth:方位,返回水平時(shí)磁北極和Y軸的夾角,范圍為0°至360°。 0°=北,90°=東,180°=南,270°=西。 pitch:x軸和水平面的夾角,范圍為-180°至180°。 當(dāng)z軸向y軸轉(zhuǎn)動(dòng)時(shí),角度為正值。 roll:y軸和水平面的夾角,由于歷史原因,范圍為-90°至90°。 當(dāng)x軸向z軸移動(dòng)時(shí),角度為正值。
電子羅盤(pán)在獲取正確的數(shù)據(jù)前需要進(jìn)行校準(zhǔn),通??捎?字校準(zhǔn)法。 8字校準(zhǔn)法要求用戶使用需要校準(zhǔn)的設(shè)備在空中做8字晃動(dòng), 原則上盡量多的讓設(shè)備法線方向指向空間的所有8個(gè)象限。
手機(jī)中使用的電子羅盤(pán)芯片有AKM公司的897X系列,ST公司的LSM系列以及雅馬哈公司等等。 由于需要讀取G-sensor數(shù)據(jù)并計(jì)算出M-sensor和O-sensor數(shù)據(jù), 因此廠商一般會(huì)提供一個(gè)后臺(tái)daemon來(lái)完成工作,電子羅盤(pán)算法一般是公司私有產(chǎn)權(quán)。
4 陀螺儀傳感器 陀螺儀傳感器叫做Gyro-sensor,返回x、y、z三軸的角加速度數(shù)據(jù)。 角加速度的單位是radians/second。 根據(jù)Nexus S手機(jī)實(shí)測(cè): 水平逆時(shí)針旋轉(zhuǎn),Z軸為正。 水平逆時(shí)針旋轉(zhuǎn),z軸為負(fù)。 向左旋轉(zhuǎn),y軸為負(fù)。 向右旋轉(zhuǎn),y軸為正。 向上旋轉(zhuǎn),x軸為負(fù)。 向下旋轉(zhuǎn),x軸為正。
ST的L3G系列的陀螺儀傳感器比較流行,iphone4和google的nexus s中使用該種傳感器。
5 光線感應(yīng)傳感器 光線感應(yīng)傳感器檢測(cè)實(shí)時(shí)的光線強(qiáng)度,光強(qiáng)單位是lux,其物理意義是照射到單位面積上的光通量。 光線感應(yīng)傳感器主要用于Android系統(tǒng)的LCD自動(dòng)亮度功能。 可以根據(jù)采樣到的光強(qiáng)數(shù)值實(shí)時(shí)調(diào)整LCD的亮度。
6 壓力傳感器 壓力傳感器返回當(dāng)前的壓強(qiáng),單位是百帕斯卡hectopascal(hPa)。
7 溫度傳感器 溫度傳感器返回當(dāng)前的溫度。
8 接近傳感器 接近傳感器檢測(cè)物體與手機(jī)的距離,單位是厘米。 一些接近傳感器只能返回遠(yuǎn)和近兩個(gè)狀態(tài), 因此,接近傳感器將最大距離返回遠(yuǎn)狀態(tài),小于最大距離返回近狀態(tài)。 接近傳感器可用于接聽(tīng)電話時(shí)自動(dòng)關(guān)閉LCD屏幕以節(jié)省電量。 一些芯片集成了接近傳感器和光線傳感器兩者功能。
下面三個(gè)傳感器是Android2新提出的傳感器類(lèi)型,目前還不太清楚有哪些應(yīng)用程序使用。 9 重力傳感器 重力傳感器簡(jiǎn)稱(chēng)GV-sensor,輸出重力數(shù)據(jù)。 在地球上,重力數(shù)值為9.8,單位是m/s^2。 坐標(biāo)系統(tǒng)與加速度傳感器相同。 當(dāng)設(shè)備復(fù)位時(shí),重力傳感器的輸出與加速度傳感器相同。
10 線性加速度傳感器 線性加速度傳感器簡(jiǎn)稱(chēng)LA-sensor。 線性加速度傳感器是加速度傳感器減去重力影響獲取的數(shù)據(jù)。 單位是m/s^2,坐標(biāo)系統(tǒng)與加速度傳感器相同。 加速度傳感器、重力傳感器和線性加速度傳感器的計(jì)算公式如下: 加速度 = 重力 + 線性加速度
11 旋轉(zhuǎn)矢量傳感器 旋轉(zhuǎn)矢量傳感器簡(jiǎn)稱(chēng)RV-sensor。 旋轉(zhuǎn)矢量代表設(shè)備的方向,是一個(gè)將坐標(biāo)軸和角度混合計(jì)算得到的數(shù)據(jù)。 RV-sensor輸出三個(gè)數(shù)據(jù): x*sin(theta/2) y*sin(theta/2) z*sin(theta/2) sin(theta/2)是RV的數(shù)量級(jí)。 RV的方向與軸旋轉(zhuǎn)的方向相同。 RV的三個(gè)數(shù)值,與cos(theta/2)組成一個(gè)四元組。 RV的數(shù)據(jù)沒(méi)有單位,使用的坐標(biāo)系與加速度相同。 舉例:
GV、LA和RV的數(shù)值沒(méi)有物理傳感器可以直接給出, 需要G-sensor、O-sensor和Gyro-sensor經(jīng)過(guò)算法計(jì)算后得出。 算法一般是傳感器公司的私有產(chǎn)權(quán)。 |
|
來(lái)自: wanwanstudy > 《Sensors》