基于Android和WIFI的无线体征信息监测系统
扫描二维码
随时随地手机看文章
摘要:介绍一款采用无线WIFI传输的便携式体征信息监测系统。该系统利用STC89S52单片机及DS18B20温度传感器、HK2000B型压电式脉搏传感器等模块采集生理体征信息,通过HLK—WIFIM03进行无线传输,结合用户Android设备终端进行数据显示及反馈。采用人机友好交互界面进行体征信息管理,可实现远程体征信息监测、分析、警报等功能,具有低功耗、使用方便、操作简单等特点,应用前景广阔。
关键词:体征参数;WIFI;Android;监测系统
随着时代的发展,人们开始越发地关注自身和家人的健康保健问题,然而目前市场上已有的针对个别生命体征的监测仪器,由于其普遍操作繁琐,专业性过强,信息显示单一及针对性不强等特点,始终无法在市场中得到推广。在此介绍一款基于智能系统,简约便利,具有低功耗、使用方便、操作简单等特点的生命体征监测系统。
此款监测系统在集成实时监测体温脉搏等多项生命体征的同时,结合当下快速普及的Android智能系统,将最大化减少使用者的操作过程。用户仅需通过简单设置便可通过智能软件在随身设备上直观地实现对多项生命体征信息的实时动态,抑或间隔性监测,又可针对设定值对超标体征进行报警。同时,智能终端软件还可针对数据进行优化整理,建立个人体征信息数据库,针对个体情况作出分析,对个人健康提出合理化建议。
1 总体结构与工作原理
系统基于安全、可靠,使用方便、经济等原则,采用模块化设计思想。采集部分基于STC89S52单片机为核心,运用温度传感器DS18B2 0、HK2000B型压电式脉搏传感器等模块采集生理体征信息,经过滤波放大,数字化处理后由HLKWIFIM03模块通过无线传输至服务器,而后推送至用户终端进行显示。系统总体原理框图如图1所示。
2 系统设计
2.1 硬件电路设计
2.1.1 脉搏检测模块设计
心室周期性的收缩和舒张导致主动脉的收缩和舒张,使血流压力以波的形式从主动脉根部开始沿着整个动脉系统传播,这种波称为脉搏波。脉搏波所呈现出的形态、强度、速率和节律等方面的综合信息,很大程度上反映出入体心血管系统中许多生理病理的血流特征。
考虑到产品价格和所需精度的要求,本模块选择了合肥华科电子技术研究所研制开发的基于聚偏氟乙烯压电膜的HK-2000B型集成化脉搏传感器,它采用高度集成化工艺将力敏元件(PVDF压电膜)、灵敏度温度补偿元件、感温元件、信号调理电路集成在传感器内。压电式原理采集信号,模拟信号输出,输出完整的脉搏波电压信号,该产品主要应用于无创心血管功能检测、妊高征检测、中医脉象诊断等。脉搏采集部分主要构成如图2所示。
脉搏传感器输出的模拟信号电压范围是-0.1~0.6V,为消除负号,满足后级单端输入A/D转换器的需要,设计了电压抬升电路如图3所示。
经传感器输出的脉搏信号频率很低,极容易引入干扰,这些干扰有来自50 Hz的工频干扰,有来自肌体抖动、精神紧张带来的假象信号等。由于人的脉搏频率在0.1~70 Hz之间,为了不把有效的信号过滤掉,将低通滤波器的截止频率设为100 Hz,滤除系统的干扰,包括电压抬升引入的干扰以及工频干扰等,并把信号传输到A/D转换器中为下一步的模数转换做准备。
MAX187是12位逐次逼近式串行A/D转换芯片,转换速度快,耗电量少。与单片机连接时采用3线接口的数据串行方式,MAX187与STC89S52单片机的接口电路如图4所示。
STC89S52的P3.0、P3.1、P3.2脚分别与MAX187的SCLK、CS、DOUT端连接,通过控制MAX187的串口时序,完成A/D连续转换的读写操作。电源需要进行去耦合处理,典型接法是用一个4.7μF电容和一个0.1μF电容并联。当使用内部4.096 V参考电压方式时,4脚接一个4.7μF的退耦电容。此时输入模拟信号的电压范围为0~4.096 V,如果模拟输入电压不在这个范围要外加电路进行电压范围的变换。
2.1.2 体温检测模块设计
体温模块选用DALLAS公司生产的单总线式数字温度传感器DS18B20,它体积小,便于贴身式检测,输出为数字量,使用方便。测量温度范围为-55~+125℃。可用程序设定为9~12位的分辨率。当分辨率设置为12位时,转换精度为±0.062 5℃。与单片机的连接电路如图5所示。
DS18B20的内部存储器分为两部分,一部分是包含8个连续字节的高速暂存RAM。温度信息存放在前2个字节,其中温度的低八位存放在第1个字节,高八位存放在第2个字节。TH、TL的易失性拷贝分别存放在第3、4个字节,结构寄存器的易失性拷贝存放在第5个字节,这3个字节的内容在每一次上电复位时都会被刷新。第6、7、8个字节用于内部计算。第9个字节是冗余检验字节。另一部分是存放高温度和低温度触发器TH、TL以及结构寄存器的非易失性的、电可擦除的E2ROM。DS18B20可以通过程序设置最高和最低报警温度TH和耵TL,实现对温度的越线报警控制。
每次对DS18B20进行读写之操作前都要先进行复位(即初始化),复位成功后发送一条ROM指令,最后再发送RAM指令。
2.1.3 WIFI无线传输模块
无线传输模块部分我们采用的是海凌科(香港)有限公司推出的全新的第3代嵌人式Uart—Wifi模块HLK—WIFI—M03(图6所示)。Uart—Wifi是基于Uart接口的符合wifi无线网络标准的嵌入式模块,内置无线网络协议IEEE802.11协议栈以及TCP/IP协议栈,能够实现用户串口数据到无线网络之间的转换。
5针:VDD接3.3V电源;8针:GND接地;6针:RXD接单片机TXD;7针:TXD接单片机RXD
首先,将WiFi模块设置为透明传输模式,加入AP所在的局域网并与网内服务器建立socket连接,此时socket可以看作通信双方的“虚拟导线”。采集的体征信息可直接通过此“虚拟导线”透传至服务器。在服务器建立的软件可以对数据进行整合与分析,若出现越限情况,则服务器立即通过Internet将报警信号及用户体征信息发送至用户家人的手机或其他移动设备,同时可以将报警信息发送至医院,以便对病人进行急救。
2.2 软件设计
系统在用户终端上我们选用Android智能系统作为应用平台。Android是由谷歌(Google)和开放手机联盟(OpenHandset Alliance)支持的一个手机软件开发平台,支持多种无线网络连接方式,如GPRS、WiFi、蓝牙等。通过这些方式,Android手机可以方便地通过无线网络通信,访问Internet和各种网络上的服务器。同时Android框架提供了对HTTP等通讯协议的支持。
Android应用程序是以许多Android API组件为基础进行开发的,下面是几种主要的API组件:当前活动程序Activity是最常用的应用程序组件,可以把Activity简单的理解成一个用户所看到的屏幕,称之为“活动”。它主要用于处理程序的整体性工作,通过调用onCreate()、onStart()、onRestart()、onResume()、onStop()、onDestory()等方法来实现运行、暂停、停止等状态。例如监听按键、触摸屏等事件,指定图像显示View,启动其他Activitv。Android用Intent类实现启动其他Activily,它调用startActivity(myIntent)方法触发解析myIntent动作,新的Activity接收到myIntent通知后,开始运行,例如通过Activity的切换实现显示布局的切换。ContentProvider类是一个特殊的存储数据的类型,它实现了数据的存储与共享。Service是运行在后台的应用程序组件,不直接与用户交互。当前活动程序可以使用Context.
StartService()开启一项后台服务,还可以通过Context.bindService()与后台服务通信。在Android的Java程序中,实现人机交互的控件是通过事件处理的,需要指定控件所用的事件监听器。事件响应部分代码如下:
3 系统调试
首先对WIFI模块进行参数配置,使其工作于透明传输模式,随时进行数据的传输。通过单片机对串口的写操作命令将数据通过无线传输在手机界面上显示出来。
然后对脉搏进行校准,将系统测得的人体脉搏数据与标准脉搏计测得的数据进行比较,结果表明两者误差在±5 Hz。
最后进行体温的测试,通过对软件、硬件的调试。在显示界面得到一个温度数据,然后和标准体温计测得的数据进行比较,结果表明两者差异在±0.1℃。设定体温高低阈值分别为38℃、35℃,当给定的测试温度为小于35℃或大于38℃时,用户手机会自动弹出报警提示界面。
体温采集显示如图6所示,横轴为软件运行时间,纵轴为体温值。
心率采集显示如图7所示,根据时间进行记录并上传至服务器。
4 结束语
此款监测系统在集成实时监测体温、心率等多项生命体征的同时,结合当下快速普及的手机智能系统,将采样的体征信息通过WiFi网络传输至信号处理中心,由信号处理中心对采样信息进行编译和处理,形成一定的波形、数据结果,再由网络传输到其接收端,结合用户Andr oid设备终端进行数据显示及反馈。采用人机友好交互界面进行体征信息管理,可实现远程体征信息监测、分析、警报等功能,具有低功耗、使用方便、操作简单等特点,应用前景广阔。