打印
[其它应用]

中颖 单片机血压计设计

[复制链接]
3813|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yyller|  楼主 | 2020-8-13 09:33 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
电子血压计因具有无创性、操作简单、携带方面等优点,目前得到广泛的应用和推广。无创检测血压的方法很多,如柯氏音法,测振法,超声法、双袖带法、恒定袖带法、逐拍跟踪法、张力定测法和恒定容积法等。其中测振法就是我们常说的示波法,由于具有较好的抗干扰能力,能比较可靠地判断血压、实现血压的自动检测而成为无创血压的主流。目前国内外大多数电子血压计都采用示波法。  示波法的原理同柯氏音法,也需要充气袖套来阻断动脉流,但在放气过程中不是检测柯氏音,而是检测气袖内气体的振荡波(测振法由此得名),这些振荡波是袖带与动脉耦合的结果,源于心血管周期内血管壁由于收缩舒张引起的压力脉动。理论计算和实践均证明此振荡波的幅度有一定的规律,与动脉收缩压、平均压以及舒张压有一定的函数关系。
  针对示波法,本文将详细介绍基于中颖电子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+电阻电容。
       2.4.系统框图
  压力传感器输出的信号直接连接到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值能有效标定。
  第二步:满幅标定(见图9)。满幅标定的目的是调节绝对压力信号的输出斜率,保证系统压力值检测精度。
  第三步:零点确认(见图10)。本步骤的目的是修正压力曲线的斜率,以及确认之前调节过的参数设置。
  3.4.程序流程
       按键检测充气开始ON / OFF电源开关键ONOFF压力阀值检测YesNo停止充气袖套开始放气检测压力检测脉搏峰值保存峰值与袖带压力值结束检测完成根据计算结果显示: 收缩压,舒张压,心率进入自动标定程序系统标定按键YesNo标定完成系统复位判断标志位确定是否已做标定NoYes第一步: 零点标定第二步: 满幅标定第三步: 零点确认
  4.结束语
  本文给出了基于中颖电子SH79F164单片机为核心的电子血压计设计方案,充分利用了该芯片内建的功能模块,具备电路简单、低功耗、精度高以及实用性强等特点,具有较高的设计参考价值,可供电子爱好者或业内设计人员参考。

使用特权

评论回复
沙发
paotangsan| | 2020-9-4 14:43 | 只看该作者
帖子很不错

使用特权

评论回复
板凳
renzheshengui| | 2020-9-4 14:44 | 只看该作者
感谢楼主分享

使用特权

评论回复
地板
wakayi| | 2020-9-4 14:45 | 只看该作者
路过 学习了

使用特权

评论回复
5
wowu| | 2020-9-4 14:45 | 只看该作者
开拓眼界了

使用特权

评论回复
6
xiaoqizi| | 2020-9-4 14:46 | 只看该作者
内容还不错啊

使用特权

评论回复
7
yujinjin616| | 2021-3-11 12:05 | 只看该作者
成熟了吗?

使用特权

评论回复
8
真爱吴迪迪| | 2021-3-11 18:54 | 只看该作者
这个有没有血压的算法呢?

使用特权

评论回复
9
yujinjin616| | 2021-5-26 16:28 | 只看该作者
你好,血压计方案成熟了吗?我需要。  我QQ:67232490

使用特权

评论回复
10
单片小菜| | 2021-5-26 23:16 | 只看该作者
内容不错的,很不错的感觉。

使用特权

评论回复
11
caigang13| | 2021-6-1 18:21 | 只看该作者
有成熟的应用电路和代码吗?参考一下下。

使用特权

评论回复
12
weifeng90| | 2021-6-3 21:35 | 只看该作者
有参考电路嘛?

使用特权

评论回复
13
yangxiaor520| | 2021-6-4 08:03 | 只看该作者
有完整参考电路嘛?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

132

主题

241

帖子

1

粉丝