MEMS/传感技术
MAX30102 是一个集成的脉搏血氧仪和心率监测仪生物传感器的模块。它集成了一个红光 LED和一个红外光 LED、光电检测器、光器件,以及带环境光抑制的低噪声电子电路。
MAX30102 采用一个 1.8V 电源和一个独立的 5V 用于内部 LED 电源,它可应用于穿戴设备进行心率和血氧采集检测,佩戴于手指、耳垂和手腕等处,标准的12C通信接口将采集到的数值传输给 Arduino 单片机进行心率和血氧计算。
此外,该芯片还可通过软件关断模块,待机电流接近为零,实现电源始终维持供电状态。正因为其优异的性能,该芯片被大量应用在了三星 Galaxy S7 手机。与前代产品 MAX30100 相比, MAX30102 集成了玻璃盖可以有效排除外界和内部光干扰,拥有最优可靠的性能。
原理说明
传统的脉搏测量方法有三种:
一是心电信号中提取
二是从测量血压时压力传感器测到的波动来计算脉率
三是光容积法。
前两种方法提取信号都会限制病人的活动,如果长时间使用会增加病人生理和心理上的不舒适感。而光容积法脉搏测量作为监护测量中最普遍的测量方法之一,其具有方法简单、佩戴方便、可靠性高等特点。
光容积法的基本原理是利用人体组织在血管搏动时造成透光率不同来进行脉搏和血氧饱和度测量的,其使用的传感器由光源和光电转换器两部分组成。通过绷带或夹子固定在病人的手指、手腕或耳垂。测血氧饱和度时,根据氧合血红蛋白(Hb02)和血红蛋白(Hb)对红外光、红外光的吸收量来计算。血管随着心跳舒张和收缩,舒张时血量多,吸收的红光红外光多,收缩时血量少,吸收的红光红外光少。根据反射到传感器的光量周期性变化,可以计算出心率。血氧饱和度计算公式。
模块参数
电路板尺寸: 15*20mm
电路板厚度: 2.5mm
模块功能:测心率、测血氧浓度、测温度
供电电压: 3.3~5V
检测信号类型:光反射信号(PPG)
输出信号接口: I2C 接口
通信接口电平: 3.3V
红光LED峰值波长: 650nm-670nm
红外线LED峰值波长: 870nm-900nm
电路接线
注:上图有误, SCL、SDA之接线应该对调才是正确。
使用说明
Step1 安装链接库。点击 Arduino 下拉菜单 [工具] > [管理链接库],开启「链接库管理员」窗口。
Step2 在上方字段内输入「max30102」,找到「SparkFunMAX3010x Pulse ...」链接库,安装它。安装完成后,关闭窗口。
Step3 点击下拉菜单 [档案] > [范例] >[SparkFun MAX3010x Pluse...] ,开启「Example1_Basic_Readings」。
Step4 上传程序到 Arduino。
Step5 打开「串行端口监控窗口」,将鲍率调到9600,您就可以看到有数据传到窗口里。
下图是手指尚未按住模块时的数据。
下图是手指按住模块时的数据。
后记
1. 如果用 I2C_Scan 程序扫描模块,其地址是0x57。
2. 如果要自定义 SDA、SCL 脚位,可使用Software I2C 程序。
3. 实际量测心跳和血氧,后续文章会详细介绍。
4. 如果您手上的是 MAX30100 模块,因为这个模块电路设计有误,可参照下列网址修改电路
审核编辑:汤梓红
全部0条评论
快来发表一下你的评论吧 !