- అవసరమైన భాగాలు
- పల్స్ సెన్సార్ SEN-11574
- పిఐసి మైక్రోకంట్రోలర్తో పల్స్ సెన్సార్ ఇంటర్ఫేసింగ్ కోసం సర్క్యూట్ రేఖాచిత్రం
- హార్ట్ బీట్ మానిటర్ కోసం PIC16F877A కోడ్ వివరణ
ఏదైనా వ్యక్తి ఆరోగ్యాన్ని పర్యవేక్షించడంలో హార్ట్ బీట్ రేట్ చాలా ముఖ్యమైన పరామితి. ధరించగలిగే పరికరాల ఆధునిక యుగంలో, హృదయ స్పందన, రక్తపోటు, అడుగుజాడలు, కాలిపోయిన కేలరీలు మరియు ఇతర విషయాలను కొలవగల పరికరాలు చాలా ఉన్నాయి. పల్స్ రేటును గ్రహించడానికి ఈ పరికరాల్లో పల్స్ సెన్సార్ ఉంది. ఈ రోజు, మేము నిమిషానికి హృదయ స్పందనను లెక్కించడానికి పిఐసి మైక్రోకంట్రోలర్తో పల్స్ సెన్సార్ను కూడా ఉపయోగిస్తాము మరియు ఇంటర్-బీట్ ఇంటర్వెల్, ఈ విలువలు 16x2 అక్షరాల ఎల్సిడిలో మరింత ప్రదర్శించబడతాయి. మేము ఈ ప్రాజెక్ట్లో PIC16F877A PIC మైక్రోకంట్రోలర్ను ఉపయోగిస్తాము. పేషెంట్ మానిటరింగ్ సిస్టమ్ కోసం మేము ఇప్పటికే పల్స్ సెన్సార్ను ఆర్డునోతో ఇంటర్ఫేస్ చేసాము.
అవసరమైన భాగాలు
- PIC16F877A మైక్రోకంట్రోలర్
- 20 Mhz క్రిస్టల్
- 33 పిఎఫ్ కెపాసిటర్ 2 పిసిలు
- 4.7 కే రెసిస్టర్ 1 పిసిలు
- 16x2 అక్షర LCD
- LCD యొక్క కాంట్రాస్ట్ కంట్రోల్ కోసం 10K పాట్
- SEN-11574 పల్స్ సెన్సార్
- వెల్క్రో పట్టీ
- 5 వి పవర్ అడాప్టర్
- బ్రెడ్బోర్డ్ మరియు హుక్అప్ వైర్లు
పల్స్ సెన్సార్ SEN-11574
హృదయ స్పందనను కొలవడానికి మనకు పల్స్ సెన్సార్ అవసరం. ఇక్కడ మేము ఆన్లైన్ లేదా ఆఫ్లైన్ స్టోర్లలో సులభంగా లభించే SEN-11574 పల్స్ సెన్సార్ను ఎంచుకున్నాము. తయారీదారు నుండి అందించిన నమూనా సంకేతాలు ఉన్నందున మేము ఈ సెన్సార్ను ఉపయోగించాము, కానీ ఇది ఆర్డునో కోడ్. మేము ఆ కోడ్ను మా PIC మైక్రోకంట్రోలర్ కోసం మార్చాము.
సెన్సార్ నిజంగా చిన్నది మరియు ఇయర్లోబ్ లేదా వేలిముద్రలో హృదయ స్పందన చదవడానికి ఖచ్చితంగా సరిపోతుంది. ఇది 0.625 ”వ్యాసం మరియు రౌండ్ పిసిబి వైపు నుండి 0.125” మందంగా ఉంటుంది.
ఈ సెన్సార్ అనలాగ్ సిగ్నల్ను అందిస్తుంది మరియు సెన్సార్ను 3 వి లేదా 5 వితో నడపవచ్చు, సెన్సార్ యొక్క ప్రస్తుత వినియోగం 4 ఎంఏ, ఇది మొబైల్ అనువర్తనాలకు గొప్పది. సెన్సార్ మూడు వైర్తో 24 ”పొడవైన హుక్అప్ కేబుల్ మరియు చివరిలో బెర్గ్ మగ హెడర్తో వస్తుంది. అలాగే, సెన్సార్ వేల్క్రో ఫింగర్ స్ట్రాప్తో వస్తుంది.
పల్స్ సెన్సార్ స్కీమాటిక్ కూడా తయారీదారుచే అందించబడుతుంది మరియు స్పార్క్ఫన్.కామ్లో కూడా లభిస్తుంది.
సెన్సార్ స్కీమాటిక్లో ఆప్టికల్ హార్ట్ రేట్ సెన్సార్, శబ్దం రద్దు RC సర్క్యూట్రీ లేదా ఫిల్టర్లు ఉంటాయి, వీటిని స్కీమాటిక్ రేఖాచిత్రంలో చూడవచ్చు. విశ్వసనీయ యాంప్లిఫైడ్ అనలాగ్ అవుట్పుట్ కోసం R2, C2, C1, C3 మరియు కార్యాచరణ యాంప్లిఫైయర్ MCP6001 ఉపయోగించబడతాయి.
హార్ట్ బీట్ మానిటరింగ్ కోసం మరికొన్ని సెన్సార్లు ఉన్నాయి కాని ఎలక్ట్రానిక్స్ ప్రాజెక్టులలో SEN-11574 పల్స్ సెన్సార్ విస్తృతంగా ఉపయోగించబడుతుంది.
పిఐసి మైక్రోకంట్రోలర్తో పల్స్ సెన్సార్ ఇంటర్ఫేసింగ్ కోసం సర్క్యూట్ రేఖాచిత్రం
ఇక్కడ మేము పల్స్ సెన్సార్ను మైక్రోకంట్రోలర్ యూనిట్ యొక్క 2 వ పిన్లో కనెక్ట్ చేసాము. సెన్సార్ అనలాగ్ డేటాను అందిస్తున్నందున, అవసరమైన లెక్కలు చేయడం ద్వారా మేము అనలాగ్ డేటాను డిజిటల్ సిగ్నల్గా మార్చాలి.
20Mhz యొక్క క్రిస్టల్ ఓసిలేటర్ మైక్రోకంట్రోలర్ యూనిట్ యొక్క రెండు OSC పిన్స్ అంతటా రెండు సిరామిక్ 33 పిఎఫ్ కెపాసిటర్లతో అనుసంధానించబడి ఉంది. LCD మైక్రోకంట్రోలర్ యొక్క RB పోర్ట్ అంతటా అనుసంధానించబడి ఉంది.
హార్ట్ బీట్ మానిటర్ కోసం PIC16F877A కోడ్ వివరణ
కోడ్ ప్రారంభకులకు కొద్దిగా క్లిష్టంగా ఉంటుంది. తయారీదారు SEN-11574 సెన్సార్ కోసం నమూనా కోడ్లను అందించారు, అయితే ఇది ఆర్డునో ప్లాట్ఫామ్ కోసం వ్రాయబడింది. మేము మా మైక్రోచిప్, PIC16F877A కోసం గణనను మార్చాలి. ఈ ప్రాజెక్ట్ చివరిలో ప్రదర్శన వీడియోతో పూర్తి కోడ్ ఇవ్వబడుతుంది. మరియు సహాయక సి ఫైళ్ళను ఇక్కడ నుండి డౌన్లోడ్ చేసుకోవచ్చు.
మా కోడ్ ప్రవాహం చాలా సులభం మరియు మేము స్విచ్ కేసును ఉపయోగించి దశలను చేసాము. తయారీదారు ప్రకారం, మేము ప్రతి 2 మిల్లీసెకన్లలో సెన్సార్ నుండి డేటాను పొందాలి. కాబట్టి, మేము టైమర్ అంతరాయ సేవా దినచర్యను ఉపయోగించాము, ఇది ప్రతి 2 మిల్లీసెకన్లలో ఒక ఫంక్షన్ను కాల్చేస్తుంది.
స్విచ్ స్టేట్మెంట్లో మా కోడ్ ప్రవాహం ఇలా ఉంటుంది:
కేసు 1: ADC చదవండి
కేసు 2: హార్ట్ బీట్ మరియు ఐబిఐని లెక్కించండి
కేసు 3: ఎల్సిడిలో హృదయ స్పందన మరియు ఐబిఐని చూపించు
కేసు 4: IDLE (ఏమీ చేయకండి)
టైమర్ అంతరాయ ఫంక్షన్ లోపల, మేము ప్రోగ్రామ్ యొక్క స్థితిని కేస్ 1 గా మారుస్తాము: ప్రతి 2 మిల్లీసెకన్లలో ADC ని చదవండి.
కాబట్టి, ప్రధాన ఫంక్షన్లో, మేము ప్రోగ్రామ్ స్థితిని మరియు అన్ని స్విచ్ కేసులను నిర్వచించాము.
void main () { system_init (); main_state = READ_ADC; (1) { స్విచ్ (మెయిన్_స్టేట్) { కేసు READ_ADC: { adc_value = ADC_Read (0); // 0 అనేది ఛానెల్ సంఖ్య main_state = CALCULATE_HEART_BEAT; విచ్ఛిన్నం; } కేసు CALCULATE_HEART_BEAT: { లెక్కించు_హార్ట్_బీట్ (adc_value); main_state = SHOW_HEART_BEAT; విచ్ఛిన్నం; } కేసు SHOW_HEART_BEAT: { if (QS == true) {// హృదయ స్పందన కనుగొనబడింది // బిపిఎం మరియు ఐబిఐ నిర్ణయించబడ్డాయి // అర్దునో హృదయ స్పందనను కనుగొన్నప్పుడు క్వాంటిఫైడ్ సెల్ఫ్ "క్యూఎస్" నిజం QS = తప్పుడు; // తదుపరి సారి క్వాంటిఫైడ్ సెల్ఫ్ జెండాను రీసెట్ చేయండి // 0.9 మెరుగైన డేటాను పొందడానికి ఉపయోగిస్తారు. వాస్తవానికి BPM = BPM * 0.9 ఉపయోగించకూడదు; ఐబిఐ = ఐబిఐ / 0.9; lcd_com (0x80); lcd_puts ("BPM: -"); lcd_print_number (BPM); lcd_com (0xC0); lcd_puts ("IBI: -"); lcd_print_number (IBI); } } main_state = IDLE; విచ్ఛిన్నం; కేసు IDLE: { విరామం; } డిఫాల్ట్: { } } } }
మేము PIC16F877A యొక్క రెండు హార్డ్వేర్ పెరిఫెరల్స్ ఉపయోగిస్తున్నాము: టైమర్ 0 మరియు ADC.
Timer0.c ఫైల్ లోపల, TMR0 = (uint8_t) (tmr0_mask & (256 - ((2 * _XTAL_FREQ) / (256 * 4)) / 1000%)));
ఈ గణన 2 మిల్లీసెకన్ల టైమర్ అంతరాయాన్ని అందిస్తోంది. లెక్కింపు సూత్రం
// టైమర్కౌంట్మాక్స్ - (((ఆలస్యం (ఎంఎస్) * ఫోక్స్ (హెచ్జడ్)) / (ప్రీ స్కేల్_వాల్ * 4 శాతం) / 1000)
మేము timer_isr ఫంక్షన్ చూస్తే, అది-
void timer_isr () { main_state = READ_ADC; }
ఈ ఫంక్షన్లో ప్రతి 2ms లో ప్రోగ్రామ్ స్థితిని READ_ADC గా మార్చారు.
అప్పుడు CALCULATE_HEART_BEAT ఫంక్షన్ Arduino ఉదాహరణ కోడ్ నుండి తీసుకోబడుతుంది.
void calculate_heart_beat (int adc_value) { సిగ్నల్ = adc_value; sampleCounter + = 2; // ఈ వేరియబుల్ int n = sampleCounter తో mS లో సమయాన్ని ట్రాక్ చేయండి - lastBeatTime; // శబ్దాన్ని నివారించడానికి చివరి బీట్ నుండి సమయాన్ని పర్యవేక్షించండి // పల్స్ వేవ్ యొక్క శిఖరం మరియు పతనమును కనుగొంటే (సిగ్నల్ <త్రెష్ && ఎన్> (ఐబిఐ / 5) * 3) {// 3/5 ని వేచి ఉండడం ద్వారా డైక్రోటిక్ శబ్దాన్ని నివారించండి. చివరి IBI యొక్క (సిగ్నల్ <T) {// T అనేది పతన T = సిగ్నల్; // పల్స్ వేవ్లో అత్యల్ప పాయింట్ను ట్రాక్ చేయండి } } …………. ………………………..
ఇంకా, పూర్తి కోడ్ క్రింద ఇవ్వబడింది మరియు వ్యాఖ్యల ద్వారా బాగా వివరించబడింది. ఈ హార్ట్ బీట్ సెన్సార్ డేటాను క్లౌడ్లోకి మరింత అప్లోడ్ చేయవచ్చు మరియు ఇంటర్నెట్ నుండి ఎక్కడి నుండైనా పర్యవేక్షించవచ్చు, తద్వారా ఇది IoT ఆధారిత హార్ట్ బీట్ మానిటరింగ్ సిస్టమ్గా మారుతుంది, మరింత తెలుసుకోవడానికి లింక్ను అనుసరించండి.
ఈ PIC పల్స్ సెన్సార్ ప్రాజెక్ట్ కోసం సహాయక సి ఫైళ్ళను ఇక్కడ నుండి డౌన్లోడ్ చేయండి.