基于STC的智能医疗监控系统设计与实现
2019-06-26侯宗越贾天豪黄瑶李金晓李佩雯
侯宗越 贾天豪 黄瑶 李金晓 李佩雯
摘 要:文章设计并实现了一种智能医疗监控系统,可以对人体进行健康检测,快速准确地测量人体体温、心率,防摔倒等,并将测量的数据实时传输到手机APP上。本系统基于STC单片机进行设计,主要由红外测温、心率测量、蓝牙传输3部分组成。采用MLX90614测量体温,运用红外传感器采集与心跳同频率的信号,引用蓝牙通信技术实现数据实时传输,开发APP显示测量信息,实现身体状况监测报警功能。该监测装置精度较高,操作方便,成本较低,具有较好的应用前景。
关键词:体温测量;蓝牙通信技术;红外线传感器;MLX90614
快节奏的生活使得人们越来越注重效率,人民生活水平的提高使人们越来越“重预防,查未病”,因此,定期去医院体检显得颇为浪费时间。本研究的目的在于做出一个基于STC的智能医疗监控系统,能够达到测量人体的一些常规参数,如环境温湿度、人体体温、心率等,用蓝牙将数据传输至手机端,进行数据采集和保存,以此对人的身体状况进行监测,节省体检时间,促使做到及时发现并处理身体出现的状况。智能医疗监控系统改进了体检模式,以手环为载体,将体检转变为一项可以在线上完成的活动,提高就医效率,节约时间,使人们对自己的健康状况有一个更好地把握。同时,改变了智能手环的现状,目前市场上的智能手环都是侧重于睡眠质量检测等基础功能[1],本研究增加了4方防摔倒报警器功能,使得该工具实用性及价值更有体现,测量数据存储在手机里面,方便随时调取和检测,将预防和把控自身健康状况变得简单明了。
1 系统的组成和工作原理
1.1 系统组成
智能医疗监控系统主要包括紅外测温模块、心率测量模块、跌倒检测模块、温湿度模块、蓝牙传输模块。
1.2 工作原理
初始状态时,按下电源按键,温湿度传感器开始测量所处环境状态,并在1602显示屏上进行显示。
跌倒检测模块,在智能医疗监控系统中,当3轴加速度计检测到任意一个方位的倾角大于45°时,会推进蜂鸣器发出报警信号。同时,设有一个按键关闭蜂鸣声,在已知的情况下防止噪声过大。
体温检测电路的设计采用红外检测,将所测部位置于传感器端口1 cm左右位置,自动进行扫描并且将读数显示在显示屏上。脉搏采集模块采用ST188红外对管模块,先将拇指按压在检测器上,调控压力的大小,使得指示灯闪烁维持在一个较为均匀稳定的状态下,从而打开脉搏采集开关,数据显示在显示屏上。以上所测量得到的数据都可以通过串口将数据打包发送至PC端,或者通过蓝牙端口发送至手机APP[2],可以对身体状况进行实时监控、预防和及时把控健康方面的变化给出相应的应对措施。
2 系统硬件设计
由系统原理易知,系统包含大量硬件单元,本文重点介绍红外测温模块、心率测量模块、跌倒检测模块3个核心模块。
2.1 红外测温模块
红外测温模块采用MLX90614芯片(见图1)。MLX90614可以实现放大、滤除杂波、模数转换等功能,允许在﹣40~125 ℃的温度范围内正常工作,所以完全可以用于体温测量。
MLX90614系列测温芯片是一种便携的高精度红外测温芯片。MLX90614红外温度传感器可配置在EEPROM中,用于3种输出:脉宽调制(Pulse Width Modulation,PWM)、串行总线和热继电器。所有这些输出都提供了测量温度、线性化并可随时使用。
用数字的方式输出温度是线性化的,可以补偿环境温度。对于PWM选项,连续脉冲序列的占空比(高电平在脉冲周期所占比例)来反映测量的温度。将该脉冲序列通过低通滤波器,阻挡高频信号的通过而使低频信号通过,可得到模拟值测量的平均值。让它可以在一定温度变化范围内保持0.01 ℃的温度精确度。
心率信号采集电路、信号放大电路、信号处理电路和LCD显示电路是心率测量计的主要组成部分。用户在检测心率时,红外传感器首先收集与心跳同频率的微弱信号,红外发射光的强度与人体组织半透明度有关,数值较大时,红外发射出光的强度很弱,无法导通光敏三极管,于是输出高电平。反之,输出低电平。这样形成的低频率微弱信号与信号频率和震动次数有关,且其关系呈正相关,波形近似于周期正弦函数[3]。
红外传感器接收到的是低频信号。为了加到线性放大器的输入端时不产生额外干扰,该低频信号需要通过RC振荡器滤波以消除高频信号。随后,信号再经过运算放大器被放大几十倍。如果传感器检测到较强的干扰噪音时,其输出端的直流电压信号会有大幅度的波动,导致测量结果不准确。
首先,经过微分处理后,正弦信号变成尖脉冲信号。其次,尖脉冲信号被单稳态振荡电路转化为同频率的长脉冲信号,单片机接收到该长脉冲信号后,单片机控制的软件开始处理信号。最后,以数值形式显示在LCD屏幕上。
2.2 跌掉检测模块
防摔倒模块采用ADXL345芯片。G-Cell传感器感知3个相互正交的的方向上的加速度,感知的加速度以电压信号输出。
G-Cell传感器的结构可简化为3块电容极板(见图2),由化学元素硅经半导体工艺制成,两端的极板固定,中间的极板在加速度的作用下,向无加速度的位置偏离,导致它到极板一端的距离变短,另一端变长,从而造成电容值的变化。电容值的变化量最终体现在电压的输出值上,实现对加速度的测量。
3 系统软件设计
本软件的系统根据运行环境的不同,可以分为嵌入式程序、上位机软件系统两部分。其中,嵌入式程序运行在STC89C52单片机上,上位机软件系统运行在上位PC机上。
3.1 嵌入式软件系统
嵌入式软件系统运行在STC89C52单片机上,负责完成状态自检、红外测温、心率检测、温湿度检测、跌倒报警、数据传输、LED显示等功能。图3为以红外测温模块为例的嵌入式软件系统架构。
3.2 红外测温模块
所有有温度的物体都会向空气中辐射红外线,人体红外测温仪的原理就是通过接收人体辐射出的红外线能量的大小来测量其体温的仪器[4]。测量的能量信息传输到中央处理器中进行处理,然后转换成温度读数在LCD显示屏上显示。
红外测温仪程序包括,温度模块、主控模块、显示模块、时间测量模块4个部分(见图4)。首先,写起始条件、分配地址、写入堆栈,表示要读取的温度。其次,开始读取温度值,再重新发送起始条件、写读命令,读命令分步进行,先读取正确温度信息,再读取错误信息[5]。
3.3 跌倒报警模块
在运动时,身体各个部位都发生不同程度的运动,运动就会产生加速度,所以我们选择加速度来衡量个体的运动。个体运动包括3个分量,即前向、竖向和侧向(见图5),分别代表“滚动”“偏航”“俯仰”。ADXL345可用于检测各个方向上的加速度。由于不知道计步器的具体方面,因此测量精度不应依赖于运动轴与加速度计测量轴之间的关系。
如果加速度变化太小,步伐计数器将处于等待状态,直到加速度变化大时,即为检测到跌倒信号,则启动报警装置发出警报。
3.4 心率检测模块
心率检测模块程序首先要进行程序初始化將单片机重置,这是单片机正常工作的基础,程序和中断程序才能正常运行。再将各部分全部设置为零,当输入信号时,如果单片机各部分仍然显示为零,则说明心率计没有正常工作,需要检测何处出现问题。反之,则正常工作,逻辑框架如图6所示。
定时是设计中比较重要的一部分,目的是为了确立好采样时间。系统运用定时器T0定时来实现,为了消除外界信号的干扰,定时器中断程序对满足要求的频率保留,过滤掉不满足要求的频率。因为心率的有效测量范围为35~125次/min,所以滤除掉小于35次/min和大于125次/min的脉冲信号,心率检测模块的程序是一个无限循环语句,当触发中断时,程序便跳转到中断子程序,中断子程序的作用是对心率进行计数,如果达到计数要求,则将测量得到的二进制数转换为十进制数送到LCD屏幕显示。如果没有达到要求,则返回等待程序再次发生中断,直到采样次数满足要求为止。
3.5 蓝牙串口APP
记录上述模块数据并通过蓝牙传输到APP上,传输过程如图7所示。
4 结语
基于STC的智能医疗监控系统分为硬件和软件两个部分,硬件由STC89C52单片机、MLX90614(红外传感器)、接收发射模块、ADXL345数字加速度计模块、DHT11温湿度传感器模块、蓝牙模块及LCD1602显示模块组成。软件为手机APP,用于接收硬件模块上的蓝牙模块传输的测量信息。最终实现了心率检测、红外测体温、跌倒检测报警、环境温湿度检测等功能,并将所有数据显示到1602显示屏上,通过蓝牙传送到手机端。
基金项目:江南大学2018年度大学生实践创新训练计划项目;项目编号:2018309Y。
作者简介:侯宗越(1997— ),男,山东淄博人,本科生;研究方向:通信工程。