【树莓派/入门】使用MAX30102测量血氧浓度

说在前面

  • 树莓派版本:4b
  • 血氧模块:MAX30102
  • 树莓派系统:Linux raspberrypi 5.15.76-v8+ #1597 SMP aarch64 GNU/Linux
  • python版本:3.9.2

模块详情

  • 某宝上买的MAX30102模块,包含杜邦线
    在这里插入图片描述

准备工作

  • 开启树莓派的GPIO,即将SD卡中/boot/config.txt中的下述配置取消注释
    在这里插入图片描述

  • 将模块与树莓派连接,树莓派引脚如下图

  • 连接

    RPi(在树莓派引脚图中找到对应的) MAX30102(在我拍的照片中对应的引脚)
    3.3V (pin1) VIN (V)
    I2C_SDA1 (pin3; GPIO 2) SDA (SDA)
    I2C_SCL1 (pin5; GPIO 3) SCL (SCL)
    - (pin7; GPIO 4) INT (INT)
    GND (pin9) GND (G)

在这里插入图片描述

代码

  • 安装必要的python库(使用清华源)
    pip install RPI.GPIO smbus2 numpy -i https://pypi.tuna.tsinghua.edu.cn/simple
    # 可视化
    pip install matplotlib scipy -i https://pypi.tuna.tsinghua.edu.cn/simple
    
  • 直接使用开源的python代码,github
    git clone https://github.com/o0olele/max30102
    
  • 运行
    python main.py
    

测试

  • SpO2即血氧浓度值,BPM是心率 (手指竖着放感觉测得结果稳定点,心率感觉不太准)
    在这里插入图片描述
    在这里插入图片描述

数据可视化

  • 可能是模块本身或者数据存在问题,输出的血氧值会存在一些误差,可视化一下可以看的更加直观一些
  • 目前使用matplotlib进行可视化
  • 运行
    python main.py -s
    
    在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_33446100/article/details/128537113