廖菲鈺 文歡 陳靖萱 康意萌 賈富川 劉旭
摘要:為了更好地監(jiān)測(cè)人體健康狀況,設(shè)計(jì)了一款基于STM32核心控制模塊的智能手環(huán)。該手環(huán)主要由人體健康數(shù)據(jù)監(jiān)測(cè)模塊、液晶顯示模塊和無(wú)線通訊模塊組成。系統(tǒng)利用人體健康數(shù)據(jù)監(jiān)測(cè)模塊采集人體心率、血氧、體溫和運(yùn)動(dòng)狀況,對(duì)采集到的健康數(shù)據(jù)進(jìn)行分析處理后在液晶顯示模塊輸出顯示,并將數(shù)據(jù)信息通過(guò)無(wú)線通訊模塊發(fā)送至手機(jī)端。經(jīng)過(guò)測(cè)試,該智能手環(huán)可以有效用于監(jiān)測(cè)用戶的健康狀況。
關(guān)鍵詞:溫度傳感器;STM32單片機(jī);液晶顯示屏
中圖分類號(hào):TP273? ? 文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2024)09-0099-05
開(kāi)放科學(xué)(資源服務(wù))標(biāo)識(shí)碼(OSID)
0 引言
隨著科技的不斷發(fā)展,人們對(duì)于健康和生活質(zhì)量的關(guān)注程度越來(lái)越高。在這個(gè)背景下,智能手環(huán)作為一種可以實(shí)時(shí)監(jiān)測(cè)人體健康狀況的設(shè)備,受到了越來(lái)越多人的青睞。智能手環(huán)不僅可以實(shí)時(shí)監(jiān)測(cè)用戶的心率、血氧、體溫、睡眠質(zhì)量等生理指標(biāo),還可以通過(guò)連接手機(jī)App為用戶提供運(yùn)動(dòng)計(jì)步等功能。因此,設(shè)計(jì)一款基于STM32的智能手環(huán)具有很高的實(shí)用價(jià)值和市場(chǎng)前景。
本設(shè)計(jì)旨在實(shí)現(xiàn)一款基于STM32的智能手環(huán),通過(guò)對(duì)各種傳感器的數(shù)據(jù)采集和處理,實(shí)現(xiàn)對(duì)用戶健康狀況的實(shí)時(shí)監(jiān)測(cè)。本設(shè)計(jì)將采用高性能的STM32微控制器作為主控芯片,結(jié)合各種傳感器和外圍電路,實(shí)現(xiàn)對(duì)用戶健康狀況的全面監(jiān)測(cè)。該手環(huán)由單片機(jī)電路、心率血氧檢測(cè)模塊、計(jì)步模塊、液晶顯示模塊和溫度傳感器模塊組成。心率血氧是指一般人心臟在安靜狀態(tài)下每分鐘跳動(dòng)的次數(shù)和當(dāng)前人體血紅蛋白氧含量是否正常。這是檢驗(yàn)人體健康標(biāo)準(zhǔn)的一大指標(biāo),也是本次設(shè)計(jì)較為突出的一大重點(diǎn)。
1 設(shè)計(jì)方案
本設(shè)計(jì)采用STM32單片機(jī)作為主控模塊,C語(yǔ)言作為主要編程語(yǔ)言。智能手環(huán)的傳感器模塊主要是心率血氧采集模塊、計(jì)步模塊和溫度采集模塊。這些模塊包括加速度計(jì)、陀螺儀、心率傳感器、血氧傳感器等,用于采集用戶的運(yùn)動(dòng)數(shù)據(jù),實(shí)時(shí)監(jiān)測(cè)用戶身體機(jī)能,將檢測(cè)到的數(shù)據(jù)傳至單片機(jī)進(jìn)行數(shù)據(jù)處理。單片機(jī)根據(jù)輸入的數(shù)據(jù)對(duì)OLED液晶顯示屏和蜂鳴器進(jìn)行智能控制,實(shí)現(xiàn)數(shù)據(jù)顯示和報(bào)警功能。如果用戶體溫超過(guò)設(shè)定閾值或者心率血氧不在設(shè)定范圍內(nèi),則通過(guò)無(wú)線通訊模塊將數(shù)據(jù)上傳至手機(jī)App并進(jìn)行報(bào)警提醒。系統(tǒng)框圖,如圖1所示。
2 硬件設(shè)計(jì)
智能手環(huán)包括心率血氧傳感器模塊、計(jì)步模塊、溫度檢測(cè)模塊、OLED顯示屏模塊及Wi-Fi無(wú)線通訊模塊,其硬件電路設(shè)計(jì)如圖2所示。
2.1 心率血氧傳感器模塊
本次設(shè)計(jì)的心率血氧模塊選用MAX30102紅外模塊。MAX30102是一種集成式脈搏氧飽和度血氧傳感器模塊,其工作原理是通過(guò)紅外光和綠色光對(duì)生物組織進(jìn)行血氧飽和度檢測(cè)[1]。在本次設(shè)計(jì)中主要用于采集心率血氧信號(hào)。此模塊對(duì)心率信號(hào)采集較為穩(wěn)定,其抗干擾能力較強(qiáng),測(cè)量的數(shù)值比較準(zhǔn)確,波形穩(wěn)定。心率血氧模塊集成了一個(gè)紅光LED和一個(gè)紅外光LED、光電檢測(cè)器、光器件,以及帶環(huán)境光抑制的低噪聲電子電路[2]。MAX30102采用一個(gè)1.8V電源和一個(gè)獨(dú)立的5.0V用于內(nèi)部LED的電源,應(yīng)用于可穿戴設(shè)備進(jìn)行心率和血氧采集檢測(cè),佩戴于手腕處[3]。標(biāo)準(zhǔn)的2C兼容的通信接口可以將采集到的數(shù)值傳輸給Arduino、KL25Z等單片機(jī)進(jìn)行心率和血氧計(jì)算[4]。此外,該芯片還可通過(guò)軟件關(guān)閉模塊,待機(jī)電流接近為零,實(shí)現(xiàn)電源始終維持供電狀態(tài)[5-6]。心率血氧傳感器模塊如圖3所示。
圖3? 心率血氧模塊電路圖
2.2 計(jì)步模塊
本次設(shè)計(jì)的計(jì)步模塊選用ADXL345。ADXL345是一款小而薄的超低功耗三軸加速度傳感器元件,具有13bit的解析度。經(jīng)過(guò)容壓變換器、增益放大、濾波器和電壓信號(hào)輸出得到步數(shù)。ADXL345與移動(dòng)設(shè)備的匹配度非常高,該傾角傳感器模塊電路利用任一軸線上的加速度與佩戴者設(shè)定數(shù)值進(jìn)行比較來(lái)偵測(cè)是否有步數(shù)移動(dòng)[8]。計(jì)步模塊如圖4所示。
2.3 DS18B20溫度檢測(cè)模塊
DS18B20主要由四部分組成:64位光刻ROM數(shù)據(jù)存儲(chǔ)器,溫度傳感器,非易失性電可擦寫(xiě)溫度報(bào)警觸發(fā)器TH和TL,非易失性電可擦寫(xiě)設(shè)置寄存器。如果溫度檢測(cè)模塊測(cè)量的溫度值高于溫度報(bào)警觸發(fā)器TH或低于TL中的值,則DS18B20內(nèi)部的報(bào)警標(biāo)志位就被重置。DS18B20的測(cè)溫范圍為-55~+125℃,溫度轉(zhuǎn)換以16 位二進(jìn)制方式輸出,位數(shù)可通過(guò)設(shè)置寄存器進(jìn)行更改。DS18B20溫度檢測(cè)模塊如圖5所示。
2.4 OLED顯示屏電路模塊
OLED使用普通的矩陣交叉屏,OLED位于交叉排列的陽(yáng)極和陰極中間,通過(guò)對(duì)陽(yáng)極和陰極組合的選通,可以控制每一個(gè)OLED的點(diǎn)亮和熄滅[7]。
液晶顯示模塊中P5是一個(gè)4孔的排針,專門供OLED液晶顯示屏使用;顯示屏的SCL引腳連接的是單片機(jī)的B6引腳,通過(guò)SCL引腳傳輸串行時(shí)鐘數(shù)據(jù);SDL引腳連接的是單片機(jī)的B7引腳,通過(guò)SDL引腳傳輸串行數(shù)據(jù)。OLED顯示屏電路模塊如圖6所示。
2.5 報(bào)警模塊電路
本次設(shè)計(jì)中,當(dāng)檢測(cè)到溫度或心率血氧高于報(bào)警上限時(shí),蜂鳴器報(bào)警。蜂鳴器由四部分組成,電阻、NPN三極管、蜂鳴器、LED燈。其中電阻為限流電阻,起到保護(hù)作用[9-10]。由于單片機(jī)電路非常小,無(wú)法提供蜂鳴器所需的電流,經(jīng)過(guò)三極管將驅(qū)動(dòng)電流放大至200倍,驅(qū)動(dòng)蜂鳴器報(bào)警。報(bào)警模塊電路如圖7所示。
2.6 Wi-Fi無(wú)線通信設(shè)計(jì)
本次設(shè)計(jì)無(wú)線通信方面采用的是Wi-Fi模塊,通過(guò)此模塊可以把當(dāng)前的數(shù)據(jù)發(fā)送到手機(jī)App上進(jìn)行顯示。無(wú)線數(shù)據(jù)傳輸選用ESP8266,通過(guò)此模塊進(jìn)行串口通信,在手機(jī)App就可以完成數(shù)據(jù)的傳輸和顯示,傳輸數(shù)據(jù)穩(wěn)定[11-12]。
無(wú)線通信部分采用ESP8266無(wú)線串口作為數(shù)據(jù)發(fā)送模塊。在本次設(shè)計(jì)中的無(wú)線通信,通過(guò)Wi-Fi模塊,單片機(jī)將溫度和心率血氧值發(fā)送至手機(jī)端,并顯示在App上。Wi-Fi無(wú)線通信設(shè)計(jì)如圖8所示。
3 軟件設(shè)計(jì)
完整的控制系統(tǒng)由硬件系統(tǒng)和軟件系統(tǒng)組成,本設(shè)計(jì)利用STM32為控制中心,采用STM32F103C8T6芯片,利用Keil uVision5進(jìn)行編程。設(shè)計(jì)主要分為主程序模塊、液晶顯示模塊、按鍵模塊、溫度采集模塊、報(bào)警模塊、Wi-Fi模塊6個(gè)模塊。軟件設(shè)計(jì)流程圖如圖9所示。
主程序模塊:系統(tǒng)上電后,配置各個(gè)傳感器的引腳,初始化IIC分別讓OLED和ADXL345進(jìn)行液晶顯示和數(shù)據(jù)采集等操作,采集完成后Wi-Fi串口初始化等待發(fā)送數(shù)據(jù),DS18B20進(jìn)行溫度采集操作,隨后心率傳感器獲取當(dāng)前心率值,最后將采集到的數(shù)據(jù)通過(guò)無(wú)線通訊模塊發(fā)送到手機(jī)App端,同時(shí)控制OLED顯示當(dāng)前采集到的數(shù)據(jù),進(jìn)入按鍵掃描判斷按鍵是否按下,如果檢測(cè)到按鍵按下則處理按鍵掃描函數(shù)。
3.1 液晶顯示模塊程序設(shè)計(jì)
液晶顯示屏正常工作需要寫(xiě)入命令控制字,隨后寫(xiě)入需要顯示的數(shù)據(jù)。如果液晶正在工作,則必須等待,直到液晶發(fā)出工作完成的信號(hào)時(shí),才能夠?qū)懭肟刂谱趾蛿?shù)據(jù)。液晶顯示模塊程序流程圖如圖10所示。
3.2 按鍵程序流程圖
該智能手環(huán)共包含5個(gè)按鍵,按鍵功能分別是切換、清零、設(shè)置、加、減。切換的頁(yè)面分別為設(shè)置心率上下限,設(shè)置血氧下限,設(shè)置溫度上下限,最后回到溫度、心率血氧、步數(shù)等總的中文顯示界面。按鍵程序流程圖如圖11所示。
3.3 DS18B20溫度采集程序流程圖
DS18B20中讀取溫度的過(guò)程如下:獲取DS18B20中的溫度值,該溫度值為BCD碼形式,隨后轉(zhuǎn)換為十進(jìn)制形式輸出溫度值。此時(shí)輸出的溫度值是實(shí)際溫度的一百倍。隨后需要進(jìn)行輸出溫度與實(shí)際溫度的轉(zhuǎn)換。首先需要初始化函數(shù),其次讀取溫度傳感器的溫度,最后計(jì)算實(shí)際溫度值。DS18B20溫度采集程序流程圖如圖12所示。
3.4 蜂鳴器報(bào)警程序流程圖
本次設(shè)計(jì)的報(bào)警模塊采用了蜂鳴器聲光報(bào)警。將蜂鳴器正極性的一端連接到三極管上,并增加一個(gè)1K的限流電阻防止三極管直接被導(dǎo)通,通過(guò)單片機(jī)IO口輸出高電平。當(dāng)管腳為高電平時(shí),三極管導(dǎo)通,蜂鳴器的電流形成回路,發(fā)出聲音,發(fā)光二極管閃爍,即實(shí)現(xiàn)報(bào)警。當(dāng)管腳為低電平時(shí),三極管截至,蜂鳴器不發(fā)出聲音,發(fā)光二極管不閃爍,即不實(shí)現(xiàn)報(bào)警。蜂鳴器報(bào)警程序流程圖如圖13所示。
3.5 Wi-Fi程序流程圖
本次設(shè)計(jì)采用的無(wú)線通信模塊ESP8266,此模塊需要和單片機(jī)進(jìn)行串口通信,通過(guò)相應(yīng)的AT指令集和利用 Wi-Fi模塊的熱點(diǎn)模式便可以實(shí)現(xiàn)對(duì)數(shù)據(jù)的無(wú)線傳輸操作。ESP8266集成了TCP/IP協(xié)議棧,可以直接連接到Wi-Fi網(wǎng)絡(luò),無(wú)需額外的外部芯片。電壓連接3.3V,GND(地線)、TXD(發(fā)送數(shù)據(jù))、RXD(接收數(shù)據(jù)) 便可以實(shí)現(xiàn)和單片機(jī)進(jìn)行通信,緊接著手機(jī)端可以接受到當(dāng)前Wi-Fi發(fā)送的數(shù)據(jù)信息。Wi-Fi程序流程圖如圖14所示。
4 實(shí)物測(cè)試
最后一步是硬件整體測(cè)試,將智能手環(huán)在室內(nèi)進(jìn)行各項(xiàng)指標(biāo)測(cè)試,通過(guò)溫水模擬人體溫度過(guò)高的情況。智能手環(huán)整體實(shí)物圖如圖15所示。啟動(dòng)該手環(huán)LED屏顯示“歡迎使用智能手環(huán)”。實(shí)物運(yùn)行圖如圖16所示。啟動(dòng)后OLED屏界面分為顯示溫度、心率、血氧、計(jì)步4部分。該手環(huán)有五個(gè)按鍵,功能分別是切換、清零、設(shè)置、加、減。切換的頁(yè)面分別為設(shè)置心率上下限,設(shè)置血氧下限,設(shè)置溫度上下限,最后回到原始界面(溫度、心率血氧、步數(shù)等總的中文顯示界面)。通過(guò)按鍵模塊的設(shè)置功能,可以分別設(shè)置溫度閾值為35-37℃,心率閾值為60-100bpm,血氧下限為95%。按鍵功能設(shè)置如圖17所示。當(dāng)三項(xiàng)指標(biāo)的任意一項(xiàng)不在閾值范圍內(nèi)時(shí),OLED黃燈閃爍,蜂鳴器進(jìn)行報(bào)警。不在閾值內(nèi)的數(shù)據(jù)將在智能手環(huán)的LED顯示屏上不斷閃爍,同時(shí)通過(guò)無(wú)線通訊模塊將數(shù)據(jù)上傳至手機(jī)端,手機(jī)端彈出紅色報(bào)警提示框并顯示“患者體征異常”。實(shí)物測(cè)試結(jié)果如表1所示。
5 總結(jié)
本文提出了基于STM32智能手環(huán)的設(shè)計(jì)與實(shí)現(xiàn)方法。主要闡述了心率血氧溫度檢測(cè)和無(wú)線傳輸通信兩個(gè)部分。心率血氧溫度檢測(cè)模塊分別選用MAX30102和DS18B20進(jìn)行心率血氧和溫度的采集,再通過(guò)無(wú)線通訊模塊上傳至手機(jī)App完成顯示,這是本設(shè)計(jì)的創(chuàng)新之處。同時(shí)該手環(huán)對(duì)傳染病防控有很大幫助,可以實(shí)現(xiàn)在零接觸的條件下管理者實(shí)時(shí)監(jiān)測(cè)佩戴者的身體數(shù)據(jù),當(dāng)監(jiān)測(cè)數(shù)據(jù)不在設(shè)定閾值內(nèi)時(shí)觸發(fā)蜂鳴器報(bào)警,使管理者能夠通過(guò)手機(jī)App及時(shí)發(fā)現(xiàn)情況并采取對(duì)應(yīng)的措施,從而大大降低了危險(xiǎn)性。
本款運(yùn)動(dòng)手環(huán)有利于減輕醫(yī)療負(fù)擔(dān),提高人們健康意識(shí),通過(guò)對(duì)實(shí)物運(yùn)行結(jié)果的分析,該手環(huán)已實(shí)現(xiàn)設(shè)計(jì)方案所預(yù)期的功能,性能穩(wěn)定、檢測(cè)數(shù)據(jù)精準(zhǔn)、應(yīng)用前景廣泛。
參考文獻(xiàn):
[1] 姚立平,劉偉章,譚仲威,等.一種基于ZigBee的無(wú)線心率血氧實(shí)時(shí)監(jiān)測(cè)系統(tǒng)研究[J].科技創(chuàng)新與應(yīng)用,2022,12(29):52-56.
[2] 潘祉,陳黎明,馬麗華,等.基于物聯(lián)網(wǎng)技術(shù)的 “銀發(fā)守護(hù)者” 的設(shè)計(jì)與實(shí)現(xiàn)[J].物聯(lián)網(wǎng)技術(shù),2023,13(8):121-126.
[3] 黃衍標(biāo),陳華珍,黃鍵鵬,等.基于腕部可穿戴設(shè)備的跌倒監(jiān)護(hù)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)測(cè)量與控制,2019,27(1):102-106.
[4] 趙帥豪,王堅(jiān).基于藍(lán)牙定位的老年人室內(nèi)跌倒監(jiān)護(hù)系統(tǒng)設(shè)計(jì)[J].北京測(cè)繪,2020,34(3):333-337.
[5] 于福超,李元龍.一款基于北斗導(dǎo)航的智能導(dǎo)診輪椅[J].中國(guó)科技信息,2020(15):53-54.
[6] 劉洪延,周正權(quán),洪博恩.一種基于SMA絲的微型藥物釋放系統(tǒng)[J].科技創(chuàng)新導(dǎo)報(bào),2020,17(1):100-101.
[7] 任振耀.基于單片機(jī)的老年人智能手環(huán)設(shè)計(jì)[J].電工技術(shù),2023(18):5-9,12.
[8] 黃紅霞,魯令軍,肖貴賢,等.一種單片機(jī)方案的智能家居系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].湖北理工學(xué)院學(xué)報(bào),2017,33(5):8-11.
[9] 曾貴苓,葉素娣,王蘋(píng).基于STM32單片機(jī)的智能手環(huán)設(shè)計(jì)[J].西安文理學(xué)院學(xué)報(bào)(自然科學(xué)版),2023,26(3):72-76.
[10] 惠鵬飛,鄒立穎,周健.基于STM32的藍(lán)牙無(wú)線多功能智能手環(huán)設(shè)計(jì)[J].高師理科學(xué)刊,2023,43(11):27-31,38.
[11] 張斌,丁娜娜,田晴豪.基于STM32的智能手環(huán)設(shè)計(jì)[J].微處理機(jī),2023,44 (3):62-64.
[12] 任琦,王娟娟,李晨,等.老年人對(duì)智能手環(huán)的需求調(diào)查及分析[J].智能建筑與智慧城市,2022(11):31-34.
【通聯(lián)編輯:梁書(shū)】