-
Android
操作系统
11
< br>种传感器介绍
在
Android2.3 gingerbread
系统中,
google
提供了
11
种传感器供应用层使用。
#define SENSOR_TYPE_ACCELEROMETER
1 //
加速度
#define SENSOR_TYPE_MAGNETIC_FIELD
2 //
磁力
#define SENSOR_TYPE_ORIENTATION
3 //
方向
#define SENSOR_TYPE_GYROSCOPE
4 //
陀螺仪
#define SENSOR_TYPE_LIGHT
5 //
光线感应
#define SENSOR_TYPE_PRESSURE
6 //
压力
#define SENSOR_TYPE_TEMPERATURE
7 //
温度
#define SENSOR_TYPE_PROXIMITY
8 //
接近
#define SENSOR_TYPE_GRAVITY
9 //
重力
#define SENSOR_TYPE_LINEAR_ACCELERATION
10//
线性加速度
#define
SENSOR_TYPE_ROTATION_VECTOR
11//
旋转矢量
我们依次看看这十一种传感器
1
加速度传感器
< br>加速度传感器又叫
G-sensor
,返回
x
、
y
、
< br>z
三轴的加速度数值。
该数值
包含地心引力的影响,单位是
m/s^2
。
将手机平放在桌面上,
x
轴默认
为
0
,
y
轴默
认
0
,
z
轴默
认
9.81
。
将手机朝下放在桌面上,
z
轴为
-9
.81
。
将手机向左倾斜,
x
轴为正值。
将手机
向右倾斜,
x
轴为负值。
将手机向上倾斜,
y
轴为负值。
< br>
将手机向下倾斜,
y
轴为正值
。
加速度传感器可能是最为成熟的一种
mems
产品,市场上的加速度传感器种类很
多。
手机中常用的加速度传感器有
BOSCH
(博世)
的
BMA
系
列,
AMK
的
897X
系列,
ST
的
LIS3X
p>
系列等。
这些传感器一般提供
±
2G
至
±
16G
的加速度测量范围,
采用
I2C
或
SPI
接口和
MCU
相连,数据精度小于
16bit
。
2
磁力传感器
磁力传感器简称为
M-sensor
,返回
x
< br>、
y
、
z
三轴的环境磁场数据。
该数值的单位是微特斯拉(
micro-Tesla
),用
uT
表示。
p>
单位也可以是高斯(
Gauss
),
1Tesla=10000Gauss
。
<
/p>
硬件上一般没有独立的磁力传感器,磁力数据由电子罗盘传感器提供
(
E-compass
)。
电子罗盘传感器同时提供下文的方向传感器数据。
3
方向传感器
方向传感器简称为
O-sensor
,返回三轴的角度数据
,方向数据的单位是角度。
为了得到精确的角度数据,
E-compass
需要获取
G-senso
r
的数据,
经过计算生产
O-sensor
数据,否则只能获取水平方向的角度。
< br>
方向传感器提供三个数据,分别为
azimuth
p>
、
pitch
和
r
oll
。
azimuth
:方位,返回水平时磁北极和
Y
轴的夹角,范围为
0°
至
360°
。
0°
=
北,
90°
=
东,
180°
=
南,
270°
=
西。
pitch<
/p>
:
x
轴和水平面的夹角,范围为
-180°
至
180°
。
当
z
轴向
y
轴转动时,角度为正值。
roll
:
y
轴和水平
面的夹角,由于历史原因,范围为
-90°
至
< br>90°
。
当
< br>x
轴向
z
轴移动时,角度为正值
。
电子罗盘在获取正确的数据前需要进行校准,通常可用
p>
8
字校准法。
8
字校准法要求用户使用需要校准的设备在空中做
8
字晃动,
原则上尽量多的让设备法线方向指向空间
的所有
8
个象限。
< br>手机中使用的电子罗盘芯片有
AKM
公司的
897X
系列,
ST
公司的
LSM
系列以及
雅马哈公司等等。
p>
由于需要读取
G-sensor
数据并计算出
M-sensor
和
O-sensor
数据,
因此厂商一般会提供一个后台
daemon
来完成工作,
电子罗盘算法一般是公司私有
产权。
4
陀螺仪传感器
陀螺仪传感器叫做
Gyro-sensor
,返回
x
、
y
、
z
三轴的角加速度数据。
p>
角加速度的单位是
radians/second
< br>。
根据
Nexus
S
手机实测:
水平逆时针旋转,
p>
Z
轴为正。
水平
逆时针旋转,
z
轴为负。
向左旋转,
y
轴为负。
向右旋转,
y
轴为正。
向上旋转,
x
轴为负。
p>
向下旋转,
x
轴
为正。
ST
的
L3G
系列的陀螺仪传感器比较流行,
iphone4
和
google
的
n
exus s
中使用该
种传感器。
5
光线感应传感器
光线感应传感器检测实时的光线强度,光强单位是
lux
,其物理意义是照射到单位
面积上的光通量。
光线感应传感器主要用于
Android
系统的
p>
LCD
自动亮度功能。
< br>可以根据采样到的光强数值实时调整
LCD
的亮度。
p>
6
压力传感器
压力传感器返回当前的压强,单位是百帕斯卡
hectopas
cal
(
hPa
)。
< br>
7
温度传感器
温度传感器返回当前的温度。
8
接近传感器
接近传感器检测物体与手机的距离,单位是厘米。
一些接近传感器只能返回远和近两个状态,
< br>因此,接近传感器将最大距离返回远状态,小于最大距离返回近状态。
接近传感器可用于接听电话时自动关闭
LCD
屏
幕以节省电量。
一些芯片集成了接近传感器和光线传感器两者功能。
下面三个传感器是
Android2
新提出的传
感器类型,
目前还不太清楚有哪些应用程
序使用。
9
重力传感器
重力传感器简称
GV-
sensor
,输出重力数据。
在地
球上,重力数值为
9.8
,单位是
m/
s^2
。
坐标系统与加速度传感器相同。
当设备复位时,重力传感器的输出与加速度传感器相同。
10
线性加速度传感器
线性加速度传感器简称
LA-
sensor
。
线性加速度传感器是加速度传感器减去重力影响获取的数据。
单位是
m/s^2
,坐标系统与加速度
传感器相同。
加速度传感器、重力传感器和线性加速度传感器
的计算公式如下:
加速度
=
重力
+
线性加速度
11
旋转矢量传感器
旋转矢量传感器简称
RV-
sensor
。
旋转矢量代表设备的
方向,是一个将坐标轴和角度混合计算得到的数据。
RV-
sensor
输出三个数据:
x*sin(theta/2)
y*sin(theta/2)
z*sin(theta/2)
sin(theta/2)<
/p>
是
RV
的数量级。
RV
的方向与轴旋转的方向相同。
RV
的三个数值,与
cos(thet
a/2)
组成一个四元组。
RV
p>
的数据没有单位,使用的坐标系与加速度相同。
举例:
sensors_event_[0] = x*sin(theta/2)
sensors_event_[1] = y*sin(theta/2)
sensors_event_[2] = z*sin(theta/2)
sensors_event_[3] =
cos(theta/2)
GV
、<
/p>
LA
和
RV
的数
值没有物理传感器可以直接给出,
需要
G-sensor
、
O-sensor
和
Gyro-
sensor
经过算法计算后得出。
算法一般是传感器公司的私有产权。
传感器的概念
对于传
感器,
学理工科的都不陌生。
国家标准
GB7665-87
对传感器下的定
义是:“能感受规定的被测
量并按照一定的规律转换成可用信号的器件或装置,
通常由敏感元件和转换元件组成”。
像我们的楼道的声控灯、
数码相机等都有传
感器,
甚至手机本身就是个将声音转化为数字信号的在转化回来的传感器,
其的
范围太广泛了,
。
而小编在这里归纳的则一些将手机的所在状态或者所处的环境,
转化成改变手机状态的器
件
(当然在这里小编就不提几乎每个手机的都有的如摄
像头等传
感器)。
传感器的作用与意义
现在的智能手机比起之前的智能手
机时代不仅仅是手机性能硬件上的提高,
除了
CPU
那类的配置之外,
新一代的智能手机在体验感和用户者得互动性上也更
p>
加的高。
目前智能手机应用软件生态系统不断扩展,
传感器这类与用户互动必备
的东西功不可没。
传感器让
用户对应用软体更加着迷。
而作为新一代智能手机的
标杆——苹
果,
在这方面也是引领者的角色。
(想想当初诺基亚还没大幕触
控的
时候,
wm
系统的手机还在用手指
戳的时代,
iphone
一代那能放大缩小图片的电
容屏让很多人都流了口水
.
对,小编没写错,电容
屏也是一种传感器
)
事实上,
目前智能手机应用软件生态系统不断扩展。
传感器除了能增加体现
感和用户互动这些理念性的东西外。游戏上传感器的应用也成为
新的发展方向。
就是体感装置在游戏设备的崛起一样,传感器在手机和平板上的发展会越
来越
快。现在在游戏、健康照护、体能训练以及许多新应用都要用到传感器。
由于智慧手机中加
入了各种传感器,
使手机也变得越来越智慧化。
加速度传
感器回应使用者的互动方式,
使得传统平淡无奇的输入作业,
转变成类似游戏的
新奇体验,
进而提高使用者使
用智慧手机的意愿。
过去智慧手机比较的重点在于
是否拥有加速
度传感器,
目前变成比较谁的手机具备了三轴陀螺仪,
未来则有
更
多的新的传感器的加入。
下面列举下大家比较关注也是常见的几种传感器
重力感应器
手机重力感应技术:利用压电效应
实现,简单来说是测量内部一片重物
(
重
物和压电片做成一体
)
重力正交两个方向的分力大小,来判定
水平方向。通过对
力敏感的传感器,
感受手机在变换姿势时,<
/p>
重心的变化,
使手机光标变化位置从
而实
现选择的功能。
手机重力感应指的是手机内置重力摇杆芯片,
支持摇晃切换所需的界面和功
p>
能,甩歌甩屏,翻转静音,甩动切换视频等,是一种非常具有使用乐趣的功能。
重力感应器说的简单
点就是,你本来把手机拿在手里是竖着的,你将它转
90
度,横
过来,它的页面就跟随你的重心自动反应过来,也就是说页面也转了
90
度,极具人性化。现在基本上智能手机都有内置重力感应器,甚至有些非智
能手
机也有内置。
其常见的应用有玩平衡球了,
还有横屏浏览网页、
看小说之类
的了。
加速度传感器
加速度传感器是一种能够测量加速
力的电子设备。
加速力就是当物体在加速
过程中作用在物体上的
力,
就好比地球引力,
也就是重力。
加
速力可以是个常量,
比如
g
,也可以是
变量。因此其的范围比重力感应器要大,但是一般在手机被提
到的加速度感应器时,其实
就是指重力感应器,因此两者可以看做是等价的。
方向感应器
手机方向传感器是指,
安装在手机上
用以检测手机本身处于何种方向状态的部
件,而不是通常理解的指南针的功能。
手机方向检测功
能可以检测手机处于正竖、
倒竖、
左横、
右横,
仰、
俯状态。
具有方向检测功
能的手机具有使用更方便、
更具人性化的特点。
例如,
手机旋转
后,屏幕图像可以自动跟着旋转并切换长宽比例,文字或菜单也
可以同时旋转,
使你阅读方便
;
听
p>
mp3
时。可能会有人说:这个跟那个重力感应器是一样的?
这个两者是不一样的,
方向感应器或者叫应
用角速度传感器比较合适,
一般手机
的上的方向感应器是感应水
平面上的方位角、
旋转角和倾斜角的。
这个如果你可
能觉得有点理论的话,举个例子吧。有方向感应器的能很好的玩都市赛车游戏。
而只有重力感应器也能玩,但是恩,很令人纠结。
三轴陀螺仪
三轴陀螺仪:即同时测定
6
个方向的位置,移动轨迹,加速。单轴的只能测
量一个方向的量,
也就是一个系统需要三个陀螺仪,
而
3
轴的一个就能替代三个
单轴的。
3
轴的体积小、
重量轻、
结构简单、
可靠性好,
是激光陀螺的发展趋势。
对于激光陀螺则更
多应用于军事方面,我们暂且不做讨论。不过我们可以看出
iPhone
4
应用的三轴陀螺仪是较为先进的。
如果说,
重力感应器所能测的是直线的,
方面感应器所测的是平
面得,
那么三轴
陀螺仪所测的方向和位置则是立体的。
特别是玩一些像彩虹六号,
那种第一人称
射击游
戏,你会发现三轴陀螺仪的效果是很明显的。
距离传感器
距离传感器是利用测时间来实现测距离的原理,
以检测物体的距离的一种传
感器。
工作原理:
通过发射特别短的光脉冲,
并测量此光脉冲从发射到被物体反
射回来的时间,
通过测时间来计算与物体之间的距离。
< br>这个传感器在手机上的作
用是当我们打电话时,手机屏幕会自动熄灭,当你脸离开
,屏幕灯会自动开启,
并且自动解锁。
这个对于待机手机较短的
智能手机来说是相当实用的。
现在很多
智能手机都装备的这个传
感器。
光线传感器(感应器)
光线传感器,
也就是感光器,
是能够根据周围光亮明暗程度来调节屏幕明暗
的装置。就是在光线强的
地方手机会自动关掉键盘灯,并且稍微加强屏幕亮度,
达到节电并更好观看屏幕的效果,
在光线暗的地方自动打开键盘灯。
可以到工具
< br>设置中调节关掉。
这个传感器也主要起到节省手机电力的作用,
< br>毕竟现在的智能
手机的待机时间都很令人头痛,能节省就节省吧。
-
-
-
-
-
-
-
-
-
上一篇:常见的文本类型
下一篇:【干货】Windows批处理(cmdbat)常用命令小结