Soporte Mi cuenta
📞 0984701518
Sensor de frecuencia cardiaca Oximetro MAX30102
SKU 00082

Sensor de frecuencia cardiaca Oximetro MAX30102

$6,00
Disponible
¡Solo quedan 3!
Datos rápidos
Chip
MAX30102 (Maxim)
Mide
Pulso (BPM) y saturación de oxígeno (SpO2) estimada
Alimentación
3,3 a 5 V en VIN (reguladores de 1,8 y 3,3 V en la placa)
Comunicación
I2C, dirección 0x57
Ver ficha técnica completa ↓

Características

Sensor óptico de pulso y oxigenación: tiene un LED rojo, un LED infrarrojo y un fotodetector. Al apoyar el dedo mide la luz que vuelve; esa luz cambia con cada latido, y la diferencia entre la roja y la infrarroja permite estimar la saturación de oxígeno (SpO2). Se comunica por I2C.

Sirve para pulsómetros, relojes deportivos y prácticas de electrónica médica. No es un equipo médico: no lo uses para diagnosticar.

ChipMAX30102 (Maxim)
MidePulso (BPM) y saturación de oxígeno (SpO2) estimada
Alimentación3,3 a 5 V en VIN (reguladores de 1,8 y 3,3 V en la placa)
ComunicaciónI2C, dirección 0x57
LucesLED rojo (660 nm) e infrarrojo (880 nm)
PinesVIN, SCL, SDA, INT, IRD, RD y GND

¿Para qué sirve?

  • Pulsómetros y relojes deportivos caseros
  • Prácticas de electrónica médica en colegios y universidades
  • Detectar si hay un dedo u objeto cerca (proximidad)

Diagrama de conexión de prueba

Placa usada: Arduino UNO

Arduino UNOMAX301025VVINGNDGNDA5SCLA4SDA
CableMóduloArduino UNONota
rojoVIN5V
negroGNDGND
amarilloSCLA5Reloj I2C
azulSDAA4Datos I2C

Código de prueba

Instala desde el Gestor de librerías del IDE de Arduino: SparkFun MAX3010x Pulse and Proximity Sensor Library

Arduino UNOprueba.ino
// Prueba del MAX30102: detecta los latidos con la luz infrarroja que
// rebota en el dedo y muestra las pulsaciones por minuto (BPM).
#include <Wire.h>
#include "MAX30105.h"   // la librería de SparkFun sirve para el MAX30102
#include "heartRate.h"

MAX30105 sensor;
const byte CANTIDAD = 4;  // promedia los últimos 4 latidos
byte lecturas[CANTIDAD];
byte posicion = 0;
unsigned long ultimoLatido = 0;
unsigned long ultimoAviso = 0;

void setup() {
  Serial.begin(115200);
  if (!sensor.begin(Wire, I2C_SPEED_FAST)) {
    Serial.println("No se encontró el MAX30102: revisa SDA (A4) y SCL (A5).");
    while (true) {}
  }
  sensor.setup();                     // configuración de fábrica de la librería
  sensor.setPulseAmplitudeRed(0x0A);  // LED rojo suave: indica que está encendido
  Serial.println("Apoya la yema del dedo sobre el sensor, sin apretar.");
}

void loop() {
  long ir = sensor.getIR();  // cuánta luz infrarroja vuelve
  if (ir < 50000) {          // sin dedo, vuelve muy poca luz
    if (millis() - ultimoAviso > 2000) {
      Serial.println("No hay dedo sobre el sensor");
      ultimoAviso = millis();
    }
    return;
  }
  if (checkForBeat(ir)) {  // la librería detectó un latido
    unsigned long ahora = millis();
    float bpm = 60000.0 / (ahora - ultimoLatido);
    ultimoLatido = ahora;
    if (bpm > 30 && bpm < 220) {  // descarta lecturas imposibles
      lecturas[posicion] = (byte)bpm;
      posicion = (posicion + 1) % CANTIDAD;
      int suma = 0;
      for (byte i = 0; i < CANTIDAD; i++) suma += lecturas[i];
      Serial.print("Latido: ");
      Serial.print((int)bpm);
      Serial.print(" BPM   Promedio: ");
      Serial.println(suma / CANTIDAD);
    }
  }
}

Abre el Monitor serie a 115200 baudios y apoya la yema del dedo sin apretar y sin moverla; espera unos segundos a que se estabilice. La librería también trae un ejemplo de oxigenación (SpO2).

Precauciones

  • No es un equipo médico: las lecturas son aproximadas y no sirven para diagnosticar.
  • En algunos módulos verdes las resistencias del bus I2C van a 1,8 V y el Arduino UNO no los detecta. Si te pasa, revisa si tu placa tiene un puente para elegir 3,3 V (la guía de Luis Llamas explica el arreglo).
  • La luz del ambiente y el movimiento alteran la lectura: mantén el dedo quieto y tapa el sensor.
  • No aprietes el dedo contra el sensor: se corta la circulación y la lectura falla.

Fuentes consultadas: Luis Llamas: pulsioxímetro con MAX30102 · Circuit Digest: MAX30102 con Arduino · Librería SparkFun MAX3010x (GitHub). Ficha preparada por Electrodrone; verifica siempre el voltaje de tu módulo antes de conectarlo.

🛡️Garantía de producto
🏷️Precios mayoristas
⭐Marca confiable
🚚Envíos a todo el país
🛠️Soporte técnico
WhatsApp