ga('set', 'anonymizeIp', 1);

[TechIntro] The Introduce of SpO2

Share

醫院常用的脈搏血氧飽和度偵測儀器的原理及介紹將在本文揭露。使用實驗模組MAX30100搭配arduino。

SpO2 & SaO2

所謂的SpO2及SaO2是什麼呢?

  • SpO2:脈搏血氧飽和度,透過脈搏血氧儀測得。
  • SaO2:動脈血氧飽和度,須透過抽血量測。

臨床上將SpO2及SaO2視為相同(SpO2數值通常略高),但當血紅素異常時,數值判讀就會存在誤差。

下圖為攜氧血球、缺氧血球、碳量高血球、含鐵量高血球等不同血球對不同光波長之光線之吸光係數曲線圖。


脈搏血氧儀

傳感器設備放置在使用者身體厚度較薄的位置,例如耳垂或指尖,將兩個波長的光穿透身體部位到達光電探測器,進而測量不同波長的吸光度,由吸光度變化計算血氧濃度。

血氧儀常見在消費性電子產品上像智慧手環、智慧手錶,這種電子產品使用的血氧儀是使用反射式模組,而醫院中夾著手指量測的血氧儀則為穿透式血氧儀。


穿透式脈搏血氧儀


Diode set


原理

介紹SpO2計算所運用之定理。

比爾-朗伯定理(Beer-Lambert’s Law)

Wiki:比爾朗伯定理維基百科

Beer’s Law

被穿透物濃度影響光吸收率

Lambert’s Law

光行進距離影響光吸收率

Hb, HbO2對光吸收率

通常使用600~700nm(紅光)作為light source 1;
900~1000nm(紅外光)作為light source 2。

<結論>

600~700nm:

光吸收率 Hb > HbO2

900~1000nm:

光吸收率 HbO2 > Hb


AC/DC Components


上圖可以看見,當無脈搏時,光線穿透後之強度為最強,因為光線經過的血液量最少,而當有脈搏時,光強度逐漸降至最小值,直到脈搏血液最多時光線穿透量最少。

而以上光線強度隨著脈搏起伏變動部分以AC稱之,而光線最大值(脈搏最小)則以DC稱之。

(之所以AC/DC稱之即表現像電流交流/直流電。)


SpO2簡易公式

光(紅光/紅外光)吸收率R=(AC紅光/DC紅光)/(AC紅外光/DC紅外光)。
業界常有簡易算法為上圖右方公式。

事實上根據不同傳感器或是不同LED光源,其導出公式均會有所差異,所以實作時必須依照實驗值校正出一張K表,如下圖:

根據實驗calibration得出的K表就是血氧儀顯示SpO2數值之依據。


MAX30100 Module with Arduino

下方簡單介紹使用MAX30100 R/IR LED and 光感器模組搭配arduino使用。MAX30100為光源及傳感器在同一側之模組設計,所以是一反射式脈搏血氧儀。

MAX30100 data sheet

原廠 MAX30100 data sheet

接線

注意:我們需要在SCL/SDA兩PIN接上上拉電阻(PULL HIGH),如下三圖。

程式碼

MAX30100-arduino on Github

其中計算SpO2、心跳等需使用到一些演算法,有機會再做介紹。

Jys

Recent Posts

[python] Flask Create RESTful API

This article gi... Read More

3 年 前發表

[Javascript] 新增/刪除JSON中key值

在web訊息交換常會需要對JS... Read More

3 年 前發表

[JAVA] SQL Server Connection

本文介紹JAVA連線SQL s... Read More

3 年 前發表