코코아팹은 누구나 창의적 아이디어를 현실로 만들어 낼 수 있도록
만들고, 공유하고, 배울 수 있는 터전이
되고자 합니다.
아이디와 비밀번호를 잊으셨나요?아이디 / 비밀번호 찾기
코코아팹 회원이 아니신가요? 회원가입
심박센서와 지그비를 이용해서 출력할려는데 한번봐주십시요!
전자입문 | 2017-11-13
|
|
---|---|
심박센서와 지그비를 이용해서 출력을 나타내고있는데 소스를 합쳐서 해볼려니 심박센서에대한 출력부분은 작동을 잘하는데 지그비를 통해서 신호를 받아서 출력하는부분이 작동이 됬다가 안됬다가 하네요 한번 봐주십시요 소스 #include <SoftwareSerial.h>
SoftwareSerial xbee(2,3);
//
int led11=6,led12=4;
int motor=9,bmotor=7,buzzer=8;
//
volatile int BPM; // 심박수 저장
volatile int Signal; // 심장박동센서에서 측정되는 값 저장
volatile int IBI=600; // 심박수 측정 시 사용되는 시간 변수(심장이 몇초마다 뛰는지 측정)
volatile boolean Pulse=false; // 유저의 심박수가 측정되면 True,아무것도 측정되지 않으면 False
//
void setup(){
Serial.begin(9600); xbee.begin(9600);
pinMode(motor,OUTPUT); pinMode(bmotor,OUTPUT); pinMode(buzzer,OUTPUT);
pinMode( led2,OUTPUT); pinMode(led1,OUTPUT);
interruptSetup(); // 센서의 신호를 2ms마다 읽어 심박수로 변환하는 함수
}
//
void loop(){
if(xbee.available()){
char data=xbee.read();
if(data=='a'){ digitalWrite(motor, LOW); digitalWrite(bmotor, LOW); digitalWrite(buzzer, LOW); }
if(data=='b'){ digitalWrite(motor,HIGH); digitalWrite(bmotor,HIGH); digitalWrite(buzzer,HIGH); }
}
// BPM -> 심박수
Serial.print("*** Heart-Beat Happened *** BPM: "); Serial.println(BPM);
if(BPM<80){ digitalWrite(led12,HIGH); digitalWrite(led11,LOW); }
else { digitalWrite(led11,HIGH); digitalWrite(led12,LOW); }
delay(1000);
}
아두이노 소스이며
밑에는 인터럽트 소스입니다.
volatile int rate[10]; // array to hold last ten IBI values
// find the peak and trough of the pulse wave if(Signal > thresh && Signal > P){ // thresh condition helps avoid noise // NOW IT'S TIME TO LOOK FOR THE HEART BEAT if(secondBeat){ // if this is the second beat, if secondBeat == TRUE if(firstBeat){ // if it's the first time we found a beat, if firstBeat == TRUE
for(int i=0; i<=8; i++){ // shift data in the rate array rate[9] = IBI; // add the latest IBI to the rate array if (Signal < thresh && Pulse == true){ // when the values are going down, the beat is over if (N > 2500){ // if 2.5 seconds go by without a beat sei(); // enable interrupts when youre done! |
|
이전글 | 사운드센서로 일정소리만 필터링해서 받아들일수 있을까요?... | 2017-11-13 |
다음글 | WiFi에 대하여 | 2017-11-13 |