질문게시판 > 소자에서 전압값, 잔류값 추출

TODAY1,652 TOTAL1,304,298
사이트 이용안내
Login▼/회원가입
최신글보기 질문게시판 기술자료 동영상강좌

아두이노 센서 ATMEGA128 PWM LED 초음파 AVR 블루투스 LCD UART 모터 적외선


BASIC4MCU | 질문게시판 | 소자에서 전압값, 잔류값 추출

페이지 정보

작성자 낑낑거북 작성일2020-10-14 18:04 조회42회 댓글1건

본문

	



Arduino library를 보면 max3010x 소자에 대한 예제가 있는데

해당 예제를 통해서 heartrate와 대한 다양한 값을 구할 수 있습니다.

혹시 이때, 단지 예제에 있는 것뿐만이 아니라

해당 소자가 작동할때, 전압값 or 전류값의 변화를 측정하고 싶습니다.

혹시 어떻게 진행해야 되는지 가르쳐주실 수 있으신가요?

혹시 몰라 예제중 하나인 heart rate 를 첨부합니다.

감사합니다.

모르든 부분이 많아서 죄송합니다. 이부분만 해결된다면 다른 부분도 심도 있게 공부하여 보도록 하겠습니다.

정말 죄송합니다...

/*

Optical Heart Rate Detection (PBA Algorithm) using the MAX30105 Breakout

By: Nathan Seidle @ SparkFun Electronics

Date: October 2nd, 2016

https://github.com/sparkfun/MAX30105_Breakout

This is a demo to show the reading of heart rate or beats per minute (BPM) using

a Penpheral Beat Amplitude (PBA) algorithm.

It is best to attach the sensor to your finger using a rubber band or other tightening

device. Humans are generally bad at applying constant pressure to a thing. When you

press your finger against the sensor it varies enough to cause the blood in your

finger to flow differently which causes the sensor readings to go wonky.

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();

}

 

  • BASIC4MCU 작성글 SNS에 공유하기
  • 페이스북으로 보내기
  • 트위터로 보내기
  • 구글플러스로 보내기

댓글 1

조회수 42

master님의 댓글

master 작성일

전압 측정은 라이브러리에서 analogRead() 함수로 ADC값을 읽어서 알 수 있을 것이고요
전류 측정은 저항이 걸려있을 때만 가능합니다.(옴의법칙)
라이브러리를 공부해보세요

질문게시판HOME > 질문게시판 목록

MCU, AVR, 아두이노 등 전자공학에 관련된 질문을 무료회원가입 후 작성해주시면 전문가가 답변해드립니다.
ATMEGA128PWMLED초음파
아두이노AVR블루투스LCD
UART모터적외선ATMEGA
전체 스위치 센서
질문게시판 목록
제목 작성자 작성일 조회
공지 MCU, AVR, 아두이노 등 전자공학에 관련된 질문은 질문게시판에서만 작성 가능합니다. 스태프 19-01-15 2299
공지 사이트 이용 안내댓글[15] master 17-10-29 13186
공지 [무료 공개] 소스코드 하이라이트 v2.0 beta [2013.02.07]댓글[1] 이미지첨부파일 master 18-01-23 5083
질문 아두이노 가습기 질문드립니다. 새글 민기잉 19:23 1
질문 아두이노 코드가 기묘해서 문의드립니다.. 새글 가붝 16:14 2
질문 아트메가 128 질문있습니다(코드 첨부) 새글첨부파일 전기공돌이 14:38 6
질문 LED점등 프로그래밍 새글 응그 00:56 24
질문 Gps firebase 잘 모르겠어요ㅠㅠ댓글[1] 새글 석호준 20-10-25 10
질문 if(!strcmp(, "")) 질문있습니다. 새글 초짜 20-10-25 11
질문 AVR SREG부분 오류 CODE vision 만 써봐서 이유를 모르겠네요ㅜㅜ 새글 초짜 20-10-25 12
질문 pir 센서 인식 새글 앋노 20-10-24 11
질문 아두이노 스텝모터 스위치로 제어댓글[2] 새글 냐냐냐 20-10-24 20
질문 ATmega128 lcd 스위치 문제 코딩 제발 부탁드려요ㅠㅠ 이미지새글첨부파일 제발 20-10-24 26
질문 atmega128 스위치버튼+FND 오류 질문댓글[2] 크류미넬 20-10-24 20
질문 128 모터 구동질문댓글[1] 우왕우오옹 20-10-24 18
질문 아두이노 뉴비 입니다. 아두이노로 고주파 sin 전류를 생성할 수 있나요??댓글[2] 테스 20-10-23 25
질문 atmel studio7 질문있습니다.댓글[1] 초짜 20-10-23 15
질문 아두이노에서 블루투스로 값을 2개 받으려하는데 질문드립니다.댓글[3] 가붝 20-10-23 25
질문 아두이노 라즈베리파이 통신 질문입니다댓글[1] 팡잉 20-10-23 20
질문 Codevision avr 라이브러리 넣는방법 아시나요?댓글[1] 초짜 20-10-22 17
질문 아두이노 오류메시지댓글[1] ye0nw00 20-10-22 11
질문 아두이노댓글[6] 첨부파일 GAWB 20-10-22 32
질문 tb6600 tb6560 모터드라이브 차이좀알려주세요댓글[2] 아두이노개어렵 20-10-22 18
질문 아두이노 센서 초기화? 명령문댓글[2] 공대생입니다 20-10-22 24
질문 Atmega128 UART 송신 문제로 질문드리고 싶습니다.댓글[2] mbdd 20-10-22 24
답변 답변글 답변 : Atmega128 UART 송신 문제로 질문드리고 싶습니다.댓글[2] mbdd 20-10-23 27
질문 앱인벤터 오류댓글[3] 이미지첨부파일 ParkKH 20-10-22 26
질문 atmega 블루투스 통신댓글[2] ParkKH 20-10-21 21
질문 delay댓글[1] 이미지첨부파일 SooJung 20-10-21 23
질문 아두이노 서보모터 속도를 느리게하고싶습니다.댓글[1] 용레기 20-10-20 27
게시물 검색

2020년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2019년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2018년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
Privacy Policy
MCU BASIC ⓒ 2020
모바일버전으로보기