采用了Σ-Δ型单片机ADμC848之后,简化了电路。
由于集成了高精度的16位Σ-Δ型A/D转换器,且其A/D参考电压可以编程调整(最小可达到10mV)。因此,它可以在保证精度和动态范围要求的情况下,直接进行A/D转换,而不必经过放大。这样,可以消除由于放大器的存在而带来的动态范围改变、噪声以及电压失调等一系列问题,并且减少了器件的使用,降低了实现成本。
由于该Σ-Δ型A/D转换器提供了差模输入方式,可以将传感器给出的差模信号直接送入A/D转换器,理论上其共模抑制比可以达到无穷大。因此,它可以大大降低由于前级放大电路的不匹配而造成的共模干扰。
由于Σ-Δ型A/D转换器转换过程要通过一个低通滤波器滤波,因此,在进行A/D转换之前,不必进行滤波处理,可以直接将传感器与A/D连接,然后再进行数字滤波。
由于ADμC848中集成了一个标准的恒流源,恒流数值可以通过软件编程调节。因此,可以根据产品应用的不同环境,将一个标准的压力输出进行采样,然后进行A/D转换,再根据转换结果及时调整恒流源,直到输出期望的转换数值,以实现产品的自动校准。
改进后的电子血压计硬件结构如图2所示。
2 软件设计
经过以上硬件处理后得到袖带内压力的变化曲线,在软件处理中,先要分离出其中的脉搏信号;然后去除干扰点,拟合包络曲线,找到对应的平均压;最后根据系数计算出收缩压和平均压。
在分离脉搏信号的过程中引入了形态滤波算法。由于袖带内压力信号与脉搏信号频带接近,直接采用带通滤波会减小信号幅度,降低信噪比,给后面的处理带来困难。而应用形态滤波处理算法,是从形态学角度分离信号,可以很好地提取脉搏信号。为了能够实时完成信号分离,将采用开运算进行处理,削平原始信号中所有的波峰,再用原始信号与处理后的信号做差,得到分离出的脉搏信号。图3为原始信号图,图4为分离出的脉搏信号。
为了有效抑制干扰,修复缺损的脉搏波,将根据每个脉搏波峰值与和它相邻的脉搏波峰值之间所成角度的关系,决定每个脉搏波的可信程度。由于脉搏波幅值不是单调变化的,因此,这样的判断还需要考虑幅值因素。其具体方法见文献[1]。
利用上面得到的每个脉搏波的权值信息进行包络拟合。由于所得包络线明显不对称(即二阶拟合不能满足要求),将采用带权值的三阶最小二乘拟合方式。拟合完成后,曲线上极大值所在位置对应的压力值,就是平均压的数值。
最后,参照文献[2]中的方法,根据平均压的大小决定采用何种幅度系数,并利用幅度系数计算出相应的收缩压、舒张压对应的位置,从而得到收缩压、舒张压的大小。
为了验证所得血压计的准确性,选取了一些典型的样本,将其测量结果与人工听诊的柯氏音法进行比对。
首先,用人工听诊的柯氏音法测量血压数值a1,相隔15分钟后,再用改进后的电子血压计进行测量,得测量数值b;再等待15分钟,用人工听诊的柯氏音法重新测量一遍,测得血压值a2,用a1与a2的平均值a作为人工听诊柯氏音法所得的测量数值。所得测量数据如表1和表2所示。
从以上几组典型的测量结果可以看出,应用本文所述的电子血压计测量血压,能够保证血压测量的精确度在5mmHg以内,基本满足血压测量的精度要求。
本文提出了一种基于SoC的血压检测仪器的实现方法。该方法的硬件集成度高,设计实现简便;软件设计集合了形态滤波等多种先进算法,精确度高,抗干扰性强。实验证明,这种血压检测仪具有很好的精度,能够满足血压测量的一般要求。