燕 山 大 学
大学生创新性实验计划项目
项目方案
项 目 名 称: 基于动态心电图特征提取的
心脏疾病预测技术
项 目 来 源: ( √ )国家级 ( )校级
项 目 编 号: 20091021614
负 责 人: 赵永科
联 系 电 话: 15933356710
所 在 院 系: 信息科学与工程学院电子与通
信工程系
专 业 年 级: 07 级电子信息工程
指 导 教 师: 李英伟
课题性质、来源: √独立课题 □导师的子课题□其他
项目起止时间: 2009-10 到 2010-10
2010 年 3 月 1 日
一、概述
本项目以 FPGA 为核心,设计了前级导联模拟放大电路、AD 转换与信号采集电路、
TFT 彩屏显示电路等一套具有体积小、功耗低、运算速度快等特点的硬件平台。
二、原理框图
三、模块详述
1.前级导联
由于心脏电兴奋传导系统所产生的电压时幅值及空间方向都随时间变化的向量,所以从
体表电极检测出的心电图将随电极位置不同而各异。为了完整记录心脏的电活动状况,常用
水平和垂直方向的十二种不同导联做记录,称为标准十二导联,即 I、II、III、aVR、aVL、
aVF、V1、V2、V3、V4、V5、V6 导联。为记录十二导联心电图,在测量时须在人体上安
放 10 个电极,分别为:右手电极 RA;左手电极 LA;右腿电极 RL;左腿电极 LL;胸部 6
个电极 C1~C6 。根据国家标准,由这些电极可以合成标准 12 导联心电图:(式中,VR、
VL、VF 和 Vi(i=1~6)表示右臂、左臂、左腿和胸壁的电位。)
(1) 标准肢体导联:
导联 I=VL-VR;
导联 II=VF-VR;
导联 III=VF-VL;
(2) 加压单极肢体导联:
aVR=VR-(VL+VF)/2;
aVL=VL-(VR+VF)/2;
aVF=VF-(VR+VL)/2;
(3) 胸导联:
Vi=Vi-(VR+VL+VF)/3;(i=1~6,为 6 个胸导联)
为了能无延迟地进行同步采集,我们准备将每一导联都经过一路放大然后送入 AD 通道
进行采集。标准 12 导联需要同时检测 12 路模拟信号,也就是需要 12 路放大和 12 个 AD 通
8 路 ECG 放 大
器
Vi
8 路 A/D 转
换模块
采样离散化
FPGA 系统
DSP 算 法 核 心 模
块
双 口
RAM
单 片 机 控
制系统
人机
交互
无线
模块
Flash
存储
道。但经我们调查了解,通常不必将 12 路全部测出,为了算法容易实现,也为了节约硬件
成本,我们只采集其中 8 路,就可以重构整个 ECG 信号。所以在我们的系统中,只采集以
下几路信号:导联 I,导联 II,V1~V6。其余 4 导联均可以从以上 8 导联经过简单加减运算
得到,这样已经能满足我们的实际需求。
2.前级放大电路
前级放大采用 ADI 公司的仪表放大器 AD623,其技术指标如下:
电源电压:+5V,-5V,可以单电源工作
输入失调电压:Vosi=25~200uV
输出失调电压:Voso=200~1000uV
输入偏置电流:IIB=17~25nA
输入失调电流:IIO=~2nA
最大输出电压:+,
差模输入阻抗:RID//CID=2Gohm//2pF
差模增益:1~1000 倍 Gain=1000 时,带宽为 2KHz
共模抑制比:Kcmr=105~110dB@Gain=1000
对应前级放大电路图图一图二所示:
图一、AD623 组成前端模拟-数字电路
图二、AD623 与前级输出匹配
图三 右腿驱动电路
通 过 外 接 精 密 电 阻 Rg , 放 大 器 增 益 设 置 为 100~200 倍 , 预 计 得 到 信 号 幅 值 在
60mV~800mV 之间,满足 AD 采样和量化以及后面算法实现的需求。由于信号较微弱,容
易受噪声干扰,导联线与 AD623 的输入阻抗匹配也很重要,这要通过实验的办法降低噪声
失真,增强抗干扰能力。
3.右腿驱动电路设计
右腿驱动电路是心电检测电路中必不可少的一个环节,良好的右腿驱动电路可以提高电
路的抗工频干扰能力,并与人体和放大电路共同形成闭合回路,保证心电放大电路的正常工
作。在共模驱动电路的基础上可以实现右腿驱动电路,如图所示。其中 COM 端为前级共模
输出信号,DA0 为输出信号,采用 DA 控制右腿驱动电路可用来调节人体的相对电平,保
证放大器的输入信号符合电路的工作范围。
模块电路
AD 采 用 ADI 公 司 的
AD7888,其技术指标如下:
电源电压 ~;
速度达 125kSPS;
片内 参考电压源;
低功耗正常模式 2mW;
12 位 ADC;
共 8 个 单 端 输 入 通 道
AIN1~AIN8;
串 行 接 口 SPI , QSPI ,
MICROWIRE,DSP 兼容接口;
适用于仪表放大和控制系统
图四 AD7888 原理框图
AD7888 的 12 位精度和 125kSPS 速度可以满足我们项目的需求。其接口为 SPI,与 FPGA
通信需要有相关模块的支持。使用 FPGA 控
制 AD7888,在速度上有很大优势,尽最大可
能保证信号的实时性。低性能的单片机如 51
系列单片机,由于不具有硬件 SPI 接口,在
同 AD7888 通信过程中可能会造成数据丢失,
而 FPGA 的 高 速 和 并 发 特 性 可 以 使 8 个
AD7888 同时采集,并将数据转入内部 FIFO,
数据处理模块接着完成后续工作,如数字滤
波、波形特征提取和模式匹配等。
图五 AD7888 应用电路
5.数据处理核心
FPGA 选用 EP3C5,对 8 路信号同步采集并存储到双口 RAM,交给单片机实时显示曲线。
同时,FPGA 内部集成 DSP 的核心处理单元,可以对采集的数据进行滤波、特征提取、模
式匹配以及压缩存储,由于 FPGA 的并发控制和高速处理,我们可以在不影响实时显示的
前提下完成心电信号的识别算法,并对异常信号发出警报,通过无线模块可以通知病人家属
和医护人员,避免意外的发生。
EP3C5 的资源如下:
5136 个 Les,46 个 M9K 块,总共 RAM 比特数 423936,18x18 乘法器 23 个,2 个 PLL,
全局时钟网络 10 个,182 个用户 IO 口。
分述如下:
LES(Logic Elements) and LAB(Logic Array Blocks):每个逻辑阵列块 LAB 包括 16 逻辑单元
LE,在 Cyclone III 中 LE 是最小的逻辑单元。
M9K:Cyclone III 系列的每个 M9K 存储块提供 9Kbit 片上存储器,可以支持 315MHz 操作
速度,用户可以配置为 RAM,FIFO 缓冲器或者 ROM。支持单口、简单双口和真双口操作
模式。其中单口、简单双口可以配置为 1,2,4,8,9,16,18,32 和 36 位宽度。真双口
模式支持 1,2,4,8,9,16 和 18 位宽。
嵌入式硬件乘法器和 DSP 支持
Cyclone III 系列产品支持最大 288 个硬件乘法器块,每个块支持一个独立的 18X18 位乘法
器和 2 个独立的 9X9 位乘法器。这些特性使得 Cyclone III 器件适合代替现有 DSP 系统,并
拥有高速,低成本,低功耗等特征。可以仅用 CycloneIII 器件或者作为 DSP 的协处理器,
大大提高性价比。
DSP IP cores:
通用 DSP 运算功能如有限冲击响应(FIR),快速傅里叶变换(FFT)和数控振荡器
(NCO)等。通用视频和图像处理功能。DSP Builder 接口工具方便地连接 Quartus II 软件
和 MATLAB。
6.单片机控制部分
这部分较简单,主要是从双口 RAM 中读取 FPGA 采集到的数据和处理的结果,显示到 TFT
液晶屏上,并做人机界面,方便用户操作。
单片机采用 MSP430F5438,可以支持 25MHz 操作,并尽可能降低功耗, 工作电压使
得无需采用电平转换电路便可以直接和 FPGA 传输数据。
无线模块采用 NRF24L01, 工作。
存储设备采用 SD 卡
导联线连接图如下