從PPG信號檢測心律失常--用MAX30102脈搏血氧計(jì)傳感器和Arduino微控制器構(gòu)建一個可穿戴手指脈搏血氧計(jì)
導(dǎo)讀:如今,心臟驟停是世界范圍內(nèi)死亡的主要原因,影響著大量的人。心律失??赏ㄟ^心電圖診斷。沒有人會在家里有心電圖機(jī),它也需要電極粘在適當(dāng)?shù)牡胤?,并且需要時間來分析心電圖。與此同時,在新冠肺炎疫情后,大多數(shù)人都在使用手指脈搏血氧儀檢查自己的生命體征。由于心電圖(ECG)和容積圖(PPG)之間存在相關(guān)性,因此可用于檢測嚴(yán)重的心律失常??纱┐魇种该}搏血氧儀使用分光光度法和脈搏體積描記術(shù)來確定氧飽和度水平和脈搏率。我的目標(biāo)是用MAX30102脈搏血氧計(jì)傳感器和Arduino微控制器構(gòu)建一個可穿戴手指脈搏血氧計(jì),在信號處理工具Neurokit的幫助下檢測主要心律失常。在這個項(xiàng)目的幫助下,我希望心律失??梢约霸绨l(fā)現(xiàn),并通過適當(dāng)?shù)闹委熗炀壬?
PPG波可以作為一種檢測和診斷心律失常的工具。PPG振幅的搏動變化可能是患者心律不規(guī)律的線索。脈搏血氧儀波形幅度的突然下降,結(jié)合典型的心電圖模式,應(yīng)該給出一個重要的警告,關(guān)于危險(xiǎn)情況的存在。
室性早搏復(fù)合體對心電圖、血壓和PPG的影響
室性心動過速對心電圖、血壓和PPG的影響
使用的材料和方法:為了得到SPO2和心率,我們需要一個傳感器來記錄容積圖。照片體積圖是一種將紅光(660nm)和紅外線(940nm)照射在組織上的技術(shù)。一些光粒子(光子)被散射、反射和吸收。光探測器探測穿過組織后的光。到達(dá)光電探測器的光子經(jīng)歷了散射和吸收。因此,通過測量被檢測光強(qiáng)度的變化,可以確定組織內(nèi)的相對變化。MAX30102監(jiān)測每分鐘心跳,并在測量血氧飽和度(SPO2)中發(fā)揮關(guān)鍵作用。
Arduino UNO是基于ATmega328p的微控制器。它有14個數(shù)字輸入/輸出引腳(其中6個可以用作PWM輸出),6個模擬輸入,一個16 MHz陶瓷諧振器(CSTCE16M0V53-R0),一個USB連接,一個電源插孔,一個ICSP頭和復(fù)位按鈕。它包含了支持微控制器所需的一切。它可以簡單地用USB線連接到電腦上,或者用交直流適配器或電池供電即可開始使用。Arduino程序是在Arduino集成開發(fā)環(huán)境(IDE)中編寫的。Arduino IDE是運(yùn)行在系統(tǒng)上的特殊軟件,允許用戶編寫草圖。
本項(xiàng)目使用NeuroKit2作為信號處理工具。NeuroKit2是一個開源的、社區(qū)驅(qū)動的、以用戶為中心的用于神經(jīng)生理信號處理的Python包。它為各種身體信號(如ECG, PPG, EDA, EMG, RSP)提供了一套全面的處理程序。Neurokit2分析信號數(shù)據(jù)幀(二維數(shù)據(jù)結(jié)構(gòu))。包含信號的數(shù)據(jù)通過內(nèi)置功能進(jìn)行預(yù)處理和分析。
MAX30102脈搏血氧計(jì)傳感器與Arduino微控制器集成,用于捕獲PPG信號。MAX30102傳感器的原始數(shù)據(jù)可以在Arduino IDE的串行監(jiān)視器上查看。只需少許編碼,就可以計(jì)算出SPO2和心率。這些數(shù)據(jù)是用時間戳收集的,保存為CSV文件,每30秒更新一次。然后使用CSV文件中的數(shù)據(jù)進(jìn)行分析。CSV文件中包含的數(shù)據(jù)使用Neurokit2庫中的函數(shù)進(jìn)行預(yù)處理。利用PPG分析功能對PPG信號進(jìn)行分析。PPG_clean功能有助于通過消除噪聲來精煉信號。為了檢測心律失常,必須找到PPG波的峰值。PPG_peaks函數(shù)有助于找到峰值。在峰值檢測之后,該算法評估信號的節(jié)律性,如果檢測到節(jié)律中的任何不規(guī)則現(xiàn)象,則觸發(fā)警報(bào)。
擬議系統(tǒng)概述
結(jié)果:在系統(tǒng)中對各種數(shù)據(jù)進(jìn)行了測試和訓(xùn)練。正常受試者PPG數(shù)據(jù)采集。房顫PPG數(shù)據(jù)收集自MIMIC PERform AF數(shù)據(jù)庫。
正常受試者心電圖及PPG -1。
結(jié)果輸出與平均HR為正??颇?1。
ECG和PPG伴有異位搏動。
數(shù)據(jù)與異位拍的結(jié)果輸出。
心房顫動受試者的心電圖和PPG信號-1。
心房顫動輸出受試者-1
在輸出圖像的頂部,節(jié)奏顯示為正?;虿灰?guī)則節(jié)奏。15秒內(nèi)的平均心率也會計(jì)算出來。該算法檢測輸出圖形的節(jié)奏,并指出不規(guī)則的節(jié)奏??梢钥吹捷敵鰣D像有2張圖,藍(lán)色是干凈的PPG信號數(shù)據(jù),紅色是峰值檢測信號。
結(jié)論:未來的計(jì)劃是設(shè)計(jì)一個非常緊湊的設(shè)備,類似于脈搏血氧儀,內(nèi)置SPO2傳感器和藍(lán)牙模塊。這個藍(lán)牙模塊可以與手機(jī)、筆記本電腦甚至Arduino進(jìn)行通信。由于NeuroKit2是開源的,我們可以隨時隨地使用它來分析和解釋容積圖。這個項(xiàng)目對老年人很有用,甚至在一些緊急情況下也很有用。
本文編譯自hackster.io