วิธีวัดอัตราการเต้นของหัวใจโดยใช้ Heart Beat Sensor?

อัตราการเต้นของหัวใจหรืออัตราชีพจรเป็นพารามิเตอร์ที่สำคัญที่สุดที่วัดได้ในด้านการแพทย์ มีสองวิธีที่สามารถวัดอัตราการเต้นของหัวใจได้ วิธีหนึ่งคือการตรวจสอบข้อมือด้วยตนเองโดยใช้เครื่องตรวจฟังเสียงและคาดเดาอัตราการเต้นของหัวใจอีกวิธีหนึ่งคือใช้เซ็นเซอร์วัดอัตราการเต้นของหัวใจ เซ็นเซอร์วัดอัตราการเต้นของหัวใจจะอ่านค่าพัลส์บางส่วนและส่งสัญญาณไฟฟ้าไปยังไมโครคอนโทรลเลอร์จากนั้นการอ่านค่าเหล่านี้จะถูกคำนวณและแสดงอัตราชีพจรที่แน่นอน



การวัดอัตราการเต้นของหัวใจ

เซ็นเซอร์วัดอัตราการเต้นของหัวใจวัดอัตราชีพจรได้อย่างไร?

อย่างที่เราทราบกันดีว่าเรากำลังจะทำอะไรดังนั้นเรามาเริ่มทำโครงการนี้กัน



ขั้นตอนที่ 1: รวบรวมส่วนประกอบ

การทำรายการส่วนประกอบและศึกษาการทำงานของส่วนประกอบเหล่านั้นเป็นแนวทางที่ดีที่สุดก่อนเริ่มโครงการใด ๆ ต่อไปนี้เป็นส่วนประกอบที่จะใช้ในโครงการของเรา:



  • Arduino UNO
  • เซ็นเซอร์วัดอัตราการเต้นของหัวใจ
  • สายจัมเปอร์
  • เทปสีดำ

ขั้นตอนที่ 2: ทำความรู้จักกับส่วนประกอบที่ใช้

เนื่องจากเรามีรายชื่ออุปกรณ์ที่เราจะใช้ ตอนนี้ให้เราดูว่าส่วนประกอบเหล่านี้ทำงานอย่างไร



Arduino Uno คือบอร์ดไมโครคอนโทรลเลอร์ที่ใช้สำหรับควบคุมวงจรต่างๆ ใช้รหัส C ที่ให้คำแนะนำในการทำงาน สิ่งทดแทนอื่น ๆ ของบอร์ดไมโครคอนโทรลเลอร์นี้ที่มีอยู่ในตลาด ได้แก่ Arduino Nano, Node MCU, ESP32 เป็นต้น

SEN-11574 เป็นเซ็นเซอร์วัดอัตราชีพจรแบบพลักแอนด์เพลย์ที่รวมเข้ากับ Arduino มันมีสองด้าน ด้านหนึ่งมีไฟ led ซึ่งจะเปล่งแสง ควรวาง led นี้ไว้ที่ด้านบนของหลอดเลือดดำโดยตรง อย่างที่เราทราบกันดีว่าปริมาตรของเลือดในหลอดเลือดดำจะมากขึ้นเมื่อหัวใจสูบฉีดดังนั้นเมื่อมีเลือดในหลอดเลือดดำมากขึ้นแสงจะสะท้อนไปที่เซ็นเซอร์มากขึ้น การเปลี่ยนแปลงของแสงที่เซ็นเซอร์ได้รับนี้จะถูกวิเคราะห์ตามช่วงเวลาและจะวัดอัตราการเต้นของหัวใจ ในอีกด้านหนึ่งของเซ็นเซอร์จะมีวงจรซึ่งทำหน้าที่ในการขยายและกำจัดสัญญาณรบกวนของสัญญาณที่ได้รับ

ขั้นตอนที่ 3: การประกอบส่วนประกอบ

  1. อย่างที่เราทราบกันดีว่าผิวหนังเป็นของคนเรามีความชุ่มชื้นหรือมันในบางครั้ง ซึ่งอาจส่งผลให้เกิดการลัดวงจรของเซ็นเซอร์ซึ่งให้การวัดที่ผิดพลาด ควรทาชั้นสติกเกอร์ไวนิลที่ด้าน LED ของเซ็นเซอร์เพื่อป้องกันไม่ให้ชื้นบนผิวหนัง
  2. หลังจากทำเช่นนี้ให้นำเทปเวกเตอร์สีดำมาติดไว้ที่อีกด้านหนึ่งของเซ็นเซอร์ วิธีนี้จะป้องกันไม่ให้แสงจากบริเวณโดยรอบมาขัดจังหวะแสงของเซ็นเซอร์
  3. ตอนนี้เชื่อมต่อ Vcc และพินกราวด์ของเซ็นเซอร์กับ Arduino และขาอะนาล็อกของเซ็นเซอร์เข้ากับ A0 ของ Arduino

ขณะนี้อุปกรณ์ทั้งหมดได้รับการตั้งค่าและพร้อมใช้งานแล้ว เราจะใส่เซ็นเซอร์ลงบนหลอดเลือดดำโดยตรงที่นิ้วหรือที่หูเพื่อวัดอัตราการเต้นของหัวใจ



ขั้นตอนที่ 4: เริ่มต้นกับ Arduino

หากคุณไม่เคยทำงานกับ Arduino IDE มาก่อนไม่ต้องกังวลเพราะขั้นตอนในการเบิร์นโค้ดบนบอร์ดไมโครคอนโทรลเลอร์โดยใช้ Arduino IDE มีดังต่อไปนี้

  1. หลังจากเชื่อมต่อบอร์ด Arduino กับพีซีของคุณแล้วให้ไปที่แผงควบคุม> ฮาร์ดแวร์และเสียง> อุปกรณ์และเครื่องพิมพ์เพื่อตรวจสอบชื่อของพอร์ตที่ Arduino เชื่อมต่ออยู่ มันแตกต่างกันในคอมพิวเตอร์เครื่องอื่น

    กำลังค้นหาพอร์ต

  2. เปิด Arduino IDE และตั้งค่าบอร์ดเป็น Arduino / Genuino UNO

    คณะกรรมการการตั้งค่า

  3. ตอนนี้ตั้งค่าพอร์ตที่คุณสังเกตเห็นก่อนหน้านี้ในแผงควบคุม

    การตั้งค่าพอร์ต

  4. ดาวน์โหลดรหัสที่ระบุด้านล่างและเปิด เบิร์นโค้ดบนบอร์ดไมโครคอนโทรลเลอร์ของคุณโดยคลิกที่ไฟล์ ที่อัพโหลด ปุ่ม.

    ที่อัพโหลด

คลิก ที่นี่ เพื่อดาวน์โหลดรหัส

ขั้นตอนที่ 5: รหัส

รหัสในการวัดอัตราชีพจรมีความยาวและซับซ้อนเล็กน้อย รหัสบางส่วนมีคำอธิบายด้านล่าง

1. ในการเริ่มต้นจะมีการกำหนดพินทั้งหมดที่จะใช้ ตัวแปรทั้งหมดที่จะใช้ในฟังก์ชันต่างๆและ interrupt service routine (ISR)

2. การตั้งค่าเป็นโมฆะ () เป็นฟังก์ชันที่พินกำหนดให้ใช้เป็น INPUT หรือ OUTPUT อัตราการรับส่งข้อมูลยังถูกตั้งค่าในฟังก์ชันนี้ อัตราบอดคือความเร็วที่ไมโครคอนโทรลเลอร์สื่อสารกับส่วนประกอบอื่น ๆ ISR ถูกเรียกในฟังก์ชันนี้ด้วย

3. ห่วงเป็นโมฆะ () เป็นฟังก์ชันที่ทำงานอย่างต่อเนื่องเป็นวงจร ที่นี่จะพบอัตราการเต้นของชีพจรและจะตัดสินใจว่าเมื่อใดที่จะทำให้ LED จางลงเมื่อพบการเต้นของหัวใจ

โมฆะ loop () {serialOutput (); ถ้า (QS == จริง) {// พบการเต้นของหัวใจ // กำหนด BPM และ IBI แล้ว // Quantified Self 'QS' เป็นจริงเมื่อ arduino พบว่า heartbeat fadeRate = 255 // ทำให้ LED Fade Effect เกิดขึ้น // ตั้งค่าตัวแปร 'fadeRate' เป็น 255 เพื่อทำให้ LED จางลงด้วย pulse serialOutputWhenBeatHappens (); // จังหวะที่เกิดขึ้นส่งออกเป็นอนุกรม คำพูดคำจา = เท็จ; // รีเซ็ตค่าสถานะ Quantified Self สำหรับครั้งต่อไป} ledFadeToBeat (); // ทำให้ LED Fade Effect เกิดความล่าช้า (20); // หยุดพัก }

สี่. เป็นโมฆะ serialOutput () เป็นฟังก์ชันที่กำหนดว่าจะแสดงเอาต์พุตบนจอภาพอนุกรมอย่างไร

เป็นโมฆะ serialOutput () {switch (outputType) {case PROCESSING_VISUALIZER: sendDataToSerial ('S