摘要:研制一种功能强大、成本低的心电远程监测系统,可实 现远程医疗心脏病患者。该系统前端采用FPGA控制,采集和存储人体的心电(ECG)信号,通过串口将心电数据传入计算机,并在LabVIEW软件平台下 实现心电信号的显示和远程传输系统。其中大部分功能是由软件设计实现,以便于后续功能扩展。实验结果达到预期目标。该系统可广泛用于医院、社区、家庭、户 外监护,帮助医生及时诊断病人。
关键词:FPGA;心电信号;LabVIEW;DataSocket
心脏是人体血液循环的动力装置,心脏波动是生命存在的标志,心脏节律是人体生理状态的重要标志。当今心血管疾病已成为发病率极高的常见病之一,极大威胁人 们的生命。设计一种性能可靠、价格低廉、体积较小的心电采集与远程传输系统对心血管疾病的检测和预防具有重要意义。本系统采用FPGA实现心电信号采集的 硬件系统,采用LabVIEW开发平台实现对心电信号的处理,包括利用DataSocket技术实现远程监测系统。该系统将心电监测从病床、医院扩展到社 区、家庭实施远程监护,对于解决医疗资源分布不平衡、减少病人转诊费用支出和劳累之苦等都具有重要意义。
1 系统的构成
整个系统由心电信号采集、心电信号串口传输、心电信号处理等3部分构成。其结构框图如图l所示。前端硬件设计首先采集心电信号,通过串口将该心电信号传入 计算机,然后在LabVIEW软件系统下对其处理。
1.1 系统硬件设计
该系统硬件是指由FPGA控制心电信号的采集、片外存储,以及串口传输模块,前端采用标准导联采集人体的心电信号,通过电路板的信号调理电路后送入A/D 转换器,利用硬件描述语言(VHDL)在FPGA中设计A/D采样控制器,片外存储(SRAM)控制器和串口通信控制器分别控制信号通过A/D转换,存储 到片外SRAM中并通过串口传入计算机,存储到片外SRAM中,以便在网络临时出现故障一次未发送成功的情况下,重新发送数据。图2为该系统硬件结构框 图。
获取心电图的方法是依靠与肢体接触的电极,称为“导联”。本系统通过前端电极、引入人体标准导联心电信号,对心电信号进行必要的放大和去除干扰。而同时引 入的心电信号要经信号调理电路放大和滤波后才能对其A/D转换,信号调理电路如图3所示。其中右腿驱动技术对抑制交流信号干扰效果较好。前置放大器放大输 入电路微弱的(变化缓慢的)心电信号,同时将干扰信号降至{zd1}。系统设计的通带频率为
0.05~100 Hz的带通滤波电路,将心电信号的有用成分从采集到的信号中分离出。输出放大器将进一步放大心电信号,这样可使信号调理电路输出的心电信号满足本系统采用 的A/D转换模块的刻度范围。由于心电信号易受市电50 Hz工频干扰,因此这里采用陷波电路,即带阻滤波器,滤除干扰。{zh1}将处理后的心电信号送入A/D转换器的输入端。本系统设计的心电信号采集板为单通道采 集板,适用于众多心脏疾病患者。
1.2 LabVIEW软件系统
LabVIEW是NI公司推出的专业测试软件开发平台,其特点是图形化编程环境,软件设计和功能设计相互独立,网络功能强大,支持多种常用网络协议,开放 性强等。LabVIEW软件是图形化编程环境的xx者,使用该软件进行原理研究、设计、测试并实现仪器系统,可大大提高丁作效率。
1.2.1 串口通信
虚拟仪器软件结构体系VISA (Virtual Instrument Software Architecture)实质上是I/O接口软件库及其规范的总称,是VXIplug&play体系联盟统一采用的标准。VISA是在 LabVIEW开发平台上控制VXI、GPIB、RS232、PXI、PCI以及其他种类仪器的单接口程序库,是对其他总线驱动函数进行的一个统一封装的 高级API,通过VISA可直接访问测试硬件设备。
LabVIEW中用于串口通信的节点实际上是VISA节点,VISA节点单独组成一个子选板,包括8个节点,位于函数选板→“数据通信”→“协议”→“串 口”子选板中,实现串口的配置、读写、串口中断、设置I/O缓冲区大小、清空I/O缓冲区等操作。但需注意的是在使用串口前,应安装VISA驱动软件。
1.2.2 心电波形的显示和存储
波形显示是指将接收到的心电数据绘制连续波形,以供专家分析。LabVlEW中基本的图形显示控件都位于Controls→ALL Controls→Gra-ph子模板上。Graph和Chart是LabVIEW图形显示功能中的2种最基本元素。这2个元素都可称为“图”,但是在 LabVIEW中它们却有很大差别。一般来说,Chaa称为“记录图”,它是将数据在坐标系中实时、逐点(或一次多个点)显示,反映被测物理量的变化趋 势,与传统的模拟示波器、波形记录仪的显示方式相仿。Graph则是对已采集数据进行事后处理,在先得到所有需要显示的数据,然后根据实际要求将这些数据 组织成所需的图形。并一次性显示阁。因此本系统选用Chart实时显示,Graph波形回放。
采用信号的时间和瞬态特性测量Express VI测量信号的周期和频率。使用写入测量文件可将数据存放在文本文件中,需要回放时,使用读取测量文件回放数据。这样可实现心电信号的实时显示、存储、回 放、打印等功能,还可进一步建立数据库。测试界面如图4所示。
1.2.3 心率计算及报警
LabVlEW具有较为强大的信号处理能力,由于心率测量反映心率的快慢,因此实时准确的心率检测在病人监控、临床xx等方面具有广泛应用。
本系统首先将心电信号转换为同周期的方波信号,通过求解方波信号的周期获得心电信号的周期。即利用LabVIEW提供的数组功能模块检索心电信号中相邻2 个采样点的数据,将其相减后乘以采样频率,这样就转换成导数值构成的数组。设置阈值并与数组内导数相比较;若大于阈值则输出高电平;反之,则输出低电平, 从而得到一系列方波,这样就可测出R波,2个相邻R波间的时间为心率周期,再将其转换为每分钟的心跳数。通常人的心率在50~150次/min,因此,可 设置心率的上下限,当心率超过该范围时,指示灯点亮,表示病人有生命危险。
1.2.4 心电信号的远程传输
LabVIEW可提供TCP、浏览器、RDA和DataSockel等通信方式。其中,DataSocket是NI公司推出的一项基于TCP/IP协议的 新技术,该技术是面向测量和网上实时高速数据交换,用于一个计算机内或者网络中多个应用程序之间数据交换。虽然目前已有TCP/IP、DDE多种用于两个 应用程序之间按共享数据的技术,但是这些技术都不是用于实时数据(Live Data)传输的。只有DataSocket是一项在测量和自动化应用中用于共享和发布实时数据的技术。
DataSocket实现的是数据通信,而将复杂的数据处理及显示留给客户端自行完成,网络只负责传递数据(包括控制命令),{zh1}形成测试系统是一个 C/S模式的系统。这样网络资源消耗少,通信速度快,适合实时性要求高、数据量比较大的远程测控。
DataSocket的工作方式如图5所示。DataSocket Publisher和Datasocket Subscliber是DataSockel Server的客户端,通过DataSocket Servert进行数据共享和交换,三者可运行在同一台机器或3台单独机器上(视具体情况而定)。将服务器与发布器和订阅器分离,以提高系统的安全性和可 靠性。
DataSocket基本体系由协同工作的3个部分构成:服务器管理(DataSocket Server Manager)、服务器端(DataSocket Server)和客户端(DataSocket API)。同时还包括Dstp(DataSocket Transfer Protocol)协议、通用资源定位符URL(Uniform Resour DataSocket Servet Managerce Locator)和文件格式等规程。
DataSocket对外提供的资源定位接口和功能调用接口,通过URL方式访问服务器中的数据项,读数据时为源地址,写地址是为宿地址。在URL中表明 数据的传输协议、网络计算机标志和数据缓冲区变量,如图6所示。
DataSoeket支持多种数据传输协议,不同的URL前缀表示了不同的协议或数据类型。如“dstp://HYY/data”,其中HYY为服务器名 称,data为数据项的名称。由此可见,DataSocket简化了应用程序之间、计算机之间的网络数据传输,简化程序通信,提高编程效率。
2 系统应用及注意事项
该系统可应用于医院内外的心脏病人,系统硬件电路模块通过串口与PC机或便携式计算机相连,显示、存储、分析、打印和远程传输心电数据,医生根据传输的心 电数据及时诊断心脏病人的病情。而软件设计部分实现远程传输时应注意:数据传输之前要分别在服务器与客户机上启动DataSocket Server.建立连接,规定URL和控件连接方式,进而发送和读取数据。
3 结束语
本系统不同于传统的心电监测系统之处在于采用软件编程实现心电监测系统功能,以便于系统功能扩展。经实验测试,数据显示和远程通信未出现失真,达到了预期 效果。利用DataSocket通信技术实现心电数据的远程通信,网络资源利用率高,传输数据量大,并且在服务器处理能力足够强的情况下,可服务多个被监 测病人。被监测病人可位于医院或医院外(比如家庭、办公室、户外等),只要有PC机或便携式计算机及网络都可实现心电实时监测。可见,该系统具有强大功能 和低成本的特点为众多心脏病患者提供方便,增强医疗服务系统,具有较高的社会使用价值和市场前景。