摘要:
為了能讓患者在家中長期地監(jiān)測(cè)自身的各種生理參數(shù),隨時(shí)捕捉突發(fā)性心率失常,同時(shí)能將生理參數(shù)反映給醫(yī)療機(jī)構(gòu),方便醫(yī)務(wù)人員用于指導(dǎo)和協(xié)助治療,機(jī)智云開發(fā)者設(shè)計(jì)了一款基于單片機(jī)的智能遠(yuǎn)程多生理參數(shù)健康監(jiān)護(hù)儀。通過血氧、脈搏和體溫等數(shù)字信號(hào)采集模塊采集原始數(shù)據(jù),由單片機(jī)進(jìn)行算法處理,在顯示模塊顯示人體的血氧值、心率值和體溫值等,用戶還可通過按鍵配置生理參數(shù)的閾值報(bào)警、按鍵發(fā)送生理參數(shù)至云端。最后,與標(biāo)準(zhǔn)醫(yī)用監(jiān)護(hù)儀進(jìn)行對(duì)比測(cè)試,驗(yàn)證了該設(shè)計(jì)的準(zhǔn)確性與可行性。
1 總體框架
本設(shè)計(jì)的總體框架如圖1 所示。
圖1中, 監(jiān)護(hù)儀采用以 ARM Cortex-M3 為內(nèi)核 STM32 單片機(jī)作為核心處理單元, 分別將數(shù)字集成心率血氧采集模塊、 非接觸測(cè)量溫度的紅外線傳感器模塊得到的心率信號(hào)、 血氧信號(hào)、溫度信號(hào)通過通用的通信協(xié)議傳到核心處理單元進(jìn)行特定的算法以及處理, 得到當(dāng)前測(cè)試者的心率值、 血氧值、體溫值, 這些參數(shù)同時(shí)在LCD 顯示屏上實(shí)時(shí)顯示與更新。測(cè)試者還可以通過獨(dú)立按鍵配置生理參數(shù)的閾值提醒和將得到的生理參數(shù)通過無線通信模塊實(shí)時(shí)發(fā)送至智能手機(jī)與電腦等終端設(shè)備, 在云端可以實(shí)現(xiàn)這些生理參數(shù)的遠(yuǎn)程監(jiān)測(cè)。
2 硬件設(shè)計(jì)
2.1 微控制單元
該設(shè)計(jì)使用的微控制單元為STM32F103VET6 主控芯片, 其內(nèi)核 Cortex-m3 是 ARM 公司面向成本和功耗敏感同時(shí)滿足相對(duì)高性能的市場(chǎng)產(chǎn)品而推出的。 ST 公司基于 Cortex-m 內(nèi)核推出了STM32 的多個(gè)系列版本, 有基本型、增強(qiáng)型、互補(bǔ)型和 USB 基本型等, 其主流產(chǎn)品STM32F103 增強(qiáng)型系列微控器廣泛應(yīng)用于電子電力系統(tǒng)、電機(jī)驅(qū)動(dòng)、手持設(shè)備、空調(diào)系統(tǒng)、醫(yī)療電子等。
STM32F103VET6 的工作頻率最高可達(dá)72 MHz , 512 KB 的 Flash 容量作為 程序存 儲(chǔ)器 , 64 KB 的 SRAM 靜態(tài)隨機(jī)存取存儲(chǔ)器, 同時(shí), 片上集成豐富的外設(shè), 如: USB 、ADC 、CAN 、I2C 、UART 、TIMER 等。 開發(fā)者可通過庫函數(shù)、寄存器、STM32CUBEMX 等多種開發(fā)方式提高編程效率。
2.2 數(shù)字集成心率血氧傳感器
MAX30102 是美信半導(dǎo)體公司于 2016 年專為可穿戴設(shè)備和健康醫(yī)療輔助設(shè)備設(shè)計(jì)的一款數(shù)字集成心率血氧傳感器模塊。 該模組主要集成了雙波長紅光和紅外光 LED 、接收反射紅光和紅外光的光電探測(cè)器、環(huán)境光消除器件、分辨率可調(diào)的高精度 18 位 ADC 、數(shù)字噪聲消除器件、FIFO 存儲(chǔ)器和 I2C 通信接口。 單片機(jī)可通過 I2C 通信對(duì) MAX30102 單獨(dú)設(shè)置為心率模式、血氧模式或者共用模式, 配置內(nèi)部 ADC 分辨率、紅光和紅外光樣本的采集速率、FIFO 中樣本數(shù)量溢出的中斷方式、低功耗待機(jī)模式等操作。美信官網(wǎng)有 MAX30102 的系統(tǒng)圖和數(shù)據(jù)手冊(cè), MAX30102 模塊的電路如圖 2 所示。
該傳感器測(cè)量心率和血氧的方法即光電容積法(PPG)。測(cè)量心率的基本原理[5-6]是利用動(dòng)脈血液中的脈動(dòng)成分對(duì)紅外光的吸光度隨著心臟跳動(dòng)而進(jìn)行周期性的變化(紅外光波長通常為900nm附近),經(jīng)過反射后的紅外光光強(qiáng)被光電探測(cè)器接收后轉(zhuǎn)化為數(shù)字信號(hào),進(jìn)而通過算法處理得到心率。而測(cè)量血氧需要用到兩種波長不同的紅光(波長通常在660nm附近)和紅外光。脈動(dòng)血液中的還原血紅蛋白(Hb)和氧合血紅蛋白(HbO2)對(duì)660nm(Hb對(duì)紅外光的消光系數(shù))、aHbO2(HbO2對(duì)紅光的消光系數(shù))以及用算法從原始樣本中分離的交流信號(hào)的以下公式,即可得到血氧飽和度值。
2.3 3 紅外非接觸溫度傳感器
某些晶體可以因?yàn)闇囟茸兓鹁w表面電荷, 輻射紅外線。 紅外非接觸傳感器的工作原理為探測(cè)物體表面紅外輻射能量, 并將其轉(zhuǎn)變?yōu)橐子跍y(cè)量的電信號(hào)或其他形式的量。 MLX90614 模組集成了用于探測(cè)目標(biāo)溫度和環(huán)境溫度的熱電偶 MLX81101 和用于處理熱電偶輸出模擬信號(hào)的專用集成芯片 MLX90302 , 由邁來芯公司研發(fā)和生產(chǎn)。
該傳感器系列有多個(gè)型號(hào)和封裝方式,適用于不同領(lǐng)域的測(cè)量,專用于人體溫度監(jiān)測(cè)的醫(yī)療應(yīng)用版本在適用范圍內(nèi)精度可達(dá)到0.1℃。在傳感器開發(fā)方面,存儲(chǔ)在MLX90302RAM中的目標(biāo)溫度和環(huán)境溫度數(shù)據(jù)可由兩線SMBus通信協(xié)議模式和10位PWM模式輸出。
GY-90614模塊的電路如圖3所示。
3 軟件設(shè)計(jì)
3.1用于配置閾值和選擇發(fā)送數(shù)據(jù)的按鍵掃描算法
由于本監(jiān)護(hù)儀設(shè)計(jì)的循環(huán)流程運(yùn)行一次所需時(shí)間為 3 ~ 4 s , 因此通常的在主函數(shù)中的按鍵掃描算法無法精確地識(shí)別到測(cè)試者按鍵操作, 故采用了外部中斷嵌套定時(shí)器中斷掃描按鍵的方法來檢測(cè)測(cè)試者的按鍵動(dòng)作。 該方法能極大地減少用戶進(jìn)行單片機(jī)配置時(shí)所需要的按鍵數(shù)目, 降低產(chǎn)品成本, 同時(shí)提高了單片機(jī)運(yùn)行程序的效率, 提高硬件資源的使用率。
具體的按鍵掃描算法思想如下: 測(cè)試者按下配置按鍵, 單片機(jī)掃描到邊沿信號(hào), 程序進(jìn)入設(shè)置了打開定時(shí)器的外部中斷服務(wù)函數(shù), 單片機(jī)處于掃描按鍵狀態(tài), 測(cè)試者此時(shí)可進(jìn)行各種生理參數(shù)的閾值配置( 當(dāng)閾值大于或小于測(cè)試者配置的數(shù)值時(shí), 單片機(jī)會(huì)實(shí)時(shí)響應(yīng)并提醒測(cè)試者) , 或者選擇關(guān)閉定時(shí)器的中斷開關(guān), 從而使單片機(jī)退出配置模式, 按鍵算法流程如圖 4 所示。
3.2 2 心率血氧算法選擇分析
從 MAX30102 中獲取的數(shù)據(jù)信號(hào)為原始信號(hào), 需經(jīng)過算法處理才能得到測(cè)試者的心率值與血氧值。 對(duì)于從該模塊采集出來的數(shù)據(jù)信號(hào)進(jìn)行處理的方法, 常用的有兩種: 一種是時(shí)域分析, 即算出脈搏數(shù)據(jù)信號(hào)( PPG) 的平均波峰距, 再用一分鐘除以這個(gè)波峰距即可得到心率值; 另一種是通過對(duì) PPG 信號(hào)進(jìn)行 FFT 變換得到頻域中脈搏波信號(hào)的頻段, 再將這個(gè)頻率值乘以一分鐘得到心率值。 首先是第二種方法, 經(jīng)過了在 STM32VET6 使用FFT ( 快速傅里葉變換) 算法對(duì) PPG 信號(hào)的處理后, 發(fā)現(xiàn)這種方法計(jì)算心率值存在時(shí)間和精度相矛盾的問題, 由以下公式可得出:
heartrate=60×Samples_per_second×s2_max_index×FFT_N
( 5 )其中, Samples_per_second 為每秒從 MAX30102 中采集的紅 外 光 樣 本 數(shù) 量 , s2_max_index × FFT_N 為 脈 搏 信 號(hào) 中交流成分信號(hào)的頻率, FFT_N 為快速傅里葉變換的點(diǎn)數(shù)長度。 若 Samples_per_second 設(shè)置為 100 , FFT_N 設(shè)置為1 024 , 從 FFT 填滿數(shù)據(jù)到計(jì)算出心率值需要花 費(fèi) 5 s , 但得到的各心率值間隔為 3 。 從監(jiān)測(cè)測(cè)試者的心率的實(shí)時(shí)性和準(zhǔn)確性來看, 這都是沒有參考價(jià)值的。 若提高FFT 的點(diǎn)數(shù)長度, 雖然能提高測(cè)試心率值的精度, 但這將大大增加了監(jiān)測(cè)出心率的時(shí)間, 同時(shí)加大了微控單元的負(fù)擔(dān)。本文設(shè)計(jì)心率算法使用的是第一種, 計(jì)算心率血氧的算法流程如圖 5 所示。
3.3 3 機(jī)智云
物聯(lián)網(wǎng)平臺(tái)
demoapp 的移植與調(diào)試
從下位機(jī)監(jiān)護(hù)儀采集的測(cè)試者生理參數(shù)( 如:心率、血氧和體溫) 在 LCD 模塊實(shí)時(shí)顯示, 同時(shí), 還能將監(jiān)護(hù)儀進(jìn)行聯(lián)網(wǎng)后在手機(jī)客戶端和官方的網(wǎng)頁界面監(jiān)測(cè)到這 些生理參數(shù)。 物聯(lián)網(wǎng)平臺(tái)選擇的是機(jī)智云, 而聯(lián)網(wǎng)設(shè)備選擇的是樂鑫的
。
ESP8266 廣泛應(yīng)用于各種物聯(lián)網(wǎng)智能硬件的開發(fā), 如: 傳感器網(wǎng)絡(luò)、智能家居設(shè)計(jì)和無線醫(yī)療電子設(shè)備等。其常用的固件 AT 指令作為微控單元和 WiFi 模組之間配置功能, 連接與通信的底層指令。 相應(yīng)地, 機(jī)智云
物聯(lián)網(wǎng)開發(fā)平臺(tái)
使用
GAgent
固件作為其與WiFi 模組的橋梁。
在 MCU 代碼開發(fā)方面, 機(jī)智云有官方的代碼自動(dòng)生成工具, 該工具幫助開發(fā)者完成了 MCU與 WiFi 模組通信連接的底層協(xié)議工作, 適用于獨(dú)立 MCU 方案和 SoC 方案, 使開發(fā)者更專注于軟硬件的功能開發(fā)。機(jī)智云數(shù)據(jù)點(diǎn)設(shè)置如表1所示, 云端網(wǎng)頁生理參數(shù)遠(yuǎn)程監(jiān)測(cè)如圖6所示, 記錄了測(cè)試者某天21時(shí)一段時(shí)間內(nèi)生理參數(shù)隨時(shí)間變化情況。
4測(cè)試驗(yàn)證
為了測(cè)試驗(yàn)證本次設(shè)計(jì)的監(jiān)護(hù)儀的準(zhǔn)確性, 以同一測(cè)試者 10 個(gè)不同時(shí)間點(diǎn)的生理參數(shù)作為測(cè)試樣本, 每個(gè)時(shí)間點(diǎn)分別用參考監(jiān)護(hù)儀和本監(jiān)護(hù)儀進(jìn)行 5 次采集,最后求平均值。測(cè)試者心率、血氧和體溫的測(cè)試結(jié)果如表 2 所示。
5結(jié)論
智能遠(yuǎn)程多生理參數(shù)健康監(jiān)護(hù)儀為社會(huì)上的一些特定人群提供了日常居家健康監(jiān)護(hù)的可行性, 監(jiān)護(hù)儀采用數(shù)字集成心率血氧模塊等采集人體的心率、血氧和體溫等, 通過下位機(jī)實(shí)時(shí)顯示數(shù)據(jù)和波形, 使用獨(dú)立按鍵配置閾值提醒和配置聯(lián)網(wǎng), 同時(shí)可通過云端網(wǎng)頁監(jiān)測(cè)記錄。 本設(shè)計(jì)具有操作簡單、成本低、便攜性好、擴(kuò)展性豐富、測(cè)量較為準(zhǔn)確等特點(diǎn)。
-
STM32
+關(guān)注
關(guān)注
2270文章
10915瀏覽量
356751
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論