基于物聯(lián)網(wǎng)的患者遠(yuǎn)程監(jiān)測(cè)系統(tǒng)測(cè)量生命體征
掃描二維碼
隨時(shí)隨地手機(jī)看文章
當(dāng)我們談?wù)撊梭w的主要生命體征時(shí),我們需要了解四個(gè)主要參數(shù),它們是體溫,心率,呼吸頻率,血壓,由于COVID,氧飽和度已成為我們需要了解的主要參數(shù)。在本教程中,我們將制作一個(gè)簡(jiǎn)單的Arduino Nano 33基于物聯(lián)網(wǎng)的設(shè)備,具有多個(gè)傳感器。該裝置可以測(cè)量人體的一些重要參數(shù)。該設(shè)備就像你在icu中看到的DIY多參數(shù)監(jiān)視器,簡(jiǎn)單得多,由廉價(jià)的傳感器制成,不適合實(shí)際醫(yī)療用途。我們將為此目的使用新的Arduino Nano 33 IOT,我們將嘗試使這個(gè)設(shè)備盡可能簡(jiǎn)單。
在我們之前的文章中,我們還構(gòu)建了一個(gè)基于物聯(lián)網(wǎng)的樹莓派心跳監(jiān)測(cè)系統(tǒng),如果你感興趣,你也可以看看。在本文中,我們將構(gòu)建一個(gè)完整的基于物聯(lián)網(wǎng)的健康監(jiān)測(cè)系統(tǒng),可以測(cè)量和監(jiān)測(cè)人體的所有重要參數(shù)。那么,我們開始吧。
我們的遠(yuǎn)程病人監(jiān)測(cè)系統(tǒng)所需的組件
該項(xiàng)目所需的組件非常簡(jiǎn)單,可以在當(dāng)?shù)氐膼酆蒙痰暾业健R褂梦锫?lián)網(wǎng)構(gòu)建此特定的健康監(jiān)控系統(tǒng),您將需要以下組件。
?Arduino Nano 33 IOT
?MLX90614(數(shù)字非接觸式紅外測(cè)溫儀)
?AD8232(心率監(jiān)測(cè)器)
?MAX30100脈搏血氧儀和心率傳感器
?音頻(可選)
?Perfboard
?跳線。
Arduino Nano 33 IoT
Arduino Nano 33 IoT是一款相對(duì)較新的Arduino板,我們會(huì)稍微介紹一下。它是對(duì)原始Arduino Nano的直接升級(jí),目前可以在Arduino Store上獲得。它比原始的Arduino Nano便宜,但Nano的克隆價(jià)格要便宜得多。那么,當(dāng)你可以買到上一代的克隆板時(shí),你應(yīng)該買這款新板嗎?這些升級(jí)值得嗎?
老實(shí)說,這取決于你的要求。如果你想在一個(gè)緊湊的外形中使用Wi-Fi和BT傳感器作為原型,建議你這樣做。從這個(gè)角度來看,單獨(dú)購(gòu)買所有物品并連接它們可能會(huì)比Nano 33物聯(lián)網(wǎng)花費(fèi)更多的時(shí)間和金錢。
那么,新主板有哪些升級(jí)呢?很多!最初的Nano沒有傳感器,沒有連接,什么都沒有。相比之下,升級(jí)后的Nano 33 IoT在相同的外形下包含了許多功能和功能。
?主板的主處理器是低功耗Arm Cortex-M0 32位SAMD21。
?Wi-Fi 2.4G和藍(lán)牙連接由U-Blox NINA-W102低功耗芯片組提供。
?Wi-Fi / BT模塊天線采用金屬配件的形式,通過一滴熱敏膠防止振動(dòng)。
?微芯片ATECC608A加密芯片,保證通信安全,6軸IMU LSM6DS3
MAX30100 -脈搏血氧儀和心率傳感器
MAX30100也是一個(gè)基于Microchip的傳感器模塊。它使用一種叫做PhotoPlethysmography的概念來測(cè)量生命數(shù)據(jù),作為輸出,它給出了一個(gè)PPG圖。它的工作原理如下圖所示。
正如你所看到的,紅外/紅/綠LED在被攝者的手指上發(fā)光。根據(jù)心跳、血液中的氧氣擴(kuò)散和其他一些參數(shù),入射波的吸收值或速率會(huì)發(fā)生變化。通過識(shí)別這些變化,我們可以確定氧氣水平。
然后由接收器測(cè)量傳輸?shù)牟ǎ邮掌鞲鶕?jù)接收到的光量給出電壓信號(hào)。當(dāng)光穿過生物組織時(shí),它會(huì)被骨骼、皮膚色素以及靜脈血和動(dòng)脈血吸收。由于血液對(duì)光的吸收比周圍組織更強(qiáng),因此PPG傳感器可以將血流的變化檢測(cè)為光強(qiáng)度的變化。
PPG的電壓信號(hào)與流經(jīng)血管的血流量成正比。使用這種方法,即使血容量的微小變化也可以被檢測(cè)到,盡管它不能用于量化血的量。PPG信號(hào)有幾個(gè)組成部分,包括與心臟活動(dòng)相關(guān)的動(dòng)脈血容量變化,調(diào)節(jié)PPG信號(hào)的靜脈血容量變化,顯示組織光學(xué)特性的直流成分,以及體內(nèi)細(xì)微的能量變化。
MAX30100傳感器具有紅外和紅色LED。通常,測(cè)量心率和SPO2參數(shù),我們將嘗試測(cè)量一個(gè)額外的參數(shù)- HRV或心率變異性。
MLX90614 -體溫傳感器
MLX90614體溫傳感器來自Melexis,它使用紅外技術(shù)來測(cè)量人的體溫。通常被稱為熱像儀,這種傳感器類似于單像素?zé)嵯駜x,但具有小于3厘米的非常小的范圍。此外,與其他紅外設(shè)備一樣,傳感器讀取誤差隨著受試者與傳感器之間的距離而增加。傳感器的圖像如下所示。
AD8232心電圖傳感器
AD8232是一種簡(jiǎn)單的心率傳感器,可以作為心電圖繪制圖表。ECG是心電圖的縮寫。該傳感器將其信號(hào)輸出為模擬信號(hào)。3.5mm插孔用于生物醫(yī)學(xué)墊連接。
模擬MIC模塊
這是一個(gè)簡(jiǎn)單的傳感器,記錄音頻幅度和輸出他們作為模擬變化。這在測(cè)量呼吸信號(hào)時(shí)很有用,但它需要大量的信號(hào)處理和濾波。因此,它將在單獨(dú)的博客中進(jìn)行介紹。注意,有很多模塊不具有模擬輸出(通常稱為拍傳感器)。它們可以識(shí)別特定振幅以上的聲音,但超過這個(gè)振幅就沒有用了。
128X64 OLED顯示屏
我們將在這個(gè)項(xiàng)目中使用1.3英寸的OLED I2C顯示器。市場(chǎng)上有很多通用的OLED,所以你的OLED可能和我的有點(diǎn)不同。我們將使用的Uglib2庫(kù)幾乎支持您遇到的所有顯示器,因此將任何OLED顯示器與此庫(kù)進(jìn)行接口非常簡(jiǎn)單。
遠(yuǎn)程病人監(jiān)護(hù)系統(tǒng)電路圖
構(gòu)建遠(yuǎn)程健康監(jiān)測(cè)系統(tǒng)的完整示意圖如下所示。
上面的原理圖顯示了與Arduino Nano 33 IoT的所有必要連接。使用的兩種類型的傳感器是模擬(麥克風(fēng),OLED顯示器和AD8232)和I2C (mlx90614和MAX3010X)。使用的Arduino Nano 33物聯(lián)網(wǎng)引腳如下:
A0 - ECG模塊AD8232的模擬輸出
A1 -麥克風(fēng)模塊的模擬輸出
A4 - sda
A5 - SCL
在使用傳感器和這個(gè)板時(shí),您需要記住一些事情。上述原理圖中的工作電壓為3V3,因?yàn)镋CG模塊工作在3V3,我們不希望進(jìn)行不必要的電壓轉(zhuǎn)換。上述原理圖中使用的電阻器為4.7k。它們應(yīng)該足以滿足3V3的工作電壓。我們不會(huì)使用額外的引腳LO+, LO- or來減少不必要的復(fù)雜性,因?yàn)檫@個(gè)項(xiàng)目已經(jīng)有許多傳感器一起工作。您可以參考SparkFun ECG博客了解其使用方法。MLX90614可作為傳感器或傳感器模塊使用。如果您使用裸傳感器,您將不得不拉起SCL和SDA線,如原理圖所示。此外,請(qǐng)檢查您正在購(gòu)買的MLX90614傳感器系列,因?yàn)楦鶕?jù)功率輸入,類型等,有許多變體可供選擇,如下所示。
根據(jù)原理圖組裝板后,板看起來像下圖。為了方便,我為這個(gè)項(xiàng)目開發(fā)了一個(gè)簡(jiǎn)單的GP板,因?yàn)榻涌谟刑嗟哪K,使用一個(gè)面包板處理多個(gè)項(xiàng)目是很困難的。為您經(jīng)常使用的微控制器提供GP板也很有用,以節(jié)省時(shí)間和不必要的返工,在使用您之前已經(jīng)與之接口的傳感器的項(xiàng)目中。
我建議您放置MLX90614和MAX3010X傳感器,使它們重合,并且您可以同時(shí)用一根手指將它們覆蓋在一起。至于編碼部分,我會(huì)盡量簡(jiǎn)潔的解釋。
測(cè)量和監(jiān)測(cè)生命體征的Arduino代碼
構(gòu)建人體視覺信號(hào)檢測(cè)器的完整代碼如下所示,但在繼續(xù)編寫代碼之前,我們需要安裝所需的庫(kù),您可以在Arduino板管理器中找到幾乎所有必要的庫(kù),我們將從那里安裝庫(kù),我們需要安裝以下庫(kù)。
Arduino SAMD板
Arduino_LSM6DS3或Sparkfun LSM6DS3 Breakout(供高級(jí)使用)
Arduino WifiNINA
Arduino祝福
現(xiàn)在讓我們安裝庫(kù)。
除此之外,我們還使用了OLED模塊。所以,我們還需要安裝OLED庫(kù)。脈搏血氧計(jì)傳感器計(jì)算SPO2,心率和HRV使用的概念稱為PPG或PhotoPlethysmoGraphy,如前所述。MAX3010X庫(kù)可以使用回調(diào)函數(shù)識(shí)別反射率的脈沖或變化。該函數(shù)是一個(gè)中斷,每次檢測(cè)到心跳時(shí)都會(huì)調(diào)用該中斷。存儲(chǔ)連續(xù)兩次心跳之間的時(shí)間間隔來計(jì)算HRV參數(shù)。每個(gè)REPORTING_PERIOD_MS間隔都會(huì)計(jì)算心率。由于手指用于測(cè)量體溫,我們對(duì)MLX90614傳感器測(cè)量的值進(jìn)行了補(bǔ)償。
設(shè)置功能:
循環(huán)功能:
循環(huán)函數(shù)連續(xù)獲取信號(hào)變量(IR, RED, ECG, mic值),并定期計(jì)算參數(shù)變量(HR, SPO2, HRV,環(huán)境溫度,對(duì)象溫度)(存儲(chǔ)為REPORTING_PERIOD_MS)。一旦計(jì)算出所有變量和信號(hào)值,就會(huì)顯示在OLED上。因?yàn)樽兞縃R和HRV對(duì)時(shí)間非常敏感,并且依賴于在實(shí)際心跳之后調(diào)用心跳中斷函數(shù)的速度,所以我們不能連續(xù)更新顯示。因此,我們?cè)诙ㄆ陂g隔(= DISPLAY_INTERVAL* REPORTING_PERIOD_MS)之后更新它。所有變量和信號(hào)值也以CSV格式串行推送,用于數(shù)據(jù)采集、繪圖和存儲(chǔ)。示例輸出如下所示。遙測(cè)格式:hr, spo2, hrv, object_temp, ambient_temp, ir_signal/100, red_signal/100。
串行繪圖儀的輸出如下所示。顏色鍵顯示在右上角,并按遙測(cè)(hr, spo2, hrv, object_temp, ambient_temp, ir_signal/100, red_signal/100)從左到右的順序顯示。繪制完成后,串行繪圖儀窗口中的數(shù)據(jù)如下圖所示。
這就是我們基于物聯(lián)網(wǎng)的患者監(jiān)測(cè)系統(tǒng)的工作原理。
本文編譯自iotdesignpro





