Cảm biến nhịp tim và oxy trong máu MAX30102

Mã sản phẩm: (Đang cập nhật...)
Thương hiệu: cập nhật
Còn hàng
Liên hệ

Cảm biến nhịp tim và oxy trong máu Max30102. Điện áp sử dụng: 2.5~5.5VDC. Giao tiếp: I2C, mức tín hiệu TTL, nhỏ gọn, siêu tiết kiệm năng lượng, thích hợp cho các thiết bị đo nhỏ gọn

Freeship đơn hàng từ 500k

Kiểm tra khi nhận hàng

Hỗ trợ khách hàng 24/7

Cảm biến nhịp tim và oxy trong máu Max30102  là một mô-đun đo nhịp tim và oxy trong máy tích hợp. Nó bao gồm đèn LED bên trong, bộ tách sóng quang, các bộ phận quang học và các thiết bị điện tử có tiếng ồn thấp với khả năng loại bỏ ánh sáng xung quanh.

Cảm biến nhịp tim và oxy trong máu Max30102 hoạt động trên một nguồn cung cấp điện 1.8V và một nguồn cấp điện 5.0V riêng biệt cho các đèn LED bên trong.

Giao tiếp thông qua giao diện tương thích I2C tiêu chuẩn và có thể được tắt thông qua phần mềm với chế độ chờ bằng không. Nó cho phép các thanh ray nguồn vẫn được cấp nguồn ở mọi thời điểm.

Thông số kỹ thuật

  • IC chính: MAX30102.
  • Đo được nhịp tim và nồng độ Oxy trong máu.
  • Điện áp sử dụng: 2.5~5.5VDC.
  • Nhỏ gọn, siêu tiết kiệm năng lượng, thích hợp cho các thiết bị đo nhỏ gọn, Wearable Devices.
  • Giao tiếp: I2C, mức tín hiệu TTL.
  • Kích thước: 1.9 cm x 1.4 cm x 0.3 cm

Sơ đồ kết nối Cảm Biến Nhịp Tim Và Oxy Trong Máu MAX30102

 ARDUINO MAX30102
 VCC 3.3/5V
 GND GND
 SDA SDA
 SCL SCL

Code tham khảo

Thư viện MAX3010x: https://github.com/sparkfun/SparkFun_MAX3010x_Sensor_Library

/*
  Hardware Connections (Breakoutboard to Arduino):
  -5V = 5V (3.3V is allowed)
  -GND = GND
  -SDA = A4 (or SDA)
  -SCL = A5 (or SCL)
  -INT = Not connected
  The MAX30105 Breakout can handle 5V or 3.3V I2C logic. We recommend powering the board with 5V
  but it will also run at 3.3V.
*/

#include <Wire.h>
#include "MAX30105.h"

#include "heartRate.h"

MAX30105 particleSensor;

const byte RATE_SIZE = 4; //Increase this for more averaging. 4 is good.
byte rates[RATE_SIZE];    //Array of heart rates
byte rateSpot = 0;
long lastBeat = 0; //Time at which the last beat occurred

float beatsPerMinute;
int beatAvg;

void setup()
{
    Serial.begin(115200);
    Serial.println("Initializing...");

    // Initialize sensor
    if (!particleSensor.begin(Wire, I2C_SPEED_FAST)) //Use default I2C port, 400kHz speed
    {
        Serial.println("MAX30105 was not found. Please check wiring/power. ");
        while (1)
            ;
    }
    Serial.println("Place your index finger on the sensor with steady pressure.");

    particleSensor.setup();                    //Configure sensor with default settings
    particleSensor.setPulseAmplitudeRed(0x0A); //Turn Red LED to low to indicate sensor is running
    particleSensor.setPulseAmplitudeGreen(0);  //Turn off Green LED
}

void loop()
{
    long irValue = particleSensor.getIR();

    if (checkForBeat(irValue) == true)
    {
        //We sensed a beat!
        long delta = millis() - lastBeat;
        lastBeat = millis();

        beatsPerMinute = 60 / (delta / 1000.0);

        if (beatsPerMinute < 255 && beatsPerMinute > 20)
        {
            rates[rateSpot++] = (byte)beatsPerMinute; //Store this reading in the array
            rateSpot %= RATE_SIZE;                    //Wrap variable

            //Take average of readings
            beatAvg = 0;
            for (byte x = 0; x < RATE_SIZE; x++)
                beatAvg += rates[x];
            beatAvg /= RATE_SIZE;
        }
    }

    Serial.print("IR=");
    Serial.print(irValue);
    Serial.print(", BPM=");
    Serial.print(beatsPerMinute);
    Serial.print(", Avg BPM=");
    Serial.print(beatAvg);

    if (irValue < 50000)
        Serial.print(" No finger?");

    Serial.println();
}

Hình ảnh của Cảm Biến Nhịp Tim Và Oxy Trong Máu MAX30102

Cảm biến nhịp tim và oxy trong máu MAX30102
Cảm biến nhịp tim và oxy trong máu MAX30102
Cảm biến nhịp tim và oxy trong máu MAX30102
Xem thêm Thu gọn

Xin mời nhập nội dung tại đây