《电子技术应用》
您所在的位置:首页 > 嵌入式技术 > 设计应用 > 一个基于STC12单片机的无线脉搏监测系统
一个基于STC12单片机的无线脉搏监测系统
2016年微型机与应用第18期
柳海华,卢路瑶,朱秀委
温州医科大学 信息与工程学院,浙江 温州,325035
摘要: 为了减小设备体积,提高系统的灵活性,提出了一种采用STC12单片机、光电式传感器和NRF24L01的无线脉搏监测系统,给出了该系统的硬件和软件设计的具体方案,展示并分析了系统运行结果。该系统在10 m范围内可实时地监测脉搏信号,在软件界面中可显示、分析和保存数据,在发现生理参数异常时发出报警,适用于病人监护,具有一定实用价值。
Abstract:
Key words :

  柳海华,卢路瑶,朱秀委

  (温州医科大学 信息与工程学院,浙江 温州,325035)

       摘要:为了减小设备体积,提高系统的灵活性,提出了一种采用STC12单片机、光电式传感器和NRF24L01的无线脉搏监测系统,给出了该系统的硬件和软件设计的具体方案,展示并分析了系统运行结果。该系统在10 m范围内可实时地监测脉搏信号,在软件界面中可显示、分析和保存数据,在发现生理参数异常时发出报警,适用于病人监护,具有一定实用价值。

  关键词:STC12C5A60S2光电式脉搏传感器;NRF24L01;串口通信

0引言

  中西医研究表明,脉搏波蕴藏着丰富的生理病理信息,在预防疾病、诊断治疗、保健康复等各个方面发挥着重要作用[1]。目前的脉搏信号监测系统中,传感器类型主要包括光电式、液体耦合腔式、压阻式以及应变式等[23]。其中,液体耦合式传感器的制作过程较为复杂且抗干扰差,压阻式传感器的实时性差且误差较大,而应变式脉搏传感器存在较大的非线性。相比之下,光电式传感器具有制作方便、精度较高、成本较低及线性度较好等优点,因而得以广泛应用。此外,大量导线的使用增大了系统规模和复杂度,同时降低了系统的便携性和扩展性,因此无线传输技术日益普遍[4]。

  基于上述分析,本设计采用STC12C5A60S2单片机、光电式脉搏传感器和NRF24L01无线收发模块完成了一个无线脉搏信号监测系统。该系统先通过下位机采集电路对使用者的脉搏信号进行提取、去噪和放大处理,再以无线传输方式发送给连接PC的接收电路,接着上位机软件从串口接收数据实时显示波形,并进行参数(例如心率、脉搏间隔等)分析、参数异常报警和数据存储等。本系统不仅能对使用者进行脉搏实时诊断和分析,也可用于后续的数据统计和长期跟踪,有助于使用者生理状态的有效监测,具有一定的实际应用价值。

1系统总体设计

  本系统的总体结构由6部分组成:电源模块、采集模块、单片机控制单元、无线模块、串口通信模块、上位机模块。系统的总体结构框图如图1所示。

图像 001.png

  系统前端采用光电式脉搏传感器,将人体的脉搏信号转化为电压信号。由于人体的脉搏信号微弱(毫伏电压),频谱范围包含工频干扰,因此需通过前置放大、高低通滤波、二级放大等处理[5]。从传感器获得的初始信号经过适当放大和处理之后,通过单片机控制的AD转换器将模拟信号转换为数字信号,继而通过无线模块实现信号的无线发送与接收。接收模块收到的数据通过串口通信电路传输至计算机的串口,最终由上位机软件对串口进行扫描而读取。上位机软件可实时显示接收到的脉搏信号波形,进行数据处理、分析和监视,也可存储数据以备后续统计与回访。为了保证系统中不同芯片的正常工作,本设计还包含了双电压输出的电源模块。

2系统硬件设计

  2.1单片机控制单元

  单片机是整个系统的核心,主要负责启动AD转换、配置无线发送与接收、与上位机通信等工作。本系统采用STC12C5A60S2单片机,其指令代码与传统的8051单片机兼容,工作电压为3.3~5.5 V,工作频率范围为0~40 MHz,自带8路10位AD转换器,处理速度比传统8051快8~12倍。本系统单片机最小系统的晶振为11.059 2 MHz,5 V电源供电,采集转换频率为100 Hz,由定时程序控制,即每10 ms启动一次AD转换。

  2.2采集模块

  采集模块的核心器件是传感器,它的性能直接影响整个系统的稳定性和精准性。因此,本设计采用综合性能优良的光电式脉搏传感器来完成,它可分为光源和光接收器两个主要部分。光源部分采用的是峰值波长为515 nm的绿光LED,型号为AM2520;光接收器的敏感峰值为565 nm,型号为APDS9008。据相关文献和实验结果表明,560~650 nm光波可较好地反映皮肤浅部微动脉信息,适合用来采集分析人体脉搏信号[6]。因此,本设计采用的传感器能有效收集脉搏信息,且灵敏度较高。此外,脉搏信号的频带范围为0.05~200 Hz,信号幅度是毫伏级的小信号,容易受到各种干扰。因此,在传感器后面连接一个低通滤波器和一个由运放MCP6001为核心的放大器,将初级脉搏信号放大300倍左右。同时,采用分压电阻设置直流偏置电压为电源电压的1/2,使输出信号更容易被单片机的AD采集,并由单片机的P1.7口输入。传感器相关电路图如图2所示。

图像 003.png

       2.3无线通信模块

  实现无线数据传输,可减少设备复杂性,提高系统灵活性。本系统以NRF24L01模块为核心来实现脉搏数据在采集和接收模块之间的远程无线传输,类似工作可参见参考文献[7]、[8]。单片机通过AD转换将脉搏信号数字化后,将转换结果传给NRF24L01模块进行无线发送。无线模块的工作参数(包括信道、发送功率、发送频率等参数)由单片机配置。接收电路中的NRF24L01模块的工作参数也由单片机配置,且要求与发送端匹配。发送和接收的NRF24L01模块和单片机的连接如图3所示。

图像 002.png

  CE引脚与P1.2引脚连接,CSN引脚与P1.3引脚连接,SCK引脚与P1.1引脚连接,MOSI引脚与P1.4引脚连接,MISO引脚与P1.0引脚连接、IRQ引脚与P1.6引脚连接。

  2.4串口通信模块

  串口通信模块主要负责将接收到的数据传给上位机,本设计采用MAX232EPE来完成。由于串口一次最多只能通过8位二进制数,而单片机自带AD转换一次能产生10位的二进制数,因此要将10位数据分解成高2位和低8位。串口通信采用经典设置,即波特率9 600 b/s、校验位N、数据位8、停止位1。

  2.5电源模块

  由于本系统采用的单片机的供电要求为5 V,而无线收发模块的供电要求为3.3 V,因此要求电源模块能输出两种电压。其中,+5 V是由输出电压9 V、输出功率9 W的交流变压器、整流桥及7805芯片组成的电路产生的;+3.3 V是由5 V电源经LM1117芯片稳压和滤波后产生的。

3系统软件设计

  为了保证系统正常稳定运行,需要良好的下位机硬件驱动程序和上位机软件界面。该系统的下位机软件是采用基于Keil C 集成开发环境的C语言进行设计和开发的,上位机的软件界面主要利用VB编程语言编程实现。

  3.1下位机软件设计

  下位机软件由以下子程序组成:AD转换控制程序、定时器程序、NRF24L01发送子程序、NRF24L01接收子程序和串口发送程序。模拟信号从P1.7输入单片机经过10位精度的AD转换。AD转换受定时程序的控制,定时程序达到设定阈值则启动AD转换,转换并发送数据完成后AD使能端被禁止,AD启动转换的频率被设定为100 Hz。两个NRF24L01模块分别由两个单片机控制,不断发送和接收数据,接收数据的单片机通过串口查询法不断将接收到的数据传给上位机。由于AD转换的结果是10位的二进制数,因此在串口发送之前要先将10位的二进制数拆成2个8位二进制数(高2位和低8位,分别存于ADC_RES和ADC_RESL两个寄存器中)才能通过串口发送。

  NRF24L01相关子程序的主要任务是:先进行片选,即选好引脚P1.2并置低电平,再对芯片的状态、功率等参数进行配置,具体如表1所示。

图像 007.png

  系统软件程序流程图如图4所示。

图像 004.png

  3.2上位机软件设计

  上位机软件采用VB语言编程实现。主界面包括数据显示区、快捷功能键、生理参数显示、串口选择和报警提示等部分。为了显示从串口读取的数据,采用iplot控件(集成C语言)作为画图工具。横纵坐标根据输出信号的强度能进行自动调节,实际运行时,先要对两次接收到的数据相加得到一个完整的数据,并通过不同时刻得到的数值进行比较得到波峰,记录当时的时刻,应用同样的方法判断出下一个波峰与时刻,将这一系列的数据由iplot控件进行绘图[9]。

  快捷功能键主要包括图形区放大、缩小和数据保存等功能,另外的功能还在开发中,例如打印、自动缩放、注释等。生理参数显示暂时只考虑脉搏频率,其算法如下:取10 s左右长度的数据,用上述方法检测出每个周期中的峰值,对5个峰峰间期取平均得到准实时的脉搏频率[10]。串口选择功能是为了满足上位机软件对多个下位机采集电路的管理而设计的。尽管目前软件只能显示一个通道的数据变化情况,但预留了多通道显示的功能。报警提示功能是通过label控件来展示的,当上位机软件对一段时间的数据进行显示、处理和分析后,若发现生理参数超出正常范围则开始报警[11]。

4系统运行结果

  系统运行时的上位机软件界面如图5所示。

图像 005.png

  显示的参数包括:实时脉搏波形[12]、计算得到的心率、参数异常报警提示。软件还具有数据存储功能,以便于数据回访和统计分析,对使用者的脉搏参数进行长期跟踪。与标准仪器的测量结果(示波器采集显示如图6所示)对比发现,本系统采集到的脉搏信号显示结果与之接近,从而同时验证了下位机信号采集、无线收发模块工作正常。其中,针对无线模块的性能测试结果表明,在15 m2内无障碍物环境下,数据传输流畅且无失真,按照每秒100个数据采集的速率计算,数据传输速度可达125 B/s。

图像 006.png

5结论

  本设计以STC12C5A60S2单片机、光电式脉搏传感器和NRF24L01无线收发模块为核心,完成了一个无线脉搏信号的实时监测系统。经测试,本系统可将被测人员的脉搏信号实时地显示在上位机软件中,显示结果与标准的示波器结果相吻合,在大约15 m2内系统运行稳定。除脉搏信号的实时显示,该系统还支持简单的数据分析(脉搏频率及强度等),并能实现阈值可调的报警监护功能。本系统为人体脉搏等生理信号监测系统的研发工作提供了一个实用案例,具有一定的实用价值和参考意义。下一步的工作中还可进一步完善本系统的软硬件功能。

  参考文献

  [1] 乔爱科, 伍时桂. 动脉中的脉搏波理论[J]. 生物医学工程学杂志, 2000, 17(1): 95 100.

  [2] 曾小青, 李旭光, 熊政刚,等. 一种具有高信噪比的脉搏波光电传感器的研制[J]. 中国现代医学杂志, 2003, 13(15):76 78.

  [3] 刘常春, 李远洋, 李鹏, 等. 桡动脉脉搏波检测装置[P]. 中国: CN101703394B, 2011 04 27.

  [4] 谭莉, 向忠民. 便携式简易人体测量装置对心血管危险的预测价值[J]. 心脏杂志, 2013, 25(6):753.

  [5] 王晓兰, 蒋中. 一种简易人体脉搏测试仪[P]. 中国:CN 104138251A,2014 11 12.

  [6] 戴君伟, 王博亮. 光电脉搏传感器的研制和噪声分析[J]. 现代电子技术, 2006, 29(2):78 80.

  [7] 诸德宏, 张介环. 具有远程升级功能的小区电能监测系统[J]. 电子器件, 2014(4): 733 736.

  [8] 蒋超, 金陶威, 李世娇, 等. 高精度无线脉搏波采集系统[J]. 电子测量技术, 2012, 36(7): 112 124.

  [9] 张文, 秦开宇, 李志强. VC环境下多波形显示ActiveX控件开发[J]. 中国测试, 2009, 35(2): 33 36.

  [10] 刘一, 任占兵. 基于安卓手机的远程心电测量系统的设计[J]. 电子器件, 2015(1): 194 197.

  [11] 郑争兵. 脉搏信号检测仪的设计与实现[J]. 自动化仪表, 2012, 33(11): 77 79.

  [12] 徐明. 基于MSP430G2553的智能脉搏测试仪设计[J]. 自动化应用, 2015(6): 78 79.


此内容为AET网站原创,未经授权禁止转载。