[모듈] 26장. 아두이노 심박 펄스센서 사용하기 페이스북 트위터 카카오톡 
작성자 관리자 등록일 2021-03-04 15:30:00 조회수 413

안녕하세요. 인투피온입니다.


​


오늘은 심박 펄스 센서를 사용해서 심박수를 측정해 보도록 하겠습니다~






하트 모양을 그리고 있는 심박펄스센서 입니다



이 센서는 적외선을 통해 모세혈관의 수축 팽창 활동을 측정하여 심박수를 나타내게 되요




회로연결




위의 그림과 같이 연결해주세요







라이브러리 추가하기





라이브러리 매니저(Ctrl + Shift + I )를 열고 'PULSESENSOR' 를 검색해서 설치해주세요










코딩








위 사진의 예제를 불러와주세요 ​ 여기에 우리가 추가해야 할건 LCD 부분인데요







ghl

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <LiquidCrystal_I2C.h>  //LCD
#include <Wire.h>
 
 
LiquidCrystal_I2C lcd(0x27, 16, 2);
 
void setup(){
  lcd.init();  //LCD 초기화
  lcd.backlight();  //LCD 백라이트 활성화
}
 
void loop(){
  lcd.init();
 
 lcd.setCursor(0,0);   //첫째줄 
 lcd.print("BPM: ");   //LCD 출력
 lcd.print(myBPM);
 
}
 
cs



위의 소스를 알맞는 위치에 추가해주면 됩니다







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#define USE_ARDUINO_INTERRUPTS true    // Set-up low-level interrupts for most acurate BPM math.
#include <PulseSensorPlayground.h>     // Includes the PulseSensorPlayground Library.   
#include <LiquidCrystal_I2C.h>  //LCD
#include <Wire.h>  //LCD
 
//  Variables
const int PulseWire = 0;       // PulseSensor PURPLE WIRE connected to ANALOG PIN 0
const int LED13 = 13;          // The on-board Arduino LED, close to PIN 13.
int Threshold = 550;           // Determine which Signal to "count as a beat" and which to ignore.
                               // Use the "Gettting Started Project" to fine-tune Threshold Value beyond default setting.
                               // Otherwise leave the default "550" value. 
 
LiquidCrystal_I2C lcd(0x27, 16, 2);  //LCD
                               
PulseSensorPlayground pulseSensor;  // Creates an instance of the PulseSensorPlayground object called "pulseSensor"
 
 
void setup() {   
 
  Serial.begin(9600);          // For Serial Monitor
 
  // Configure the PulseSensor object, by assigning our variables to it. 
  pulseSensor.analogInput(PulseWire);   
  pulseSensor.blinkOnPulse(LED13);       //auto-magically blink Arduino's LED with heartbeat.
  pulseSensor.setThreshold(Threshold);   
 
  // Double-check the "pulseSensor" object was created and "began" seeing a signal. 
   if (pulseSensor.begin()) {
    Serial.println("We created a pulseSensor Object !");  //This prints one time at Arduino power-up,  or on Arduino reset.  
  }
    lcd.init();  //LCD
  lcd.backlight();  //LCD
}
 
 
 
void loop() {
 lcd.init();  //LCD 초기화
 int myBPM = pulseSensor.getBeatsPerMinute();  // Calls function on our pulseSensor object that returns BPM as an "int".
                                               // "myBPM" hold this BPM value now. 
 
if (pulseSensor.sawStartOfBeat()) {            // Constantly test to see if "a beat happened". 
 Serial.println("♥  A HeartBeat Happened ! "); // If test is "true", print a message "a heartbeat happened".
 Serial.print("BPM: ");                        // Print phrase "BPM: " 
 Serial.println(myBPM);                        // Print the value inside of myBPM. 
 lcd.setCursor(0,0); 
 lcd.print("BPM: ");
 lcd.print(myBPM);
}
 
  delay(20);                    // considered best practice in a simple sketch.
 
}
cs




그럼 이렇게 소스가 완성이 되었는데요~

​

이제 확인을 해봐야 겠죠?
















제 심박수는 평균 64~67을 왔다갔다 하네요

​

다들 자신의 심박수를 측정해 보세요!











​

  


  




아두이노 arduino 코딩 코딩예제 예제 code coding  heartrate heart rate pulse sensor

LCD 펄스센서 아두이노 점퍼케이블 아두이노 우노 레오나르도 I2C 심박 박동 인투피온 intopion


다음글 test 관리자 2021-03-23 16:04
이전글 25장. 아두이노 4x4 멤브레인 키패드 응용편 관리자 2021-03-03 11:48
댓글(0)
로그인 또는 댓글권한이 있을 경우 등록하실 수 있습니다.

비밀번호 확인

댓글 등록시에 입력했던 비밀번호를 입력해 주세요.

비밀번호 확인

게시글 등록시에 입력했던 비밀번호를 입력해 주세요.
번호제목조회수
29 [모듈] 28장. 아두이노 조도센서 모듈 사용하기 34
28 [모듈] 27장. 아두이노 SHT20 온습도센서 사용하기 274
27 [모듈] test 0
>> [모듈] 26장. 아두이노 심박 펄스센서 사용하기 414
25 [모듈] 25장. 아두이노 4x4 멤브레인 키패드 응용편 255
24 [모듈] 24장. 아두이노 4X4 멤브레인 키패드 사용하기 1106
23 [모듈] 23장. 아두이노와 앱인벤터를 통한 온습도 출력하기 578
22 [모듈] 22장. 아두이노 온습도센서 DHT 11 240
21 [모듈] 21장. 아두이노 앱 인벤터 LED 컨트롤하기 475
20 [모듈] 20장. 아두이노 DS18B20 사용하기 405
19 [모듈] 19장. 아두이노 WS2812B 네오픽셀 LED 모듈 ... 429
18 [모듈] 18장. 아두이노 도트 매트릭스 모듈(MAX7219) ... 230
17 [모듈] 17장. 아두이노 RFID(RC522) NFC 사용하기 1499
16 [모듈] 16장. 아두이노 서보모터 사용하기 473
15 [모듈] 15장. 아두이노 스위치 사용하기 349
14 [모듈] 14장. 아두이노 조도센서 사용하기 737
13 [모듈] 13장. 아두이노 HC-SR501 인체 감지 경보기 388
12 [모듈] 12장. 아두이노 초음파 센서 거리측정기 695
11 [모듈] 11장. 초음파 센서를 활용한 접근금지 경보음 울리기 424
10 [모듈] 10장. 아두이노 초음파 센서를 이용한 선풍기 483

비밀번호 확인

게시글 등록시에 입력했던 비밀번호를 입력해 주세요.

비밀번호 확인

댓글/답글 등록시에 입력했던 비밀번호를 입력해 주세요.

CS CENTER

* 재고 확인, 배송, 기술문의는 바로 답변이 어려우니, 가급적 카카오톡 플러스친구 [인투피온] 이용 부탁드립니다 *

CUSTOMER SERVICE

주문/배송문의 쇼핑문의 이용안내 제품문의 1:1문의 자주하는질문

BANK INFO

신한은행 140 011 044291 예금주 (주)인투피온 소영삼
  • 회사소개 개인정보처리방침 이용약관 입점안내 광고안내 아이디/비밀번호찾기
  • 통장사본 파일다운 회사소개서 다운

(주)인투피온

대표:소영삼 사업자등록번호:113-86-29364 [사업자정보확인] 통신판매신고:2015-서울구로-1028

본사 : 서울 구로구 경인로 53길 90 STX W-Tower 1307호

매장 : 서울 구로구 경인로 53길 15 중앙유통단지 다동 4403호

고객상담 팩스번호: 02-6124-4242 이메일: info@intopion.com

* 재고 확인, 배송, 기술문의는 바로 답변이 어려우니, 가급적 카카오톡 플러스친구 [인투피온] 이용 부탁드립니다 *

개인정보관리책임자 : 이성민 / Hosting Provider : ㈜가비아씨엔에스

회원님의 소중한 개인정보 보호를 위해 비밀번호를 주기적으로 변경하시는 것이 좋습니다.
현재 비밀번호
신규 비밀번호
신규 비밀번호 확인
6~20자, 영문 대소문자 또는 숫자 특수문자 중 2가지 이상 조합