Quantcast
Channel: CAVEDU教育團隊技術部落格
Viewing all articles
Browse latest Browse all 681

保護家人健康,小學生也能自製簡易血氧機: 用 micro:bit 打造專屬血氧機

$
0
0

 

撰寫/攝影 許鈺莨
時間 1小時 材料
難度 2(滿分5)

揭開健康的隱形危機:從「隱形缺氧」談起

在 COVID-19 疫情爆發期間,「隱形缺氧」(Silent Hypoxia)成為醫學界討論的熱點。這種現象中,患者送入急診室測量血氧濃度時已降至70 ~ 80%以下,但由於沒有明顯的症狀,如呼吸困難,他們未能及時意識到危險。看似正常的患者可能隨時面臨休克甚至猝死的風險。

 

「隱形缺氧」是甚麼?

「隱形缺氧」還有一個浪漫的名字——「快樂缺氧」(Happy Hypoxia)。這是一種特殊的現象,指患者的血氧濃度已經降至危險範圍(通常低於95%),但卻沒有出現明顯的症狀,如呼吸急促或胸悶。由於「快樂缺氧」的患者感覺不到異常,病情常常在未被察覺的情況下持續惡化,最終可能進展為急性呼吸衰竭或其他危及生命的情況。[註1] 

 

用 micro:bit 來製作血氧機

本專題將透過 micro:bit 結合心跳血氧感測器 MAX30102 模組,來實現對使用者心跳和血氧濃度的測量。MAX30102 是一款光學感測模組,利用紅光和紅外光來檢測血液中血紅蛋白的變化,從中計算出心跳速率和血氧飽和度(SpO₂)。這些數據不僅可以用於了解日常健康狀況,還能作為運動後的恢復指標,應用場景非常廣泛。

在程式設計方面,本專題採用了 micro:bit 的圖形化拼圖程式設計軟體。這種設計方法類似於拼拼圖,只需簡單地將功能積木拖放並組合,就可以實現功能的開發,無需學習複雜的程式語法。因此,這樣的專題對於初學者和小學生來說非常友好,進而降低了技術門檻。

 

心跳和血氧感測模組介紹

MAX30102 是一款能測量心跳和血氧的感測器模組,結合了紅光(Red Light, 波長660nm)與紅外光(Infrared Light,波長940nm)發光二極體測量,廣泛應用於健康監測科技中。基於光學測量,透過紅光與紅外光的發射與接收,記錄血液對光吸收的變化。當光穿透皮膚並接觸到血液時,含氧血紅蛋白吸收更多紅光,而不含氧的血紅蛋白則吸收更多紅外光。感測器通過比較這兩種光的吸收比例,計算出血氧飽和度,並根據血流波動分析心跳速率。

而 MAX30102晶片也應用於三星 Galaxy S5 ~ S7系列的手機,幫助用戶隨時追蹤心率和血氧數據,提供健康預警與管理功能。[註2]

 

硬體接線

以下是使用 micro:bit 接上心跳血氧感測器模組完整接線圖。

電腦連接micro:bit

  1. 需拿訊號Micro USB線連接電腦,而非充電線
  2. 電腦會將micro:bit 視為外接磁碟機MICROBIT
  3. 到裝置管理員中確認COM Port 號碼

       3-1開始按右鍵 -> 選裝置管理員

 

       3-2 在序列埠(COM 和 LPT)中查詢

開啟序列埠(COM 和 LPT)中,會有USB 序列裝置(COM XX),每台電腦的COM 號碼都會不一樣。

 

這個 COM 號後續會用來燒錄程式,要先記起來。

 

下載並開啟程式燒錄軟體

  1.圖形化程式燒錄軟體下載

程式撰寫軟體是使用BlocklyDuino F2,請找到BlocklyDuinoF2.zip 下載並解壓縮,下載軟體(連結請按我) [註3]

 

  2.開啟 BlocklyDuino

 

  3.選擇開發板種類和燒錄腳位(COM)

在右上角開發板要選BBC micro:bit V2 , COM 則需要與裝置管理員的號碼相同。

另外在程式的初始化函數,也需要選開發板micro:bit

程式撰寫

筆者是參照吉哥的分享網站(連結請按我)的程式來撰寫,裡面有完整的積木程式碼,

但筆者不是使用ESP32 開發板,和 OLED 螢幕來顯示數值,所以程式有更動,將程式顯示在序列埠監控視窗中。[註4]

 

相關程式積木可以在吉哥積木 -> 模組 -> MAX30102血氧濃度 找到

 

程式撰寫如下

上傳程式

  1.按下播放器圖示

  2.按下載 按鈕

 

  3.燒錄成功

若燒錄程式成功,則在下載韌體的視窗中可以找到** Verified OK **的訊息

 

顯示心跳及血氧濃度數值

  1.按下左上方 + 符號

 

 

  2.按下開啟PUTTY

 

  3.顯示數值

將手輕觸在MAX30102 感測器上方即可。

 

 

由上到下數值分別會出現手指溫度、血氧濃度、每分鐘的心跳數平均值。

 

【注意】

  • 手指輕觸感測器上方即可,無需重壓。
  • 放置手指後,該手指不可再移動,以免影響心跳數。
  • 身體需靜止,不可再做大幅度的移動,以免影響心跳數。
  • 每分鐘的心跳數會進行計算後再取平均,所以要等20秒左右才會顯示數值。
  • 下載韌體視窗中看見Error、上傳草稿碼時發生問題 代表程式燒錄失敗,建議換一台電腦燒錄。

 

  • 感測器數值僅供參考。若要精準測量,請以有醫療器材許可字號的血氧機為主。

 

 

相關文章與資源連結
[註1]隱形缺氧難察覺  3方法提早發現

https://www.ch.com.tw/index.aspx?sv=ch_epaper&chapter=epaper20210508

 

[註2] Heart-Rate Monitor and Pulse Oximeter Sensor in LED Reflective Solution

in the Samsung Galaxy S7

https://medias.yolegroup.com/uploads/2016/04/Yole_RS268-MaximMAX30102_MEMS_OpticalHeartSensor_Flyer_SystemPlusconsulting.pdf

 

[註3] 程式撰寫軟體下載

 https://cavedu.gitbook.io/cavedu/rk005/cheng-shi-zhuan-xie-ruan-ti-xia-zai

 

[註4]吉哥的分享 MAX30102血氧濃度感測積木

https://sites.google.com/jes.mlc.edu.tw/ljj/linkit7697/max30102血氧濃度感測積木

保護家人健康,小學生也能自製簡易血氧機: 用 micro:bit 打造專屬血氧機〉這篇文章最早發佈於《CAVEDU教育團隊技術部落格》。


Viewing all articles
Browse latest Browse all 681

Trending Articles