Show HN: Every Breath You Take - การฝึกความแปรปรวนของอัตราการเต้นหัวใจ
(github.com/kbre93)- แอปพลิเคชันที่สตรีมข้อมูลความเร่งและอัตราการเต้นหัวใจจากมอนิเตอร์หัวใจ Polar H10 เพื่อวัดและฝึกผลตอบสนองที่การหายใจแบบควบคุมมีต่อความแปรปรวนของอัตราการเต้นหัวใจ
- ความแปรปรวนของอัตราการเต้นหัวใจคือความเปลี่ยนแปลงเล็กน้อยระหว่างจังหวะการเต้นของหัวใจ และเป็นค่าชี้วัดการตอบสนองต่อความเครียดที่สะท้อนสมดุลระหว่างปฏิกิริยาสู้หรือหนีของระบบประสาทซิมพาเทติกกับปฏิกิริยาพักและย่อยของระบบประสาทพาราซิมพาเทติก
- สามารถฟื้นฟูสมดุลของระบบประสาทอัตโนมัติได้ด้วยการหายใจช้าและลึก โดยผู้ใช้ตั้งความเร็วการหายใจ วัด การควบคุมการหายใจ ด้วยเครื่องวัดความเร่งที่ทรวงอก และตรวจดูการตอบสนองของความแปรปรวนของอัตราการเต้นหัวใจ
- การทำงานหลักคือการเชื่อมต่อ Polar H10 อัตโนมัติ, ฟีดแบ็กการควบคุมการหายใจแบบเรียลไทม์, แถบเลื่อนปรับจำนวนครั้งการหายใจต่อนาที, การติดตามการแกว่งของการหายใจและอัตราการเต้นหัวใจแบบเรียลไทม์, และการสำรวจการตอบสนองของความแปรปรวนของอัตราการเต้นหัวใจต่อความเร็วการหายใจที่หลากหลาย
- เงื่อนไขการใช้งานและวิธีใช้คือ Polar H10 Firmware Version 5.0.0 ขึ้นไป, ทดสอบกับ Python 3.9·3.10·3.11·3.12, รัน
python EBYT.py, และสร้างแอปแบบ bundle ผ่านpyinstaller EBYT.spec- เพื่อการตรวจจับการหายใจที่ดีที่สุด ให้สวม Polar H10 บริเวณส่วนที่กว้างที่สุดของทรวงอก และนั่งนิ่งระหว่างการบันทึก
- หายใจตามจังหวะการขยายและหดตัวของวงกลมสีทอง, ตรวจสอบการควบคุมการหายใจด้วยวงกลมสีน้ำเงิน, และปรับความเร็วกับการควบคุมการหายใจโดยตั้งเป้าช่วง ความแปรปรวนของอัตราการเต้นหัวใจสีเขียว
> 150 msในกราฟด้านล่าง
1 ความคิดเห็น
ความคิดเห็นบน Hacker News
เคยลองใช้ผลิตภัณฑ์ของ HeartMath มาก่อน แต่ไม่ชัดเจนว่ามันแสดงอะไรอยู่กันแน่ และก็ไม่ค่อยช่วยเท่าไร
สงสัยว่า Polar H10 เชื่อมต่อกับคอมพิวเตอร์ผ่าน Bluetooth ได้ไหม
ล้มเหลวตอนดึงข้อกำหนดการ build ของ
pyobjc-core==9.2และจากข้อความดูเหมือนไม่ใช่ปัญหาของpipแต่เป็นข้อผิดพลาดจาก subprocessbleak/Bluetoothอาจเกี่ยวกับ
bluezหรือเฟิร์มแวร์ที่ขาดหายไปPyObjC requires macOS to buildก็เลยดูเหมือนว่ามี dependency เฉพาะ macOSลองดู readthedocs คร่าว ๆ แล้วไม่มี Linux กับ Windows รองรับแค่ macOS
ไม่รู้ว่าจะมีประโยชน์แค่ไหน แต่ดูแล้วเท่แน่นอน
น่าประหลาดใจที่อุปกรณ์นี้ส่งข้อมูลออกมาเยอะมาก แต่ปกติถูกย่อให้เหลือแค่อัตราการเต้นหัวใจตัวเดียว
แค่มีโปรเจกต์ตัวอย่างให้ลองปรับแต่งการเก็บข้อมูลทีหลังก็ขอบคุณมากแล้ว
ทำให้ประเมินอัตราการหายใจได้ และยังไม่เคยเห็นแอปอื่นทำแบบนั้น
โดยพื้นฐานแล้วมันส่งพัลส์เหนี่ยวนำระยะสั้นที่ 5KHz ทุกครั้งที่หัวใจเต้น
เดโมง่าย ๆ คือใช้หูฟังโทรศัพท์แบบเก่าหรือคอยล์อะไรก็ได้เสียบเข้ากับซาวด์การ์ดแล้วฟัง จะได้ยินเสียงคลิกสั้น ๆ หรือเสียงจิ๊บ ๆ ทุกจังหวะเต้น
อุปกรณ์ฟิตเนสส่วนใหญ่ที่เข้ากันได้กับเครื่องวัดหัวใจ Polar ทำงานด้วยวิธีนี้
ผมเคยทำงานวิจัยเปรียบเทียบความแม่นยำการวัด HRV ของเครื่องมอนิเตอร์สัญญาณชีวภาพ Aidlab กับ Polar H7 และพบว่าข้อมูลมีค่าสหสัมพันธ์สูง
น่าสนใจเหมือนกันว่าแอปนี้จะทำงานอย่างไรเมื่อจับคู่กับฮาร์ดแวร์หลายแบบ
ผมจำสเปกละเอียดไม่ได้ แต่เท่าที่จำได้มันจับ waveform ทั้งหมดได้ดีกว่า
แน่นอนว่าค่าประเมินอาจมี noise จาก artifact ที่เกิดจากการเคลื่อนไหวได้
การประเมินอัตราการเต้นหัวใจของ H10 ถือว่าเชื่อถือได้อย่างกว้างขวาง และยังสตรีม raw ECG ได้ จึงตรวจสอบได้
สร้าง issue ไว้แล้ว: https://github.com/kbre93/every-breath-you-take/issues/9
The blue circle shows your breathing controlหมายความว่าอะไรไม่รู้อยากรู้ว่าควรดูอะไร และ HRV ควรมีเป้าหมายแบบไหน
HRV ที่ดีคือ 150ms ขึ้นไป และจะแสดงเป็นแถบสีเขียวในกราฟด้านล่าง
ตอนนี้ทำงานได้เฉพาะกับ Polar H10 แต่ถ้าเครื่องมอนิเตอร์แบบสายคาดหน้าอกอื่นมี accelerometer ก็น่าจะแก้ให้รองรับได้
สรุปคืออาจช่วยบางคนได้ แต่กลไกยังไม่ชัดเจน และผมอ่านว่าอาจหมายถึง placebo effect ก็ได้
ถึงอย่างนั้นก็ถือว่าค่อนข้างปลอดภัย มีการโฆษณาเกินจริงเยอะ และงานวิจัยจำนวนน้อยที่มีอยู่ก็อาจมีอคติแฝงได้
https://www.nature.com/articles/s41598-022-27247-y
ตอนวาดร่วมกับอัตราการหายใจ จะดูค่าต่ำสุดและสูงสุดภายในรอบการหายใจ
อยากเก็บข้อมูลด้วย H10 เพื่อแชร์กับแพทย์
แต่ผมยังไม่เคยลองเอง