산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Manufacturing Technology >> 제조공정

16x2 LCD의 MAX 30102 심박수 모니터

구성품 및 소모품

Arduino Nano R3
× 1
MAX 30102 심박수 모니터
× 1
Adafruit RGB 백라이트 LCD - 16x2
× 1
회전 전위차계(일반)
× 1

필요한 도구 및 기계

납땜 인두(일반)

앱 및 온라인 서비스

Arduino IDE

이 프로젝트 정보

MAX30102 센서 모듈로 만든 간단한 심박수 모니터입니다. Arduino 라이브러리를 기반으로 간단한 코드를 작성했으며 값이 16x2 LCD 화면에 표시됩니다. 첫 번째 행은 분당 평균 비트를 표시하고 두 번째 행은 반사된 적외선 빔의 값을 표시합니다. 이 값은 측정값을 더 정확하게 만들기 위해 일정해야 합니다.

<섹션 클래스="섹션 컨테이너 섹션 축소 가능" id="코드">

코드

<울>
  • 제목 없는 파일
  • 제목 없는 파일Arduino
    /* MAX30105를 사용한 광학 심박수 감지(PBA 알고리즘) Breakout By:Bennu @ MH-ET LIVE 날짜:2017년 10월 2일 https://github.com/MHEtLive/MH-ET-LIVE-max30102 Penpheral Beat Amplitude(PBA) 알고리즘을 사용하여 심박수 또는 BPM(분당 비트 수) 판독값을 보여주는 데모. 고무 밴드 또는 기타 조임 장치를 사용하여 손가락에 센서를 부착하는 것이 가장 좋습니다. 인간은 일반적으로 사물에 일정한 압력을 가하는 데 서툴다. 손가락을 센서에 대고 누르면 손가락의 혈액이 다르게 흐르게 하여 센서 판독값이 불안정해질 정도로 다양합니다. 하드웨어 연결(Arduino에 대한 브레이크아웃 보드):-5V =5V(3.3V 허용) -GND =GND -SDA =A4(또는 SDA) -SCL =A5(또는 SCL) -INT =연결되지 않음 MAX30105 브레이크아웃은 5V 또는 3.3V I2C 로직. 5V로 보드에 전원을 공급하는 것이 좋지만 3.3V에서도 실행됩니다.*/#include #include "MAX30105.h#include #include "heartRate.h"MAX30105 particleSensor;LiquidCrystal lcd(12, 11, 5, 4, 3, 2); 상수 바이트 RATE_SIZE =4; // 평균을 더 높이려면 이 값을 늘립니다. 4는 좋은 바이트 비율[RATE_SIZE]입니다. //심박수 배열byte rateSpot =0;long lastBeat =0; //마지막 비트가 발생한 시간float beatsPerMinute;int beatAvg;void setup(){ Serial.begin(9600); lcd.begin(16, 2); Serial.println("초기화 중..."); // 센서 초기화 if (!particleSensor.begin(Wire, I2C_SPEED_FAST)) //기본 I2C 포트 사용, 400kHz 속도 { Serial.println("MAX30105를 찾을 수 없습니다. 배선/전원을 확인하세요. "); 동안 (1); } Serial.println("센서에 검지 손가락을 대고 일정한 압력을 가하세요."); 입자센서.setup(); //기본 설정으로 센서 구성 particleSensor.setPulseAmplitudeRed(0x0A); //센서가 실행 중임을 나타내기 위해 빨간색 LED를 낮음으로 설정합니다. particleSensor.setPulseAmplitudeGreen(0); //녹색 LED 끄기}void loop(){ long irValue =particleSensor.getIR(); if (checkForBeat(irValue) ==true) { //박동을 감지했습니다! 긴 델타 =millis() - lastBeat; lastBeat =밀리(); beatsPerMinute =60 / (델타 / 1000.0); if (beatsPerMinute <255 &&beatsPerMinute> 20) { 비율[rateSpot++] =(바이트)beatsPerMinute; //이 판독값을 배열에 저장합니다. rateSpot %=RATE_SIZE; //Wrap 변수 //판독값의 평균을 구합니다. beatAvg =0; for (byte x =0; x   

    회로도


    제조공정

    1. 원격 심박수 모니터
    2. Arduino를 사용하여 모니터 Ambilight 만들기
    3. LCD 애니메이션 및 게임
    4. IoT를 사용한 심박수 모니터
    5. 감광기로 심박수 감지
    6. 온수기 열전대 전압 모니터
    7. 홈 모니터
    8. Arduino 기상 관측소
    9. Arduino 기반 스마트 에너지 모니터
    10. 의류에 통합된 센서는 심박수를 모니터합니다.