基于Android开发的医疗系统项目开发实战案例

项目说明
一、项目主要研究内容及成果摘要
基于Android的移动医疗终端系统由Android手机端应用软件和硬件测量设备构成,主要面向居家养老的老年群体心脑血管疾病、糖尿病监测和健康护理方面。使用本系统可以足不出户,居家方便快速检测血压、血糖指标,自助进行心脏听诊。一方面这些测量所得的健康数据可以被推送到指定的远程医疗机构或社区卫生服务站,医生专家们依此对老年人建立长久的电子医疗档案,以便远程分析监控或就医治疗;另一方面,终端也可根据测量数据智能分析辅助诊断,如血压异常,心脏听诊音异常等,并将这些数据绘制成趋势图表统计近期健康状况;特别的终端还加入亲情关怀功能,将测量的健康数据以短信的形式定时发送到指定的家属手机上,便于监护人及时监测关注老人们的健康状况。考虑到老年群体们的使用习惯,系统在界面上进行了特别设计,如字体较大,操作简单,提供大量的使用帮助。系统主要功能包括血压检测、血糖检测、心脏听诊录音、相关健康信息收集等模块,主要使用的技术有AndroidUI设计、SQLite轻量级数据库存储健康信息、Android蓝牙通信协议及数据传输、图形绘制、摄像头采集图像加工和存储、声音媒体信息处理、软件工程管理等技术。
基于Android移动医疗终端系统分析设计说明

一、开发背景
(一)、当今社会移动医疗的背景
“TD-LTE”高清、移动、无线的技术优势,可以帮助救护车上的医护人员,通过移动高清视频获得清晰、快速的远程指导,不错过治疗的 “黄金半小时”;社区医生带上移动医疗诊断设备,可以随时请大医院、大医生进行远程会诊;社区医疗信息平台,可以用短信、彩信、WAP、呼叫中心等方式向公众提供掌上医讯、预约挂号等服务……

移动医疗当今正成为整个移动通信产业的热点,MobileHealth (移动医疗)在刚刚结束的2011世界移动通信大会上,吸引了诸多与会者的眼球,甚至包括了知名的比尔及梅林达·盖茨基金会,包括NTT DoCoMo、 AT&T以及沃达丰等全球主流移动运营商,也纷纷进军这一领域。

移动医疗,改变了过去人们只能前往医院“看病”的传统生活方式。无论在家里还是在路上,人们都能够随时听取医生的建议,或者是获得各种与健康相关的资讯。医疗服务,因为移动通信技术的加入,不仅将节省之前大量用于挂号、排队等候乃至搭乘交通工具前往的时间和成本,而且会更高效地引导人们养成良好的生活习惯,变治病为防病。

“三分病、七分养”,远程医疗更让长期卧病在家的人们,足不出户就能得到大医院、大医生的治疗。去年,AT&T与专注心律失常监测服务的eCardio Diagnoistics公司合作,对其接近实时的心脏监测设备提供无线连接。这一服务使得心脏病患者得以在家中执行恢复计划。此外,AT&T还与Vitality公司合作,将其能够提供用药提醒和监督用药剂量服务的智能瓶盖产品“GlowCaps”连接到无线网络上,从而将病人的服药情况及时报告给其他的家庭成员或者医生,以尽可能减少病人漏服的情况而确保疗效。

移动医疗有助改善看病难题,新医改启动以来,中国医疗卫生行业信息化的需求和发展潜力巨大。加快推进医疗卫生信息化业务,深耕医疗卫生行业成为行业焦点。低成本的手机及全球性移动通信网络的普及,明显为这种医疗概念提供了可行的技术基础。在过去几十年时间里,移动通信技术始终坚持以下发展方向:小型化、速度更快及成本更低。这些特点在软硬件的应用、网络访问、标准及服务等诸多方面都有所体现,而且未来也将继续沿着这个方向发展。现在,大量的服务都可以通过更加统一、快速且便宜的带宽接入实现;网络也具有很强的能力,覆盖范围更宽。这些都对推进mHealth应用的持续发展并超越简单的单向数据服务模式提供了条件。因为,我们可以得出移动医疗对于移动运营商、医疗设备制造商、芯片企业、应用开发等通信产业链各个环节,是一座“金矿”、一项潜力极大的“朝阳产业”。

(二)、移动医疗系统的参考模型

1、现代医疗系统主要包括终端软件、医院后台业务接入支撑系统。

2、客户端应用软件功能主要包括:系统会员登陆、用户档案录入和上传、服务端所需数据的采集整理和上传、预约挂号、在线咨询、健康百科等。

3、医院后台业务接入子系统是客户端软件的业务服务接入入口系统,是整个系统的“神精中枢”,其功能主要包括:业务资源数据信息缓存转发、用户管理、医疗专家诊断并给出建议、在线健康咨询、网络管理等。

4、数据库系统存储系统用到的数据,主要包括:应用客户端同步的数据、统计数据、用户相关的运营数据等。

二、系统分析
(一)、需求分析
老年人一直是我们关注的一个弱势群体,随着老龄化人口的日益增长,心脏病、高血压、糖尿病的发病率在老龄化人口中形成了一个固定的模式。更多的子女不能完全留在老人身边对老人身体健康进行实时监护,而我们知道,智能手机基本已经普及了各类人群。目前,市场上也有很多的医疗器械拥有自己的软件及平台,它们的弊端在于功能单一,操作对老年人来说也比较困难,作为子女也不能掌控到老人的实时健康信息。无论是心脏病还是高血压都是一把锋利的刀刃,发病就在一瞬间。那么,我们是不是应该拥有一款基于Android系统能够结合各种医疗器械对老人健康进行实时监听的软件呢?答案是肯定的,老人需要一款能够自主操作,功能齐全的健康手机软件,来给子女反馈自己的健康状态。所以,该需求是直观的,并且是可行的。

(二)、可行性分析
基本要求:系统的主要功能是对老年人实现血压、血糖测量、心脏听诊和健康信息推送;
项目条件和限制:本项目是XX大学学生创新实验项目,最长需要在一年之内完成,提交一份完整Android医疗系统客户端应用程序和一份项目详细说明文档;
项目资费:学校提供资费2500左右用于硬件设备的采购、软件开发、技术资料论文打印、交通补贴等;
团队组织与人员分工:项目开发团队由一名指导老师和多名学生开发人员组成。本项目由一名指导老师进行指导,两名学生具体实施;
该项目实施人员所在的开发团队拥有多类技术开发人员,后期可对该项目进行延伸。
三、系统设计
(一)、系统实现目标
根据前面所做的系统分析,可以得出,该系统在实施后,应达到以下基本目标:
界面设计友好、美观,方便用户操作;
数据存储安全可靠;
实现对用户血压、血糖、心脏的实时测量,诊断并推送其结论;
引导用户阅读医疗保健常识;
后期易维护、易扩展,操作简单。
(二)、系统功能基本结构

(三)、程序基本流程图
当用户进入欢迎界面后,直接自动跳转到登陆界面,用户第一次使用必须进行新用户注册,填写基本信息后可以通过用户名和密码进行登陆,如果用户名和密码正确,进入主功能界面,若用户名和密码不正确,则进行提示。进入主功能界面后可以对功能进行选择,如:档案、血压、血糖、听诊、帮助。子功能选项卡包括:基本信息、健康信息、电子病历;血压测量、结果诊断、历史血压;血糖测试、结果诊断、历史血糖;心脏听诊、心跳录音、操作说明;使用设备、消息推送、关于软件(版本升级);退出系统。当用户使用完相应的功能后可以点击退出系统按钮进行退出。

(四)、系统运行环境
操作系统:Windows 7 Ultimate SP1;
Java开发包:JDK 1.7以上;
Android开发包:Android SDK Tools 22.0.5、 Platform-Tools 18.0.1、Build-Tools 18.0.1;
IDE工具包:Eclipse Java Development Tools 3.8;
数据库:SQLite 3、PowerDesigner;
其它工具:Mindjet、PhotoShop、visio 2003。
四、数据库设计
(一)数据库概要设计

(二)、数据表
1、表说明:

表1:用户数据表

ID, 用户名UserName, 用户密码Password, 姓名Name, 性别Sex, 年龄Age, 电话号码PhoneNum;

表2:用户健康信息表

ID, 身高Height, 体重Weight, 是否患家族病boolean, 是否患心脏病boolean, 是否患冠心病boolean;

表3:测量血压表

ID, 测量日期Date, 收缩压HighPressure, 舒张压LowPressure, 心率Rate, 用户名UserName;

表4:测量血糖表

ID, 测量日期Date, 血浆血糖, 毛细血管血糖, 用户名UserName;

表5:心脏听诊表

ID, 测量日期Date, 心脏录音文件名VoiceName, 用户名UserName;

表6:系统帮助表

ID, 血压计使用帮助, 血糖仪使用帮助, 听诊器使用帮助, 亲情号码, 关于开发, 意见反馈;

2、表操作:

操作1:注册用户信息

Insert into values (username,password,name,sex,age,phonenum);

操作2:用户登陆

Select (username,password) from ‘用户数据表’;

操作3:插入和查询用户健康信息

Insert into values (‘身高’, ‘体重’, ‘是否患家族病’, ‘是否患心脏’, ‘病是否患冠心病’);

Select * from ‘用户健康信息表’;

操作4:插入和查询血压测量数据

Insert into values(‘收缩压’, ‘舒张压’, ‘心率’) ;

Select (‘测量日期’ ‘收缩压’, ‘舒张压’, ‘心率’) from ‘测量血压表’;

操作5:插入和查询血糖测量数据

Insert into values(‘血浆血糖’, ‘毛细血管血糖’) ;

Select (‘测量日期’ ‘收缩压’, ‘舒张压’, ‘心率’) from ‘测量血糖表’;

操作6:插入和查询心脏听诊测量数据

Insert into values(‘测量日期’, ‘心脏录音文件名’ );

Select (‘测量日期’, ’心脏录音文件名’,);

操作7:插入系统帮助数据

Insert into values(‘血压计使用帮助’, ‘血糖仪使用帮助’, ‘听诊器使用帮助’);

Insert into values(‘亲情号码’);

Insert into values(‘关于开发’, ‘意见反馈’);

Select (‘血压计使用帮助’, ‘血糖仪使用帮助’, ‘听诊器使用帮助’) from ‘系统帮助表’;

Select (‘亲情号码’) from ‘系统帮助表’;

Select (‘关于开发’, ‘意见反馈’) from ‘系统帮助表’;

五、登陆与注册模块设计
(一)、注册新用户
判断用户名是否占用,密码6-16位,分合格、安全、复杂四个等级提醒用户,判断用户输入的资料是否完整与合法,用户基本资料包括真实姓名、性别、年龄、联系方式、形象照。注册成功后添加注册日志。

(二)、会员登陆
判断输入的用户名和密码是否正确、利用验证码来防止用户非法操作,登陆成功后添加登录日志。

(三)、算法流程

(四)、界面展示

六、用户档案管理模块设计
(一)、完善用户健康资料
注册时填写的资料做为用户基本身份信息,在此基础上填写健康档案,各项生理信息包括:身高、体重、有无家庭病史,有选择填写,有无传染病,有选择填写,有无过敏史,有选择填写。

(二)、修改资料
除用户名外,其它所有资料均可修改。

(三)、病历拍照录入
病历作为用户的又一项重要的健康档案,在咨询医师或就医诊断时起到重要作用,包括近期在医院或诊所就医时由医师开据的病情描述、意见、处方等,用户在该页可通过摄像头将这些相关的病历拍成照片保存,代替手工输入大量信息、简化操作。

(四)、算法流程

(五)、界面展示

七、血压测量模块设计
(一)、血压测量装置及原理
血压的测量主设备使用用现代医疗行业使用较广泛的腕式电子血压计,代替传统的水银柱血压计,该仪器是一种智能的电子医疗仪器,主要由伺服加压气泵、电子控制排气阀、气压压力传感器,显示屏、内置无线通讯模块等功能模块构成。具有简单、迅速、准确等优点。测量时,用户将该设备正确佩戴于手腕处,启动测量,设备将全自动充放气测量高压/低压/心率,取得的数据通过内置的无线通讯模块与Android的终端的蓝牙模块配对实现上传。

(二)、文本动态显示操作提示
血压值对于高血压的治疗有着非常重要的指导意义。血压计是高血压患者自我测量血压值的工具,帮助患者及时了解自己的血压情况,以便更好的控制血压。但是血压计作为精确的医疗测试设备,其操作要求准确严谨、按照一定的先后顺序操作,如果技术不到位、操作不当,很容易使测得的血压产生误差。鉴于这些问题,在此应当设置一个文本,判断用户的操作是否准确、成功并动态响应、提示下一步应该如何操作,提示内容如下:仪器的清洁与保养、电子血压计同Android终端的配对操作、测量前的运动准备事宜和身体状态要求、血压计的佩戴位置、测量时间、测量完毕操作。

(三)、血压正常值参考范围
理想血压:收缩压<120mmHg和舒张压<80mmHg。
正常血压:收缩压应<130mmHg,舒张压<85mmHg。
血压正常高限或高血压前期:收缩压在130~139mmHg和/或舒张压在85~89mmHg。
高血压:收缩压≥140mmHg和(或)舒张压≥90mmHg。
低血压:收缩压≤90mmHg和(或)舒张压≤60mmHg。
临界高血压:收缩压在140~160mmHg(18.6~21.3kPa),舒张压在90~95mmHg(12.0~12.6kPa)。
(四)、算法流程

(五)、蓝牙实现机制

(六)、界面展示

八、血糖测量模块设计
(一)、血糖测量装置及原理
血糖的采集主设备使用用现代较流行的电子血糖仪,该仪器是一种智能的电子医疗仪器,主要包括血糖仪、试纸和针头、内置蓝牙通讯模块,针头用于刺破无名指采血,试纸用于吸入样血,接入到血糖仪中,血糖仪通过测试试纸得出血糖指数。仪器测量准确、稳定、操作简单、微痛、自动退片、避免感染。测量取得的数据通过内置的无线蓝牙模块与Android的终端的蓝牙模块配对实现上传。

(二)、文本动态显示操作提示
血糖仪作为精确的医疗测试设备,其操作要求准确严谨、按照一定的顺序组装仪器、按照系统提示一步步操作,保证测量数据的准确有效。在此应当设置一个文本,判断用户的操作是否成功并动态的提示下一步应该如何操作,提示内容如下:仪器的清洁与保养、电子血糖仪同Android终端的配对操作、采血前的运动准备事宜和身体状态要求、针头采集血样的位置、采血量、针头与试纸的结合、试纸血样在仪器上的测量操作、测量完毕操作。

(三)、血糖正常值参照说明
血糖的正常值,对于治疗疾病和观察疾病都有着指导意义。因为我们只有知道了具体的数值,才能根据具体值去判断疾病,才能准确的掌握疾病的动向。下面做详细说明:

①:一般空腹全血血糖为3.9~6.1毫摩尔/升(70~110毫克/分升),血浆血糖为3.9~6.9毫摩尔/升(70~125毫克/分升)。

②:空腹全血血糖≥6.7毫摩尔/升(120毫克/分升)、血浆血糖≥7.8毫摩尔/升(140毫克/分升),2次重复测定可诊断为糖尿病。

③:当空腹全血血糖在5.6毫摩尔/升(100毫克/分升)以上,血浆血糖在6.4毫摩尔/升(115毫克/分升)以上,应做糖耐量试验。

④当空腹全血血糖超过11.1毫摩尔/升(200毫克/分升)时,表示胰岛素分泌极少或缺乏。因此,空腹血糖显著增高时,不必进行其它检查,即可诊断为糖尿病。

⑤糖尿病患者的空腹血糖参考值:轻度糖尿病:7.08.4mmol/L,中度糖尿病:8.411.1mmol/L,重度糖尿病:大于11.1mmol/L。

⑥餐后血糖正常值:餐后1小时:血糖6.7-9.4毫摩/升,最多也不超过11.1mmol/L(200mg/dl);餐后2小时:血糖≤7.8毫摩/升;餐后3小时:第三小时后恢复正常,各次尿糖均为阴性;

⑦孕妇血糖正常值:孕妇空腹不超过5.1mmol/L;孕妇餐后1小时:餐后1小时血糖值一般用于检测孕妇糖尿病检测中,权威数据表明孕妇餐后1小时不得超过10.0mmol/L才是血糖的正常水平;孕妇餐后2小时:餐后正常血糖值一般规定不得超过11.1mmol/L,而孕妇餐后2小时正常血糖值规定不得超过8.5mmol/L。

(四)、算法流程

(五)、界面展示

九、心脏听诊模块设计
(一)、文本动态显示操作提示
使用听诊器听心音,对于普通用户是一项复杂的操作,应当设置一个文本,判断用户的操作是否成功并动态的提示下一步应该如何操作,提示内容如下:拾音头的放置位置(左右心房、左右心室)、听音时间。

(二)、心音实时存储
听诊器所采集到的心音通过录音到本地。

(三)、声波模拟
将听诊器传入的声音进行动态波形图模拟。

(四)、算法流程

(五)、界面展示

十、系统帮助与支持模块设计
(一)、设备使用
血压计、血糖仪、听诊器等器械系统基本操作。

(二)、发送健康信息到亲情号码
点击发送按钮将本次测量相关数据以短信形式发送至亲情号码。

(三)、关于软件及系统升级
(四)、算法设计

(五)、界面展示

参考文献

  1. 《疯狂Android讲义》李刚

  2. 《蓝牙通信原理与开发应用》

  3. 《Android最新界面设计大全》

  4. 《软件项目工程管理》

  5. 《数据库系统概论 第四版》王珊、萨师煊

  6. 《面向对象的系统分析 第2版》 邵维忠、杨芙清

  7. 《计算机网络 第5版》谢希仁

  8. 《算法分析与设计 第2版》王小东

  9. 《Java程序设计实用教程 第3版》 叶核亚、陈道蓄

你可能感兴趣的:(android,android)