学号136312126苏州市职业大学毕业设计题目基于ANDROID传感器的应用设计学生姓名:夏新德专业班级:13计算机应用技术3(3G)学院(部):计算机工程学院校内指导教师:贾震斌(讲师)校外指导教师:万勇平(工程师)完成日期:2015年5月摘要:内容主要是关于传感器的内容和你开题报告的选题内容相似ABSTRACT将摘要翻译成英文关键词:传感器,Android目录第1章绪论1.1课题的研究意义说一说你这款软件的用途以及设计意义,写的多一点1.2主要研究内容以及拟解决的问题开题报告上面有,就像那样写1.3第3章技术背景介绍3.1传感器3.1.1传感器的介绍传感器的发展史传感器是一种物理装置或生物器官,能够探测、感受外界的信号、物理条件(如光、热、湿度)或化学组成(如烟雾),并将探知的信息传递给其他装置或器官。国家标准GB7665-87对传感器下的定义是:“能够感受规定的被测量并按照一定的规律转换成可用输出信号的器件或装置,通常由敏感元件和转换元件组成”。这里所说的“可用输出信号”是指便于加工处理、便于传输利用的信号。现在电信号是最易于处理和便于传输的信号。传感器是一种检测装置,能感受到被测量的信息,并能将检测感受到的信息,按一定规律变换成为电信号或其他所需形式的信息输出,以满足信息的传输、处理、存储、显示、记录和控制等要求。它是实现自动检测和自动控制的首要环节传感器.不像计算机这么大型复杂的东西.那样的话人们会就清楚的记录它的历史了温度传感器是最早开发,应用最广的一类传感器。根据美国仪器学会的调查,1990年,温度传感器的市场份额大大超过了其他的传感器。从17世纪初伽利略发明温度计开始,人们开始利用温度进行测量。真正把温度变成电信号的传感器是1821年由德国物理学家赛贝发明的,这就是后来的热电偶传感器。五十年以后,另一位德国人西门子发明了铂电阻温度计。在半导体技术的支持下,本世纪相继开发了半导体热电偶传感器、PN结温度传感器和集成温度传感器。与之相应,根据波与物质的相互作用规律,相继开发了声学温度传感器、红外传感器和微波传感器发展趋势一、利用新发现的现象、效应。传感器本来就是基于一系列效应制造出来的,目前应用的效应很多,比如压电效应、压阻效应等等,还有一些效应是我们未知的,等着我们去认识。二、采用高新技术。随着计算机、电子技术以及制造加工技术的发展,传感器也进入高速发展时期,这些技术都是开发和设计传感器的基础。高科技含量的传感器是未来产业化的一个方向。三、新材料的开发。传感器的感应元件、传感器保护的基础都是各种材料,随着人们对新材料性能的掌握,将大大促进传感器的发展。近年,广泛应用的材料有陶瓷、光纤、高分子有机材料等。四、不断提高传感器的性能。影响传感器的性能因素很多,有系统的,还有检测的。随着检测技术跟精密制造的发展,这方面也将得到大大提高。五、传感器应用的扩展。物联网的横空出世,传感器应用也在不断拓展。近些年,地震灾害、海啸灾害、食品危机不断,对研究人员来说,也是个挑战,开发出各种传感器检测这些现象的发生,及早预警。六、传感器的集成化和多功能化。以前的传感器一般只能检测一种物理量,一个系统光传感器就需要很口。现在,已经出现了多功能和集成化的传感器,比如温湿度和检测各种气体的集成传感器,这也将是以后发展的一个趋势。七、微型与低功耗化。有些精密仪器或设备,体积本身就小,还需要接上各种传感器进行感知和控制,这也对传感器提出了更高的要求Android传感器框架能够让你访问多种类型的传感器。其中某些传感器是基于硬件的,有些传感器是基于软件的。基于硬件的传感器是内置与手持或平板设备中的物理组件。它们通过直接测量特定的环境属性来获取数据,如加速度、磁场强或角度的变化等。基于软件的传感器不是物理设备,尽管它们模拟基于硬件的传感器。基于软件的传感器从一个或多个有时被叫做虚拟传感器或合成传感器的基于硬件的传感器来获取数据。线性加速度传感器和重力传感器是基于硬件的传感器的实例。表1概要的介绍了Android平台所支持的传感器。很少有Android设备支持所有类型的传感器。例如,大多数手持设备和平板设备都有一个加速仪和一个磁力仪,但是很少有气压计和温度计的设备。一个设备上也能够有多个同一给定类型的传感器。例如,一个有设备能够有两个重力传感器,每个都有不同测量范围传感器的发展史等等。网上搜一搜,用自己的话说,上面的内容用自己的话改一改。3.1.2传感器的种类加速度传感器加速度传感器又叫G-sensor,返回x、y、z三轴的加速度数值。该数值包含地心引力的影响,单位是m/s^2。将手机平放在桌面上,x轴默认为0,y轴默认0,z轴默认9.81。将手机朝下放在桌面上,z轴为-9.81。将手机向左倾斜,x轴为正值。将手机向右倾斜,x轴为负值。将手机向上倾斜,y轴为负值。将手机向下倾斜,y轴为正值。加速度传感器可能是最为成熟的一种mems产品,市场上的加速度传感器种类很多。手机中常用的加速度传感器有BOSCH(博世)的BMA系列,AMK的897X系列,ST的LIS3X系列等。这些传感器一般提供±2G至±16G的加速度测量范围,采用I2C或SPI接口和MCU相连,数据精度小于16bit。2磁力传感器磁力传感器简称为M-sensor,返回x、y、z三轴的环境磁场数据。该数值的单位是微特斯拉(micro-Tesla),用uT表示。单位也可以是高斯(Gauss),1Tesla=10000Gauss。硬件上一般没有独立的磁力传感器,磁力数据由电子罗盘传感器提供(E-compass)。电子罗盘传感器同时提供下文的方向传感器数据。3方向传感器方向传感器简称为O-sensor,返回三轴的角度数据,方向数据的单位是角度。为了得到精确的角度数据,E-compass需要获取G-sensor的数据,经过计算生产O-sensor数据,否则只能获取水平方向的角度。方向传感器提供三个数据,分别为azimuth、pitch和roll。azimuth:方位,返回水平时磁北极和Y轴的夹角,范围为0°至360°。0°=北,90°=东,180°=南,270°=西。pitch:x轴和水平面的夹角,范围为-180°至180°。当z轴向y轴转动时,角度为正值。roll:y轴和水平面的夹角,由于历史原因,范围为-90°至90°。当x轴向z轴移动时,角度为正值。电子罗盘在获取正确的数据前需要进行校准,通常可用8字校准法。8字校准法要求用户使用需要校准的设备在空中做8字晃动,原则上尽量多的让设备法线方向指向空间的所有8个象限。手机中使用的电子罗盘芯片有AKM公司的897X系列,ST公司的LSM系列以及雅马哈公司等等。由于需要读取G-sensor数据并计算出M-sensor和O-sensor数据,因此厂商一般会提供一个后台daemon来完成工作,电子罗盘算法一般是公司私有产权。4陀螺仪传感器陀螺仪传感器叫做Gyro-sensor,返回x、y、z三轴的角加速度数据。角加速度的单位是radians/second。根据NexusS手机实测:水平逆时针旋转,Z轴为正。水平逆时针旋转,z轴为负。向左旋转,y轴为负。向右旋转,y轴为正。向上旋转,x轴为负。向下旋转,x轴为正。ST的L3G系列的陀螺仪传感器比较流行,iphone4和google的nexuss中使用该种传感器。5光线感应传感器光线感应传感器检测实时的光线强度,光强单位是lux,其物理意义是照射到单位面积上的光通量。光线感应传感器主要用于Android系统的LCD自动亮度功能。可以根据采样到的光强数值实时调整LCD的亮度。6压力传感器压力传感器返回当前的压强,单位是百帕斯卡hectopascal(hPa)。7温度传感器温度传感器返回当前的温度。8接近传感器接近传感器检测物体与手机的距离,单位是厘米。一些接近传感器只能返回远和近两个状态,因此,接近传感器将最大距离返回远状态,小于最大距离返回近状态。接近传感器可用于接听电话时自动关闭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)是RV的数量级。RV的方向与轴旋转的方向相同。RV的三个数值,与cos(theta/2)组成一个四元组。RV的数据没有单位,使用的坐标系与加速度相同。用自己的话将上面的内容改动3.1.3传感器的功能1.加速度传感器(Accelerometer)感知手机当前的加速度,可以实现微信摇一摇类似的功能(摇一摇使手机瞬时加速度发生变化),另外通过测量由于重力引起的加速度,你可以计算出设备相对于水平面的倾斜角度。下图是加速度传感器数据坐标的示意图。XYZ分别对应values[0]到[2]。X表示左右移动的加速度,Y表示前后移动的加速度,Z表示垂直方向的加速度.例如,水平放在桌面上的手机从左侧向右侧移动,values[0]为负值;从右向左移动,values[0]为正值。2.重力感应器与加速度传感器使用同一套坐标系。values数组中三个元素分别表示了X、Y、Z轴的重力大小。其实重力感应器是手机早就集成的传感器,传统重力感应器它仅能识别水平方向和垂直方向的移动。现有的手机集成的重力感应器也就等同于加速度感应器(查了一下资料没有明确的功能区分,姑且这样认为)。屏幕会随着手机位置的不同而改变方向的功能就是通过这个实现的。3.Gyroscope陀螺仪定义是一种用于测量角度以及维持方向的设备。中间黄色的转子是“陀螺”,周边三个“钢圈”则会因为设备改变姿态而跟着改变,通过这样来检测设备当前的状态。看定义不知道它与加速度传感器有什么不同,下面我们来看看他们到底有什么区别:加速度感应器用来感应加速度的,譬如手机从静止到移动就会产生加速度,你使劲摇一摇手机,就会产生加速度等等。另外然后人们利用手机倾斜时在加速度敏感轴上的重力不同,就衍生出了所谓的重力感应功能,可以粗略感应倾斜角;陀螺仪是用来固定一个方向的,就像旋转的陀螺放在一个平面上,不论将这个平面如何倾斜,陀螺的中心轴的方向总是会保持不变。在手机里装陀螺仪传感器,就能凭空固定一个方向,无论手机如何移动,这个方向总是保持不变,譬如说在一些手机射击游戏中,射击准心就是不变的,然后你可以通过移动手机位置,来瞄准目标,或者实现手机防抖功能。4.GPS(GlobalPositioningSystem)这个大家都很熟悉,大家会经常用它来定位和导航。在androidSDK中,有Location对象,这个对象包括当前位置的经纬度甚至可以通过location.getspeed()来获得手机用户的运行速度。当然获取Location不只有通过GPS这一个方式,可以通过基站或者WIFI定位。5.电子罗盘目前很多手机都实现了电子罗盘的功能。要实现电子罗盘功能,需要一个检测磁场的三轴磁力传感器和一个三轴加速度传感器。随着微机械工艺的成熟,意法半导体推出将三轴磁力计和三轴加速计集成在一个封装里的二合一传感器模块LSM303DLH,方便用户在短时间内设计出成本低、性能高的电子罗盘。所以手机支持电子罗盘也就相当于支持磁场感应器。电子罗盘的最大用途就是当做指南针。还有一些其他传感器:气压传感器用于判断手机当前