一.简介
15W4K56S4-30I-LQFP32为主控的便携心电监护仪,带有1.8寸LCD显示屏,可实时显示心电波形与测量血氧饱和度 ,在此基础上稍微修改了一下
1.需求分析 心脏病是导致人类死亡的主要原因之一,及时和准确的心电监测对于预防和诊断心脏病至关重要。然而,由于心脏异常的突发与随机性, 进行短期监测往往难以捕捉到异常,从而出现误诊。并且,传统的心电监护设备通常较为昂贵且不便携,无法满足人们日常生活中的监测需求。 因此,开发一款小型、便携的心电监护仪,可以让用户随时随地进行心电监测,具有重要的现实意义。 2.功能介绍 - 显示实时心电波形并计算心率,还可以测血氧饱和度
- 可切换下位机屏幕显示或蓝牙发送波形数据至上位机
- 心率过速、过慢警告
3.心电信号简介 心电信号的频谱范围主要集中在0.05~100Hz,电压约为零点几毫伏,具有微弱、低频、易被干扰等特性,常见干扰有以下几种: 1.工频干扰。由供电网络(通常是50Hz)引起的干扰,是心电信号的主要干扰源 2.基线漂移。由于呼吸、运动引起的心电基线变化,幅值的变化可达到15%,频率低。 3.肌电干扰。肌肉活动伴随有电活动。其频率范围为20 ~ 5000Hz。 4.心电处理电路介绍 - 第一级前置放大器,增益为7,包含右腿驱动电路,用于消除共模干扰
- 第二级107HZ低通滤波,消除高频信号
- 第三级双T有源50HZ陷波器,滤除工频干扰
- 第四级0.1HZ高通滤波,改善基线漂移,放大50倍
- 第五级放大器放大信号5倍
整体对信号放大了1250倍
二,实物图如下
三、原理图
1.主控芯片
- P54脚低电平单片机复位,用于烧录软件
- 采用3V3供电
2.供电
- USB与锂电池供电
- USB接口选择了广泛使用的TYPE-C
- 电池为850毫安3.7V锂电池
- 插入USB线后可自动切换为USB供电
- 同时为锂电池充电
- 电池充电管理使用TP4056芯片
3.总原理图
四、软件设计
心率计算 Heart Rate (bpm)= 60 / 平均R波间隔(秒) R波检测方法 – 阈值法 1.遍历数据:遍历心电数据数组中的每一个数据点。 2.峰值条件:对于每一个数据点,检查它是否大于左右相邻的数据点,并且是否超过预设的阈值。 3.记录峰值:如果该数据点满足上述条件,则将其位置记录下来,表示检测到了一个R波峰值。
- 优点:简单、速度快
- 缺点:不精确,且阈值需要人工观察得出,如出现基线漂移或噪声毛刺就会产生很大影响
血氧饱和度读取 1.初始化:初始化 MAX30102 传感器,包括配置模式、采样率、LED电流等参数。 2.数据采集:通过 I2C 从传感器的FIFO Data寄存器中读取红光和红外光的光强数据。每三个字节一个数据,需要经过合并处理,合并后为一个长整型 3.计算:利用红光和红外光两个数据通过简化公式计算血氧饱和度 血氧简化公式
- R = red / ir
- spO2 = 120 - 25 * R;
血氧饱和度准确的计算方法需要获得光强的直流和交流分量,计算量大且需存储大量数据 简化公式的结果会不太准确
五、演示效果
|