广东海洋大学电子与信息工程学院 郭海亮 王 骥 刘诗恒 李镜辉 庄冠冰
可穿戴式人体健康多参数检测系统的研究
广东海洋大学电子与信息工程学院 郭海亮 王 骥 刘诗恒 李镜辉 庄冠冰
本文采用集成度高的传感器、蓝牙低功耗BLE通信和移动通信一体化融合技术构建了多参数可穿戴式系统的模型,阐明了它们的工作原理,分析了多参数可穿戴式系统的核心技术。
智能可穿戴;心率;计步;睡眠;移动通信;蓝牙BLE;传感器
20世纪60年代,美国的学者提出了可穿戴技术这一概念,向人们展示了未来的技术方向,其核心在于那些与人体亲密接触的可穿戴的硬件设备,具备更加智能化的信息收集技术,可以实时地获取重要的人体和外界环境的数据,并快速访问网络进行社交联系与分享,还可以利用大数据和云计算参与分析。由于可穿戴设备与人体紧密联系,可以实时获取人体准确的运动和健康数据,在结合其他技术的配合,可以实现更加便利的健康服务以及社交上的互动分享等[1][2]。
可穿戴技术的重要分支和产品之一是智能手表以及智能手环产品。智能手表不仅可以满足普通人对手表的要求,还可以完成诸如医疗健康和运动相关功能(心率监测,计步卡路里计算,睡眠监测等等),还可以完成即时通信,社交分享,定位跟踪,甚至电话和信息管理和浏览网页等一些智能手机才有的功能,不可否认,这是可穿戴技术发展的一大趋势。
面对这样一种主流趋势,选用了蓝牙4.0低功耗无线通信技术作为核心的通信技术,系统具备现有智能手表的特色功能,比如心率监测,计步测量及相关健康与运动分析功能,传感器数据的显示以及和专门设计的在安卓设备上运行的BLE应用程序以实现数据同步,提供数据分析和健康建议等功能[3][4]。
本系统主要的创新点在于整合了各种传感器的数据和智能手机的统计、数据分析与提出健康建议等功能,具有简洁的人机交互界面[5],以及更多新颖性和实用性的特征。
本系统主要分为两大部分,手机硬件部分和安卓BLE客户端APP部分。两大部分的交互通过目前可穿戴技术非常流行的低功耗蓝牙4.0BLE无线短距离通信技术来进行数据传输,以此为基础实现特定的功能。硬件上主要分为主控核心MCU,内部运行嵌入式实时操作系统FreeRTOS,并且移植了FATFS文件系统用于管理文件和存储数据;另外还有计步器模块、心脏速率监测模块、姿态传感器和磁阻传感器模块、Micro-SD卡模块、锂电池和电源管理模块、LCD与触摸彩屏模块、RTC备用电池模块、2G移动网络通信模块等。图1是整个系统的功能和结构框图,如图1所示。
作为本设备的硬件实物,硬件的设计是最基础也是最重要的部分之一,接下来,本文将从硬件电路原理图的角度列出各个功能模块的电路原理及大致的工作情况。
本系统的硬件部分的核心微控制器采用了意法半导体的STM-32F103RET6芯片,该芯片的主要特别是集成了来自于ARM公司的cortex-M3内核的CPU,通过高速总线连接核心外非常丰富的外设资源(主要包含512kB Flash闪存空间;192kb SRAM内存空间;3个独立ADC模块;一个CAN总线控制器模块;两个I2C接口模块;两个I2S接口模块;一路SDIO接口模块;3个SPI接口模块;6个定时器模块;5个串口通信模块以及一个全速USB接口模块等)。图2是这个芯片在本系统硬件电路中的核心电路图。
图1 本系统的硬件和功能结构框图
图2 STM32F103RET6核心控制电路原理与管脚配置图
本系统采用的LCD屏幕是一款由信利电子有限公司与2012年出品的2.0寸LCD显示面板模组,内部包含了来自韩国LG电子的触摸控制器LGDP4522。图3是该液晶显示器与触摸控制器XPT2046的驱动电路原理图。
本系统的SIM900A模块是一款支持移动和联通2G网络的高度集成化,低成本,较低功耗的解决方案。利用该模块可以完成本设备的基本通信功能,实际功能在操作中效果良好,图4是该模块的电路原理图。
图3 LCD显示与触摸屏电路原理图
图4 SIM900A模块电路原理图
由Nodic半导体公司推出的蓝牙BLE芯片nRF51822单芯片解决方案,可以实现一个低功耗的短距离通信连接,非常适用于移动设备的领域,图5是该蓝牙BLE模块的电路原理图:
图5 nRF51822蓝牙BLE模块电路原理图
(1)心率传感器电路设计
本方案中传感器采用市面上成熟稳定的心率传感器模块Pulse Sensor。相关资料如图6所示。
图6 心率传感器的采集信号波形
心率监测模块传感器输出的信号还是比较微弱的信号,幅值太低且存在环境杂波的干扰,为了便于软件采集和算法上的处理,硬件上还要进一步做滤波和波形的整形处理。本设计中采用两级滤波和运算放大器的滤波和一级滞回比较器的波形整形电路。经过滤波和整形,心率信号就变成规律性比较好的方波信号,并且杂波比较少,适合单片机的采集和处理。
在该电路中,心率传感器模块拾取和放大的信号经过Vout1端输入到本电路进行波形整形,将模拟信号的心率波形通过滞回比较器电路而被处理成脉冲信号,其特征就是反应心率的跳动信息,该信号先对于模拟信号更有利于单片机的计数处理以及软件滤波处理等,并且避免要使用ADC对信号采样处理等一系列繁杂又耗费CPU资源的程序上的开销,非常有利于开发。
心率信号处理电路图如图7所示:
图7 心率传感器波形整形电路图
(2)计步器方案与睡眠监测方案设计
本设备的计步器方案为采用一款成熟的模块——STP100M。STP100M是一套3D计步功能模块。模块提供了简单的脉冲输出接口,方便集成到计步器相关的设备中。STP100M的主要性能参数如表1所示:
表1 STP100M计步器模块相关性能参数
睡眠监测姿态芯片采用MPU6050, MPU6050一款稳定、应用广泛且性价比高的3轴陀螺仪+3轴加速度计的一体化集成芯片,控制单元可以通过IIC总线协议进行通信和获取相关的数据并作进一步处理。HMC5883l也是一款应用广泛而且低成本的磁力传感器芯片,可以用于姿态数据的融合等。相关的电路原理图如图8所示:
图8 传感器组合电路原理图
本系统采用单节锂电池进行供电,测试使用的时候是3.7V/1300MAh的容量来进行供电。该锂电池自带充电保护电路,在电池电量即将耗尽而需要充电的时候可以通过USB-micro数据线连接设备并进行充电。设备的主控制器通过ADC回路实时监测电池电压并通过电量修正的模型对电池电量进行实时地统计以及显示。
在电源管理电路方面,本设备主要采用了两片低压差线性稳压器LDO——SGM2019(输出电压为3.3V版本,由国内知名的半导体厂商圣邦微电子SGM设计的低压差线性稳压器),具有较低静态关断漏电流(低至10nA),低输入输出压差,具备过流保护功能,采用SOT23-5封装,并且外围电路简单,占用空间小,满足工业级别的温度要求,是一款国产性价比不错的LDO产品。
本设备的电路上采用两片SGM2019的单独电源设计,一方面是保证各个模块的工作电路的需求,一方面是减少各个模块之间的电源噪声等干扰。提高器件工作的稳定性。
相关的电源管理电路图如下图所示,图中U4这一片SGM2019是主要为主控MCU和LCD以及触摸屏提供电源,另外一片U5则主要为蓝牙BLE模块以及各类传感器提供电源,电源管理电路如下图9所示:
图9 电源管理电路原理图
本系统硬件上LCD显示的图形界面的绘制均通过电脑上的取模软件对图片和文字进行特定格式的编码输出图像数组,使其可以应用于LCD屏幕的驱动软件代码完成图片和文字的绘制显示。深入到代码的层面,主要的代码流程可以这样描述:
本软件架构在FreeRTOS的内核上,当程序完成硬件启动初始化后,自动跳转到主函数执行,主函数先完成了系统得板级硬件初始化后开始创建FreeRTOS的一个主任务和一个监听来电并作相应处理的任务等,主任务调用相关的LCD驱动函数来完成锁屏界面的绘制显示(用户要进入下以及主菜单,需要完成一个滑动解锁的步骤)。用户在指定的屏幕区域完成解锁的过程后,软件将调用相关的LCD驱动函数完成主菜单界面的绘制显示。进入主菜单界面,代码绘制了包含通信录管理、拨号管理、以及信息相关应用等三大块基本的功能,用户选择进入到不同的应用,程序会根据触摸检测的区域判断执行相应的处理代码,同时会创建用于处理单独应用的FreeRTOS任务,调用相关特定的图形界面相关的绘制函数以完成界面的初始化绘制,然后再根据用户的触摸交互完成不同的功能。在用户想退出上一级的菜单的时候,可以采用点击屏幕左边滑动到后面再释放的方式完成退出至上一级菜单的操作。相关的程序执行基本结构的流程图如图10和图11所示。
心率的采集和处理的基本原理是采用STM32F103RE单片机的GPIO引脚的外部中断功能捕获脉搏信号的上升沿,首先设置外部中断为上升沿捕获,当捕获到上升沿的时刻后,马上在外部中断处理函数中开启一个溢出中断的周期为100Hz的定时器,并在每一次进入定时器中断的中断处理函数后使计数器CNT加1,但捕获到下一个上升沿时刻的时候,又在外部中断中关闭定时器中断功能。则单次捕获的脉搏数据为:
CNT/100*60 单位为BPM(次每分钟)
单次采集的数据仍可能受到干扰,所以还需进一步采用滤波处理。
图10 主要程序流程图1
图11 主要程序流程图2
(1)下面显示了本系统的应用程序主界面,可以在大多数支持BLE的安卓手机上运行,该版本还是调试版本,还有很多功能还没有完善,目前可以支持完整的BLE连接、BLE设备间通信和断开BLE连接的功能,支持心率数据和计步数据的实时同步显示,后期将可添加更多细节功能(比如利用智能手机更多的功能和联网优势实现比如统计与分析,健康建议等)。
图12 安卓BLE APP交互界面
(2)BLE应用数据同步关键协议解析
本系统硬件与软件的数据同步是基于蓝牙BLE的GATT服务框架的,利用蓝牙BLE模块提供从UART接口到移动设备APP数据传输的透传服务及其UUID,可以实现用户MCU与移动设备APP的数据传输。在完成蓝牙BLE设备间连接操作之后,移动设备APP根据用户选择操作执行相应的数据同步的功能,而相应的安卓APP源代码数据解析部分见附录1.3。
根据图13蓝牙BLE透传的私有协议数据帧格式可以看出来,”#”字符作为数据帧起始标识,后三字节ASCII码字符串是用于表示心率数据的,其后六字节则是用于表示计步数据,安卓APP将ASCII码表示的数据转换成的实际的数值,通过以类的静态变量的定义方式共享到蓝牙服务类中用于显示和分析等操作。基本的私有协议传感器数据包格式各字段意义如下:
图13 协议传感器数据包格式各字段意义
本文对智能手表这样一种典型的智能可穿戴设备的基本原理和实现方法做了实践的示范,主要从运动和健康这两大可穿戴技术主要的发力点上深入研究,对计录走路或跑步步数以及测量人体心率这样一种可穿戴设备中出现率非常高的功能作为重点的研究与设计点,具有非常大的研究意义。本设计还采用了蓝牙BLE技术实现了设备与智能手机之间的互联互通,专门设计的APP用于同步数据和操作,其交互方式将更加简洁直观,同时功能更加完善,可开发性和扩展性也很强。
本设计至今已完成预期的大部分目标功能和设计要求,但在细节上还有很大的改进空间;系统的功耗还可以采取进一步的措施进行降低处理,提高待机续航时间;APP方面也还有很多可以改进的空间等。
[1]陈根.可穿戴医疗—移动医疗新浪潮[M].电子工业出版社,2016,10.
[2]宫继兵.可穿戴健康监测系统数据融合[M].科学出版社,2015,11.
[3]李志强.心率检测在智能手表上的应用[J].应用与开发,2014,06.
[4]谭振兴.基于BLE技术的智能防丢器设计与实现[J].东大学学报,2015,04.
[5]谭浩.汽车人机交互界面设计[M].电子工业出版社,2015,01.
项目支持:广东海洋大学创新强校工程科研项目(GDOU2014050240);广东海洋大学“海之帆一起航”计划项目(hzfghjhkjfm2015b17)。
郭海亮(1992—),男,大学本科,研究方向:电子信息工程。