基于可编程片上系统的智能电子血压计设计介绍
扫描二维码
随时随地手机看文章
对以往电子血压计的不足,介绍了一种基于可编程片上系统(SOPC)的智能电子血压计的设计,血压测量的方法采用基于充气过程的示波法。该系统采用Cyclone II系列低成本FPGA,并嵌NNIOS II软核作为核心处理器,可以完成自动测量血压、信息显示、数据存储、查看和删除历史数据等功能。由于采用了FPGA,从而简化了电路的设计,提高了系统的可靠性和稳定性,并且使系统具有较强的可扩展性,有利于系统的升级。
血压是反映心血管系统状态的重要生理参数,合适的血压是维持人体正常新陈代谢的必要条件。随着人民生活水平的不断提高以及城市老龄化程度的提高,人们自我保健意识逐渐增强,电子血压计具有低成本、小型化、自动化程度高等优点,如今已作为家庭必备的保健用品,倍受人们的青睐。SOPC(可编程片上系统)是 Altera公司提出的一种灵活、高效的SOC解决方案。用可编程逻辑技术把整个系统放到一块硅片上,称作SOPC。它可以将MCU、DSP和FPGA完美结合,有非常好的发展前景。
1 人体血压测量原理 1.1血压测量血压测量方法有很多,最常用的无创血压测量方法为柯氏音法和示波法。本文设计所采用的是基于充气的示波法。基于示波法的充气测量恰好是放气测量的逆过程,如图1所示,在压力增加(充气)过程中,检测静压力和袖带内气体的振荡波,振荡波起源于血管壁的搏动。压力较小时,在袖带静压力小于舒张压Pd之前,动脉管壁在舒张期已充分扩展,管壁刚性增加,因而波幅维持在较小的水平。随着压力的增加,当袖带压力高于收缩压Ps时,动脉被压闭,此时因近端脉搏的冲击而呈现细小的振荡波;当袖带静压等于平均压时,波幅达到最大值;振荡波的包络线所对应的袖带静压力就间接地反映了动脉血压。
1.2 心率计算
心率指心脏每分钟搏动的次数,由于心脏与脉搏搏动一致,所以在测量血压的同时可以测得心率。心率的测定关键判断脉搏波的峰值,然后根据在一定时间内测定有多少个脉搏波,从而计算出心率。
2 SOPC系统的硬件设计SOPC系统的硬件设计框图如图2所示。
2.1 SOPC系统电路
该部分电路由FPGA芯片、存储器以及其他外围元件组成,是信号处理的核心部分。由SOPC Builder硬件开发环境构建包括CPU、存储器接口和I/O外设的嵌入式微处理器系统。完成系统设计后,可以用SOPC Builder来生成系统。下图为在SOPC Builder中构建的系统内容配置。
SOPC系统中添加了EPCS设备控制器核,这样做的目的是做到充分利用系统资源,将FPGA的配置数据以及Nios II的软件程序固化到EPCS芯片中,为Flash芯片节省出更多的空间来存储测量结果。这时Nios II处理器的复位地址要设置为EPCS控制器的基地址,当系统复位后固化到EPCS芯片中的程序将自动下载到SDRAM中运行。
图4为由SOPC Builder硬件开发环境生成的SOPC系统的顶层模块图。
2.2 压力测量电路 2.2.1 压力传感器选型本设计的压力传感器选择的是Motorola公司生产的MPXV5050GP压力传感器。其内部含有信号运放,具有信号调节功能,有良好的线性度,可以直接将动脉血液对血管壁的压力转换为0.2~4.7V的电信号,对应的血压值为0~375mmHg,与血压计的设计要求非常匹配。
2.2.2 驱动电路的设计控制气泵和电磁阀工作的信号是由FPGA发出的,气泵需要的工作驱动电流为450mA,电磁阀为75mA,而FPGA的数字I/O输出电流不能满足要求。因此,为给气泵和电磁阀提供合适的驱动电流,采用达林顿管阵列ULN2803驱动电路来驱动气泵和电磁阀工作。ULN2803可输出500mA的电流,分别利用ULN2803的第一路、第二路来驱动电磁阀和气泵,第三路驱动一个LED用来指示脉搏波信号。如图5所示。