基于VC++的心电信号数据采集系统

基于VC++的心电信号数据采集系统
武利珍;张文超
【摘 要】该文针对常规心电监护设备体积笨重、价格昂贵和不利于家庭化的局限性,设计了一种基于STM32芯片能够实时采集心电信号的电路.采集的心电数据通过串口提交到PC机,以VC++为开发平台,设计了心电信号采集系统.经实验室使用验证,该系统可实现对心电信号的实时采集、显示和存储,而且性能可靠,工作稳定,成本又大大地降低.
【期刊名称】《杭州电子科技大学学报》
【年(卷),期】2010(030)003
【总页数】烧镁砖4页(P13-16)
【关键词】心电信号;便携式;数据采集
【作 者】武利珍;张文超
三自由度
【作者单位】杭州电子科技大学电子信息学院,浙江,杭州,310018;杭州电子科技大学电子信息学院,浙江,杭州,310018
【正文语种】中 文
【中图分类】TP368.2
心脏病是威胁人类健康的主要疾病之一,而心电图是其诊断的重要依据。临床医学实践表明,对于心脏病的防治,最有效的手段是预防和保健。心脏病具有突发性的特点,但是目前由于心电图机的应用场合的限制和HOLITER的价格非常昂贵,使得病人得不到实时监控,这对病人的病情诊断和是极为不利的。随着PC机的普及,设计基于PC机的医疗器械已越来越受到欢迎,医疗设备家庭化已成为一种发展趋势[1]。本文介绍的是项目“基于STM 32的便携式心电图仪设计”的一部分,该项目是要开发一种体积小、价格低的能够随身携带的心电监护系统,并能够借助串口实现数据与PC机的通信。本文介绍了采集和处理心电信号的硬件电路和上位机软件管理系统。
系统原理框图如图1表示。心电信号由电极获取,经前置放大电路、高低通滤波、主放大和
电平抬升电路处理后,得到符合要求的模拟心电信号,并送入到STM 32的ADC进行AD转换。为了更好的抑制干扰信号,在电路中还引入了右腿驱动电路。系统控制芯片采用意法半导体公司推出的新型32位ARM内核处理机芯片STM 32系列中的STM 32F103VC,AD转换后的数字心电信号经过滤波处理得到光滑、正确的心电信号数据,最后将滤波后的心电信号通过串口可靠地传输到PC机,以便对心电数据做进一步的分析和处理。
系统硬件主要划分为3大部分:前置放大电路,主要完成心电信号的提取;带通滤波及主放大电路,用于调理采集到的信号,使之符合处理要求;STM 32处理电路,完成心电信号数据传送功能及其他控制。
前置放大电路是硬件电路的关键,直接决定整个系统性能的好坏。因此必须根据心电信号的特点来选择合适的放大器。体表心电信号的频率主要集中在0.05~100Hz,幅度大小为10μV~4mV,典型值为1mV,是一种低频率的微弱双极性信号。而STM 32的ADC输入端电压范围是0~3.3V,因此需要对心电信号进行放大和电平抬升,总体放大倍数约为1 000倍,然后再通过电平抬升电路抬高1V左右。心电测量中,实际的电极不可能完全对称,这样将会引起基线漂移现象,还有无处不在的电源工频50Hz干扰,肌电干扰等,这些都要求心电前置放大器必须有很高的共模抑制比。一般要求共模抑制比在80dB以上[2]。
本设计选用INA 118仪表放大器作为系统前置放大器,它具有低噪声、低漂移、高共模抑制比、高输入阻抗等特点,它的增益可达1 000倍,计算公式为:G=1+50k/Rg。防止前置放大器进入截止或饱和状态,这里增益取10,由G=1+50/Rg得出Rg=5.6k。由于人体的阻抗和心电电极阻抗非常大,所以在前置放大前设计了一级跟随作为信号缓冲。为了更好的抑制50Hz干扰,采用右腿电极经电阻与放大器接地端相连,以降低人体的共模电压[3]。心电前置放大电路及右腿驱动电路如图2所示。
丙酮回收心电信号频带主要集中在0.05~100Hz,因此带通滤波器设计的带宽为0.03~110Hz以滤除干扰信号。带通滤波器用高低通滤波器来构成[4],如图3所示,基于小型化和成本考虑,硬件滤波只用一阶高通滤波器和一阶低通滤波器,虽然设计了右腿驱动电路,但是仍然有50Hz干扰进入电路,本文不再设计50Hz陷波器,而改为用软件的方法通过设计数字滤波器来滤除工频干扰。
图3中高通滤波器由U5A、C4、R6组成,设置其截至频率为f=0.03Hz,低通滤波器由U5B、C5、R7组成,设置其截至频率为f=110Hz。
STM32系列采用ARM公司具有突破性的Cortex-M3内核,工作频率为72MHz,内置高速存储
器,丰富的增强I/O端口和连接到两条APB总线的外设。所有型号的器件都包含2个12位的ADC、3个通用16位定时器和一个PWM定时器,还包含标准和先进的通信接口:多达2个I2C和SPI、3个USART、一个USB和一个CAN。该内核是专门设计于满足集高性能、低功耗、实时应用、具有竞争性价格于一体的嵌入式领域的要求。
STM32的应用为项目基于STM 32的便携式心电图仪设计带来了优势。无需外扩芯片即可完成心电信号的采集、显示、存储和传输等。本文只介绍与PC机通信的USART模块电路。由于串行通信采用RS232电平信号,而STM32输出的电压范围是0~3.3V,因此为了将心电信号传至上位机,采用电平转换芯片ST3232进行信号之间电平的转换。该芯片可将单片机输出的心电信号的电平转化为RS232电平,并将其传至上位机进行显示。
下位机的软件设计包括初始化设置、A/D转换、串口通讯等几个主要部分。ADC采用DMA中断方式,采样频率为200Hz,中断服务子程序完成电压的采集和数据的发送。DMA中断程序流程图如图4所示。ADC设置为定时器外部触发。
经过处理后的心电信号通过串口送到上位机。在上位机上通过VC++软件编程[5]实现心电信号的显示,记录,回放和分析等功能。上位机管理软件的开发是使用V isual C++6.0完成的。
VC++与Windows操作系统密切结合,有一套功能强大的可视化类库(MFC),采用面向对象的编程方法。上位机主要分为以下的几个部分:(1)串口通信程序,完成心电信号的读入;(2)心电信号显示程序,实时显示出心电波形;(3)心电信息管理程序,主要是完成记录采集时的信息和分析结果并存储到.txt文件中。软件流程如图5所示。
心电波形即为本系统从作者本人身上采集到的一段心电信号如图6所示。从图6可看出,该心电信号清晰,波形平稳,基本上没有基频漂移的干扰,50Hz的工频干扰也得到了很大的抑制,满足了进一步处理分析的要求。
本文以高性能、低功耗的STM32芯片为硬件基础,设计了前端心电信号采集硬件电路,以VC++为软件开发工具,实现了对心电信号的实时采集、显示和存储等。与传统的采用数据采集卡的系统相比,不仅操作简单,通用性强,而且极大地降低了成本,很适合于后续的功能开发。下一步是完善其分析功能。
重力加速度的测量
【相关文献】铣床主轴
无动力除尘[1]代少升,张跃孙.便携式远程心电实时监护仪的研制[J].医疗卫生设备,2008,27(9):1-2.
[2]王大雄.嵌入式便携心电监护仪的功耗降低方法研究[J].工程设计学报,2007.1 l(2):99-102.
[3]W inter BB,Webster JG.Driven-right-leg Circuit De-sign[J].IEEETrans Biomed,2005,27(8):62-66.
[4]程佩青.数字信号处理教程[M].北京:清华大学出版社,2004:261-262.
[5]孙雄勇.VISUAL C++6.0实用教程[M].北京:中国铁道出版社,2004:208-225.

本文发布于:2024-09-24 02:31:33,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/156016.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:电信号   电路   设计   采集   系统   采用   心电
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议