基于STC89C51 单片机的脉搏测量仪设计
2022-10-19岳志明
尉 蓉,岳志明
(酒泉职业技术学院,甘肃 酒泉 735000)
随着人民生活水平的不断提高,心脑血管疾病的增多,预防和保健意识的增强,心脏监测越来越被重视;在日常生活中或剧烈运动后,人们也需要监测一下自己的心率,对调节饮食和控制运动量起到积极的参考作用,因此操作简单便捷,安全可靠的心率测量,就有了很大的需求空间。
人体心脏周期性的收缩和舒张导致血流压力以波的形式、从主动脉根部开始沿着整个动脉系统传播,这种脉搏波所呈现出来的形态、强度、速率和节律等方面的综合信息,能反映出人体心血管系统中许多生理疾病的血流特征[1],所以通过获取脉搏波的特征,就可以为临床诊断和治疗心脑疾病提供可靠的依据。
根据医学常识可知,脉搏的跳动频率与年龄和性别有关。婴幼儿一般比成人的跳动频率高,婴儿大概是每分钟120~140 次,幼儿每分钟90~100 次,学龄期儿童每分钟80~90 次,成人每分钟60~90 次,随着年龄增长,脉搏跳动频率会有所下降。另外,脉搏的跳动频率与运动量和情绪也有关系:情绪激动或剧烈运动时脉搏跳动会加快,而情绪平缓或睡眠休息时脉搏跳动则减慢。一般而言,成人脉博跳动频率若每分钟超过100次,则称为心动过速;每分钟低于60 次,称为心动过缓[2]。如果患有基础疾病的人,心率出现高达126 次/min(除剧烈运动后可能的最大频率240 次/min),则有可能发生猝死的危险。因此方便、快捷的测量心率,为预防疾病起到了很好的作用。
根据朗伯-比尔(Lambert-Beer)定律,物质在一定波长处的吸光度和其浓度成正比。当恒定波长的光照射到人体组织上时,通过人体组织吸收、反射衰减后,测量到的光强将在一定程度上反映被照射部位组织的结构特征[3]。在人体指尖组织中的动脉成分含量高,而且指尖厚度相对其他人体组织而言比较薄,透过手指后检测到的光强相对较大[3],因此只要通过监测人体指尖的脉搏波频率,就可以获得血流信息,为临床诊断和治疗提供依据[3]。
目前测量脉搏的仪器设计方案一般有:
(1)光电容积脉搏波法,其是基于光电容积法的脉搏测量仪,其测量系统以Arduino 平台作为系统的核心控制部分,采用光电传感器采集人体脉搏信号,将采集到的信号经由滤波电路、放大电路处理后送入到模数转换器,通过蓝牙模块将数据无线传输到上位机进行存储和显示[4]。
(2)基于蓝牙低能耗BLE CC2541 和红外脉搏传感器HKG-07A 的脉搏测量仪,能在液晶屏上显示脉搏数,可将脉搏数据保存在缓存中,还可通过蓝牙将脉搏数发送到手机APP 上[5]。
(3)采用反射式红外光电传感器ST188 测量手指末端的脉搏信号,然后将其滤波、放大、整形为方波送往IAP15W4K58S4 单片机进行数据处理,最后计算出脉搏值通过LCD1602 显示[6]。
(4)通过SC0073B 脉搏传感器采集被测者腕部的脉搏信号,经过放大电路、低通有源滤波电路和整形电路后送至单片机处理,并将结果显示在液晶屏上,同时,可接入基于zigbee 协议无线监护网络,实现远程集中监护[7]。
本文主要论述的是基于STC89C51 单片机脉搏测量仪的硬、软件的设计。首先利用反射式红外光电式传感器作为脉搏信号的变换元件,再把采集到的电信号进行硬件滤波、放大、整形,并进行软滤波抗干扰,得到的脉搏电信号输入单片机进行计数、同步定时,最后由LCD1602 液晶显示屏显示出脉搏次数[8]。
1 硬件电路方案设计与选择论证
根据脉搏测量要求,将脉搏测量仪系统划分为脉搏检测传感器部分,滤波、放大及整形信号处理电路,单片机最小系统及显示电路。脉搏测量仪系统框图设计如图1 所示。
图1 脉搏测量仪系统框图
1.1 脉搏检测传感器
经过比较、论证目前脉搏测量仪的优缺点,本设计中,脉搏心率的采集选用光电传感器模块。
光电式检测方式可以不用侵入人体而检测脉搏,具有结构简单、无损伤、精度高和可重复检测等优点[9]。光电检测是将红外发光二极管产生的红外线照射到人体的指尖部位,并用装在该部位另一侧或旁边的红外光电管来检测机体组织的透明程度,并把它转换成电信号,由于此信号的频率与人体每分钟的脉搏次数相等,故只需将其转换成脉冲并进行整形、计数,就能实现实时检测脉搏次数的目的[1]。
本系统设计与传统的脉搏测量仪相比,具有以下特点:①指尖测量,方便快捷。②测量时间可控,精度高。③使用通用的5 V 直流电压。④软、硬件抗干扰。⑤采用单片机控制,性价比高。⑥测量2 min 强制停止,0.7~255 次/min。
1.2 脉搏测量仪硬件设计
本设计中,采用脉搏心率传感器模块。
脉搏心率传感器模块如图2 所示。工作电压:3.3 V/5 V DC;输出信号类型:模拟信号;输出信号大小:0~3.3 V(3.3 V 电源)/0~5 V(5 V 电源);电流大小:4 mA(5 V 下);LED 峰值波长:515 nm;电路板厚度:1.6 mm(普通PCB 板厚度);电路板直径:16 mm;端子S 输出模拟信号波形;端子+、端子-接电源。
图2 脉搏心率传感器模块
脉搏心率传感器输出模拟信号波形,如图3所示。
图3 模拟信号波形
1.3 放大滤波电路部分
人体脉搏信号频率比较低,低于126 次/min,脉搏心率传感器模块输出的信号含有噪声,所以需要进行滤波放大电路处理。
放大电路如图4 所示,同时进行一阶有源低通滤波。按人体脉搏在运动后跳动次数达240 次/min 的频率,R1、C4 为低通滤波部分,其决定了截止频率由R1、C4,放大倍数由R3 和R2 的比值决定。
图4 放大滤波电路
根据一阶有源滤波电路的传递函数,可得:
截止频率284.1 Hz 远远大于人体剧烈运动后脉搏的最大频率240 Hz,设计值符合脉搏数测量范围。
1.4 波形整形电路
单片机定时器对脉搏进行计数,需要为下降沿触发中断,将图3 波形进行整形为矩形波。选择常用的施密特触发器,简单、容易实现。
(1)整形电路如图5 所示。电路实质是有两级反相器,通过分压电阻将输出端的电压反馈到输入端,从而构成施密特触发器整形电路。
图5 整形电路
电路中可以通过改变R9 和R0 的阻值大小来调节VT+、VT-的值。调节时要注意R9 的阻值必须小于R0的阻值,否则电路会进入自锁状态而不能正常工作。
(2)波形整形电路输入输出波形信号如图6 所示。
图6 波形整形电路输入输出波形
1.5 显示电路模块
LCD1602 液晶显示屏具有耗电小、简单方便、电压通用性好等特点,因此采用LCD1602 液晶显示模块,显示电路模块如图7 所示。
图7 显示电路模块
1.6 脉搏测量仪电气原理
脉搏测量仪电气原理如图8 所示。
图8 脉搏测量仪电气原理图
2 软件设计
2.1 主程序流程
单片机系统上电后,对单片机定时器及液晶显示系统进行初始化之后,系统进行工作状态判断、指尖握紧脉搏心率传感器模块准备后,按键启动脉搏测量、定时、计数及显示等工作。主程序流程如图9 所示。
图9 主程序流程图
2.2 软件程序设计
本设计中的定时器0 主要是用来定时,定时器1主要用于脉搏计数。
2.2.1 定时器0 的程序流程
定时器T0 中断服务程序以50 ms 计时,结合软件计数确定30 s 到最大2 min 范围的脉搏时间,具体时间由定时器T1 启停同步控制。
定时器T0 的启动、停止均由定时器T1 脉搏计数测量时,对应下降沿开始与停止,实现同步控制。直到30 s 后的脉搏下降沿进入中断计数后停止全部T0、T1,之后计算测得脉搏数的时长,换算为分钟脉搏值用于显示。如果时间超过2 min,强制停止全部T0、T1,脉搏刷新为0。流程如图10 所示。
图10 定时器0 中断程序流程图
2.2.2 定时器1 程序流程
定时器T0 的启动、停止均由定时器T1 脉搏计数测量时,对应下降沿开始与停止,实现同步控制。之后计算测得脉搏数的时长,换算为分钟脉搏值用于显示。流程如图10 所示。
定时器T1 中断完成脉搏数的测量。指尖握紧脉搏心率传感器模块准备好后,按键起动定时器T1,T1 由下降沿触发开始计数。直到30 s 后的脉搏下降沿,后停止全部T0、T1。定时器1 的启动与停止同步控制定时器0 的时间测量。定时器1 其流程如图11 所示。
图11 定时器1 中断流程图
2.3 程序设计
设计主程序及中断程序如下,其中省去了液晶显示子程序部分。
2.4 实物展示
实物展示如图12 所示。
图12 实物图
3 结论
本脉搏测试系统设计是应用STC89C51 单片机实现的。脉搏信号由光电式传感器采集,经过信号的放大、滤波和整形处理得到脉冲信号,通过定时器T0、T1 对脉搏计数、测量时间的同步控制,对应下降沿开始计数与定时,直到30 s 后的脉搏下降沿中断计数后停止全部T0、T1,之后计算测得脉搏数的时长,换算为分钟脉搏值用于显示。如果时间超过2 min,强制停止全部T0、T1,脉搏刷新显示为0。利用单片机自身的定时中断、计数编程,实现了脉搏测量中计数与定时的同步控制,测量时间可控,精度高,采用常用单片机,性价比优越,测量2 min 强制停止,脉搏范围0.7~255 次/min,便捷可靠。