基于ZigBee的无线ECG心电采集诊断系统
一、系统概述
基于ZigBee的无线ECG心电采集诊断系统是一套低功耗、可穿戴、网络化的心电实时监测解决方案。系统以TI CC2530 ZigBee片上系统为核心,前端采用高精度模拟仪表放大器采集微弱心电信号(0.5-4mV),经滤波、数字化后,通过ZigBee无线网状网络传输至中央监护站(PC上位机),实现多床位/多用户心电信号的同步监测、波形显示与初步自动诊断(如心率计算、异常节律检测)。系统设计注重医疗级信号质量(共模抑制比≥100dB,带宽0.05-150Hz)、穿戴舒适性与网络可靠性,适用于社区医院、家庭病房、康复中心及运动健康监测等场景。
二、系统总体架构
系统采用“采集终端 – 网络协调器 – 上位机”三层分布式架构,支持星型或树状网络拓扑,实现多点数据汇聚与集中管理。
graph TD
subgraph A[感知与采集层]
A1[ECG采集终端1<br>CC2530+模拟前端]
A2[ECG采集终端2<br>CC2530+模拟前端]
A3[...]
end
subgraph B[网络传输层]
B1[ZigBee协调器<br>CC2530]
end
subgraph C[数据应用层]
C1[PC上位机<br>监护软件]
end
A1 -- ZigBee无线链路 --> B1;
A2 -- ZigBee无线链路 --> B1;
A3 -- ZigBee无线链路 --> B1;
B1 -- USB/串口 --> C1;
1. 感知与采集层(终端节点)
- 核心组件:CC2530 SoC(集成8051 MCU和RF收发器)、模拟前端处理电路。
- 功能:通过电极采集人体心电信号,进行放大、滤波、模数转换,并通过ZigBee网络发送数据包。
2. 网络传输层(协调器节点)
- 核心组件:CC2530 SoC、USB转串口芯片(如CP2102)。
- 功能:组建并管理ZigBee网络,接收所有终端节点的数据,并通过串口上传至上位机。
3. 数据应用层(上位机软件)
- 核心组件:PC监护软件(可基于C#/LabVIEW/Python开发)。
- 功能:实时显示多路心电波形,进行数字滤波、特征点(R波)检测、心率计算、异常报警及数据存储。
三、硬件设计:高精度采集与低功耗无线传输
3.1 采集终端硬件设计
采集终端是系统的核心,其信号链设计直接决定ECG信号质量。
| 模块 | 关键器件/方案 | 功能与设计要点 |
|---|---|---|
| 电极与导联 | 一次性Ag/AgCl电极, 三导联(RA, LA, RL) | 采用标准I导联方式(LA-RA)。右腿(RL)驱动用于提高共模抑制比。 |
| 前置放大 | 仪表放大器 AD8232 或 INA333 | 超高输入阻抗(>1GΩ),高共模抑制比(CMRR > 100 dB),增益G=100,用于放大微弱差分心电信号。 |
| 高通滤波 | RC无源网络或运放构成有源滤波器 | 截止频率0.05Hz,用于滤除电极半电池电位引起的基线漂移。 |
| 工频陷波 | 双T型有源陷波器 | 中心频率50Hz(或60Hz),深度>40dB,抑制电源工频干扰。 |
| 低通滤波与主放大 | 运算放大器(如OPA2333)构成二阶低通滤波放大器 | 截止频率150Hz,滤除肌电等高频噪声。总增益可调至1000倍,将信号放大至0-3V范围供ADC采样。 |
| 右腿驱动 | 运算放大器反向求和电路 | 将共模信号反相后反馈至右腿电极,主动抵消人体共模干扰,可提升CMRR 10-20dB。 |
| 模数转换 | CC2530内部ADC(12位, 参考电压可选) | 采样率设定为250-500 SPS。输入信号经调理后接入CC2530的AIO引脚。 |
| 微控与无线 | CC2530F256 | 控制ADC采样,对数据进行预处理(如简单平均),封装成ZigBee数据包并发送。协调器节点还需连接USB转串口芯片。 |
| 电源管理 | 3.7V锂聚合物电池, 低压差稳压器(如TPS78033) | 为模拟部分(±2.5V)和数字部分(3.3V)提供清洁、稳定的电源。模拟与数字地单点连接。 |
3.2 关键电路设计要点
-
PCB布局布线:
- 严格分区:模拟区域(前端放大、滤波)与数字区域(CC2530、电源)物理隔离。
- 地线设计:采用“星型接地”或“单点接地”,避免数字噪声通过地线耦合至敏感的模拟前端。
- 电源去耦:在每个芯片的电源引脚附近放置0.1μF和10μF的电容,滤除高频和低频噪声。
-
抗干扰设计:
- 输入级采用屏蔽线连接电极。
- 在仪表放大器输入端并联背对背二极管(如1N4148),进行输入保护。
- 使用金属屏蔽壳封装整个模拟前端电路。
四、软件设计:数据流与网络协议
4.1 系统软件架构
软件分为终端节点程序、协调器程序和上位机程序三部分。
graph TD
subgraph Terminal[终端节点]
T1[初始化<br>ADC, ZigBee协议栈]
T2[定时器触发ADC采样]
T3[读取ADC值]
T4[数据预处理<br>(可选滤波)]
T5[封装ZigBee数据包]
T6[发送至协调器]
T1 --> T2 --> T3 --> T4 --> T5 --> T6
end
subgraph Coordinator[协调器]
C1[初始化协议栈, 建立网络]
C2[接收终端数据包]
C3[解析并添加时间戳]
C4[通过串口发送至上位机]
C1 --> C2 --> C3 --> C4
end
subgraph PC[上位机]
P1[打开串口, 接收数据]
P2[数据解析与缓存]
P3[数字信号处理<br>(滤波, 特征提取)]
P4[实时波形显示]
P5[心率计算与诊断]
P6[数据存储与回放]
P1 --> P2 --> P3 --> P4 & P5 & P6
end
T6 -- ZigBee RF --> C2
C4 -- UART/USB --> P1
4.2 关键算法实现
4.2.1 上位机心电信号处理算法
-
数字滤波(软件端二次滤波):
- 带通滤波:采用IIR或FIR滤波器,通带为0.5Hz-40Hz,进一步滤除残留的基线漂移和高频噪声。
- 自适应滤波:可采用LMS算法自适应滤除工频干扰,效果优于固定陷波器。
-
QRS波群检测与心率计算:
-
经典算法:Pan-Tompkins算法。步骤包括:带通滤波、微分、平方、滑动窗口积分、自适应阈值检测。
-
简化实现(示例逻辑):
// 伪代码:基于差分和阈值的简单R波检测 threshold = 初始化阈值; for (每个采样点 i) { derivative = data[i] - data[i-2]; // 近似微分 squared = derivative * derivative; // 平方 integrated = 移动平均(squared, 窗口长度); // 积分 if (integrated > threshold && 距离上次检测>200ms) { 标记为R波位置; 更新阈值 = 0.875 * 旧阈值 + 0.125 * integrated; // 自适应更新 计算心率 = 60 / (R波间隔秒数); } }
-
4.2.2 ZigBee网络通信协议
-
网络组建:协调器上电后建立ZigBee网络(PAN ID可固定),终端节点搜索并加入网络。
-
数据包格式:自定义应用层协议,数据包应包含:
- 帧头(如0xAA, 0x55)
- 设备ID(1字节,区分不同终端)
- 数据长度(1字节)
- ECG采样数据(N字节,如2字节/样本)
- 电池电压(1字节,可选)
- 校验和(1字节,累加和或CRC)
-
低功耗策略:终端节点可采用周期性休眠模式(如采集发送1秒,休眠9秒),由定时器或外部中断(如按键)唤醒。
参考代码 基于ZigBee的无线ECG心电采集诊断系统 www.youwenfan.com/contentcss/134491.html
五、功能实现与测试
5.1 系统核心功能
-
多通道无线实时监测:同时显示1-8名受试者的实时心电波形。
-
心电参数自动分析:
- 实时心率:显示瞬时心率(次/分)。
- 节律分析:提示心动过速(>100bpm)、心动过缓(<60bpm)。
- R-R间期:计算并显示相邻R波的间隔时间,可用于心率变异性(HRV)初步分析。
-
异常报警:当心率超过预设上下限或检测到长时间信号脱落时,进行声光报警并记录。
-
数据管理:支持心电数据的实时存储(如CSV或WFDB格式)、历史数据回放与导出。
5.2 测试数据
| 测试项 | 测试方法 | 预期/典型结果 |
|---|---|---|
| 输入动态范围 | 输入标准正弦波或方波信号 | 0.5mV – 4mV信号可被无失真放大至ADC量程内 |
| 共模抑制比 | 在两输入端施加相同的50Hz, 1Vpp正弦信号 | CMRR ≥ 100 dB (输出信号变化 < 10μV) |
| 系统带宽 | 扫描输入正弦信号频率 | -3dB带宽:0.05Hz – 150Hz |
| 基线漂移抑制 | 模拟电极极化电压缓慢变化(0.1Hz, 300mV) | 输出基线漂移 < 5% FSR |
| 无线传输距离 | 开阔无障碍环境测试 | 室内:20-50m; 视距:>100m |
| 终端节点功耗 | 测量电池供电电流(250SPS, 持续发送) | 平均工作电流 < 15mA, 休眠电流 < 1μA |
| 上位机软件延迟 | 从终端采集到上位机显示的时间差 | < 500ms |
六、扩展方向
- 多生理参数融合:集成光电容积脉搏波(PPG) 传感器,实现血氧饱和度(SpO2)监测,与ECG结合进行更全面的心血管健康评估。
- 高级诊断算法:在上位机引入机器学习模型(如支持向量机、卷积神经网络),对房颤(AFib)、室性早搏(PVC)等常见心律失常进行自动分类与预警。
- 云端部署与移动端应用:协调器通过Wi-Fi或4G将数据上传至云端服务器,开发Android/iOS APP,实现远程、移动化的医生端监护与家属端查看。
- 定位与跌倒检测:在终端集成加速度计(如MPU6050),实现跌倒检测与室内粗略定位,适用于独居老人监护场景。