一种反射式红外心率检测仪设计
扫描二维码
随时随地手机看文章
为了测量心率信号,有许多技术可以应用,例如:血液测量,心声测量,ECG测量等等。本文探讨利用血液的高度不透明性及组织与血液透光性的极大差异,通过光电脉搏传感器获取脉搏信号,经过模-数转换(A/D)后,采样数据经数字化分析处理,以实现对人体心率的测量。
1 心率检测仪组成及工作原理
心率检测仪的主要组成如图1所示。由光电传感器采集脉搏信号,经过前置放大、滤波、单片机uPSD3234A自带的A/D转换模块采样得到脉搏信号的数据并存入存储器中;单片机对所得的数据进行数字信号处理并计算出心率值,结果送显示模块和存储器中。
1.1 心率信号采集预处理电路
脉搏信号采集预处理电路主要是将脉搏波转换成电信号,并进行初步高频滤波预处理。其关键部分就是光电式脉搏传感器。光电式脉搏传感器按光的接收方式可分为透射式和反射式两种。
反射式不仅可以精确测得血管内容积变化,而且在实际应用中反射式只需将传感器接触身体任何部位,当照射部位的血流量随心脏跳动而改变时,红外线接收探头便接收到随心脏周期性地收缩和舒张的动脉搏动光脉冲信号,从而采集到心脏搏动信号。
本设计采用了反射式红外传感器。图2所示,光电式脉搏传感器采用红外对管KP-2012F3C和KP-2012P3C,反射式排列。KP-2012F3C具有良好的表皮照明度,电流一般设在20mA,亮度由软件通过PWM电流来进行控制,这样能够使红外LED工作在饱和区域,发出稳定光强的光。
KP-2012P3C晶体管采用交流耦合结构来增强对微弱信号放大。经晶体管检测出来的信号采样时分两路。一路是直流信号线路。它是晶体管输出经射随输入单片机的A/D转换通道口0,可用来检测晶体管是否处于有效工作状态;另一路是交流信号线路。它是先经一射极跟随器输入到两级滤波成形电路然后再输入单片机的A/D转换通道1.该滤波电路为两级带通滤波电路,由于脉搏波的频谱蕴含丰富病理信息,特别是在5~40Hz这个区间的频谱携带了大量与冠心病病变有关的信息,故考虑到今后功能的扩展,预处理电路的上下限频率设计为48Hz和0.86Hz.
图2 脉搏信号采集预处理电路
1.2 uPSD3234单片机
本文采用ST(意法半导体)公司的新型单片机uPSD3234作为系统的核心部件,它以增强型MCS-51内核8032单片机为基础,具有丰富的外围设备,集成了PSD(ProgrammableSystemDevice,可编程外围器件)模块,并含有大容量FLASH和RAM的存储器,集成I2C和USB接口电路,数字显示(DDC)通道,5个脉宽调制(PWM)控制器,4路8位AD转换器,可编程逻辑器件(PLD),是一个典型的具有SOC特征的高速单片机。因此不需要增加复杂的外围电路就完全能满足设计要求。
uPSD3234片内的USB模块支持低速的USB1.1通信协议,心率检测仪采样数据以及信号处理过程中得到的数据就可以传输到PC机存储及进一步的分析处理。
2 心率信号数字处理及算法
在测量过程中,预处理电路探测到的脉搏信号容易受到外界干扰,需要对干扰噪声进行处理。
一般可以通过两种途径对噪声处理:一是增加滤波电路;二是从数字信号处理的角度,通过算法来减少噪声。如果在外围加入滤波电路会使成本增加,并影响仪器的便携性,另外由于干扰的不确定性,滤波的效果不会很好。软件滤波尽管会占用一定的系统资源,但成本低、可靠性高、稳定性好,在处理速度允许的条件下,具有灵活、方便、功能强的优点。本文主要采用数字滤波的方法来进行处理,其中最重要的算法是匹配滤波算法。
所谓匹配滤波器就是使滤波器输出信噪比在某一特定时刻达到最大并由此导出的最佳线性滤波器。匹配滤波原理:设输出信噪比最大的最佳线性滤波器的传输函数为H(ω),滤波器输入信号与噪声的合成波为:
式(1)中,s(t)为输入数字信号,其频谱函数为S(ω),n(t)为高斯噪声。
由于该滤波器是线性滤波器,满足线性叠加原理,因此,滤波器输出也由输出信号和输出噪声两部分组成,即:
式(2)中,输出信号的频谱函数为S0(ω),其对应的时域信号为:
滤波器输出噪声的平均功率为:
所以,在抽样时刻t0,线性滤波器输出信号的瞬时功率与噪声平均功率之比为:
从式(3)可见,在输入信号给定的情况下,输出信号比r0只与滤波器传输函数H(ω)有关。根据施瓦兹不等式:
根据帕塞瓦尔定理有:
式(5)中,E为输入信号的能量,故得关系式:
根据施瓦特不等式中等号成立的条件X(ω)=kY*(ω),k为任意常数,可得不等式中等号成立的条件为:
式(7)中,K为常数,通常可选择为k=1.
S*(ω)是输入信号频谱S(ω)的复共轭。该滤波器在给定时刻t0能获得最大输出信噪比2E/n0。
这种滤波器的传输函数H(ω)除相乘因子Ke-jωt0外,与信号频谱的复共轭相一致,所以称该滤波器为匹配滤波器。
易得到匹配滤波器的脉冲响应为:
红外线接收探头获取的动脉搏动光脉冲信号的数字匹配滤波的过程是通过输入信号序列s(n)与匹配滤波器的冲击响应序列h(n)求卷积的方法来实现的。
由于匹配滤波器只匹配相应的输入信号,一旦输入信号发生变化,原来的匹配滤波就不再称为匹配滤波器了,而脉搏波十分复杂,即使同一人的脉搏也不是每一周期都相同,所以需要针对脉搏信号的特征设计匹配滤波器。根据脉搏波的形成机理和脉搏的特征点,设计了四种脉搏波微分波形作为匹配滤波器的模板,如图3所示。模板长度为100,恰好是微分波形主脉冲峰的宽度。
工作时,通过比较四个模板的输出结果来确定使用哪一个滤波器的输出值。
本设计利用uPSD3234内置的ADC对经预处理后的脉搏信号进行采样,采样频率为500Hz.
下面将简单介绍整个数据处理过程:
1)经ADC通道0和通道1采样得到信号波形图如4图所示。
2)对采样的交流信号数据进行低通滤波。由于设计仅实现心率检测的功能,故此低通滤波截止频率设计为8.5Hz,部分波形如图5所示。
3)利用脉搏波形态上具有陡峭上升沿的特点,通过微分运算将其突出出来,部分波形如图6所示。
4)检测上面微分波形图的负脉冲信号需要用到匹配滤波器。另外,由于匹配滤波输出值会因为心率检测仪的使用对象、放置位置等因素的影响而产生很大的变化,所以在设计中还需要其能够自动调节阈值。信号大于阈值,则认为是检测到了一个心跳信号。匹配滤波及检测输出的效果如图7所示。
以上信号处理得到的心跳检测信号即是反映人体瞬时心跳的信号,据此可用一种中值算法精确地计算出测量对象的心率。此中值算法为:如果心跳检测信号的两个脉冲间隔在人心跳的正常间隔内,则记录间隔时间,否则跳过。在记录足够的心跳间隔后即可算出这些间隔的中值。根据中值可以规定这些间隔的上下边界。处在上下边界之间的值视为有效间隔值。当有效间隔值的数目超过设定的数量时,就可以算出平均间隔值。由于采样频率为500Hz,所以每个间隔为2us.由此得出比较精确的心率。
3 软件设计
系统软件流程如图8所示。主要有显示驱动程序、按键处理程序、信号处理程序、心率检测程序、USB通信服务程序等。
图8 软件流程图
4 结语
本文所设计的反射式红外心率检测仪主要采用了匹配滤波等数字信号处理方法得到心率数据,将微电子技术与生物医学工程技术紧密地结合在一起,达到了设计要求,目前,本设计已成功应用于健身产品跑步机中,具有一定的创新性和实际应用价值,并且有良好的市场推广价值。