摘 要:利用具有直观图形化编程和强大数字信号处理功能的虚拟仪器编程语言LabVIEW为开发平台,研制了一套虚拟心电数据采集、记录系统。该系统具有心电波形实时显示、心率显示及报警,波形存储及回放等功能。
关键词:心电 数据采集 LabVIEW 虚拟仪器
Abstract: A virtual ECG recording system has been developed based on the platform of virtual instrument program language of LabVIEW, which has powerful digital signal processing and visually figure programming function. The system’s functions include real-time ECG waveform display, heart rate display, alarm for abnormal heart rate, ECG waveform storage and redisplay.
key word: ECG; data acquisition; LabVIEW; virtual instrument.
1 引言 心电信号是生物电活动信息的表征,通过心电信号可以判断的健康状况。心电研究一直是医学领域的一个重要课题,心电图是心血管等疾病临床检查诊断的重要方法。 传统的心电记录方法主要靠心电图机来完成,其信号采集、处理和显示主要由硬件电路完成,电路生产技术要求较高,设备价格较贵,且维护和更新不便。虚拟仪器技术的发展为改造传统的心电记录设备提供了很好的技术支持,它利用计算机强大的软件处理功能和丰富的硬件资源来组成插卡式虚拟仪器系统,利用丰富的软件系统实现通常由硬件完成的功能。 LabVIEW是美国NI公司开发的图形化虚拟仪器开发软件,它具有编成简单,结果直观等特点。我们利用LabVIEW、自制多路心电放大器和PCI6023数据采集卡组成虚拟仪器系统,开发出界面友好的智能化心电采集、记录、分析系统,使心电数据处理、显示、存储、回放和分析等全部由计算机完成,克服临床医生心电分析个体差异,同时也方便构成远程监护和诊断系统。
2 系统构成 心电信号采集、记录系统如图1所示,主要由硬件和软件两大部分组成,硬件主要包括多路心电放大器、数据采集卡和PC机组成。其主要功能是实现心电信号的采集、处理和A/D转换,将信号通过DAQ板引入PC机进行处理。软件采用LabVIEW 6i对采集到的心电信号进行显示、分析和处理。
多路心电放大器为自行设计,其组成框图2所示,主要包括前置放大器、带通滤波器、工频陷波器、主放大器和光电耦合电路组成。前置放大器选用AD公司的高性能精密仪表放大器件AD620组成,采用该器件设计出的生物电前置放大器,电路结构简单、调试方便,很容易满足心电前置放大器高输入阻抗、高增益、低噪声、低漂移等技术指标;带通滤波器由截止频率为0.05Hz的一阶有源高通滤波器和截止频率设计为400Hz的4阶Butterworth低通滤波器组成,实现对干扰信号的滤除和让0.05~100Hz的心电信号无失真地通过;工频干扰的滤除由采用双T有源滤波器形式的50Hz陷波器完成;主放大器用来对处理过的心电信号进行调理,以满足PCI6023数据采集卡对输入信号的电平要求;光电耦合器用来实现与电器上的隔离,保证电气安全。
3 系统软件设计 LabVIEW开发平台下编制的程序称为虚拟仪器程序,简称为VI。VI包括三个部分:前面板程序、框图程序和图标/连接器。前面板程序的功能是实现信号采集的控制、处理和直观表达;框图程序程序乃系统程序的图形化源代码,主要包括函数、结构和代表前面板上各控制对象和显示对象的端子以及连线等,用于实现对信号的采集处理和分析等操作。 前面板设计 利用LabVIEW 6i设计的心电采集系统的前面板如图17所示。虚拟仪器的前面板是仪器与用户交互的可视化操作界面,用户通过操作前面板的各种开关和按钮,可以实现心电信号的实时采集、心率计算与显示、波形存储和回放等各项功能。前面板中设置了两个波形显示控件,左上面用来实时显示采集到的心电波形,左下面用来现实回访的波形,以利于医生观察、诊断所需的心电图。 [align=center]
图3 心电采集记录系统前面板[/align] 心电信号实时采集显示程序 程序设计了一循环结构,通过“停止”开关决定是否进入心电采集状态。通过“开始采样”按钮状态控制进入内循环结构,通过调用“AI READ”程序完成心电信号的实时采集,其中设置的每秒扫描数为scans/s,缓冲区的大小为个扫描数据,一次读入的扫描数为scans,并用循环寄存器保存每次读入规定扫描数后,内存中尚未读取的采样数据个数。同时再调用一个“case”结构完成心率的实时显示。程序通过调用一个“case”结构完成心率的实时显示。心电信号实时采集、显示框图程序如图4所示。 [align=center]
图4 实时采集、显示框图程序[/align] 心律计算程序 本模块的程序代替了传统心电图机硬件电路中的微分,整形和计数器电路,采用软件方法完成心电信号的R波检测、周期和心率计算功能。将采集到的实时心电信号接入“peak detect”程序实现R波的检测,从而计算出两个R波间期和心率。 [align=center]
图5 心律计算框图程序[/align]
4 心电信号处理 从图6采集到的心电波形可以看出,信号中的干扰成分主要为高频干扰、工频干扰和基线漂移,对R波检测和R-R间期计算会产生很大的误差,因此需对信号进行有效的滤波处理,计算、分析程序才能得出正确的结果。 [align=center]
图6 原始心电信号波形[/align] LabVIEW 6i 具有较强的信号处理能力,其中有多种形式的数字滤波器可供选择。采用Singal Processing ToolBox控件中的Equi-Ripple Bandstop实现对50Hz工频信号的消除;采用Median Filter控件实现消除基线漂移功能;利用Digital FIR filter控件中的Chebyshev数字滤波器实现对高频信号的滤除。通过以上方法处理后的心电信号波形如图7所示,从中可以看出,各种干扰信号得以有效滤除、R波得以提升,达到了理想的效果。 [align=center]
图7 处理后心电信号波形[/align]
5 结束语 LabVIEW为研制开发智能化医学仪器提供了很好的开发环境,利用LabVIEW开发虚拟医学仪器具有结果显示直观、程序设计简单和开发周期短等优点。我们利用LabVIEW研制的心电采集、记录系统目前只初步完成了一些主要功能,进一步的研究内容主要包括放大器增益的程序控制、导联自动选择、时间常数选择、滤波器选择和信号处理软件的完善等,相信经过进一步的优化,完全可以满足医学电子仪器实验教学和临床诊断的需要。 本文作者创新点:利用LabVIEW 6i构成虚拟心电记录系统;LabVIEW环境下心电信号R波提取的软件实现;LabVIEW环境下信号滤波软件实现。
参考文献 [1]赵崇侃. 双时值QRS波检出电路[J],中国医疗器械杂志, 1995,19(3):158-160 [2]邓东云,等. 一种生理弱信号的模拟处理电路的设计[J],中国医疗器械杂志, 1994,18(5):262-265 [3]汪敏生等译著. LabVIEW基础教程[M].北京: 电子工业出版社, 2002.1 [3] LabVIEW Measurements Manual[M]. National Instruments, 2000.7 [4]于杰、李川勇等.基于LabVIEW的心电信号采集系统的设计[J],生物医学工程与临床,2001,5(3): 131-133 [5]王建群 南金瑞等. 基于LabVIEW的数据采集系统的实现[J],计算机工程与应用, 2003,21: 122-125 [6]燕延、马增强等. 基于LabVIEW的数据采集与处理软件编程技巧[J],微计算机信息,2005,21(5): 153-154