基于中颖SH79F164单片机的电子血压计应用
时间:07-01
来源:互联网
点击:
1.概述:
电子血压计因具有无创性、操作简单、携带方面等优点,目前得到广泛的应用和推广。无创检测血压的方法很多,如柯氏音法,测振法,超声法、双袖带法、恒定袖带法、逐拍跟踪法、张力定测法和恒定容积法等。其中测振法就是我们常说的示波法,由于具有较好的抗干扰能力,能比较可靠地判断血压、实现血压的自动检测而成为无创血压的主流。目前国内外大多数电子血压计都采用示波法。
示波法的原理同柯氏音法,也需要充气袖套来阻断动脉流,但在放气过程中不是检测柯氏音,而是检测气袖内气体的振荡波(测振法由此得名),这些振荡波是袖带与动脉耦合的结果,源于心血管周期内血管壁由于收缩舒张引起的压力脉动。理论计算和实践均证明此振荡波的幅度有一定的规律,与动脉收缩压、平均压以及舒张压有一定的函数关系。
针对示波法,本文将详细介绍基于中颖电子SH79F164单片机的血压计系统方案与软硬件实现。
2.硬件设计
在硬件电路设计方面,笔者参考了大量的资料,最终选定SH79F164单片机作为主控IC。其理由是SH79F164内建资源丰富,既能节省大量外围器件,又方便系统调试。SH79F164内建资源主要有:可编程仪表放大器(PGA)、带通滤波器、固定增益放大器、恒流源放大器、10位A/D转换器、时基定时器(RTC)。
硬件部分构成:压力传感器、SH79F164单片机、LCD、袖套、充气泵、放气阀、按键等(见图3)。
2.1.芯片介绍
SH79F164是中颖电子专门针对血压计应用而开发的增强型单片机。其整合了低功耗时钟和存储周期的高速8051可兼容单片机。在同样振荡频率下,较之传统的8051芯片它有着运行更快速的优越特性。
SH79F164保留了标准8051芯片的大部分特性。这些特性包括内置256字节RAM和2个16位定时器/计数器,1个UART和外置中断INT0、INT1和INT2。
SH79F164内建16K字节Flash,Flash区域除了能保存程序代码外,还能保存数据。因此,能通过程序实现用户采集到的血压历史记录数据保存在Flash区域,不用外接EEPROM来保存历史记录与标定初值,节省硬件成本。
SH79F164不仅集成了如EUART标准通讯模块,此外还集成了LCD驱动器、具有内建比较功能的ADC、可编程增益放大器、运算放大器、PWM定时器和时基定时器(RTC)等模块。
为了达到高可靠性和低功耗,SH79F164内建PLL 时钟、看门狗定时器、低电压复位功能。考虑到血压计应用SH79F164还提供了2种低功耗省电模式。
下图是SH79F164系统框图:
2.2.电路原理
压力传感器将用户袖套的血压信号转换为电压信号,经仪表放大器放大(PGA)后一路直接送A/D转换器得到袖套内绝对压力值(见图1),另一路送到由OP2和OP3组成的带通滤波器、固定增益放大器,提取脉搏信号(见图2)。
由内建OP2和OP3组成的带通滤波器其目的是滤掉直流成分,以及滤掉人体与袖带摩擦的高频噪声和50Hz工频噪声、电路噪声、PUMP与气阀噪声等,使软件能准确地提取脉搏振动波。
内建OP1构成恒流源为压力传感器提供恒定电流,根据传感器规格及实际应用,OP1输出的恒定选择在0.3mA~1mA。
内建可编程仪表放大器(PGA),主要特定是具有高输入阻抗而不会对sensor的恒流电路产生影响,同时又能保证对小信号放大的高增益性。仪表放大器包含两个部分的可编程增益,总计可编程增益为64档,其中PGA1的编程增益范围:16倍、32倍、64倍、128倍,PGA2的编程增益范围:1.33倍~2.58倍。如需要调整输出范围可分别通过:VREF1及VREF2两个偏置电压实现。
通过IC内建资源,本系统可实现程序自动标定初始化,不用人工调节外围电路,方便批量生产。
下图为系统前端小信号放大电路:
2.3.系统设计特点
压力传感器输出的信号直接连接到SH79F164单片机,由芯片内建资源完成放大、滤波、采集处理,外围器件极少(图6)。
图7为笔者所整理的传统电子血压计系统框图,由图可知,外围器件繁多,不便于生产、调试,而且系统成本高。
3.软件设计
3.1.软件算法
就示波法而言,其方法都是在平均压的基础上判定收缩压和舒张压,比较典型的方法有两种:比例法和S判别法。目前市场上大多数电子血压计都使用这两种算法计算血压值。本文采用S判别法计算收缩压和舒张压。
3.2.软件滤波
常用的软件滤波方法有许多,如:限幅滤波法、中位值滤波法、算术平均滤波法、递推平均滤波法、一阶低通滤波法等。本文对压力信号采用限幅滤波法滤除异常的抖动,对脉搏信号采用二阶低通滤波算法再次滤除50Hz工频干扰,对心率信号计算采用中位值平均滤波法。
3.3.系统标定
由于SH79F164内建PGA和滤波电路,对增益及偏置电压能通过内部寄存器来设置。因此,传感器offset校正、压力曲线范围调节、零点与满幅点初值确定都能软件自动实现。系统标定主要特点为:
(1).程序自动标定,无需人工调节电位器,按键三次即完成标定
(2).程序总标定时间小于10ms(不包括充气及工人按键时间)
(3).程序自动标定sensor offset
(4).最大校准零点偏移:±30mV,常用sensor小于±20mV
(5).最大输入量程:120mV,300mmHg压力对应30mV左右
(6).自动确认零点值与满幅值
系统标定初始化分三个步骤:
第一步:零点标定(见图8)。零点标定的目的是保证输入信号在PGA的有效范围内,以及不同传感器的offset值能有效标定。
电子血压计因具有无创性、操作简单、携带方面等优点,目前得到广泛的应用和推广。无创检测血压的方法很多,如柯氏音法,测振法,超声法、双袖带法、恒定袖带法、逐拍跟踪法、张力定测法和恒定容积法等。其中测振法就是我们常说的示波法,由于具有较好的抗干扰能力,能比较可靠地判断血压、实现血压的自动检测而成为无创血压的主流。目前国内外大多数电子血压计都采用示波法。
示波法的原理同柯氏音法,也需要充气袖套来阻断动脉流,但在放气过程中不是检测柯氏音,而是检测气袖内气体的振荡波(测振法由此得名),这些振荡波是袖带与动脉耦合的结果,源于心血管周期内血管壁由于收缩舒张引起的压力脉动。理论计算和实践均证明此振荡波的幅度有一定的规律,与动脉收缩压、平均压以及舒张压有一定的函数关系。
针对示波法,本文将详细介绍基于中颖电子SH79F164单片机的血压计系统方案与软硬件实现。
2.硬件设计
在硬件电路设计方面,笔者参考了大量的资料,最终选定SH79F164单片机作为主控IC。其理由是SH79F164内建资源丰富,既能节省大量外围器件,又方便系统调试。SH79F164内建资源主要有:可编程仪表放大器(PGA)、带通滤波器、固定增益放大器、恒流源放大器、10位A/D转换器、时基定时器(RTC)。
硬件部分构成:压力传感器、SH79F164单片机、LCD、袖套、充气泵、放气阀、按键等(见图3)。
2.1.芯片介绍
SH79F164是中颖电子专门针对血压计应用而开发的增强型单片机。其整合了低功耗时钟和存储周期的高速8051可兼容单片机。在同样振荡频率下,较之传统的8051芯片它有着运行更快速的优越特性。
SH79F164保留了标准8051芯片的大部分特性。这些特性包括内置256字节RAM和2个16位定时器/计数器,1个UART和外置中断INT0、INT1和INT2。
SH79F164内建16K字节Flash,Flash区域除了能保存程序代码外,还能保存数据。因此,能通过程序实现用户采集到的血压历史记录数据保存在Flash区域,不用外接EEPROM来保存历史记录与标定初值,节省硬件成本。
SH79F164不仅集成了如EUART标准通讯模块,此外还集成了LCD驱动器、具有内建比较功能的ADC、可编程增益放大器、运算放大器、PWM定时器和时基定时器(RTC)等模块。
为了达到高可靠性和低功耗,SH79F164内建PLL 时钟、看门狗定时器、低电压复位功能。考虑到血压计应用SH79F164还提供了2种低功耗省电模式。
下图是SH79F164系统框图:
2.2.电路原理
压力传感器将用户袖套的血压信号转换为电压信号,经仪表放大器放大(PGA)后一路直接送A/D转换器得到袖套内绝对压力值(见图1),另一路送到由OP2和OP3组成的带通滤波器、固定增益放大器,提取脉搏信号(见图2)。
由内建OP2和OP3组成的带通滤波器其目的是滤掉直流成分,以及滤掉人体与袖带摩擦的高频噪声和50Hz工频噪声、电路噪声、PUMP与气阀噪声等,使软件能准确地提取脉搏振动波。
内建OP1构成恒流源为压力传感器提供恒定电流,根据传感器规格及实际应用,OP1输出的恒定选择在0.3mA~1mA。
内建可编程仪表放大器(PGA),主要特定是具有高输入阻抗而不会对sensor的恒流电路产生影响,同时又能保证对小信号放大的高增益性。仪表放大器包含两个部分的可编程增益,总计可编程增益为64档,其中PGA1的编程增益范围:16倍、32倍、64倍、128倍,PGA2的编程增益范围:1.33倍~2.58倍。如需要调整输出范围可分别通过:VREF1及VREF2两个偏置电压实现。
通过IC内建资源,本系统可实现程序自动标定初始化,不用人工调节外围电路,方便批量生产。
下图为系统前端小信号放大电路:
2.3.系统设计特点
- 采用SH79F164增强型单片机为核心,执行速度比传统8051快10倍左右
- 主控芯片Flash程序存储器空间大:16Kbyte,内建EEPROM功能
- 系统低功耗设计:空闲模式12uA、掉电模式1uA
- 主控芯片内建RTC模块,记录实时时钟
- 主控芯片内建仪表放大器(PGA)、带通滤波器、固定增益放大器、恒流源OP
- 血压计出厂标定程序自动实现,不用人工调节外围电路
- 内建唤醒电路,省电模式下可用于关闭DC/DC器件
- 精减外围器件,器件构成:SH79F164+Sensor+电阻电容
压力传感器输出的信号直接连接到SH79F164单片机,由芯片内建资源完成放大、滤波、采集处理,外围器件极少(图6)。
图7为笔者所整理的传统电子血压计系统框图,由图可知,外围器件繁多,不便于生产、调试,而且系统成本高。
3.软件设计
3.1.软件算法
就示波法而言,其方法都是在平均压的基础上判定收缩压和舒张压,比较典型的方法有两种:比例法和S判别法。目前市场上大多数电子血压计都使用这两种算法计算血压值。本文采用S判别法计算收缩压和舒张压。
3.2.软件滤波
常用的软件滤波方法有许多,如:限幅滤波法、中位值滤波法、算术平均滤波法、递推平均滤波法、一阶低通滤波法等。本文对压力信号采用限幅滤波法滤除异常的抖动,对脉搏信号采用二阶低通滤波算法再次滤除50Hz工频干扰,对心率信号计算采用中位值平均滤波法。
3.3.系统标定
由于SH79F164内建PGA和滤波电路,对增益及偏置电压能通过内部寄存器来设置。因此,传感器offset校正、压力曲线范围调节、零点与满幅点初值确定都能软件自动实现。系统标定主要特点为:
(1).程序自动标定,无需人工调节电位器,按键三次即完成标定
(2).程序总标定时间小于10ms(不包括充气及工人按键时间)
(3).程序自动标定sensor offset
(4).最大校准零点偏移:±30mV,常用sensor小于±20mV
(5).最大输入量程:120mV,300mmHg压力对应30mV左右
(6).自动确认零点值与满幅值
系统标定初始化分三个步骤:
第一步:零点标定(见图8)。零点标定的目的是保证输入信号在PGA的有效范围内,以及不同传感器的offset值能有效标定。