老人行为识别模式_第1页
老人行为识别模式_第2页
老人行为识别模式_第3页
老人行为识别模式_第4页
老人行为识别模式_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本科毕业设计(论文) 题目: 院 系: 专 业: 学 号: 姓 名: 指导教师: 2016年3月摘 要随着我国经济的快速发展,生活水平的提高,我国人口老龄化的趋势日益明显。老年人会随着年纪的变大,身体素质和生理机能会逐渐变弱,会逐渐患上各种疾病,行动不便。同时,由于现在基本上都是独生子女家庭,子女们因为工作繁忙,照顾老人时间和精力有限,所以社会上会出现空巢老人的现象。一旦老人独自在家发生意外,得不到及时的救助,后果将是不堪想象。鉴于上述的原因,老人的监护问题已经成为社会需要解决的问题之一。本论文提出了一种基于Android的软件平台老人行为识别系统,实现了对老人远程实时的健康监护。系统通过接收无线传感器节点采集到的老人的位置信息,加速度信息和体表温度信息,通过对数据的解析,给出老人健康质量报告。如果发生老人跌倒等突发事件,系统会自动的发送设置好的短信和邮件通知其紧急联系人。关键词:安卓系统;行为识别;监测;软件开发AbstractWith the rapid development of Chinas economy and the improvement of living standards, the trend of Chinas aging population is becoming more and more obvious. Older people will grow older, physical fitness and physiological functions will gradually become weak, will gradually develop a variety of diseases, action inconvenience. At the same time, because now basically one-child families, children because the job is busy, care for the elderly in the limited time and energy, so society will appear the phenomenon of the elderly empty nesters. Once the elderly alone in an accident, not timely relief, the consequences will be unimaginable. In view of the above reasons, the care of the elderly has become one of the problems to be solved.This paper presents a software platform for the elderly behavior recognition system based on Android, to realize the remote real-time health monitoring for the elderly. By receiving the position information, acceleration information and body surface temperature information of the old people collected by the wireless sensor nodes, the data are resolved through the analysis of the data, and the health quality of the elderly is reported. If the elderly fall and other emergencies occur, the system will automatically send a good set of text messages and e-mail notification of their emergency contacts.Key words: Android system; behavior recognition; monitoring; software development目 录1绪论11.1课题背景11.2研究目的11.3研究意义11.4研究现状12系统需求分析32.1老人行为识别系统的总体方案设计32.1.1系统功能需求分析32.1.2系统总体设计32.2老人行为识别模式系统硬件平台的选择42.2.1硬件平台的需求分析42.2.2 GPRS模块需求分析52.3Android系统63系统操作平台的环境73.1构建Android操作系统环境73.1.1下载和安装Android SDK73.1.2下载安装JDK73.1.3下载和安装Eclipse和ADT83.2硬件平台的搭建94系统软件的设计与实现104.1行为识别终端软件的总体架构104.2终端软件登录和界面设计的思路104.3监控终端软件设计使用的关键技术114.3.1 Android UI 技术114.3.2 Android Service 技术124.3.3 SQLite数据库144.3.4 Java Mail组件164.3.5 AChartEngine 图表组件174.4行为识别终端软件功能模块的主要业务流程及实现184.4.1用户的登录和用户的管理194.4.2数据监控和身体状况195系统测试215.1行为识别终端界面测试215.2数据监控21结论23致谢24参考文献251绪论1.1课题背景随着我国改革开放的深入,经济和文化的快速发展,给我国的人口结构带来了巨大的变化,同时由于受计划生育的影响,老年人口比例越来越大,尤其是大城市的老龄化趋势越来越明显,如何对这样的特殊老年群体照顾已经成为社会日益关注的问题。随着信息科学和传感器技术的进步,基于传感器的人体行为识别获得了极大的发展。其中基于可穿戴传感器的行为识别作为移动式计算的重要方面给各种上层应用提供了许多支持,例如在智能家居、老人或病人行为识别等领域使用可穿戴式传感器可以实时获得用户的活动情况,从而快速准确的识别出当前用户的行为活动。但是将传感器安装在用户身上进行长时间内的行为感知会给用户的正常生活带来很多不便,所以手机传感器作为采集数据的载体越来越受到研究者的关注。手机传感器的便携性和隐蔽性可以避免给用户带来不便,但是大量的研究仅仅是使用手机进行短时间的数据采集。因此,本文基于智能手机采集老人长时间的行为活动数据,对行为识别与分析的相关方法进行研究。通过传感器采集老人的行为信息,从而识别老人健康等问题。1.2研究目的围绕Andriod手机用户客户端数据采集展开,主要采用人体三维模型和相关分析并结合智能手机内置的三轴加速传感器采集日常活动数据,并以GUI形式在手机客户端展示。同时,完成数据存储到My Sql数据库中。完成老人行为识别模式的软件实现。1.3研究意义本系统软件可以对老人的生活信息和简单的生理信息进行实时的监测,通过对各个传感器节点釆集的各项参数进行系统的分析及信息的反馈。通过本软件的行为识别可以使老年人的健康问题得到他们的家属及紧急联系人的关注,就算在没有子女身边的情况下,老人身体出现了异常,也可以及时的通知其家属得到救治。因此,本系统软件对于老人的健康安全是有保障的。1.4研究现状随着无线射频技术和无线传感器的发展,科研水平的不断提高,在加上独居老人的趋势明显,推动了老人行为识别领域的快速发展。对于国产的还是借鉴国外,在国内组装的老人行为识别系统已经逐渐的进入了国内的各大医院了。其中清华大学的白静教授领导的科研小组在家庭护理,远程医疗等方面进行了深入的研究。他们科研小组设计的家庭贴心小护士系统是国内首创的远程行为识别系统。该系统是由家庭行为识别器和医院的总控制台组成的,其先进性是在于将智能的控制系统嵌入到病人的行为识别仪中,在进行远程行为识别中,该系统可以远程监测并记录病人的心电图和动态的血压,在家庭行为识别器的终端还可以对采集到的心电图数据进行实时的病类分析。如果病人的心电图发生了异常,该系统则可以自动通过电话线将病人的心电图传送给医院行为识别台,以便医生参考。除此之外,该科研小组还对基于因特网的虚拟的医疗数据采集器纳入了研究范围。浙江大学的科研人员提出了一种老人的跌倒检测和实时心率监测系统。该系统是利用了ZigBee物联网技术实现了老人多个生理信号的采集和上传,并利用无线通信系统中Win技术进行老人预警报警功能。其中老人跌倒检测利用了读取加速度传感器,与统计平均值也就是预警值相比较来进行比较检测。而实时的心率检测则是利用了双电极法,在系统的服务器上用小波变化对采集上来的心电信号进行分析和处理,最后采用预警值法进行校正。除了学校的科研机构,许多社会企业也参与了研究和设计。其中解放军总医院科研人员研究出了穿戴式多参数检测系统。该穿戴式系统监测的参数有心电信号、呼吸信号、体温信号等;该系统可以连续不间断的实时动态的获取人体的各种生命参数,并且可以准确的反应出人体的生理特征。当然欧洲国家在老人健康行为识别方面关注的比较早,因此,它们对于老人健康行为识别系统的研究技术也是优于我国的。世界人口老年化,是一个世界性的问题,全世界各个国家在这方面都投入了大量的时间,人力和物力。这其中,澳大利亚的New South Wales University科研人员则提出了和实现了不同种主体的健康智能的行为识别终端,其中多种主体的意思就是分布在智能系统中不同的网络结构中的每一个単元,各种不一样的单元实现的功能也是不同的。本智能系统主要相关的功能有信息的采集,信息的分析,处理和诊断。该系统中主体并不是独立存在于网络中,它们是依靠BAN (无线体域网),PAN (无线个域网),Internet(因特网)三种网络进行连接。这三种不同的网络中的BAN指的是设备之间通过蓝牙通信技术构建的无线传感器网络,在移动健康行为识别系统中的PAN网络主要是利用了 2G和3G的移动通讯技术,PAN网络主要是利用网关与因特网相连接。不管行为识别者处在因特网上的任何位置,都是可以通过移动终端检测出来。2系统需求分析2.1老人行为识别系统的总体方案设计2.1.1系统功能需求分析老人行为识别系统需要以下几种功能:(1)在线监测基本功能。在不影响老人生活的情况下,本系统必须实时地监测老人家庭的情况,老人的身体生理参数,老人加速度值和体表温度等参数,并且把这些老人参数实时的存入系统软件的数据库中。(2)预警值的设置和传出报警信息。本系统可以根据老人的实际情况及时地修改对应的预警值,当监测的老人参数超过相应的预警值得时候,可以及时地,可靠地通过短信和邮件通知其家属。(3)人性化的报警方式。将现代的通信技术融入独居老人行为识别系统中,在本系统运行之前可以预设老人紧急联系人的手机号码和邮箱。如果老人发生意外时可以通过邮箱和短信通知其紧急联系人,使老人的紧急联系人可以及时了解信息,对老人进行及时的救助,从而达到对独居老人的行为识别。(4)直观,形象地显示老人监测的参数。为了使老人的家属可以方便的,直观的了解老人的一些参数。本系统可以使用多种图形方式直观的显示行为识别老人的参数信息。(5)可扩展性强。由于用户需求的差异性和鉴于今后更多老人生理参数需要在监控中心处理的情况,必须保证该系统的扩展性强,在监控中心设计上注重釆用模块化的设计思想。2.1.2系统总体设计根据行为识别系统的需求分析,本论文提出的基于Android的独居老人健康行为识别系统可以分为无线传感器网络(ZigBee无线采集部分)和监控中心这两个部分,系统的总体框架如图2.1所示。整个系统框架分为两个部分:(1)无线传感器网络;(2)监控中心。无线传感器部分由采集独居老人室内基本信息和独居老人身体生理参数的ZigBee模块以及ZigBee协调器组成。本论文主要完成的是监控中心一独居老人健康行为识别系统软件设计,老人健康的行为识别的分析主要是通过串口接收协调器发过来的数据,然后把传过来的数据存入己经设计好的数据库中,在将数据经过行为识别中心分析后直观的显示在行为识别中心的界面上。系统把每一个传感器节点的数据与之前设置好的预警值比较,判断老人是否处于安全健康的状态,如果出现异常,则可以通过邮件和短信及时的发送给老人的紧急联系人,同时还可以经过长时间的对老人生理数据的监控简单的判断老人突发事件和老人睡眠后的睡眠质量。这样就很方便用户登陆到软件系统后即可查看老人实时的生理数据也可以查看老人身体状况报表了。图2-1系统的总体框架2.2老人行为识别模式系统硬件平台的选择2.2.1硬件平台的需求分析根据系统的功能需求分析,该老人行为识别系统的硬件需要考虑处理器的选型:1.应用类型。当前在嵌入式领域,常用的处理器的类型有:单片机,DSP,ARM等。因为这些处理器是针对不同领域而设计,所以它们各自所拥有的资源和体系结构都是有差别。单片机适用于低端市场,DSP适用于通信领域或音视频处理领域等需要对复杂算法进行处理的场合。ARM处理器是通用的处理器,经常用于多任务的处理,适用于工作复杂且工作量大的场合。2.处理器的性能指标。即使在同类的处理器当中,仍然还是有许多不同种类的处理器,它们有着不同的技术指标,不同的性能。我们需要在针对我们的需要在进行具体的选择。例如处理器的运行速度,功耗,成本等一系列的参数。3.其它因素。除了上述的原因之外,我们也必须考虑到处理器是否有快捷的开发环境,处理器的厂家是否可以提供全面的技术支持,是否可以方便的在网络上搜索到处理器相关的开发资料。当然我们也需要根据系统的功能需求,考虑到老人行为识别系统的硬件平台所需的外设:(1)串口。老人行为识别系统平台至少需要两个串口,一个串口需要与ZigBee协调器相连接,收集协调器发过来的节点信息,另一个串口需要GPRS模块连接,用AT指令控制模块收发短信。(2)支持SD卡。为了防止数据溢出,用户可以定时的将老人行为识别信息数据库放到外部存储器中。(3)支持操作系统。可以支持多任务同时进行。(4)有液晶显示屏。这样方便 发者方便的观察和核对(5)支持上网。可以通过网线或是Win,这样用户才可以通过对应的贱号登陆到老人行为识别系统软件查看老人的信息。系统硬件组成的框图如图2. 2所示。图2-2系统的硬件平台框图2.2.2 GPRS模块需求分析根据老人行为识别系统的功能需求分析,当老人遇到紧急问题后,该系统需要发送短信到指定的手机号上。我们需要从市面上众多GPRS模块选择一款,我们选择了U6300V这款无线通信模块。U630()V这款无线无线通信模块它支持HSPA/UMTS/GPRS/GSM等多种通信网络制式。U6300V无线通信模块的发送Text格式的SMS的步骤如下:(1)首先在App端输入AT+CMGF=l/r,返回0/r,这条命令是用來设置SMS格式。(2)App端输入AT+CSCS=GSM/r,返回0/r,这条命令是用来设置TE字符集为GSM。(3)App端输入AT+CSMP=17,167,0,241/r,返回0/r,这条命令设置文本格式参数。(4)APP端输入AT+CMGSr,这条命令为消息发送和写入命令,TEXT格式下参数为接收方的手机号码。(5)+CMGS: 7/r/nyO/r,APP端收到U6300V上报的消息,发送消息成功。当然GPRS还必须可以收发短信和在任何地点有信号可以连上网。2.3Android系统由于安卓操作的系统的开放性,开源性,完善和强大的开发工具的支持和用户的易用性这些因素的综合考虑,所以决定在终端采用安卓操作系统。Android已经成为了当今主流的手机操作系统。从国内环境来说,因为Android手机平台的开放性,开源性和它的免费性,所以很多的手机厂商非常的热衷于Android操作系统的手机。3系统操作平台的环境3.1构建Android操作系统环境3.1.1下载和安装Android SDK首先登陆Android的官方站点下载Android SDK, Android SDK下载包说明如表 3.1。表3. 1 Android SDK下载包说明目录结构或是文件说明Add-ons空目录保存Google插件工具Platforms空目录保存不同版本SDKToolsSDK工具SDK Setup.exe在线安装SDK的可执行文件SDK Readme.txt说明文件下载完成后,打开目录找到SDK Setup.exe可执行文件,双击执行文件该文件就可以了。3.1.2下载安装JDK在下载了 Android SDK之后,我们还需要下载安装Java的开发环境,这是因为Android SDK的应用层使用Java语言,所以需要Java开发环境。下面就简单的介绍一下JDK的下载和安装。(1)下载JDK。AndroidSDK需要JDK5以上的版本,我们只要在其官网上面JDK5以上的版本就可以了。(2)安装JDK。下载完成后就可以双击JDK的安装包的一个可执行文件。(3)配置Java环境变量。为了使用Java工具进行编译,运行,Java程序需要配置Java 路径 Path 和 classpath。(4)配置JavaHome。复制Java的安装路径,右击“我的电脑”“属性”一 “高级”一 “环境变量”中新建环境变量Javahome,变量值为Java安装路径。配置过程如图3.1.图 3-1 配置 java_home(5)配置Path。为了能够使用Java的编译,运行等命令工具,需要配置这些命令的Path,右击“我的电脑” 一 “属性” 一 “高级”一“环境变量”,在“系统环境变量”中编辑Path变量,添加Java的bin目录到其中。变量中间使用分号“;”分隔。配置过程如图3. 2所示。图3. 2配置Pat(6)配置classpath。为了能够成功运行Java类,需要配置Java的类路径classpath。“我的电脑”一“属性”一“高级”一“环境变量”,在“系统环境变量”中新建一个系统变量名称为“classpath”,变量值为半角句号”。3.1.3下载和安装Eclipse和ADTGoogle提供的Android的集成开发环境Eclipse的开发插件Android Development Tools (ADT),为了使用该插件,首先需要下载安装Eclipse。ADT插件要求Eclipse的版本是3.3以上,登录Eclipse的下载网站,下载后解压就可以直接使用Eclipse。Google公司提供了针对了 Eclipse的Android 发插件ADT。通过ADT可以进行集成开发,包括代码的自动生成,调试,编译,打包,拖拽式界面生成等功能。ADT的配置过程有两种:一种是通过Eclipse在线更新;另外一种是下载ADT插件包手动配置。3.2硬件平台的搭建在进行老人行为识别模式系统硬件设计时,我们需要考虑的是体积小,功耗低,安全可靠,方便系统升级。整个硬件设计可以分为:行为识别终端网关核心模块和外围接口模块。行为识别终端网关核心模块式是基于Samsung S3PV210芯片的LS-M1开发板,这块开发板上面则使用的是Android操作系统。外围接口模块则是以太网模块,GPRS模块和ZigBee协调器模块,外围模块主要的任务是完成独居老人信息的采集和无线传输。具体的系统硬件模块图如图3. 4所示。图3-4行为识别终端硬件体系结构图4系统软件的设计与实现4.1行为识别终端软件的总体架构老人行为识别模式系统软件采用N层软件构架设计。N层软件架构体系强调软件各层的分工,每层完成各自的职责的同时,层与层之间相互协作,实现整个体系的功能。由于软件架构的分层,程序模块相对独立,层与层之间低稱合,封装性高,层之间关系清晰,节点明确,需求变动时不相互影响,提高了软件的灵活性,降低了由于功能变动而带来的开发成本。本系统采用了经典的三层结构设计,分为用户界面层(User Interface Layer,简称 UI)、业务逻辑层(Business Logic Layer,简称 BLL) 数据访问层(Data Access Layer,简称DAL)。Ul主要负责数据的展示和接收用户的操作请求。BLL负责对用户操作请求进行逻辑计算,并在UI与DAL之间传递数据。DAL负责数据的读取和存储。在三层中要使用到所有数据结构均存放在实体库(Models Library)中去实现。详细的结构如下图4. 1所示:图4-1系统软件的结构图系统配置信息和从传感器采集到的数据均存放在系统软件已经设计好的嵌入式数据库SQLite中。4.2终端软件登录和界面设计的思路在设计老人行为识别系统软件时,考虑到众多Android设备有着不同的屏幕分辨率,如果在本软件没有实现用户界面层屏幕分辨率自适应,那么把本软件装载到其它Android设备上就会出现图片资源和像素的不匹配。针对出现的这种情况,在界面布局方面,我们可以根据设备的物理尺寸的大小准备5套布局,Layout:放一些通用的布局XML文件,比如界面顶部和底部的布局,不会随着屏幕大小变化。Layout-small;屏幕尺寸小于3.英寸左右的布局;Layout-normal:屏幕尺寸小于4. 5英寸左右;Layout-large: 4英寸一7英寸;Layout-xlarge; 7一10英寸之间。在图片资源方面,我们需要根据dpi值准备5套图片资源,drawable:主要放置xml配置文件或是对分辨率要求比较低的图片;drawable-ldpi:低分辨率的图片;drawable-mdpi;中等分辨率的图片;drawable-Mpi:高分辨率的图片;drawable-xhdpi:至少960dp*720dp。当行为识别终端的可以屏幕分辨率自适应后,我们就可以设计简洁,直观的软件界面,图4. 2就是软件登录和界面的展示图。图4-2软件启动和界面的展示图4.3监控终端软件设计使用的关键技术4.3.1 Android UI 技术在任何一个软件设计设计过程中,应用程序的好坏,主要是由3个元素决定的:界面,功能和性能。一个美观的界面,对用户的第一感觉是至关重要,这同时是本论文老人行为识别终端所必须的,可以让用户方便,直观的观察到老人的信息。Android中UI元素包括:Activity,View,View Group和布局。Activity代表一个屏幕,它不是View,但是能包含View,在Android中View就是其他语言中的“控件”或是“组件”。View有众多的子类,包括View Group,基础控件,高级控件和布局,控件类图如图4-3所示。图4-3控件类View是一类控件的总称,这些控件的结构比较简单,一般直接或是间接继承了Android.view.View类,而不是继承android.view.ViewGroup类或是布局类。基础控件主要包括:Button,Image Button, Toggle Button, Text View, Edit Text,Radio Button,Check Box等。android.view.View Group 类是 android.view.View 类的一个重要的子类。ViewGroup通常被叫做组件”,是高级控件和布局的父类。当然老人行为识别终端界面的编写除了使用各种类之外,也还是需要布局管理器让界面井井有条。布局是各个UI元素在手机屏幕上的位置关系。在Android中布局通常由以下几种布局管理器实现。(1)Frame Layout (框架布局):最简单的布局格式,也可以叫顿布局;(2)Linear Layout (线性布局):让所有子元素成为单一方向的布局,即子元素垂直或是水平排列;(3)Absolute Layout (绝对布局):让子元素指定准确的X/Y坐标值,并显示在屏幕上;(4)Relative Layout (相对布局):子元素的位置和其他元素的位置相关;(5)Table Layout (表格布局):将子元素的位置分配到行或是列中。4.3.2 Android Service 技术Android的Service (服务)是一种应用程序组件,能在后台运行,执行一些需要长时间执行的任务,服务被其他的程序组件启动后,即使用户切换到其他应用程序后依然能保持后台运行。同时Android Service与其他组件绑定后可以与之交互而实现进程间通讯。Service分为本地Service和远程Service:本地Service,是一种进程内的通信,远程Service,一般用于进程间通信,与调用组件不在一个应用中。每个Service都必须在Android Manifest xml文件中有相应的声明。Service可以通过Context。Start Service O和Context bind Service O在其他组件中启动。两种Service各自有不同的生命周期,但是都要继承Android.app.Service类。其中本地Service服务生命周期如图4-4,远程Service服务生命周期如图4-5所示。图4-4本地Service服务生命周期图4-5远程Service服务生命周期Android Service有两种基本类型:Started类型:如果一个应用程序组件(如一个activity)通过调用Start Service O来启动服务,则该服务就是被“Started”了。一旦被启动,服务就能在后台一直运行下去,即使启动它的组件已经被销毁了。通常,Started的服务执行单一的操作并且不会向调用者返回结果。如在独居老人监控系统中,数据采集服务即为“Started”服务。Bound类型:如果一个应用程序组件通过调用Bind Service O绑定到服务上,则该服务就是被“bound”了。bound服务提供了一个客户端/服务器接口,允许组件与服务进行交互、发送请求、获取结果,甚至可以利用进程间通信(IPC)跨进程执行这些操作。绑定服务的生存期和被绑定的应用程序组件一致。多个组件可以同时与一个服务绑定,所有的组件解除绑定后,服务即被销毁。4.3.3 SQLite数据库由于独居老人行为识别中心需要存储大量老人日常生活数据,所以数据库对于行为识别终端是非常重要的。SQlite是一个开源的嵌入式关系数据库,在2000年由希普开发。SQlite具有可移植性号,易使用,高效,可靠。与Oracle,SQL Service等企业级数据库不同的是,SQlite嵌入到使用它的应用程序中,它们共用相同的进程空间,而不是两个不同的进程,而Oracle,SQL Service等企业级数据库与应用程序是在不同的进程中的。虽然SQlite可以忽略数据类型,但通常会在Create Table语句中指定数据类型,因为数据类型可以告知这个字段的含义,便于老人行为识别代码的阅读和理解,SQlite支持的常见的数据类型有:(1)INTEGER,个有符号的整数类型;(2)REAL,浮点类型;(3)TEXT,字符串类型采用编码的UTF-8,UTF-16;(4)BLOB,大二进制对象类型,能够存放任何二进制数据;在SQlite中没有Boolean类型,可以釆用整数0和1代替。在SQlite中也没有日期和时间类型,而是存储在TEXT,REAL和INTEGER类型中的。为了实现SQlite数据的访问,可以继承 android.database.sqlite.SQlite Open Helper 类,SQLite Open Helper是一个抽象类,必须使用下面两个方法:1.void on Create(SQLite Database db):2.void on Upgrade(SQLite Database db,int old Version).SQlite数据库常用到的类有4种:(1)SQLite Open Helper,是负责创建与打开数据库和版本管理的助手类。它是一个抽象类,它的子类必须实现这两个方法:public void on Create(SQLite Database db)和public void on Upgrade ( SQLite Database db,int old Version,int new Version)。(2)SQLite DataBase类管理数据库本体。(3)SQLite Cursor表示当检索数据库时,指示到查询结果的初始位置;(4)Content Values用来存储和保持表中的某行的相关数据,提供添加(Insert )、更新(Update)和删除(Delete)功能。本论文中,涉及到的数据结构的操作示意图如图4.6所示。图4-6数据结构操作图4.3.4 Java Mail组件在老人行为识别终端中,如果老人生活环境或是生理参数发生异常,超过设定的预警值,本系统则可以通过邮件的方式通知其紧急联系人。在本系统邮件发送中引用了Java Mail for Android 组件。Java Mail for Android是Java Mail组件的Android实现,包含Mail应用开发需要的所有接口。该组件的体系结构如图4.7所示:图4-7Java Mail for Android 体系结构在使用Java Mail发送一封邮件的过程如下图4. 8:1.创建包含邮件服务器的网络连接信息的Session对象2.创建代表邮件内容的Message对象3.创建Transport对象、连接邮件服务器、发送Message、关闭连接图4-8 Java Mail发送邮件过程在利用Java Mail发送邮件,常用的一些邮件协议有:(1)SMTP:简单邮件传输协议。我们在使用Java Mail组件发送邮件是与SMTP服务器通信,它会将消息交给接收方的SMTP服务器,用户可以由POP或是IMAP协议获取消息。(2)P0P3:邮局协议。是用于接收邮件的标准协议。(3)IMAP:互联网消息协议。是更为高级别的用于接收消息的协议,是POP3的替代协议,在使用IMAP协议时,需要邮件服务器支持这个协议。4.3.5 AChartEngine 图表组件为了让用户更加直观,形象地查看行为识别终端的数据,特地的引入了 AchartEngine图标组件。AChart引擎是Google开发的一套专门为Android应用设计的图表库。该图表库支持众多的图表类型,如柱状图、区域图、饼状图、散列图、时间图、曲线图、泡式图、环形图等。AChart支持在一个视图中显示多个序列的数据,可以设定显示的数据范围,支持水平或垂直方式展示图表,支持触摸屏操作,对图形进行放大和缩小显示,方便操作和查看数据,风格丰富,展示效果非常好。众多应用的报表和数据分析功能都使用该图表引擎实现。将AChartEngine组件添加到Android项目中步骤如图:(1)先将AChartEngine-l.O.O.jar包文件拷贝到项目代码的libs文件夹中(2)在Eclipse开发工具中打开项目属性窗体,选择JavaBuild Path项,在Tab页中切换到Libraries页面。(3)点击AddJARs按钮,选择项目的libs文件夹下的achartengine-l.O.Ojar文件,如图4-9所示:图4-9添加JAR包点击OK按钮,AChartEngine组件库被添加到项目文件中。在我们使用AChartEngine组件时,主要是为了让采集到的数据更好的显示在终端界面上,所以最重要的两个概念是数据设置器和图形描述器,它们分别是对图表进行数据值传入和修改图表外观。4.4行为识别终端软件功能模块的主要业务流程及实现老人行为识别终端界面主要包括邮箱设置,短信设置,用户管理,每日事件,数据监控,预警值的设置,身体状况。短信设置,当传感器中的数据达到或是超过预警值后,监控终端中的短信模块会向该模块中已经设置好的三个手机号码发送报警短信。用户管理,系统管理员会对访问系统的用户进行管理,具有添加,删除,授权等,系统管理员可以授权普通的用户用自己的账户登录该系统中可以查看的功能。每日事件,为了管理和维护行为识别终端系统,每R事件这个功能会记录下独居老人行为识别系统中所有的操作,无论是成功的操作还是失败的操作。这样,管理员就可以每天随时查看,了解和掌握系统的运行情况,进而方便管理员对该系统进行有效的维护。数据监控,从ZigBee协调器接收来的数据通过串口传送到监控终端,然后经过行为识别终端数据解析,分析后,直观,形象的显示出来,方便用户可以一目了然的了解老人的一切情况。预警值设置,为了保证独居老人在家的安全,需要给每一个监控数据设定一个安全预警值,当传感器传上来的数据超过这个预警值后,就间接说明了在家的老人出现了异常,就需要及时的通知其紧急联系人。邮箱设置,传感器收集上来数据达到或是超过预警值后,系统会自动地向该列表中的邮箱发送紧急邮件,通知老人的紧急联系人。身体状况,通过采集到的老人数据跟设定好的阈值比较后,可以简单的判断老人突发事件(老人跌倒和体温正常)和老人入睡后的睡眠质量。4.4.1用户的登录和用户的管理监控终端软件首先会让用户注册用户名和输入密码,把用户的个人信息存储到相应的数据库中。然后用户可以使用注册好的用户名和密码登录行为识别终端软件,这样用户在成功登录后就可以查看老人的一切信息。监控终端软件在验证用户名和密码的正确后,会在系统的后台生成相应的功能列表,把数据监控中老人的数据显示在屏幕上。具体软件加载功能列表如图4-13所示图4-13加载功能界面行为识别终端界面上用户管理这项功能是管理员管理普通用户可以在主功能界面中可以查看和修改的功能。根据用户的不同需求,可以让用户用自己的账号登陆到软件系统后,在界面上显示用户可以操作的功能。管理员登录系统后,可以为系统添加新的用户,并授予对应的权限。也可停用原有的用户,使其无法登录系统。用户在注册后,行为识别终端系统会在监控软件中生成用户信息表用来保存登录系统的用户名和账号。4.4.2数据监控和身体状况数据监控线程在一直后台运行,釆用Android Service技术来实现。数据釆集服务定期从ZigBee协调器采集各类传感器的数据,并存入SQLite数据库,同时定期清除历史数据。为了直观展示各类采集到的数据,采用了 Android平台上应用最为广泛的AChartEngine图表组件来展示数据。通过本组件的使用可以使从体表温度传感器,加速传感器采集的数据,经过简单的处理后,形象的展示给用户,用户登录到软件系统后,可以通过查看展示的数据,了解老人的一切生活信息。在数据监控终端显示中,我们使用到了 Tabhost,也可以称为TAB页。Tabhost一般分为两部分,一部分放数据内容,另外一部分则是放选项卡。Activity必须继承TabActivity,通过TabActivity类GetTabHost方法获得TabHost对象。总的来说,一般分为下面几步:(1)声明TabHost对象;(2)获取TabHost对象;(3)给TabHost添加标签,并设置.标签的图标和内容;在数据监控中,在终端软件中capture ()函数中先判断串口是否打开,如果串口没有打开,则会提示出口没有打 。如果串口打开,就会每隔2S主动釆集一次串口数据,解析串口数据,然后,在把数据送到Data_G和Data_Tem中在终端中实时的显示出来。数据监控流程如图4-19所示。图4-19数据监控身体状况在终端软件中使用的是SMusEvent这个函数,在这个函数中,我们会在连续不断的釆集到老人生理数据中,不断的判断老人加速度值和体表温度值是否超过设定的阈值。如果加速值突然升高,超过了阈值,则老人的突发事件可能是跌倒,同时我们也会记录老人体表温度超过设定阈值的次数。当然在老人熟睡的情况下,我们会结合加速度值和体表温度值,如果采集到数据有20个超过阈值,那么我们可以简单的判断老人睡眠质量不是很好。这些信息都是会直接在身体状况这个功能按钮中显示出来,方便用户查看。5系统测试在完成了老人行为识别终端的软硬件设计之后,我们就可以开始对行为识别终端系统进行一系列的测试了。测试内容是按照软件的各个业务流程进行的,分别是本地图形终端的控制测试和数据监控功能的测试。5.1行为识别终端界面测试行为识别终端软件界面测试主要是为了测试系统功能是否完善,软件界面是否友好,软件系统是否可以不间断的稳定工作。我们对行为识别终端系统的界面进行了精心的设计,不管在图标认真的挑选,还是在界面的布局方面,都是经过深思熟虑,就是为了确保界面的美观和简洁。在本次测试时,我们分别测试了系统的登陆模块,邮箱设置,短信设置,每日事件,用户管理,阈值设置,数据监控,身体状况等功能,经过测试,我们发现系统的各个功能模块都是可以正常的运行,系统能够按照我们预定的设置完成各项功能,不过经过测试,我们发现行为识别系统的稳定性还是有待进一步的提高。用户管理功能主要分为管理员用户和普通用户。管理员可以在用户管理界面中设置普通用户登录进来后,可以查看和修改的功能界面,有些功能按钮的功能普通用户是不能修改的。在短信设置这个功能中,系统会使用固定好的GSM卡向设定好的用户手机号码中发送报警信息。5.2数据监控独居老人的行为识别系统软件主要完成的功能就是对传感器采集上来的数据进行数据解析,分析和显示,然后图形和报表的形式展示给用户。本系统主要展示的是体表温度值,加速度值,通过长时间的采集,监测,可以得出老人简单的判断老人的突发事件(是否跌倒和体表温度是否正常)和老人在晚上熟睡阶段的睡眠质量。数据监控中的加速度值得釆集。通过串口接到协调器上,实时的把老人的加速度值采集到系统软件中。在系统软件这端,通过对数据的解析和应用AcharEngine这个组件,可以实时的把老人数据显示出来。并且通过设定上限和下限这个两个标准,更加可以形象的观察到老人的加速度是否处于正常阶段。数据监控中的体表温度值得釆集。通过串口接到协调器上,实时的把老人的体表温度值采集到系统软件中。在系统软件这端,通过对数据的解析和应用Acharengine这个组件,可以实时的把老人数据显示出来。并且通过设定上限和下限这个两个标准,更加可以形象的观察到老人的体表温度是否处于正常阶身体状况。通过这个功能按钮,可以通过采集到的数据,进行加速度和体表温度的联

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论