随着便携式医疗器械的普及,其中常用的有电子血压计。但是市面上的同类产品只能适用于偶测血压,针对一些疾病的确诊需要24小时监测病人的动态血压,此类产品就无法满足需要。加之对于一个家庭或者一个病人,经常需要偶测血压,但是有时也需要监测24小时动态血压,如果单独为了满足监测动态血压市场的需要而生产动态血压计,资源势必有些浪费。基于上述需求,根据市场上电子血压计的基本原理,提出了一种既能监测动态血压又能偶测血压的便携式电子血压计的设计思路。
1 设计理论
1.1 血压测量和24小时动态血压监测
目前,一般医院使用水银血压计测量血压,医生可以用听诊器听到动脉血管的不同声音,来判断收缩压和舒张压的值,这就是柯氏音法;而国内外大多数电子血压计普遍采用的是示波法。关于示波法的测量原理参见文献。
通常人们所测得的血压均属偶测血压(Clinic Bloodpressure,CBP)。偶测血压存在较大的局限性,它只能代表被测者当时的血压状况,有的人在测量时由于心情紧张或情绪波动造成血压读数偏高。动态血压监测(Ambulatory Bloodpressure Monitoring,ABPM)是一种全天24小时每隔15~30 min或任选时间间隔进行的自动的无创性血压测量及记录方法。人体典型血压的昼夜节律变化呈“双峰一谷”,即清晨醒后血压逐渐升高,在上午6:00~8:00出现第1个高峰,此后血压趋于平稳,下午4:00~6:00出现第2个高峰,夜间进入睡眠后,血压逐渐下降,夜间2:00~3:00降至最低。血压的昼夜节律是否正常是判断高血压病情严重程度的良好指标,而动态血压监测能够反映患者全天的血压波动水平和趋势,对高血压和心血管功能的评估提供极有价值的信息。
1.2 总体方案设计
动态血压监测,是在原有电子血压计的基础上,增加新的功能:自动控制血压计定时地使袖套充气和排气;能够调整自动测量血压的时间间隔,一般设定为每隔15~30 min记录1次,为了尽可能少地干扰患者日常活动和夜间睡眠,可根据实际需要调整时间间隔,如白天每隔30 min记录1次,夜间比白天记录时间间隔适当延长些,可设定为每隔60 min记录1次;能自动定时显示收缩压、舒张压、平均动脉压和脉率;增加RS-232串口通讯,方便在电脑软件平台上显示动态血压曲线;任何时候只要按下START按钮,马上启动加测,并能够在测量失败后自动补测;4节5号标准碱性干电池(1.5 V/每节)供电,低电压自动报警提示,更换电池后从断点起测等。
该装置总体框图,如图l所示,由微控制器控制气泵向袖带内充气至一定压力值(如180 mmHg),确保超过收缩压,使血流阻断,然后控制气阀以3~5 mmHg的速率阶梯式放气。在放气过程中,压力传感器将袖带内压力信号转换为电信号,电信号经过低通滤波器滤波,得到袖带的静压力信号和十分微弱的脉搏信号,一路送往单片机ADC0引脚,用以转换袖带静压力信号(微弱脉搏振荡信号可以忽略)成血压值;另一路经过高通滤波器滤波,得到脉搏振荡信号后,经过放大器放大分别送到单片机ADCl和AINl引脚,用以测量脉搏振荡信号幅度和经过比较器得到标准的脉冲信号来计算脉率,当检测到收缩压、平均压和舒张压后,打开气阀,使袖套全部放气,完成一次测量过程,并把测量结果保存、显示。整个测量过程由微控制器控制并完成各种计算。框图中的主要部分在下文中将分别详细介绍。
2 系统硬件电路的设计
2.1 模拟电路
2.1.1信号采集单元
血压的测量范围一般是0~200 mmHg,本文选择Motorola公司的硅压力传感器MPX5050GP,其内部含有温度补偿和放大器输出功能,可以直接与单片机接口相连,使用十分方便。MPX5050GP压力传感器具有如下特点:
(1)在0°C到85°C范围的最大误差为2.5%;
(2)温度补偿范围:-40~+125℃;
(3)压力测量范围:O~50 kPa(0~375 mmHg);
(4)供电电压:5 V(4.75~5.25);
(5)满量程输出:4.7 V;
(6)零位偏压电压:0.2 V;
(7)灵敏度:90 mV/kPa,反应时间1.0 ms。
本设计采用的单片机A/D转换模块的参考电压为AVCC电源电压5 V,而MPX5050GP压力输出为0~4.7 V,对应的血压值为0~375 mmHg,则5 V满量程对应的血压值约为399 mmHg(由375×5/4.7计算可得)。由于A/D转换器为10位,则1LSB所对应的血压值约为0.4 mmHg(由399/210计算可得),根据这样计算所造成的满刻度误差为(0.4×210-399)/1 024~1.04%,完全能满足设计需要。
2.1.2 模拟信号调理电路的设计
TLC2274是一款轨到轨通用四运放,具有高输入阻抗,高共模抑制比、低输入偏置电流、低温漂、低噪音等优良性能,并具有较高的电流驱动能力(±50 mA),适合于A/D转换这一类的接口电路。TLC2274-1构成40 Hz二阶低通巴特沃思滤波器,运放接成跟随器,放大倍数为1,信号由运放同相端输入,接成压控电压型(VCVS)滤波器。巴特沃思滤波器的最小条件是
中C3总是取最大的电容,通过换算确定R,以使c3=1μF,则R3=R4=R=5.63 kΩ,取特征值5.6 kΩ,C4=0.5μF。经过低通滤波器得到的直流信号一路送往ATmegal6的PA0(ADC0)引脚,另一路送到高通滤波器继续提取微弱的脉搏振荡信号。电路如图2所示。
C7和R7又构成了0.4 Hz一阶高通滤波器,TLC2274-3构成反相放大器,闭环放大倍数KF1可以调节到3.75倍。
TLC2274-4构成加法器,用来对脉搏信号进行相位和基线的调整,电路采取反相放大接法,增益KF2可达40倍,加上上一级放大器KF1,总增益KF=KF1*KF2=150,得到放大的脉搏振荡信号即血压交流成分送到单片机PAl(ADCl)和PB3(AINl)端进行处理。
2.1.3 气阀和气泵控制电路的设计
充、放气装置利用单片机控制直流电机和气阀的动作,当单片机引脚输出高电平时,气泵和气阀立即工作;输出低电平时气泵和气阀立即停止工作。由于选用的megal6单片机I/O引脚只能提供输出20 mA的电流,直流电机和电磁阀的额定电流都达几百毫安,因此选用集电极电流2 A、基极电流50 mA的TIPll2达林顿晶体管进行驱动,如图4所示。通过控制TIPll2的基极电平,实现袖带的充气和放气。由于气阀和气泵内部有线圈,属于感性负载,需用续流二极管D1,D2以防止烧毁器件。放气采用单片机的PWM输出实现控制气阀阶梯放气。采用常开气阀,系统复位时自动放气,避免气阀损坏时出现危险。
2.2 数字电路
系统的数字电路单元以单片机为核心,完成A/D转换、充放气控制、数据存储和数据传送的任务。综合各方面考虑,选用了AVR单片机ATmegal6作为主控制器,它内置模拟比较器和八路10位ADC,21个各种类型的内外部中断源,3个内部定时器/计数器(包括捕获功能),以及UART,SPI,TWI等丰富的总线资源;外围器件采用DSl302时钟芯片、AT24C256存储芯片和通过MAX232电压转换芯片实现与上位PC机的数据传送;同时具有JMl2864M汉字图形点阵液晶显示、键盘、蜂鸣器等人机接口器件,如图5所示。
为了实现电池供电系统检测到电池电量低时自动鸣响蜂鸣器报警和在液晶上提示电量不足,本设计采用专用看门狗芯片MAX813L,MAX8-13L不仅可监控微控制器,而且在系统加电、断电和电压降到复位门限值(电压降至4.65 V,PFI引脚门槛电压为1.25 V)时,输出复位信号和中断信号。
按键设有SET,UP,DOWN,START,AUTO键,分别用以设置时钟、动态监测开/关及时间间隔设置、上下时间调整/历史记录查阅、启动检测血压和启动动态血压自动监测。
3 系统软件设计
系统软件包括采集信号处理程序,串口驱动程序,气泵气阀驱动与控制程序、时钟、存储、显示器及键盘、蜂鸣器等相关的接口程序的设计。系统软件总体框图如图6所示。
3.1 采集和信号处理
本系统采用ATmegal6内部集成的10位的逐次逼近型ADC和7.372 8 MHz外部晶振,根据Nyquist采样定理,采样频率应大于等于被采样信号最高频率的两倍,以免采样后的信号发生频谱的混叠。同时考虑到选用的气泵、气阀有自动缓慢放气的特点,将采样频率设置为200 Hz、选择AVCC作为ADC的参考电平,转换结果为ADC=(VIN×1 024)/VREF。ADC模块的工作时钟由系统时钟经过128分频提供,转换周期由T/C0定时控制,定时器T/CO的时钟源采用系统时钟1 024分频,运行于普通模式,因采样频率是200 Hz,则采样周期是5 000μs,定时初值TCNT0=
256-7.372 8×5 000/l 024=0 xdc。转换模式选择自动转换触发工作模式,在定时溢出中断中运行A/D转换程序,A1通道转换完成之后,直接改变通道,开始A0通道转换。
为了最大限度地利用A/D转换的采样速率,用中断实现A/D转换后的数据处理。当A/D转换完成后触发中断,在嵌套中断服务程序中,将采样结果进行简单预处理。由于在信号采集过程中,经常会遇到尖脉冲干扰的现象,为避免采集到的是干扰信号,在一次定时中断服务子程序中连续进行4次模数转换,得到4个连续的数据,然后进行防脉冲干扰数字滤波。在此,采用简单有效的均值滤波法,即对4个数据进行比较,去掉最大值和最小值,然后计算余下的2个数据的算术平均值,视该算术平均值为所需的模数转换结果。这样即可滤除脉冲干扰又可滤除小的随机干扰,使测量更准确。
由于定时器T1具有2个比较匹配寄存器(OCRlA、OCRlB),故可通过两个I/O口PC6、PC7产生PWM信号分别控制气泵和气阀的开关。T/C1是这样工作的:选择T/C1的计数长度为16位,工作于快速PWM模式,时钟源来自系统时钟经过1 024分频,当定时器T1产生溢出中断前,首先比较匹配中断触发,气阀工作;定时器T1继续运行直到溢出,气阀停止运行。改变定时初值TCNTl和OCRlA、OCRlB的值,可以改变气阀、气泵运行的频率和输出脉冲的占空比。为保证测量工作能可靠进行,应使系统能够实现出错检测和自动恢复。
脉搏信号输入ADC模块ADCl通道的同时,也被输入到模拟比较器的负极AINl,芯片内部的固定能隙参考电源1.23 V将代替正极AIN0的输入,比较器输出ACO触发定时器T1的输入捕获功能,当捕获到脉冲信号的变化时,计数寄存器TCNTl(TCNTlH,TCNTlL)的值被传送至输入捕获寄存器ICRl,并赋予时间标记以说明该事件的发生时刻,从而计算出脉率。
3.2 数据存储
以单片机为核心的仪表要考虑发生断电时的数据保存问题,本系统需要保存的数据依次为受检者的收缩压、舒张压、平均压、脉率以及时钟芯片DSl302的月份寄存器、日期寄存器、小时寄存器、分钟寄存器。前3个参数每个参数占2 bit,脉率等后5个参数各占l bit,一次测量仅需要11 bit的长度存储数据。
假设白天(am 6:00~pm 10:00)每隔15分钟测量一次,共测64次;夜间(pmlO:00~次日am 6:00)每隔60分钟测量一次,共测8次;则一天共测量72次,需要11×72=792 bit。加上偶侧血压记录值的考虑,选用容量为32 kB的串行I2C总线E2PROM——AT24C256。AVR的TWI接口是兼容I2C总线的硬件接口,使用硬件接口编程比软件模拟简单,代码短,效率也高。
4 结束语
设计的便携式电子血压计具有成本低、功耗低、自动化程度高的优点,具有便携和易操作的特点,满足了人性化和连续监测动态血压的要求。文中给出了完整的设计方案及详尽的资料和数据。以ATmegal6为控制核心,辅以压力传感器、外围模拟以及数字电路,确保了该血压计设计的合理性和可行性。