基于MATLAB和Android智能手机传感器的计步器的设计

基于MATLAB和Android智能手机传感器的计步器的设计
基于MATLAB和Android智能手机传感器的计步器的设计

By ali 作者简介:徐文力,男(汉族),硕士研究生,主要研究领域为智能及高级过程控制。

李明辉,男(汉族),教授,硕士研究生导师,主要研究领域为智能及高级过程控制。

基于MATLAB 和Android 智能手机传感器的计步器的设计

徐文力,李明辉

(陕西科技大学机电工程学院,陕西 西安710021)

摘 要:本文设计的是一种基于MATLAB 和Android 智能手机传感器的计步器,首先分析了人体运动时加速度的变化规律,通过手机传感器获取三维加速度值,然后由sensorudp APP 以UDP 数据包的形式通过无线网络发送给运行着MATLAB 软件的计算机,利用MATLAB 软件强大的科学计算功能对数据包进行解析得到加速度的值,并进行滤波和样条插值等处理,最后得出运动的步数,进而求出运动的距离以及能耗,为健康运动提供了判断依据。 关键词:智能手机;计步器;无线网络;滤波

中图分类号:TN91 文献标识码:B

Design of pedometer based on MATLAB and the smartphone sensors

Li ,Xu

(College of Mechanical and Electrical Engineering ,Shaanxi University of Science & Technology ,xi ’an shaanxi 710021,China)

ABSTRACT : This paper designs a pedometer based on MATLAB and the Android smartphones sensor. First analysis the change law of acceleration of the human body when people exercise, obtaining 3D acceleration through mobile phone sensor, and then send to the computer which running MATLAB software in the form of UDP packets through the wireless network by the sensorudp APP, and use the powerful MATLAB software to decode the packets to get the acceleration, and then execute the filter and spline interpolation, and get the number of steps , the distance and energy consumption, which can provide the basis to judge the movement. KEYWORDS : Smartphones; Pedometer; Wireless network; Filter;

0 引言

Android 智能手机自推出以来,其内置传感器逐渐增多,传感器所实现的功能也日益多样化,极大的满足了用户对智能手机功能的需求,从依赖于重力传感器的各种游戏,到依靠距离传感器实现的通话灭屏,再到指南针功能下的电子罗盘等等,小小的一个Android 智能手机以各种传感器为依托实现了许多有趣的功能。因此,手机已经不再是一个简单的通讯工具,而是具有综合功能的便携式的电子设备。在这种情况下,各种传感器在手机上的应用应运而生。本文就是利用Android 智能手机中的G-sensor 传感器,结合MATLAB 软件的强大计算功能,设计了一种计步器,通过对传感器数据进行分析处理得到运动的步数,进一步计算就可以得到运动速度、距离和能耗等数据。在全民健康意识普遍提高的背景下,各种运动器具变得炙手可热,而计步器的应用可有效辅助提高运动效果,达到健康运动的目的。

1 计步器原理

要实现检测步数首先要对人走路的姿态有一定了解。以步伐特征的研究为基础,考虑到

人体行走时脚、腿、腰部和手臂都在运动,它们的运动都会产生相应的加速度,趋势就是不断地上下起伏近似为正弦过程。测量正弦波的频率就可以得出运动的步数,进而可以计算出速度,距离,和消耗卡路里。从脚的加速度来检测步数是最准确的,但是考虑到携带的方便,选择利用腰部的运动来检测步数,因为,行走时腰部有上下的垂直运动,所以会产生一个上下波动比较大的加速度值。由于采用的是智能手机中的加速度传感器(如图1所示),它有三个轴可以对应人体运动的三个方向,因此首先规定人体前进方向为y 轴,左右运动为x 轴,上下运动为z 轴。无论手机如何放置,总会检测到三个方向的加速度值x a 、y a 和z a ,从而求出合加速度a :

222z y x a a a a ++= (1-1)

当手机静止不动时,a 的理想值为重力加速度g ()2/s m 。当检测到有动作时a 值就会在g 值上下变化,为了计算方便可以取变量A=a-g ,使A 值在0()2/s m 上下波动。

以人体重心为参考点,只考虑z 轴方向,则可以将行走的过程分为两个阶段:重心由最低到最高的过程和重心由最高到最低的过程。在重心由最低到最高的过程中,人体z 轴方向的速度由零上升到某一值,然后又从该值减少到零,在整个过程中速度为正,即方向为z 轴正方向。所以,加速度的变化应该从()2/s m g a z -=到()()

2/s m g a a z ?+-=最后又回到,其中a ?为正值。在重心由最高到最低的过程中,人体z 轴方向速度由零上升到某一值,然后又从该值减少到零,在整个过程中速度为负,即方向为z 轴负方向。所以,加速度的变化应该从()2/s m g a z -=到()()

2/s m g a a z ?--=最后到又回到()2/s m g a z -=,其中a ?为正值。由此可以得出变量A 一个周期内的变化过程近如图2所示:

可以看出参数A 的变化曲线近似为一个正弦信号,所以只需求出正弦信号的频率就可知道所走的总的步数。但是上图只是理想的波形,实际中传感器会产生抖动,得到的波形含有大量干扰信号,必须进行处理才能得到较好的波形。

2 建立通讯

图2 A 的变化规律

Fig.2 change law of A

图1 手机三维加速度方向 Fig.1 3D acceleration direction of mobile phone a ?

a ?-

MATLAB 支持从Android 设备的内置传感器中获得数据,通过MATLAB 对Android 传感器的支持包,可以从Android 设备所支持的传感器中记录数据或者查看最新的可用数据,进而通过分析数据可以开发不同的应用。这样做的前提是必须事先在手机上安装sensorudp APP ,同时必须保证运行MATLAB 软件的计算机和安装sensorudp APP 的智能手机处于同一个网络中。这里面提到的Sensorudp 是由Takashi SASAKI 开发的一款智能手机应用(如图3所示),可以获取手机各种传感器的数据,包括:三维方向的加速度;三维方向的角速度;方位角、横倾角以及纵倾角;维度,经度,高度和速度;

首先在计算机上建立WiFi 网络,然后打开手机中的WLAN 功能并连接到所建立的WiFi 网络。手机和计算机之间实现无线通讯之后, MATLAB 就可以接收sensorudp 发出UDP 数据包,通过编写好的函数命令来解析这些数据包。这些函数命令可以从mathworks 官网上下载,并放在MATLAB 的工作路径中。其中最重要的函数命令为obj=sensorgroup(deviceType),该命令会提示对sensorudp 进行设置以建立通讯,如图4所示。其中有两个重要的属性需要根据提示进行设置:IPAddress 用于设置主机的以太网接口的IP 地址,本文中设置为192.168.191.1;Port 用于设置主机的以太网端口,本文中设置为50000;做完这些设置后选择所需要的传感器数据发送到MATLAB 。本文中只用到的加速度值,因此只需要选择accelerometer cvs line 即可。

图3 sensorudp APP 界面 Fig.3 Interface of sensorudp APP

3 数据的测量和分析处理

数据的测量和分析处理是计步器设计的关键步骤,贯穿整个过程,具体的计步器程序流程如图5所示:

通讯建立好之后,就可以获取传感器数据了,首先需要得到本地重力加速度的值。由于开始 建立通讯 计时 记录加速度 求出合加速度a 并计算A=a-g 均值滤波 样条插值 取上半面图形 判断极值点 计算个数 更新图形 终止 Y N 时间到 图4 通讯设置提示 Fig.4 Communication tips

图5 程序流程图 Fig.5 Program flow chart

一个地方的重力加速度跟纬度和海拔有关,所以不同地方的重力加速度取值不一样。同时,由于手机本身的原因以及周围环境的影响都可能对传感器的检测造成干扰。本文采用实验的方法利用智能手机中的G-sensor 传感器得到检测值并求取平均值。具体方法是将手机静止放在地面上,取三个不同的位置在每个位置处将手机正面,反面,侧面放置并各测量一次,每次接收20秒钟的数据,共测量9次,每一次测量都会得到一系列的数值,对其求取平均值,最后将得到的9个平均值相加再求取平均值,该值可以看作本地的重力加速度值。最后的测量结果为:g =[9.8269,9.8208,9.8220,9.8310,9.8142,9.8151,9.8188,9.8189,9.8180],求平均值后取g=9.8206()

2/s m 。

接下来将手机固定于身体腰部,开始走路并运行程序,一段时间后停下并记录所走的步数为16步,同时程序记录下在整个过程中三个方向的加速度的变化,其中有两个方向的加速度变化较小,有一个方向的加速度变化较大,如图6所示:

根据公式(2-1)求出合加速度a 之后,可以得到变量A 的图像,如图7所示: A 值总体上有规律地进行波动,但局部极大值极小值较多需要剔除。首先对变量A 进行滤波,然后进行样条插值处理,在此过程中插入了10倍的数据点,可以得到图8:

图6 三维加速度曲线 Fig.6 3D acceleration curve 图7 变量A 的曲线 Fig.7 Curve of A

图8 滤波和插值后的A 曲线

可以看出曲线平滑了好多,接下来取大于零的部分并找出拐点,由此可以确定波的个数即为步行数,部分程序为:

abovezero=A>0;%取大于零的部分

zerocrossing=diff(abovezero)==1;%找出拐点

zerocrossingIndex=find(zerocrossing);%获取拐点坐标

steps=numel(zerocrossingIndex);%计算拐点个数

图9 计算拐点个数

Fig.9 Calculate the number of inflection point

最后结果:

图9 计算结果

Fig.9 The final result

steps =16,即行走步数为16步,与我们记录的一样。另外,在步数一定的情况下,由于每个人的身高和体重的不同,运动的步长也就不同,消耗的卡路里也就不同。因此可以手动输入这些值就能很容易计算出距离和能耗,当然也可以通过统计的方法来确定。

4 结论

本文在分析了人体运动时加速度的变化规律基础上,将MATLAB软件和Android智能手机传感器相结合,在二者之间建立无线网络,实现数据的通讯。对从传感器得到的加速度信号进行了滤波和插值等处理,得出的运动步数和记录的步数相吻合。随着智能手机的兴起,各种手机传感器的功能也越来越强大,若将其与功能强大的MATLAB软件相结合,将会为各种应用的开发提供便利,本文也是基于此做的一次有益的尝试。

参考文献

[1] 刘华洲.基于智能手机传感器的图像匹配技术研究[D].西安电子科技大学 2013

[2] 张烨.基于Android平台WIFI的实现及应用[D].北京邮电大学 2012

[3] 张宁.基于Android的移动终端数据采集的实现[D].内蒙古大学 2013

[4] 李晓阳.WiFi技术及其应用与发展[J].信息技术.2012(02)

[5] 唐建华,陈金鹰.WiFi传输技术在控制领域的应用探讨[J].通信与信息技术.2013(04)

[6] 赵淑敏.基于MATLAB实现对语言信号频谱分析[J].信息通信.2010(04)

[7] 袁西霞,岳建华,赵贤任.MATLAB在中值滤波改进算法中的应用[J].广东工业大学学

报.2007(01)

基于ANDROID传感器的应用设计

学号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世纪初伽利略发明温度计开始,人们开始利用温度进行测量。真正把温度变成电信号的传感器是

android毕业设计(论文)开题报告

毕业设计(论文) 开题报告 题目___________________________ 学院___________________________ 专业及班级___________________________ 姓名___________________________ 学号___________________________ 指导教师 ___________________________ 日期 ___________________________

西安科技大学毕业设计(论文)开题报告

二、主要研究(设计)内容、研究(设计)思路及工作方法或工作流程 设计内容:基于Android平台下实现理货员的功能:精耕拜访,销售机会,拜访效果,门店销量查询,待办事项,数据维护:队列信息,基础信息,地图下载。 设计思路及工作方法: 1.精耕拜访: (1)初始进入该页面,系统会自动获取该理货员的本日拜访的门店及路线。 (2)下方地图会自动定位目前理货员的位置。 (3)点击门店的具体门店名称,在右边会显示该门店的联系人,电话,及地址,并且地图 会自动切换定位以该门店为中心。 (4)点击地图上的+可实现地图局部放大。-可实现地图的放小。 (5)如已拜访的门店,点击进入可以调去历史拜访数据。如未拜访的门店,点击进入可以新增该拜访记录。 (6)如理货员在拜访期间,发现门店已经有卖而目前系统中无记录的情况,则可以通过扫 描SKU的条形码,系统会自动匹配该SKU的信息给理货员。 匹配顺序:连锁总店—区域管理—基本SKU信息 补充说明: (1)公司动态内容,为了显示保乐力加集团的整体形象,有必要对公司的动态进行展示。 要包括集团的光辉历程,门店信息,集团的促销信息等。 (2)在陈列信息栏中,有其它途径过来的回应确认,可以一栏展示在上半部。如该理货员 需要发起确认,也可以通过点击发起确认进行提出。发起确认的需要销售员进行审核并且 分发。 (3)陈列报告,为显示每次理货员必须处理的门店信息记录及图片等。 (4)在陈列信息栏中,有其它途径过来的回应确认,可以一栏展示在上半部。如该理货员需要发起确认,也可以通过点击发起确认进行提出。发起确认的需要销售员进行审核并且分发。 (5)价格显示,系统会自动带出竞品信息。罗列在下半部。理货员在进行拜访期间,可以对本身的SKU及竞品的价格进行登记。主要登记内容:零售价格,促销价格及促销期间。信息采集完毕,可以供后台进行统计分析。 (7)在陈列信息栏中,有其它途径过来的回应确认,可以一栏展示在上半部。如该理货员需要发起确认,也可以通过点击发起确认进行提出。发起确认的需要销售员进行审核并且分发。 (7)库存信息,主要记录SKU的库存数量。 (8)上半部为助销申请内容,主要是对一些礼品的申请。 (9)订单处理,为新增订单,退货内容及换货内容的跟踪。 2.销售机会: (1)打开销售机会界面,会自动定位目前的门店列表。 (2)用户可以输入门店名称查询具体的门店信息及地图位置。

基于Android的传感器技术应用开发_毕业设计

基于Android的传感器技术应用开发 目录 摘要 ---------------------------------------------------------------------------------------------------------------------I ABSTRACT --------------------------------------------------------------------------------------------------------------- II 引言----------------------------------------------------------------------------------------------------------------------------------------- 1 1绪论---------------------------------------------------------------------------------------------------------------------------------- 2 1.1研究背景与意义 ----------------------------------------------------------------------------------------------------- 2 1.2国内外智能手机应用程序现状研究 ---------------------------------------------------------------------------- 3 1.3研究目的及项目背景介绍----------------------------------------------------------------------------------------- 3 1.4论文的研究内容和结构安排-------------------------------------------------------------------------------------- 3 1.4.1论文内容概述 ----------------------------------------------------------------------------------------------- 3 1.4.2论文内容结构安排 ----------------------------------------------------------------------------------------- 4 1.5小结--------------------------------------------------------------------------------------------------------------------- 4 2基于Android的传感器技术研究 ----------------------------------------------------------------------------------------- 5 2.1Android简述 --------------------------------------------------------------------------------------------------------- 5 2.1.1Android平台简介------------------------------------------------------------------------------------------- 5 2.1.2Android开发框架------------------------------------------------------------------------------------------- 5 2.1.3Android应用程序组件------------------------------------------------------------------------------------- 7 2.1.4Android软件开发的优点及缺点------------------------------------------------------------------------- 8 2.1.5Basic4android开发环境的搭建-------------------------------------------------------------------------- 9 2.1.6运用Basic4android软件的优势 ------------------------------------------------------------------------ 11 2.2传感器概念与分类 ------------------------------------------------------------------------------------------------- 11 2.2.1传感器的概念 ---------------------------------------------------------------------------------------------- 11 2.2.2传感器的分类 ---------------------------------------------------------------------------------------------- 12 2. 3传感器在智能手机中的应用------------------------------------------------------------------------------------12 2. 4Android平台传感器的种类 -------------------------------------------------------------------------------------12 2.4.1加速传感器(重力传感器)Accelerometer --------------------------------------------------------------- 14 2.4.2姿态传感器Orientation ---------------------------------------------------------------------------------- 14 2. 5传感器的使用方法 ------------------------------------------------------------------------------------------------15 2.5.1加速度传感器的调用(PhoneAccelerometer) ---------------------------------------------------------- 15 2.5.2方向传感器的调用(PhoneOrientation)----------------------------------------------------------------- 16 2.6B4A-Bridge软件的使用 ------------------------------------------------------------------------------------------16 2.7小结--------------------------------------------------------------------------------------------------------------------18 3游戏程序设计架构详解 --------------------------------------------------------------------------------------------------------18 3.1程序开发背景与功能简介----------------------------------------------------------------------------------------18 3.1.1程序开发背景简介 ---------------------------------------------------------------------------------------- 18 3.1.2游戏功能简介 ---------------------------------------------------------------------------------------------- 19 3.2游戏开发平台及工作准备----------------------------------------------------------------------------------------19 3.2.1游戏开发平台 ---------------------------------------------------------------------------------------------- 19

基于Android的日历系统的设计与实现毕业设计(论文)

华北电力大学本科毕业设计(论文) 毕业设计(论文) ` 题目基于Android的日历系统 的设计与实现 二○一四年六月

毕业设计(论文)原创性声明和使用授权说明 原创性声明 本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。 作者签名:日期: 指导教师签名:日期: 使用授权说明 本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。 作者签名:日期:

学位论文原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。 作者签名:日期:年月日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 涉密论文按学校规定处理。 作者签名:日期:年月日 导师签名:日期:年月日

Android开发教程传感器编程详解-麦子学院

Android操作系统作为一款开源的手机操作系统,深受开发者喜爱,开发者们也可以根据自己的需求进行各种修改。对开android开发初学者,对于传感器的编程技巧需要重点了解下。如下例: 1. Accelrator的x,y,z轴的正负向: 手机屏幕向上水平放置时: (x,y,z) = (0, 0, -10) 而不是 (0, 0, 10) 当手机顶部抬起时: y减小,且为负值 当手机底部抬起时: y增加,且为正值 当手机右侧抬起时: x减小,且为负值 当手机左侧抬起时: x增加,且为正值 2. Accelrator的z轴的变化: 手机屏幕向上水平放置时,z= -10 手机屏幕竖直放置时, z= 0 手机屏幕向下水平放置时,z= 10 3. 当x变为+5时,手机画面切换为竖向 当x变为-5时,手机画面切换为横向 4. Android传感器相关的类在SDK1.1和SDK1.5中不一样,因此实现代码也不一样 5. Android传感器类型分为:方向、加速表、光线、磁场、临近性、温度等 程序中分别为: 方向: SensorManager.SENSOR_ORIENTATION, 加速表: SensorManager.SENSOR_ACCELEROMETER 光线: SensorManager.SENSOR_LIGHT 磁场: SensorManager.SENSOR_MAGNETIC_FIELD 临近性: SensorManager.SENSOR_PROXIMITY 温度: SensorManager.SENSOR_TEMPERATURE 采样率:最快、游戏、普通、用户界面。当应用程序请求特定的采样率时,其实只是对Android传感器子系统的一个提示,或者一个建议。不保证特定的采样率可用。 最快: SensorManager.SENSOR_DELAY_FASTEST 游戏: SensorManager.SENSOR_DELAY_GAME 普通: SensorManager.SENSOR_DELAY_NORMAL 用户界面: SensorManager.SENSOR_DELAY_UI 准确性:高、低、中、不可靠。 6. Orientation Sensor三个坐标的含义: values[0]:方位角(水平旋转角),简单的说就是手机的头现在朝向哪个方位,0=北、90=东、180=南、270=西(可是好像不太准) values[1]:纵向旋转角,0=面朝上平置、-90=垂直向上、-180/180=面朝下平置、90=垂直向下 values[2]:橫向旋转角,0=朝前、90=往右倒、-90=往左倒 7. 自动侦测手机方向

本科毕业设计---基于android手机电子书阅读器的设计与实现

毕业设计 题目:手机电子书阅读器的设计与实现

毕业设计(论文)原创性声明和使用授权说明 原创性声明 本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。 作者签名:日期: 指导教师签名:日期: 使用授权说明 本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。 作者签名:日期:

学位论文原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。 作者签名:日期:年月日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 涉密论文按学校规定处理。 作者签名:日期:年月日 导师签名:日期:年月日

Android Sensor传感器系统架构初探

?第一层次底层驱动层,包括标准Linux,Android核心驱动,Android相关设备驱动,G-sensor的设备驱动程序即存在于此 ?第二层次Android标准C/C++库,包括硬件抽象层,Android各底层库,本地库,JNI ?第三层次Android Java Framwork框架层 ?第四层次Java应用程序 本文重点关注硬件抽象层,JNI以及Framework。

1.1 硬件抽象层 硬件抽象层通过例如open(), read(), write(), ioctl(), poll()等函数调用的方式,与底层设备驱动程序进行交互,而这些函数调用是底层设备驱动程序事先准备好的。 用于交互的关键是文件描述符fd,fd通过open()打开G-sensor设备节点而得到,即fd = open ("/dev/bma220", O_RDONLY);而/dev/bma220这个设备节点是在底层设备驱动中注册完成的。 其他的函数调用如read(), write()等都通过该文件描述符fd对G-sensor设备进行操作。 1.2 JNI (Java Native Interface) JNI层可以认为是整个体系结构中的配角,概括地讲,它就完成了一项任务,既实现从C++语言到Java语言的转换。JNI层为Java Framework层提供一系列接口,而这些接口函数的具体实现中,利用例如module->methods->open(), sSensorDevice->data_open(), sSensorDevice->poll()等回调函数与硬件抽象层进行交互。而这些open(), poll()回调函数在硬件抽象层中具体实现。 1.3 Java Framework Framework层提供各种类和类的对象,可作为系统的守护进程运行,也可供上层应用程序的使用。 例如类SensorManager,它作为系统的守护进程在初始化的时候开始运行,其子类SensorThread中的子类SensorThreadRunnable通过sensors_data_poll()实现了对 G-sensor数据的轮训访问,而sensors_data_poll()通过JNI层转换到硬件抽象层去具体实现poll()。 2 数据结构 一般境况下,硬件抽象层对硬件的描述都分为control和data两大类。 2.1 sensors_control_context_t struct sensors_control_context_t { struct sensors_control_device_t device;

本科毕业设计--基于android平台的手机应用软件设计与实现

安阳工学院 计算机科学与工程学院 JAVA程序设计课程综合项目报告 项目题目:基于Android平台的手机应用软件设计与实现专业班级:计算机科学与技术(信息技术)11-1 学生姓名:吕鹏 学生学号:201103010042 指导教师姓名:许研 2013年12月

摘要 随着IT技术的发展,移动开发已被广泛的应用于社会的各个领域,成为推动社会发展的技术动力。而在移动开发中,Android开发近些年来突飞猛进的发展,在智能手机领域中的市场份额以及超过80%。同样,基于安卓平台的手机应用开发也达到前所未有的高度,各种安卓手机应用软件竞相出现。本次的JAVA 课程设计将基于安卓的平台,因为安卓开发主要基于JAVA语言和XML语言。本次所做的手机应用软件,可实现系统的登录、计算器、打电话、发短信、上网等简单功能实现。在此系统的实现过程中不仅提高了JAVA语言编程,而且加入了Android的成分,提高了软件设计的兴趣性。 关键词:手机应用软件开发,Java程序设计语言,Android开发。

目录 摘要 (2) 第1章系统目标 (5) 第2章系统功能介绍 (6) 2.1系统功能总框图 (6) 2.2 模块功能介绍 (6) 2.2.1 登录模块功能介绍 (6) 2.2.2 等待模块功能介绍 (7) 2.2.3系统主界面模块功能介绍 (8) 2.2.4短信和拨号模块功能介绍 (8) 2.2.5计算器模块功能介绍 (9) 2.2.6网上冲浪模块功能介绍 (10) 第三章系统功能实现 (11) 3.1 系统登录模块设计 (11) 3.1.1 登录框布局设计 (11) 3.1.2 登录对话框设计 (13) 3.2 等待模块设计 (15) 3.3 系统主界面模块设计 (16) 3.3.1 主界面XML布局设计 (16) 3.3.2 主界面背景图片设计 (18) 3.3.3 主界面功能实现设计 (18) 3.4 短信和拨号模块设计 (20) 3.4.1短信功能实现设计 (20) 3.4.2 拨号功能实现设计 (22) 3.5 计算器模块设计 (22) 3.5.1 计算器界面设计 (22) 3.5.2 计算器功能实现设计 (22) 3.6 网上冲浪模块设计 (24) 3.6.1 网上冲浪模块XML布局设计 (24)

基于Android手机多传感器的老人跌倒检测技术研究与实现

电子设计工程 Electronic Design Engineering 第24卷Vol.24第14期No.142016年7月Jul.2016 收稿日期:2015-08-15 稿件编号:201508083 基金项目:华中师范大学2014年大学生创新创业训练计划立项A 类项目(A2014057)作者简介:程一风(1994—),男,湖北武汉人。研究方向:通信。 随着中国人口老龄化程度的加深,老年人的健康安全监护问题成为了一个巨大的社会难题。由于身体机能衰退等原因,老年人的生活自理能力逐步下降,难免遭受一些意外伤害,其中跌倒问题显得尤为突出。调查显示,意外跌倒成为了老年人健康的“头号杀手”,它会给老人的身心带来巨大的伤害,若是救治不及时,不仅会大大加深伤害程度,甚至有可能危及生命。因此,研究老人跌倒检测问题具有非常重要的社会意义。 现有的跌倒检测系统主要包括基于图像的检测系统、基于声频信号的分析、基于穿戴式的装置检测。基于图像的检测方法由摄像头对老人的运动实时监测,其准确度较高,但不足之处在于不能保证用户的隐私。基于声频信号的监测装置安装比较复杂,资金投入也比较大。基于穿戴式的装置检测对于老年人的限制最小,精度也较高。但还是存在一些问题,例如老人需要佩戴特殊的检测装置,但在日常生活中老人很难保证随时佩戴,导致检测效果大打折扣。并且目前大部分的穿戴检测装置需要使用者以固定方向佩戴在固定位置(如腰部),这或多或少会影响到老人的日常活动。 因此,本文提出一种新型可穿戴式检测方法。以智能手机作为载体,利用手机中集成的三轴加速度传感器和气压计,通过阈值判断实现跌倒检测。该方法有如下优点: 1)用户仅需携带手机便能进行跌倒检测,无需携带额外 的检测设备,大大降低了对老人日常生活的影响。 2)引入气压计进行联合判断能有效减小误报率。生活中 一些如跑步、起立等行为的加速度变化特征与跌倒相似,若单独采用加速度传感器检测跌倒,在进行这类活动时可能会引起误报。引入气压计检测跌倒时海拔高度的变化,能有效排除以上相似行为误报的可能性,从而更进一步降低误报率。 3)无需固定手机放置的位置与方向。现有的一些检测设 备通过检测跌倒时人体方向的变化实现判别,而本文中提出的方法无需依赖角度的变化,因此对手机放置的方位没有限制。 1 基于智能手机多传感器的跌倒检测方法 1.1 传感类型和数据预处理 本设计利用智能手机本身集成的加速度传感器和气压 基于Android 手机多传感器的老人跌倒检测技术研究与 实现 程一风,李达,张翔晨 (华中师范大学湖北武汉430079) 摘要:为了减少因跌倒后救治不及时给老人身心带来的伤害,文中提出了一种基于Android 手机多传感器的跌倒检测方法。利用三轴加速度传感器和气压计,检测跌倒时加速度和海拔高度的变化特征,实现跌倒判定。同时考虑到不同体格特征的人群身高、体重、年龄等的差异,文中引入了合理的阈值调节机制。并且,文中基于此方法在Android 智能手机平台上设计实现了跌倒检测系统,实验结果表明该系统的检测准确率86%。关键词:跌倒检测;Android ;三轴加速度传感器;气压计中图分类号:TN929.53 文献标识码:A 文章编号:1674-6236(2016)14-0181-03 Research and implementation of fall detection based on Android phone CHENG Yi -feng ,LI Da ,ZHANG Xiang -chen (Central China Normal University ,Wuhan 430079,China ) Abstract:Aiming at avoiding the sever injury caused by elders falling down without prompt treatment ,this paper develops a method of falling -down detection system based on multisensor in Android phones.This system utilizes three -axis accelerometer and barometer to detect the changes of acceleration and altitude to determine whether a falling down accident has occurred.Taking it into consideration that different individuals differ in bodily features like height ,weight and age ,This paper introduces a reasonable threshold adjusted mechanism.It also reveals that the system has been implemented on the Android smart phone platform with experimental results ’showing that the detection accuracy of the system is 86%.Key words:fall detection ;the Android platform application ;three -axis accelerometer ;barometer -181-

基于Android的校园新闻app开发毕业设计

毕业设计(论文)基于Android平台的校园新闻app的开发

毕业设计(论文)原创性声明和使用授权说明 原创性声明 本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。 作者签名:日期: 指导教师签名:日期: 使用授权说明 本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。 作者签名:日期:

学位论文原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。 作者签名:日期:年月日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 涉密论文按学校规定处理。 作者签名:日期:年月日 导师签名:日期:年月日

Android传感器编程入门

本讲内容:Android传感器编程入门,分别包括加速度传感器(accelerometer),陀螺仪(gyroscope),环境光照传感器(light),磁力传感器(magnetic field),方向传感器(orientation),压力传感器(pressure),距离传感器(proximity)和温度传感器(temperature) 一、前言 我很喜欢电脑,可是笔记本还是太大,笔记本电脑再小还是要弄个小包背起来的,智能手机则不同,它完全就是一个手机,可以随意装在一个口袋里随身携带。因此我在2002年左右时最喜欢玩装备是Dell的PDA,2007年的时候最喜欢玩的是N73,而在2010年最喜欢玩的则是Milestone。眼见着手机的功能越来越强,时至今日智能手机甚至在某些方面已经强过了台式机和笔记本。本节课讲的就是智能手机强过台式机和笔记本的地方:传感器。 2008年的时候我很喜欢我的小白笔记本Macbook,喜欢玩它的一个小软件,一拍桌子,笔记本感受到了震动,它就转换了一个桌面出来,这让我像个小孩子一样没事就拍拍桌子。这一功能这得益于苹果笔记本内置有传感器。 我不知道iPhone手机是不是第一个把各种各样的传感器运用在手机上的,不过我知道iPhone是把传感器运用在手机上最成功的第一个。随后的Android系统也内置了大量的传感器,这让Android系统手机和普通的诺基亚智能机和Windows CE智能机相比牛气了许多,在拥有了Milestone之后,我的N73就被仍在抽屉的角落里了。 从Android1.5开始,系统内置了对多达八种传感器的支持,他们分别是:加速度传感器(accelerometer),陀螺仪(gyroscope),环境光照传感器(light),磁力传感器(magnetic field),方向传感器(orientation),压力传感器(pressure),距离传感器(proximity)和温度传感器(temperature)。 利用这些传感器我们可以制作出各种有趣的应用程序和游戏。譬如在口袋里晃一晃手机,手机就开始神不知鬼不觉的录音,不要着急这个很容易做,我们在本文的结尾就一起制作这个小应用。 本讲的学习方式还是在实战中学习,需要提醒的是模拟器中无法模拟传感器,因此你需要准备一款Android真机才能运行本讲的例子。 二、实例:手机传感器清单 我们还是先看程序后解释, 1、创建一个项目 Lesson37_HelloSensor , 主Activity名字叫 mainActivity.java 2、UI布局文件main.xml的内容如下: view source

安卓系统毕业论文设计

安卓系统毕业论文设计 编号毕业设计论文任务书题目安卓电子菜单点菜 系统院系专业计算机及应用学生姓名黎少环学号030111301428 指导教师单位桂林航天工业高等专科学校 姓名郑利华职称副教授题目类型理论研究实验研 究工程设计工程技术研究软件开发 2012年 4月22日一、毕业设计论文的内容、要求计算机领域在不断创新。计算机在代替和延伸脑力劳动方面发挥越来越重要的作用 不仅在工业方面而且在日常生活中也越来越离不开计算机。在数字化的今天为了更加加快人们在吃的方面节省更多的 时间由此电子点菜系统的出现更加利于人们在点餐时高效 点菜方便点菜员与顾客沟通更好展示主推菜品有效提高单 桌消费额餐厅繁忙时方便顾客自助点菜有效节约人工提高 服务质量菜单管理饭店所有菜品信息、菜品口感、份量方便客人选择超强展示简洁界面方便服务员及顾客点菜优越于 传统菜谱提高效率点菜、提交、下单同步进行规范管理可与现有点菜方式同时使用弥补现有点菜系统的缺陷准确无误 避免传统手写点菜失误造成的消费者投诉数据分析餐厅营 业状况一目了然并兼容现有餐饮管理软件开机的首页可以 插入企业广告增加酒店营业收入饭店形象大步提升提高了 客户忠诚度、增加收益等。为了使电子点菜系统更加简单、到位、便捷并能都基于上述种种原因本论文通过Android平台和eclipse SDK 的编程环境实现andriod电子点菜系统。

andriod电子点菜系统。主要分为前台和后台管理。前台管理设计了九个按钮分别命名为android电子点餐系统、特色菜、热菜、凉菜、汤类、酒类、套餐、呼叫服务、结账当想点菜时点击特色菜、热菜、凉菜、汤类、酒类、套餐等按钮则进入另一个界面进行点菜并点击界面中的完成按钮算出所点菜的金额。二、毕业设计论文应完成的工作 1、毕业设计论文说明书打印四份 2、英译汉资料或不少于2000汉字的调研报告 3、任务书 4、软件清单工科要求、设计图纸等 5、设计的软件或硬件作品三、应收集的资料及主要参考文献 1 谭浩强.Java语言程序设计第三版M.北京:清华大学出版社2008. 2 张孝祥.Java就业培训教程M.北京:清华大学出版社2003 4 李春儒.守望互联网经济—电子商务发展现状与趋势OL2005. 5 史斌星史佳.Java基础编程贯通教程M.北京清华大学出版社2003. 6 马海军杨继萍.Java 2 实用教程M.北京清华大学出版社2004. 7Smego.Android应用程序设计基础2009. 8E2ECloud.深入浅出Android程序设计OL.北京人民邮电出版社2009. 9Smego.Android A Programmers GuideOL2008. 10杨丰盛.Android 应用开发揭秘M.西安机械工业出版社2010. 四、试验、测试、试制加工所需主要仪器设备及条件硬件要求计算机一台显示器一台软件要求系统开发平台android 与eclipse 系统开发语言java 数据库管理软件Microsoft SQL Server 2005

(完整版)基于Android平台的管理系统设计与实现毕业设计

基于Android平台的管理系统设计与实现 院系:信息科学与工程学院 专业班:计算机科学与技术班 姓名: 学号: 指导教师:

201 年月

基于Android平台的 管理系统设计与实现Design and Implementation of Online Management System Based on the Android Platform

摘要 基于Android平台的网上超市管理系统是结合当前最流行的移动平台开发的电子商务系统。本系统是PC端电商网站在Android平台的延伸,除了传统电商网站能够实现的各项基本功能之外还具有使用简单,操作方便等优点。利用本系统可以为超市的销售提供新的渠道。 本系统的开发运用了基于Java的Android SDK技术,系统采用C/S (客户端/服务器)结构实现。开发所采用的IDE为MyEclipse 10并安装由Google提供的Android Developer Tools。系统运行环境为Android版本4.0以上的移动设备。 本系统在电商网站的基础上完成了移动平台功能的设计,使用户能够在手机上方便的进行传统电商网站上所能完成的大部分操作。本系统的优点在于能够充分利用都市人群上下班途中、排队闲暇等碎片时间,提供方便快捷的购物方式,因此能够极大的抓住用户的依赖程度,提高超市自身品牌影响力,扩张超市营业范围,提高商品销售收入。 关键词:Android 移动设备网上超市

Abstract This e-commerce system named Online Market Management System is based on the most popular mobile platform - Android platform. This system is an extension of PC e-commerce website on the Android platform. Except functions that normal e-commerce system can realize, this system also has many advantages like easily use and convenient. Using this system has provided a brand new way for market sales. The development of this system has using the Android SDK based on Java technology, and achieve by C/S (Client/Server) structure. The IDE used for development is MyEclipse 10 which has installed Android Developer Tools provided by Google. This system need a mobile device that Android version is higher than 4.0 for running. This system has completed the function of the mobile platform based on e-commerce sites, and allow user finish most functions which can be done at normal e-commerce sites. This system can make full use of pieces of time which like the way go to work and the way home, or when you get in a line waiting for something, to provide a fast convenient way to shopping. These advantages can seize the users' dependence, improve the influence, expansion the scope of the business and increase sales revenue. Key words:Android mobile device Online Market

相关文档
最新文档