浅析基于ARM的单电源心电图检测的原理及算法实现

发布者:BlissfulSpirit最新更新时间:2012-01-16 关键字:ARM  心电图检测 手机看文章 扫描二维码
随时随地手机看文章

随着心电图技术的临床应用和电子技术的发展,心电图作为生物医学测量中一项较成熟、应用较广泛的技术,已逐渐成为一种常规临床检查的手段,并在心脏疾病的诊断、监护以及药效分析等方面发挥着十分重要的作用。


目前常用的心电检测电路多为双电源供电,这种方案需要很多的电源器件和较大面积的布局布线,而这些都将增加产品的成本。

本文给出的设计采用单电源供电,可以解决上述问题并降低产品成本,同时该设计还在基于ARM核的嵌入式系统中采用了简单实用的算法,能快速准确定位QRS复波(即计算人的心率)。该设计面向广大家庭用户而设计,体积较小,只需要一台个人电脑与之连接,便可实时地操作、观测心电信号。

心电信号采集系统的基本架构如图1所示。人体的心电信号经电极和专用导联线从人体送至系统。通过滤波和放大调节电路,微弱的心电信号被放大到合适的幅值,并处于A/D转换范围之内。

30.jpg

图1:心电信号采集系统的基本架构

系统的控制和数据的处理由ADI公司基于ARM7 TDMI核的MCU ADuC7020来完成。这款芯片有丰富的片内外围电路,处理速度高达40MIPS,A/D转换速度可达1MSPS,具有很高的性价比。最后将结果由 ADuC7020通过UART口送至计算机,由计算机通过由LabVIEW编写的界面将结果直观地显示出来或存储下来。图2是基本的硬件电路图。

31.jpg

图2:基本的硬件电路

从人体或是心电信号发生器上采集到的心电信号幅值在0.05~5mV之间(一般为2mV),频率在0.05Hz~75Hz之间。心电信号要经过缓冲、匹配电阻网络、电压放大和滤波等几级电路。

心电信号首先经过一个两级的RC低通滤波电路,进入缓冲级。信号进入系统之前,需要除去高频分量,因此这里设计了一个截止频率为300Hz的低 通滤波器,以保证0.05~75Hz的微弱心电信号不会被衰减。缓冲级由电压跟随器组成,它可以提高整个放大电路的输入阻抗,降低输出阻抗。为保证差分信 号的一致性,应选用集成在芯片上的放大器。匹配电阻网络通常采用威尔逊电中心端网络,它通过特定的电阻网络获得威尔逊电中心端作为整个ECG系统的参考 点。

滤波放大电路的前级采用负反馈差分放大电路,这里使用ADI公司可调增益高共模抑制比的仪表放大器AD8221作为前级放大器。放大倍数设为8倍,由公式G=49.4kΩ/RG+1计算得到,其中RG是AD8221两个RG管脚之间的电阻值。

这个电阻应当选用高精度、低温漂的金属膜电阻,以保证AD8221的低噪声性能。AD8221的REF管脚没有接地,而是和一个低通滤波器构成 负反馈回路,以便能有效地滤除直流分量,从而使U1处的电压始终箝位在1.25V。因为是单电源供电,而不同导联的心电信号电压有正有负,所以一定要提供一个合适的箝位电压。ADuC7020的AD转换模式下电压输入范围是0-2.5V,这里就选择中间值1.25V作为箝位电压。

AD8221输出的单端信号幅值非常小,其中还混有大量干扰,无法进行数据处理。后级滤波放大电路由一个增益较大的有源低通组成,增益可调。不同人的心电信号强弱不一样,考虑到有衰减,一般将该增益设为150倍。系统的传递函数为:

32、.jpg

这两个低通滤波器都要求具有低电压偏移、低温漂和低噪声特性,ADI公司的轨到轨输入输出双运放AD8607能够很好地满足这些要求。由于第二级放大器是反相端输入,所以最后得到的信号是反相的,这可以在软件中再作处理。

从保护病人和提高系统的共模抑制比两方面考虑,必须将共模信号反相并放大后,再反馈给人体,这样系统和人体就共同构成了一个电压并联负反馈网 络,即通常所说的右腿驱动电路。由ADuC7020对处理后的心电信号进行AD转换,选择定时器控制的ADC采样模式。一次A/D转换结束,触发ADC中断,在中断服务程序中对数字信号进行处理。

处理心电数字信号的关键是对心电信号中QRS复波的精确识别。正常人的QRS波群的宽度为0.06至0.10秒,且不受心律变化的影响。针对R 波很尖锐的特点,我们通过一个滑动时间窗判断信号峰、谷是否满足要求,同时确认其是否在时间窗内。对信号幅值的阈值采用双可变阈值法,即对波形设置波峰阈值和波谷阈值。如果峰阈值和谷阈值在一段适当时间内有较大变化,则重新设置峰阈值和谷阈值。下面我们将对QRS复波定位和心律计算进行讨论。对起始一段时间的信号只进行反相和滤波处理,这是为了将倒置的心电信号恢复过来,并避免信号初期的波动影响阈值。然后在一定的时期内,根据采样得到的数据设置峰阈值 Thpeak 和谷阈值THtrough,然后对QRS波进行定位。最后,按以下步骤(见图3)进行数据处理。

32.jpg

图3:数据处理的基本步骤

读取新采样点Ni:

1)判断采样的信号点幅值是否大于峰阈值Thpeak。如果不满足,则回到第1)步。

2)如果满足条件,则开始计数n=1,并记录n值为peaktime1。将时间窗的起始边滑至此处。

3)继续采样Ni+1,每采样一次则n+1。

4)判断新的采样点Ni+1是否小于谷阈值。如果不满足,则回到第4)步。

5)如果满足采样点小于谷阈值Thtrough,则记录该点的n值为troughtime1。

6判断这两次满足幅值要求的信号点时刻troughtime1和peaktime1之差是否在时间窗内,即是否小于窗宽度THtime。如果不小于THtime,则回到第1)步。

7)如果满足,则这段信号被认为是一个QRS波群。Peaktime1就被定位为一个R波。

有了定位的R波,就可以在此基础上按以下步骤统计心率:1)找到第一个R波,并记录n值为peaktime1;2)找到第二个R波,并记录n值为peaktime2;3)按照以下公式计算心律。

33.jpg

实践证明,采用这种算法计算得到的心律准确率高、计算简便、易于实现,并最终在PC机上观察到心电信号波形和心律值。

关键字:ARM  心电图检测 引用地址:浅析基于ARM的单电源心电图检测的原理及算法实现

上一篇:ARM9+Linux下电子纸驱动的设计与实现
下一篇:基于ARM的脑血氧监测仪的软件设计与实现

推荐阅读最新更新时间:2024-03-16 12:51

ARM Cortex-A55: 从端到云实现高效能
你是否已经听说了最近市场上发布了几款新的 CPU?它们的性能非常强大!当然,我说的就是 ARM Cortex-A75 和 Cortex-A55,即首批基于新近发布的 DynamIQ 技术的 Cortex-A 系列处理器。本文我们讨论的就是 Cortex-A55:一款对为未来数字世界举足轻重的处理器,原因如下。 出生名门,久经考验 ARM Cortex-A75 和 Cortex-A55 是首批问世的 DynamIQ 处理器。 想要理解 Cortex-A55 的真正潜力,我们来简要回顾一下其上一代产品:ARM Cortex-A53。采用这款 CPU 的设备已超过 15亿台,该 CPU 依然是当今业界出货量最高的 64 位 Co
[物联网]
<font color='red'>ARM</font> Cortex-A55: 从端到云实现高效能
ARM Linux异常处理之data abort
1 异常向量与程序跳转 data abort是ARM体系定义的异常之一。异常发生时,ARM会自动跳转到异常向量表中,通过向量表中的跳转命令跳转到相应的异常处理中去。 ARM的异常处理向量表在entry-armv.S文件中: .globl __vectors_start __vectors_start: swi SYS_ERROR0 b vector_und + stubs_offset ldr pc, .LCvswi + stubs_offset b vector_pabt + stubs_offset b vector_dabt + stubs_offset b
[单片机]
基于ARM的GPS地面目标跟踪及报警系统的设计
  随着现代化科技的发展,人们对移动目标监控的要求越来越高。例如,地面目标跟踪及报警系统可协助家长实现对孩子的监控,孩子若遭遇走失或劫持事件,监控中心通过分析手持终端发送的GPS数据确定孩子所在位置,以采取相关安全措施。   1 引言   此外,地面目标跟踪及报警系统在城市出租车调度、物流运输监控等领域都有着广泛的应用前景。   地面目标跟踪及报警系统是伴随着GPS技术和GSM网络的成熟而发展起来的。20世纪90 年代初,GPS技术逐渐兴起,基于GPS的移动跟踪、监控系统开始走向市场。近年来,GSM网络发展迅速,其数据传输能力明显加强,并且,GPS技术更加成熟。2000年5月1日,美国政府宣布取消GPS普通定位的
[单片机]
基于<font color='red'>ARM</font>的GPS地面目标跟踪及报警系统的设计
ARM HMP ---- 异构移动多处理器
HMP : Heterogeneous mobile processing ARM big.LITTLE技术,支持2种MP Model: (1) HMP Model (2) Switching Model 真正的异构多处理器可以在系统内实现不同类型CPU、GPU和其他处理引擎的动态配置,在实际工作中确保最合适的任务分配、最优 的性能、最低的功耗。借助多处理器技术,SoC的复杂计算能力可以得到充分释放,比如GPU计算,能比纯CPU方案带来两倍的性能 提升,同时功耗降低超过30%。
[单片机]
ARM的启动方式和bootloader解析(下)
平台: AT91SAM9x25 问题四:我们用RomBoot引导什么程序?那个程序做什么? 我们烧写的程序就是bootloader。但是有的bootloader为了更好的区分引导程序功能,又将bootloader分为一级bootloader(又叫bootstrap)和二级bootloader(U-boot)。第一阶段的bootstrap主要完成的功能是硬件初始化,加载U-boot到RAM,设置堆栈,跳到第二段代码入口。第二阶段的U-boot主要完成的功能是初始化要用的硬件设备,内存映射,从Flash读取内核映像和根文件系统,设置内核启动参数,调用内核。 我们用的第一阶段的启动代码bootstrap(支持nandflas
[单片机]
Atmel ARM Cortex MCU应用于TomTom GPS健身手表
借助Atmel的高性能、低功耗Atmel | SMART MCU和AVR MCU, TomTom健身手表用户可获得更长的电池续航时间以及强健的电容触控功能 全球微控制器(MCU)及触控技术解决方案领域的供应商Atmel公司(纳斯达克股票交易代码:ATML)今日宣布,TomTom Spark GPS健身手表采用Atmel | SMART ARM Cortex M7 MCU和 tinyAVR44A MCU。 此外,TomTom Spark通过Atmel的QTouch库软件控制8位tinyAVR MCU中的触控界面。使用这些超低功耗MCU组合,TomTom Spark在GPS模式下的电池续航时间可延长至10小时
[单片机]
基于ARM的汽车安全气囊控制系统设计
  引言   随着汽车的普及和行驶速度的加快,交通事故及伤亡人数也在逐年上升。在发生汽车碰撞事故时,如何有效地保护司机和乘员生命的安全是迫切需要解决的问题。安全气囊作为与安全带配合使用的被动保护装置已经普及,成为汽车构件中保护乘员的主要装备之一。   气囊控制系统可分为机械式、模拟电子式和嵌入式3种类型。对于机械式和模拟电子式控制系统,由于硬件的局限,灵活性受到很大限制,应用日益减少。新一代的气囊控制系统均为带微控制器的嵌入式控制系统。嵌入式控制系统的控制算法由软件实现,极大地提高了系统的灵活性,并具有记录事故数据和与上位机进行通讯的功能。   汽车的安全气囊要求能在一个极短的时间内检测到汽车碰撞事故的发生并控制气囊启
[嵌入式]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • 学习ARM开发(16)
    ARM有很多东西要学习,那么中断,就肯定是需要学习的东西。自从CPU引入中断以来,才真正地进入多任务系统工作,并且大大提高了工作效率。采 ...
  • 学习ARM开发(17)
    因为嵌入式系统里全部要使用中断的,那么我的S3C44B0怎么样中断流程呢?那我就需要了解整个流程了。要深入了解,最好的方法,就是去写程序 ...
  • 学习ARM开发(18)
    上一次已经了解ARM的中断处理过程,并且可以设置中断函数,那么它这样就可以工作了吗?答案是否定的。因为S3C44B0还有好几个寄存器是控制中 ...
  • 嵌入式系统调试仿真工具
    嵌入式硬件系统设计出来后就要进行调试,不管是硬件调试还是软件调试或者程序固化,都需要用到调试仿真工具。 随着处理器新品种、新 ...
  • 最近困扰在心中的一个小疑问终于解惑了~~
    最近在驱动方面一直在概念上不能很好的理解 有时候结合别人写的一点usb的例子能有点感觉,但是因为arm体系里面没有像单片机那样直接讲解引脚 ...
  • 学习ARM开发(1)
  • 学习ARM开发(2)
  • 学习ARM开发(4)
  • 学习ARM开发(6)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved