Cristi200134/vital-signs-monitor
GitHub: Cristi200134/vital-signs-monitor
基于 ESP32 和 FreeRTOS 的便携式四参数生命体征监护仪,使用易获取零件复现临床患者监护仪核心功能,QRS 检测经 MIT-BIH 数据库验证。
Stars: 15 | Forks: 1
# VitalMonitor
便携式四参数生命体征监护仪(ECG、SpO2、体温、呼吸),基于 ESP32 从零开始构建,为 UMFST "G.E. Palade" Targu Mures 生物医学工程学士学位项目而开发。它使用易获取的零件重现了临床患者监护仪的核心功能。这是一个可行的概念验证,而非经过认证的医疗设备。





## 核心亮点
- 单平台支持四项生命体征:通过 ECG 获取心率、SpO2、体温,以及由脉搏信号推算出的呼吸率。
- QRS 检测在 MIT-BIH 心律失常数据库上经过验证(ANSI/AAMI EC57):F1 分数 98.9%。
- 完整的工程资料包:原理图、含成本的物料清单(BOM)、3D 打印外壳、毕业论文。
- 荣获 Marisiensis 国际医学大会三等奖(UMFST,2026 年)。
## 功能说明
- ECG 检测心跳、SpO2 与体温测量,以及由光学脉搏信号推算出的呼吸率。
- 本地 OLED 显示屏,以及通过设备自带 WiFi 热点提供的实时 Web 界面。
- 具备 LED 和蜂鸣器的三级报警系统,结合带实时时钟(RTC)的 microSD 卡会话记录功能。
## 硬件
- ESP32(双核,FreeRTOS)。
- ECG:AD8232 仪表放大器和外部 16 位 ADC(ADS1115,250 SPS),采用 Butterworth 滤波器级联(高通 0.5 Hz,低通 40 Hz,陷波 50 Hz,在 50 Hz 处抑制约 66 dB)。
- SpO2 与呼吸:MAX30102 光学传感器(采用比值法;呼吸率通过红外直流调制提取)。
- 温度:DS18B20。时钟:DS3231。显示屏:128x64 OLED。存储:microSD。
- 电源:1800 mAh 锂聚合物电池,升压至 5 V,为模拟电路部分提供独立的 AMS1117 3.3 V 供电轨。
- 外壳:胶合板主体搭配 3D 打印 PLA 面板(图纸位于 `hardware/` 中)。
## 固件
- 基于 FreeRTOS 的 C++/Arduino,根据临床优先级将八个任务固定分配在两个核心上,使用两个 mutex(用于数据和 I2C),I2C 频率为 400 kHz。
- ADS1115 以连续模式运行,确保 250 SPS 的 ECG 数据流不会阻塞共享的 I2C 总线。
- QRS 检测:简化的 Pan-Tompkins 算法(5 点求导、平方、148 ms 滑动窗口积分、自适应 SPKI/NPKI 阈值、200 ms 不应期、基于 16 个 RR 间期的平均值计算)。
## 验证
心跳检测(简化的 Pan-Tompkins 算法)在 MIT-BIH 数据库上进行了测试,涵盖 30 条记录中的约 70,000 个标注心搏,匹配容差为 150 ms,遵循 ANSI/AAMI EC57 标准。
| 指标 | 数值 | 方法 |
|---|---|---|
| 敏感度 | 98.66% | MIT-BIH,30 条记录,约 70,000 次心搏 |
| 阳性预测率 (+P) | 99.11% | 同上 |
| F1 score | 98.9% | 同上 |
| ECG 滤波器 | SNR > 60 dB,稳定(极点位于单位圆内) | 仿真 |
## 已知局限性(如实陈述)
- SpO2 是在模拟数据上进行验证的,未在配备参考血氧计的受试者身上进行测试。
- 误报率高于我设定的目标。
- 延迟、CPU 负载和电池续航时间均为预算估计值,而非台架实测结果。
- QRS 检测是作为 MATLAB 重实现进行验证的(使用了与固件相同的系数和阈值),并非作为在芯片上运行的编译二进制文件进行验证。
- 它是一个研究原型,不是经过认证的医疗设备。
## 仓库结构
- `firmware/` ESP32 源码(配置、传感器、FreeRTOS 任务、Web 服务器)。
- `hardware/` 原理图(PDF)、物料清单、外壳文件(STL)。
- `validation/` MATLAB 脚本和 MIT-BIH 验证。
- `docs/` 论文摘录、设备照片、验证截图。
## 技术
ESP32、FreeRTOS、C++、AD8232、ADS1115、MAX30102、DS18B20、MATLAB、PlatformIO。
## 作者
Cristi Dica,生物医学工程师,Targu Mures。LinkedIn:[在此填写你的链接]。
## 许可证
MIT。详见 `LICENSE`。
标签:ESP32, 医疗设备, 嵌入式开发, 物联网应用, 生命体征监护, 生物医学工程