打造真正的無線健身聽戴式裝置 — 第 1 篇:測量心率和 SpO2

作者:Stephen Evanczuk

資料提供者:DigiKey 北美編輯群

編者說明:雖然健身聽戴式裝置擁有極大的潛力,但是在三個關鍵領域面臨著重大設計挑戰,即生物測量、音訊處理及無線充電。本系列共有三篇文章,將逐一探討這些挑戰,並向開發人員展示如何利用超低功率元件,更有效地打造健身聽戴式裝置。本文為第 1 篇,將介紹生物測量技術。

耳道式智慧無線音訊耳塞,又稱為真正的無線聽戴式裝置,已成為相當受歡迎的音訊播放裝置,尤其是在電線可能干擾動作或設備的健身活動期間。在將心率 (HR) 和血氧飽和度測量功能新增到這些設計後,開發人員便能打造出可同時提供音訊播放和健康資料的「健身聽戴式裝置」。

雖然新增生物測量功能具有極大的潛力,但此類應用對產品的尺寸和功率都有限制,因而帶來巨大的設計挑戰。

本文將先探討健康測量,然後再介紹並展示如何應用 Maxim Integrated 的生物感測器,此產品可透過電池供電的耳道式裝置,來測量心率和血氧飽和度。

健康測量

心率除了可在臨床用途上表示病患生命徵象,也是健身運動愛好者和競技運動員用以衡量表現的重要標準。心率的變化能反應出潛藏的生理健康與狀況,若想以非侵入方式測量這些變化,採用光體積變化描記 (PPG) 便能簡便而有效地達成。PPG 能測量特定頻率光線 (通常約為 520 nm (綠光)) 的透射或反射變化,而這種變化是心臟將血液輸送經過組織時,組織血量的變化所致。

除了提供心率的基本資料外,這種相對簡單的技術甚至還可揭示臨床上令人擔憂的狀況,如心室早發性收縮 (PVC) 事件,這要比血壓測量或心電圖 (ECG 或 EKG) 簡便許多 (圖 1)。

PPG 可偵測心室早發性收縮等異常心臟事件的圖片圖 1:PPG 可使用簡單的光學方法偵測異常的心臟事件,如心室早發性收縮 (PVC) 等,而無需測量血壓 (BP) 或使用心電圖 (EKG)。(圖片來源:Wikimedia Commons/CC BY-SA 3.0)

雖然使用 PPG 監測心率可得到重要的資訊,但許多使用者在尋找可進一步洞悉自身身體狀況和訓練效果的方法。脈搏血氧儀可測量氧合血紅蛋白 (HbO2) 與脫氧血紅蛋白 (Hb) 之比,提供這些更深層次的資料,其中血紅蛋白是紅細胞裡將氧氣攜帶到身體器官和組織的蛋白質分子。根據此比值,脈搏血氧儀可測量週邊毛細管的血氧飽和度 (SpO2),進而透過血氣分析並採用非侵入性方法,可靠地估計臨床動脈血氧飽和度 (SaO2) 測量。

為了提供此估計值,脈搏血氧儀會測量一塊皮膚在兩種不同頻率下 (通常約為 660 nm (紅光) 和 880 nm (紅外線)) 對光線的吸收差異。這兩個頻率分別對應血紅蛋白在脫氧和氧合狀態下的吸收光譜峰值,能夠迅速估計血氧飽和度 (圖 2)。

非侵入性光學脈搏血氧測定法的圖表圖 2:非侵入性光學脈搏血氧測定法使用氧合血紅蛋白 (HbO2,紅色曲線) 和脫氧血紅蛋白 (Hb,藍色曲線) 的比值測定毛細管氧飽和度 (SpO2),而這兩種血紅蛋白通常在大約 880 nm 和 660 nm 下分別測得。(圖片來源:Wikimedia Commons/CC BY-SA 3.0)

PPG 和脈搏血氧測定技術在概念上都很簡單,但這些方法實作起來卻面臨著重大挑戰,尤其是在設計穿戴式裝置時。PPG 和脈搏血氧測定法均仰賴健身腕帶或智慧手錶的光電二極體,來準確測量從一塊皮膚反射 (或透過耳垂等透射) 的綠光、紅光或紅外線 (IR) LED 光。

任何外部光源或對光學路徑 (由 LED 光源、皮膚和光電二極體構成) 的干擾,都會影響這些系統的生物測量準確度。例如,環境光的正常變化會引入測量偽影。當環境光發生劇烈變化時,例如使用者穿過明亮陽光和深色暗影的交替之處時 (即光學測量中所稱的「柵欄效應」),可能會徹底發生測量錯誤。最後,在高強度訓練,甚至是某些常規身體運動時,手臂突然的動作,可能會衝撞到健身腕帶或智慧手錶,導致類似的偽影或整個失去訊號。

耳道式感測系統

相較於腕帶式健康監測器,耳道式生物感測有助於減輕某些錯誤來源,即使在某個手腕動作會影響健身腕帶和智慧手機所提供的測量值時,也能提供準確的結果1。雖然目前已出現不少生物測量裝置,但開發人員在實作耳道式健身穿戴裝置時,常會因嚴格的功率和尺寸需求而面臨有限的選擇。

為了便於塞入耳內,這些穿戴式裝置必須小而輕。由於有這些基本需求,因而無法使用更傳統生物測量設計解決方案所需的大容量電池。因此,相比腕帶式產品,設計耳道式健身穿戴裝置時通常需要使用更受限制的電源。

同時,需要有足夠的功率來支援相關應用的多種功能需求,如本系列文章所提到的健身聽戴式裝置。若想執行本文重點探討的光學測量,有效的設計就需要有足夠的功率來驅動綠光、IR 和紅光 LED,並為光電二極體及相關的類比前端 (AFE) 供電。而這些不同的光學和電子元件則需要包含在一個小巧的封裝中,既要滿足嚴格的尺寸需求,又要確保光學訊號路徑的完整性。

Maxim Integrated 的低功率生物感測器可應付這些多元的需求。

專用型生物感應器

Maxim Integrated 的 MAXM86161 專為耳道式健康檢測而設計,可提供完整的光學數據採集子系統,能夠以最少的功耗連續測量心率和 SpO2。這款元件具有 14 個引腳,尺寸僅為 2.9 mm x 4.3 mm x 1.4 mm,其在三色 LED 光學傳輸子系統和光電二極體接收器子系統中,整合了訊號處理、128 字先進先出 (FIFO) 緩衝器以及內部整合電路 (I2C) 序列介面 (圖 3)。

Maxim Integrated 的 MAXM86161 示意圖圖 3:Maxim Integrated 的 MAXM86161 在光學傳輸與接收器子系統中,整合了 128 字 FIFO、控制器及 I2C 序列介面,可提供完整的生物測量解決方案。(圖片來源:Maxim Integrated)

除了內建的綠光、紅外線和紅光 LED 之外,MAXM86161 光學傳輸子系統還包括專用的 8 位元 LED 電流數位類比轉換器 (DAC),能讓開發人員以編程方式將每個 LED 的驅動電流設定為 31、62、94 或 124 mA,並可由單個 3.0 V 至 5.5 V 的 VLED 電源電壓來源供電。此外,開發人員還可以編程方式將 LED 驅動脈寬設定為四個不同的持續時間,範圍從大約 15 μs 至 117 μs。如下所述,此功能提供了滿足特定應用效能需求的關鍵機制。

在接收器子系統中,19 位元的三角積分類比數位轉換器 (ADC) 可以每秒 8 至 4,096 個樣本採集速度,將內建光電二極體的輸出數位化。而數位濾波器則可在開發人員的選擇下,透過分頻多工法 (FDM) 或係數降頻取樣方法 (CDM) 來抑制雜訊。

對於需要在不同解析度等級測量樣本的應用,可動態重新設定 ADC,使其在四個滿量程動態範圍之一運作。開發人員透過降低動態範圍,可在需要時提高解析度。另外,此元件還有一個功能,即能提供偏移值,可在無訊號削波的情況下測量極低的暗電流。

自動修正

在樣本轉換過程中,MAXM86161 的環境光校正 (ALC) 電路可用來自動消除外來照明源所造成的光電二極體電流。此外,開發人員還可以將元件編程為定期測量環境光水平,確保應用使用本身的 ALC 演算法來動態修正採樣資料,或以編程方式修改 LED 驅動電流,從而針對不斷變化的環境光水平來最佳化 LED 輸出照度。

除了內建的 ALC 功能,MAXM86161 還整合獨立的機制來應對前面所述的柵欄效應,該效應會因為一系列明暗環境光水平的快速轉換而導致採樣錯誤。MAXM86161 的柵欄效應功能可自動偵測在柵欄效應事件期間採集的樣本,並將這些樣本替換為估計值。啟用此功能後,MAXM86161 會比較低通濾波器的輸出與估計範圍,並在數值超出範圍時進行替換 (圖 4)。

Maxim Integrated 的 MAXM86161 柵欄效應機制圖形圖 4:Maxim Integrated 的 MAXM86161 柵欄效應機制會監控樣本 (紅線),並自動取代超出可編程範圍 (藍線) 的樣本,例如圖中所示的暫態 (黑線) 部份。(圖片來源:Maxim Integrated)

自主採樣

在採樣期間,MAXM86161 的內建控制器會協調發射器子系統和接收器子系統,來同步 LED 輸出脈衝序列及相應的光電二極體 (PD) 輸入讀數。開發人員可在載入六個「插槽」(LEDCn) 的設定中指定此序列的程式,這些插槽包含在一組三個 LED 序列控制暫存器中 (表 1)。每個 LEDCn 插槽可指定一個特定的採樣作業,該作業由指定的綠光、紅外線或紅光 LED 的照明以及後續的相關 PD 採樣構成。

位址 暫存器名稱 預設值 B7 B6 B5 B4 B3 B2 B1 B0
0x20 LED 序列暫存器 1 00 LEDC2[3:0] LEDC1[3:0]
0x21 LED 序列暫存器 2 00 LEDC4[3:0] LEDC3[3:0]
0x22 LED 序列暫存器 3 00 LEDC6[3:0] LEDC5[3:0]

表 1:Maxim Integrated 的 MAXM86161 LED 輸出序列脈衝會載入一組 LED 序列控制暫存器中,且每組含有三個暫存器。(表格來源:Maxim Integrated)

不同的 LED 運作模式對應於不同的預定義值,而 MAXM86161 會識別這些值。例如,若想採樣 LED1 (綠光)、LED2 (紅外線) 或 LED3 (紅光),開發人員可將所需插槽的 LEDCn[3:0] 欄位分別設定為二進位值 0001、0010、0011。同樣地,若想採樣環境光,開發人員可將所需欄位設定為二進位值 1001。因此,要編程一個採樣 LED1、LED2、LED3 和環境光的序列,開發人員可進行以下設定:

LEDC1[3:0] = 0001

LEDC2[3:0] = 0010

LEDC3[3:0] = 0011

LEDC4[3:0] = 1001

LEDC5[3:0] = 0000

最後一個插槽設定為二進位「0000」,代表序列結束。

此外,開發人員還需要設定多個其他配置參數,包括取樣率、脈寬及驅動電流等。實際上,這些配置參數以及 LED 序列暫存器 0x21 和 0x22 (請再參見表格),通常都會在暫存器 0x20 之前設置,其原因在於寫入暫存器 0x20 會開啟 MAXM86161 測量序列。如本文後面所述,軟體常式可能會先設定這些其他的暫存器,最後才會寫入暫存器 0x20 以啟動所編程的序列。

初始化序列後,控制器會自動協調 LED 輸出脈衝和 PD 輸入採樣,以所需的取樣率重複執行所編程的序列 (圖 5)。

Maxim Integrated 的 MAXM86161 控制器自動執行採樣作業序列的示意圖圖 5:Maxim Integrated 的 MAXM86161 控制器會自動執行採樣作業序列,每個序列都涉及協調 LED 輸出脈衝和相關的光電二極體取樣讀數。(圖片來源:Maxim Integrated)

控制這個可編程的序列,可讓應用輕鬆地即時修改測量模式。例如,若應用不需要以最高更新率測量 SpO2,則只需在序列控制暫存器中進行簡單的變更,使用綠光 LED (LED1) 維持對心率資料的頻繁更新。應用會定期重設序列,以新增紅外線 (LED2) 和紅光 (LED3) LED 來短暫測量 SpO2,然後再切換回僅更新心率。

功率最佳化

除了使用這種應用級方法來降低功率外,開發人員還可以利用 MAXM86161 固有的低功率能力。在取樣率為 25 sps 的典型應用中,MAXM86161 在正常作業期間耗用的電流不到 10 μA。除了正常的低功率作業以外,MAXM86161 還提供許多機制來實現系統級和元件級功率最佳化。

對於系統級最佳化,元件可在閒置期間獨立執行生物測量,而與此同時,包括處理器在內的其餘系統,都在低功率睡眠模式下待命。此時,MAXM86161 序列控制器會持續將樣本資料放入內部 FIFO 緩衝器的下個可用插槽中。當緩衝器達到開發人員設定的閾值容量時,MAXM86161 會向主機處理器發出中斷。主機則會回應這個中斷,其會醒來足夠長的時間,透過受支援的 I2C 介面來清空 FIFO 緩衝器,或是保持換醒狀態進行更耗時的處理。

無論是以這種自主方法運作,還是對主機處理器進行更直接的控制,MAXM86161 都可編程為使用其他元件級最佳化機制。

在這些機制中,有一個機制可讓開發人員將電流消耗降低到滿足應用精確測量要求所需的最小量。其中,開發人員可調整上述可編程 LED 輸出脈寬能力,實現變更測量條件所需的訊號完整性程度。如果需要提高訊噪比 (SNR),開發人員可將脈寬增加到所需的程度 (圖 6)。

在四個不同的持續時間下 LED 輸出脈寬的圖形圖 6:開發人員可將 LED 輸出脈寬設定為四個不同的持續時間,將電流降到實現應用所要求 SNR 的最小必需值。(圖片來源:Maxim Integrated)

另外,還有一些機制可讓開發人員在不需要採樣或僅需較低更新率期間降低功率。

如果長時間不需要進行生物測量,可將 MAXM86161 置於關機模式,此時僅耗用 1.6 μA 電流。實際上,開發人員可以編程方式停用元件的內部低壓降 (LDO) 穩壓器,將關機電流降至區區的 0.05 μA 左右。但是,重新啟動 LDO 也有自身的問題,如啟動時間延後或湧入電流增加,這兩者可能會給特定的電池供電設計帶來問題。

MAXM86161 也提供了一種機制,可在取樣率為 256 sps 或更低時,在兩次取樣之間自動切換為 1.6 μA 關機模式,進而在不損及應用功能的情況下大幅節能。

這個自動的元件級功率降低機制配合 MAXM86161 的接近偵測功能後,可在耳道式穿戴裝置不再接觸皮膚時實現節能。例如,開發人員可以設定一些 MAXM86161 暫存器,將元件置於接近偵測模式下的低功率配置,從而避免在使用者取下穿戴式裝置時浪費電力。

在接近模式下,元件會監控 PD 輸出,偵測代表反射物件 (如皮膚) 已靠近的訊號。為了減少此模式的功率,MAXM86161 將降低用作照明光源的 LED 驅動電流,並將取樣率降到 8 sps,這會讓元件在兩次取樣之間調用關機模式。當 PD 輸出超出編程器指定的閾值時,MAXM86161 會自動切換回全主動模式,在沒有主機處理器介入的情況下執行採樣,或發出中斷來喚醒處理器。

開發支援

由於 MAXM86161 整合了廣泛的功能,因此只需要一組簡單的硬體介面。實際上,開發人員僅需少數額外的外部元件,便能將 MAXM86161 生物測量能力增加到以微處理器或微控制器為架構的設計中 (圖 7)。

Maxim Integrated 的 MAXM86161 示意圖圖 7:由於 Maxim Integrated 的 MAXM86161 整合光學生物感測所需的所有功能,因此僅需幾個額外的硬體元件即可完成硬體介面設計。(圖片來源:Maxim Integrated)

使用 MAXM86161EVSYS 評估板,開發人員可以在現有設計中快速利用 MAXM86161 完成原型開發,或以相關的 MAXM86161EVSYS 公版設計為基礎,實作客製化硬體。

在 MAXM86161 的開發中,最具挑戰性的部份或許就是為特定應用確定最合適的配置。如本文通篇所述,MAXM86161 生物測量元件提供了一組極為豐富的可配置設定和效能特性。

為了幫助開發人員更快地找到合適的元件配置,Maxim Integrated 提供了 MAXM86161 評估軟體應用程式。此應用程式可讓開發人員使用圖形使用者介面 (GUI) 來探索各種元件設定的效果。另外,此應用程式還可搭配 Maxim Integrated 的 MAXM86161EVSYS 評估板使用,可讓開發人員輕鬆修改元件工作參數,並評估 MAXM86161 的取樣效能和功耗結果 (圖 8)。

Maxim 的 MAXM86161 評估軟體應用程式圖片 (按此放大)圖 8:Maxim Integrated 的 MAXM86161 評估軟體應用程式可搭配該公司的 MAXM86161EVSYS 評估板使用,可讓開發人員使用一系列選單變更元件設定,探索各種元件配置。(圖片來源:Maxim Integrated)

無論是使用這個開發平台來確定 MAXM86161 配置設定值,還是自己獨立摸索,開發人員都會發現 MAXM86161 的編程工作主要就是編寫常式,以在初始化或執行期間將這些設定載入 MAXM86161。

舉例來說,本文作者從 Maxim Integrated 取得一個簡單的 MAXM86161 驅動程式,該程式展示了操作此元件所需的基本設計模式。Maxim Integrated 稍後將會推出此驅動程序。

這個 C 語言驅動模組含有多個範例常式,這些常式展示了執行各種 MAXM86161 功能 (如測量 SpO2) 所需的各種暫存器更新 (清單 1)。

複製
/* Write LED and SPO2 settings */
if (data->agc_is_enable)
   err |= max86161_prox_led_init(data);
else
   err |= max86161_hrm_led_init(data);
 
err |= max86161_write_reg(data, MAX86161_INTERRUPT_ENABLE, DATA_RDY_MASK);
 
err |= max86161_write_reg(data, MAX86161_LED_RANGE_1,
      ( MAX86161_LED_RGE << LED_RGE2_OFFSET )
      | ( MAX86161_LED_RGE << LED_RGE3_OFFSET ));
 
err |= max86161_write_reg(data, MAX86161_PPG_CONFIGURATION_1,
      ( MAX86161_PPG_TINT << PPG_TINT_OFFSET )
      | ( MAX86161_ADC_RGE << PPG_ADC_RGE_OFFSET ));
 
err |= max86161_write_reg(data, MAX86161_PPG_CONFIGURATION_3,
      ( MAX86161_LED_SETLNG << LED_SETLNG_OFFSET ));
 
err |= max86161_write_reg(data, MAX86161_PD_BIAS,
      ( PD_BIAS_125_CS << PD_BIAS_OFFSET ));
 
err |= max86161_write_reg(data, MAX86161_FIFO_CONFIG_2, 
      FLUSH_FIFO_MASK | FIFO_STAT_CLR_MASK);
 
err |= max86161_write_reg(data, MAX86161_LED_SEQ_REG_1, 
      ( LED_RED << LEDC2_OFFSET ) 
      | ( LED_IR << LEDC1_OFFSET ));
 
if (!atomic_read(&data->irq_enable)) {
   enable_irq(data->irq);
   atomic_set(&data->irq_enable, 1);
}

清單 1:此程式碼片段來自 MAXM86161 驅動程式軟體,展示了將配置資料寫入各種元件暫存器,以控制該元件的基本方法。(程式碼來源:Maxim Integrated)

如前所述,測量 SpO2 將遵循通用的 MAXM86161 作業模式,主要涉及將設定值寫入元件暫存器,以設定 LED 電流、取樣率、數位濾波器選擇、ADC 動態範圍等參數。

在為這些設定更新相應的 MAXM86161 暫存器後,即可定義並立即啟動測量序列,方法是將暫存器 0x20 (MAX86161_LED_SEQ_REG_1) 的 LEDC2 和 LEDC3 欄位分別設定為二進位 0010 (LED_IR) 和二進位 0011 (LED_RED),如清單 1 所示。

結論

雖然耳道式健身穿戴裝置可提供持久的生物測量準確度,但也對小尺寸和超低功耗提出嚴格的設計要求。如本文所述,Maxim Integrated 的 MAXM86161 生物測量元件不僅能提供監測心率和 SpO2 所需的完整光學數據採集系統,還可滿足耳道式穿戴裝置對尺寸和功率限制的要求。

參考資料

  1. Bunn, J., Wells, E., Manor, J., & Webster, M. (2019).Evaluation of Earbud and Wristwatch Heart Rate Monitors during Aerobic and Resistance Training.International Journal of Exercise Science, 12(4), 374–384.
DigiKey logo

聲明:各作者及/或論壇參與者於本網站所發表之意見、理念和觀點,概不反映 DigiKey 的意見、理念和觀點,亦非 DigiKey 的正式原則。

關於作者

Image of Stephen Evanczuk

Stephen Evanczuk

Stephen Evanczuk 撰寫電子產業的相關資訊已有超過二十年的經驗,涉及的主題多元,涵蓋硬體、軟體、系統以及包含 IoT 在內的應用。他以神經元網路為研究主題,取得神經科學博士學位,並且在航太產業,針對廣泛運用的安全系統和演算法加速方法進行研究。目前,在撰寫科技和工程文章之餘,他投入辨識和推薦系統的深度學習應用。

關於出版者

DigiKey 北美編輯群