《电子技术应用》
您所在的位置:首页 > 可编程逻辑 > 设计应用 > 基于FPGA的多通道生理信号监护仪的设计
基于FPGA的多通道生理信号监护仪的设计
来源:电子技术应用2013年第11期
田 军1, 张冰洋2, 詹垒垒1, 陈亚光1, 武 力1
1. 中南民族大学 生物医学工程学院,湖北 武汉430074; 2. 中南民族大学 创新创业中心,湖北 武汉430074
摘要: 提出了一种基于SoPC技术的生理信号监护系统的设计方案,以Altera公司Cyclone II系列EP2C35F672芯片为核心,设计了心电、脉搏波、血氧信号采集和处理模块。基于Nios II嵌入式软核处理器进行应用程序开发,实现了多通道生理信号的24小时实时监控。
关键词: SoPC FPGA 便携式 监护仪
中图分类号: TH77
文献标识码: A
文章编号: 0258-7998(2013)11-0070-04
Portable multi-channel physiological signal monitor based on FPGA
Tian Jun1, Zhang Bingyang2, Zhan Leilei1, Chen Yaguang1, Wu Li1
1. Department of biomedical Engineering, South-Central University for Nationalities, Wuhan 430074, China; 2. Students Innovation and Entrepreneurship Center,South-Central University for Nationalities, Wuhan 430074, China
Abstract: A design of physiological signal monitoring system based on SoPC is proposed.The chip of EP2C35F672,which is a member of Cyclone II series of Altera,is chosen as the central processing unit. Processing modularized circuits of electrocardio(ECG), Pulse signal and SpO2 are designed. The system software is developed based on the embedded core of Nios II. Real-time monitoring of physiological signals can be executed by the system for 24 hours.
Key words : FPGA; SoPC; portable; monitor

    在现有的医疗、社会、科技背景下,医学监护己经朝着个人化、便携化和多功能化的方向发展。目前家用便携式医疗电子产品已在越来越多的家庭中广泛使用,但这类产品功能比较单一,通常只对某种单一疾病的生理参数提供监测[1],比如心脏病、高血压或糖尿病等,不能满足多项生理信号实时监控的要求。功能全面的医用监护仪大多体积庞大,一般应用在医院等固定场所。随着我国经济的发展,心血管疾病已经成为中国成人首要的死亡原因[2]。鉴于心血管疾病患者发病前期不能长期静卧于医院,又需要对病情进行长期监护,因此研制一款高性能的便携式多参数生理信号监护仪对心血管患者的实时监护具有十分重要的意义。利用FPGA并行运算的优点[3],本文设计了一种便携式多通道生理信号监护仪,实现了对多项生理参数的实时监护。系统采用智能化电源管理方案,功耗低,续航时间长,体积小,重量轻,操作简单,满足了心血管患者家庭实时监护的需要。

1系统硬件设计
    该便携式多通道生理信号监护仪的硬件部分主要包括信号调理、数据采集与数据处理、数据存储与数据读取、数据通信、人机交互5个模块。 系统硬件框图如图1所示。

    该系统采用Altera公司的Cyclone II系列 EP2C35F672作为中央处理芯片。EP2C35F672采用可编程的查找表LUT(Look Up Table)结构,支持129通道的LVDS(低压差分串行)和RSDS(去抖动差分信号),最高支持640 Mb/s的数据传输能力,与一般处理器的单端I/O标准相比,这些内置的LVDS缓冲器保持了信号的完整性,并且具有更低的电磁干扰、更好的电磁兼容性(EMI)以及更低的电源功耗[4]。这些特点满足了系统快速运算和信号稳定的需求。系统由信号调理、数据采集与数据处理、数据存储与数据读取、数据通信、人机交互等模块组成,能实时地对心电、脉搏、血氧饱和度进行监护。
1.1 A/D转换模块设计
   系统需同时对多种生理参数进行监护,这要求ADC芯片具有多通道、速度快的特点。本设计最终选用MAX186,这款芯片具有8个模拟输入通道,输出数据精度为12 bit,支持低功耗模式(1.5 mA(运行状态),2 μA(待机状态)),最高数据转换频率达到133 kHz,与主控芯片通过SPI协议进行通信,如图2所示。

1.3 脉搏采集模块设计
 采用压电传感器采集桡动脉脉搏,为计算脉搏波速度,前后放置两个传感器在桡动脉处。设计了两路对称的调理电路实现脉搏信号的采集。电路由前置放大电路、滤波、二级放大电路组成,如图4所示。

1.4 血氧采集模块设计
    采用双波长法测量血氧饱和度,光电传感器将透射光转换成电流信号,通过I-V转换、前置放大、隔直电容将信号分成直流分量和交流分量,分别进行滤波和放大后送至A/D。传感器LED驱动电路如图5所示,分时段点亮两个LED。控制FPGA的GPIO口产生PWM信号,通过滤波器滤除其中的谐波成分,实现PWM至DAC的转换,调节PWM占空比即可调节驱动电流大小,从而调整血氧探头输出信号的光电流大小。

2 系统软件设计
    系统开发环境采用Quartus II 和 Nios II IED。采用SoPC(System on Programmable Chip)技术在Quartus II中定制软核,进行FPGA底层逻辑配置,在Nios II IDE中进行系统功能的软件开发。
2.1 Nios II软核的定制
    Nios Ⅱ嵌入式处理器是Altera公司推出的采用哈佛结构、具有32位指令集的第二代片上可编程的软核处理器, 其最大优势和特点是模块化的硬件结构, 以及由此带来的灵活性和可裁减性[5]。根据系统的功能需求配置底层软核驱动,如图6所示。

 

 

    (1)同时或者分别处理各个信号时,为了避免数据的丢失与覆盖,要求较高的数据转换速率。为此笔者在SPI驱动(SPI Controller)中加入了一个容量为1 KB的缓冲器(Buffer)(见图2),能迅速将数据同时“推送”给处理器,有效提高数据处理速度。
    (2)监护仪的显示模块采用3.5英寸TFT液晶屏,因此需加入LCD Controller驱动。为了方便视力较差的老人使用,系统还预留了VGA接口,可将所有数据接入外部显示器显示,所以需添加VGA Controller核。
    (3)所有的数据都必须实时地以文本格式保存,方便医生诊断参考。系统采用大容量SD卡作为存储介质,故加入SD Card Controller核。
    (4)允许用户进行相应功能的选择操作,并根据数据处理结果给予相应提示,系统预留按键、蜂鸣器和LED指示灯,加入GPIO控制驱动。
    (5)为了进一步处理需要,需将存储的文件发送给PC。选用最常用的串口通信, 需加入RS232核。
2.2 应用程序设计
    系统的总体功能描述如下:开机后,根据相应的信号接入情况智能选择A/D工作模式:待机、单参数模式和多参数模式。在待机模式中系统通过降低采样频率、降低传感器驱动电流、降低LCD亮度等方式来降低系统能耗。通过对采集的数据进行IIR数字滤波来保证结果的准确性。设定低通滤波器的截止频率为35 Hz,初步滤除包括工频在内的高频干扰;设定高通滤波器的截止频率为0.5 Hz,消除基线漂移等低频干扰[6]。对数字滤波后的数据进行数据分析和处理,计算心率、脉搏波速和血氧饱和度,在LCD中显示数据和波形。为了方便医护人员进行复查,监护日志以文本格式存入SD卡。
    由于不同用户的体征参数不尽相同,信号幅度和周期等参数就必然不同,所以系统还必须自适应地调整采样频率、显示幅度和基线位置。另外系统还必须根据用户的选择,把数据通过串口发送给PC,或者把SD卡中的文件读出在LCD上显示。主函数流程图如图7所示。


    为滤除呼吸等低频干扰,消除基线漂移,设计切比雪夫高通滤波器,技术指标为Ws=0.5 Hz,Wp=4 Hz,Rp=0.1,Rs=80,数学模型阶数较高,这里不给出。图8、图9分别为处理前后的心电信号。


    计算心率首先要识别QRS波群,本设计中使用的判据为斜率、极值点、幅度阈值、周期范围[7]。实验证明通过以上4个判据,系统能准确地识别QRS波群,结合采样频率就能迅速计算出心率。
    数字滤波处理后的双路脉搏波形如图10。首先利用极值点、斜率判据找出相邻两个主搏峰,计算出相邻波

3 系统结果分析
  经调试,系统可实时采集心电、脉搏、血氧信号,可将数据在LCD或外接显示器上显示,同时完成数据保存并上传数据至PC。实测中,以迈瑞公司PM9000多参数生理监护仪显示的参数为标准,本系统计算得到各项生理参数的准确度可达95% 以上。因此,系统作为一个监护仪器可及时地检测出人体的健康状况,用户可根据系统的提示对一些病症做出及时反应,当检测到的信号指标超过预设值时,系统将蜂鸣报警,达到了预期效果。

参考文献
[1] 余奎,林国庆,耿俊佑,等.现代医学监护仪器的应用特点及发展趋势[J].医疗设备信息,2003,18(1):41-43.
[2] 纪璟峰. 中国成人心血管疾病危险因素的流行病学研究[D]. 北京:北京协和医学院,2011.
[3] 潘松,黄继业. SoPC技术使用教程[M].北京:清华大学出版社,2005.
[4] 周立功,等.SoPC嵌入式系统基础教程[M].北京:北京航空航天大学出版社,2006.
[5] 杨刚,肖宇彪,陈江,等. 32位嵌入式系统与SoC设计导论[M].北京:电子工业出版社, 2006.
[6] 李刚,刘巍,虞启连,等.抑制工频干扰及基线漂移的快速算法[J].北京:中国生物医学工程学报,2000,19(1):99-103.
[7] 朱凌云,吴宝明.移动心电监护系统QRS波的实时检测算法研究[J].仪器仪表学报,2005,26(6):603-607.
[8] DI G, TANG X, LIU W. A reflectance pulse oximeter. design using the MSP430F149[C]. IEEE/ICME International Conference in Complex Medical Engineering, 2007:1081-1084.
[9] LEE J,Wongeun JungAuthor Vitae,IkTae KangAuthor Vitae, et al. Design of filter to reject motion artifact of  pulse oximetry[J].Computer Standards & Interfaces,2004(26):241-249.

此内容为AET网站原创,未经授权禁止转载。