用智能馬桶實(shí)現(xiàn)體溫測(cè)量與亞健康預(yù)測(cè)
摘要:比較3種常見體溫計(jì)的測(cè)量原理及其優(yōu)缺點(diǎn),根據(jù)亞健康的預(yù)測(cè)要求,結(jié)合智能馬桶的設(shè)計(jì)特點(diǎn),采用ATmega8、DS18B20和MAX232等器件構(gòu)成一種可長(zhǎng)期采集體溫?cái)?shù)據(jù),自動(dòng)繪制體溫曲線,跟蹤分析體溫波動(dòng)趨勢(shì),實(shí)現(xiàn)亞健康預(yù)測(cè)的體溫采集系統(tǒng)。見微知著地積極保健,便于及早發(fā)現(xiàn)和預(yù)防疾病,有利于確診及治療。
關(guān)鍵詞:健康;體溫;數(shù)據(jù)采集;DS18B20;ATmega8
1 引言
隨著人們對(duì)自身健康的重視,亞健康問題越來越受到關(guān)注。亞健康狀態(tài)是人體處于健康與疾病之間的過渡階段。半數(shù)以上亞健康患者容易發(fā)展成高血壓、冠心病、糖尿病等疾病。亞健康逐漸成為人類健康的頭號(hào)殺手。
判斷一個(gè)人是否處于亞健康狀態(tài),需要觀察其生理信號(hào)(如體溫)在一段時(shí)間內(nèi)是否發(fā)生了不正常的變化,要求人們堅(jiān)持每天做身體檢查,記錄結(jié)果并進(jìn)行判斷,這樣的過程顯得很繁瑣和不方便。筆者提出“智能馬桶”的設(shè)想,將體檢裝置與馬桶結(jié)合起來。人們?cè)谌鐜^程中即可被自動(dòng)檢測(cè)出生理信號(hào),并將數(shù)據(jù)傳送到計(jì)算機(jī)進(jìn)行處理和判斷。
由于篇幅問題,下面僅介紹“智能馬桶”中體溫測(cè)量部分的設(shè)計(jì)。
2 常見體溫計(jì)的原理及優(yōu)缺點(diǎn)
2.1 水銀體溫計(jì)
水銀體溫計(jì)是利用水銀熱膨脹原理制成的。它的示值準(zhǔn)確,穩(wěn)定性高,價(jià)格低廉,操作簡(jiǎn)單,但容易破碎,測(cè)量時(shí)間比較長(zhǎng),對(duì)急重病患者、老人、嬰幼兒等使用不方便,讀數(shù)比較費(fèi)事,不利于數(shù)據(jù)采集。
2.2 電子體溫計(jì)
電子體溫計(jì)的核心元件是溫度傳感器,分為分立式溫度傳感器(如熱敏電阻器和熱電偶等)和集成式溫度傳感器(如LM35、AD7416、DS18B20等)。電子體溫計(jì)由溫度傳感器檢測(cè)體溫,經(jīng)轉(zhuǎn)換、放大,調(diào)整為易于處理的電信號(hào),最后由單片機(jī)控制,并根據(jù)需要執(zhí)行相應(yīng)的擴(kuò)展功能。電子體溫計(jì)可直接以數(shù)字顯示溫度,讀數(shù)直觀,靈敏度高,價(jià)格適中,攜帶方便,測(cè)溫快捷。但其示值準(zhǔn)確度受電子元件及電池供電狀況等因素的影響。
2.3 紅外輻射式體溫計(jì)
紅外輻射式體溫計(jì)是基于黑體輻射原理制成的,借助紅外溫度傳感器,測(cè)量人體發(fā)出的熱輻射能,經(jīng)過一系列轉(zhuǎn)換后,得到對(duì)應(yīng)的人體溫度值。紅外輻射式體溫計(jì)可以實(shí)現(xiàn)非接觸、無損傷測(cè)溫,但其測(cè)量結(jié)果較易受環(huán)境及人活動(dòng)狀態(tài)的影響,此外,還要求規(guī)范操作,測(cè)試要在一定距離范圍內(nèi)才能保證其有效性,價(jià)格較貴,難以普及。
3 體溫測(cè)量方案的選擇及系統(tǒng)構(gòu)成
考慮到人的如廁時(shí)間短和體檢次數(shù)多,因此,準(zhǔn)確、快捷、方便、可重復(fù)測(cè)量成為設(shè)計(jì)者要考慮的首要因素。設(shè)計(jì)中采用電子式體溫測(cè)量方案,觸摸式檢測(cè)手心或手背溫度,為了使用方便,工藝設(shè)計(jì)中將測(cè)溫探頭安裝在智能馬桶的扶手位置,較人性化?,F(xiàn)在市面上的電子體溫計(jì)都沒有數(shù)據(jù)采集口,改裝又較為不便,因此,自行設(shè)計(jì)了帶數(shù)據(jù)接口的體溫計(jì)。
3.1 主電路的選擇
測(cè)溫器件選用美國(guó)Maxim公司的DS18B20型單線接口數(shù)字溫度傳感器,一線輸出,可編程9位一12位A/D轉(zhuǎn)換精度,分辨率可達(dá)0.0625~C;有單線數(shù)字式接口,與單片機(jī)連接方便,線路簡(jiǎn)單,可靠性高,成本低廉[2]。
人體體溫在35℃-42℃之間,要如實(shí)反映人體體溫,需要用單片機(jī)對(duì)DS18B20的測(cè)量值進(jìn)行計(jì)算轉(zhuǎn)換處理,還要控制測(cè)量的數(shù)據(jù)顯示、采集、傳輸?shù)?。這里采用美國(guó)ATMEL公司的基于AVR RISC的具有MTP和ISP功能的、低功耗CMOS ATmega8型8位單片機(jī),其CPU集成了8KB的:Flash,多次在線可編程,512B的.EEPROM和lKB的SRAM等,有利于降低成本[5]。
3.2 系統(tǒng)構(gòu)成及實(shí)現(xiàn)
該系統(tǒng)的硬件由控制器、體溫測(cè)量部分、數(shù)碼顯示部分和采集管理部分(PC)組成??刂破鬟x用了ATmega8型單片機(jī),測(cè)量部分采用DS18B20型溫度傳感器,數(shù)碼顯示是通過直接驅(qū)動(dòng)HD44780型(標(biāo)準(zhǔn)點(diǎn)陣)LCD來顯示當(dāng)前的人體體溫值,數(shù)據(jù)采集通過RS一232串行通信向PC傳送數(shù)據(jù),用。MAX232型電平轉(zhuǎn)換器實(shí)現(xiàn)TTL與RS-232之間的電平轉(zhuǎn)換。PC主機(jī)對(duì)溫度數(shù)據(jù)進(jìn)行存儲(chǔ)、管理與分析。可視化人機(jī)交互界面根據(jù)收到的體溫?cái)?shù)據(jù)做出體溫曲線并打印,自診斷身體狀況。系統(tǒng)構(gòu)成如圖1所示。
3.2.1體溫測(cè)量部分
(1)硬件構(gòu)成
DS18B20由外部電源供電,通過輸出端DQ將體溫?cái)?shù)據(jù)傳給ATmega8的PC0端口,再由ATmega8進(jìn)行處理,調(diào)用相關(guān)程序,數(shù)碼顯示,同時(shí)經(jīng)AT-mega8的PDO(Rx)/PD1(Tx)與PC串口通信以實(shí)現(xiàn)體溫?cái)?shù)據(jù)采集。
(2)DS18B20內(nèi)部設(shè)置
對(duì)人體體溫測(cè)量的精度需達(dá)到0.1℃,因而選取DS18B20精度為默認(rèn)狀態(tài),即12位A/D轉(zhuǎn)換結(jié)果,分辨率為O.0625℃,轉(zhuǎn)換時(shí)間是750ms,以保證能夠精確快速測(cè)量體溫,同時(shí)配置寄存器設(shè)置為78H。
(3)DS18B20的軟件設(shè)計(jì)
ATmega8使用8MHz外部時(shí)鐘,由于DS18B20與單片機(jī)之間采用的是串行數(shù)據(jù)傳送,因而在對(duì)DS18B20進(jìn)行讀寫操作時(shí)只能靠嚴(yán)格的時(shí)序脈沖信號(hào)進(jìn)行,按照DS18B20的時(shí)序,嚴(yán)格遵循一線式總線協(xié)議,以保證數(shù)據(jù)的完整性。系統(tǒng)能否實(shí)現(xiàn)智能化主要依靠數(shù)據(jù)處理程序。DS18B20的部分程序采用匯編語言設(shè)計(jì),適當(dāng)設(shè)置時(shí)隙,保證時(shí)序。
在程序設(shè)計(jì)中,準(zhǔn)確讀取溫度是關(guān)鍵,對(duì)每組數(shù)據(jù)(9字節(jié))都進(jìn)行CRC校驗(yàn)。該數(shù)據(jù)先從低字節(jié)最低位開始,再以高字節(jié)最高位結(jié)尾。程序中將溫度數(shù)據(jù)的整數(shù)部分和小數(shù)部分分離并單獨(dú)進(jìn)行處理。
3.2.2溫度標(biāo)定與精度處理
(1)溫度標(biāo)定
體溫信號(hào)由DS18B20測(cè)量,將測(cè)量數(shù)據(jù)傳給ATmega8進(jìn)行相應(yīng)處理,存入ATmega8的。EEP-ROM,顯示并上傳給PC主機(jī)??紤]到每個(gè)DS18B20中存在系統(tǒng)誤差,因此首次使用裝置時(shí),需對(duì)其進(jìn)行校正并將測(cè)量值換算為體溫,因此需要進(jìn)行溫度標(biāo)定。首先將DS18B20與水銀溫度計(jì)一同放入溫水中,改變水溫并分別測(cè)定和校正,再執(zhí)行標(biāo)定程序?qū)囟扔?jì)讀數(shù)由鍵盤輸入,啟動(dòng)DS18B20并自動(dòng)將溫度對(duì)應(yīng)的轉(zhuǎn)換值讀入ATmega8的EEPROM內(nèi)存,溫度轉(zhuǎn)換值的對(duì)應(yīng)值自動(dòng)存儲(chǔ),再執(zhí)行處理程序,計(jì)算出回歸方程的各個(gè)系數(shù),并存儲(chǔ)在另一文本中,開啟使用時(shí)控制器自動(dòng)調(diào)用查詢。標(biāo)定出各個(gè)整數(shù)點(diǎn)的溫度數(shù)值以減少器件本身及外部環(huán)境帶來的非線性誤差,提高輸出準(zhǔn)確度。
(2)精度處理
DS18B20完成對(duì)溫度的測(cè)量,以16位符號(hào)擴(kuò)展的二進(jìn)制補(bǔ)碼讀數(shù)形式提供,默認(rèn)以0.0625℃/LSB形式表達(dá),其中S為符號(hào)位。高速暫存器的字節(jié)O、l存儲(chǔ)數(shù)據(jù)格式如下:
溫度算法是SSSSS=0,溫度大于0℃,具體值為T=[(B&7)x256+A]x0.0625℃。
整數(shù)部分和小數(shù)部分單獨(dú)處理。為了提高測(cè)量精度,DS18B20采用12位A/D轉(zhuǎn)換方式,百分位的數(shù)據(jù)采用“四舍五入”的原則處理。這樣,溫度的顯示范圍為35.0℃-42.O℃,精度可達(dá)0.1℃,符合要求。
3.2.3采集管理(PC管理)
體溫測(cè)量和存儲(chǔ)后,通過串口收發(fā),將體溫?cái)?shù)據(jù)傳送到PC主機(jī)進(jìn)行分析和處理。收發(fā)數(shù)據(jù)以9600bit/s波特率傳送給PC主機(jī)。Visual C++6.O編程,得到可視化人機(jī)界面,界面采用主菜單方式,具有提供數(shù)據(jù)曲線、存儲(chǔ)和打印等功能。
4 亞健康預(yù)測(cè)依據(jù)及判別
人的正常體溫在37℃左右,波動(dòng)范圍是36.5℃-37.3℃,每日體溫變化不超過1℃。鑒于體溫受諸多因素的影響,如年齡、性別、季節(jié)和晝夜變化等,加上不同個(gè)體間的差異,很難確立具體統(tǒng)一的判斷標(biāo)準(zhǔn)。大都以37℃為中心,高低呈正態(tài)分布,即使有偏離,肌體也會(huì)在較短的時(shí)間內(nèi)回到37℃左右。當(dāng)身體處于亞健康狀態(tài)或其他一些疾病的潛伏期時(shí),肌體內(nèi)部肯定會(huì)有不易察覺的先兆,可能表現(xiàn)為體溫波動(dòng)長(zhǎng)期異常即長(zhǎng)時(shí)間偏高或偏低。對(duì)體溫?cái)?shù)據(jù)進(jìn)行長(zhǎng)期記錄并繪出體溫曲線,就是為了跟蹤這種異?,F(xiàn)象。
根據(jù)各組體溫值進(jìn)行曲線擬合,經(jīng)過比較,設(shè)計(jì)中采用5點(diǎn)3次移動(dòng)平均法平滑體溫曲線,其平滑度好,速度快,且精度較高。5點(diǎn)3次移動(dòng)平滑公式如下:
式中,Ti是平滑處理后的各點(diǎn)體溫值,ti是實(shí)際體溫測(cè)量值。
計(jì)算機(jī)在處理每組數(shù)據(jù)過程中,以正常人的體溫變化為依據(jù),如果發(fā)現(xiàn)體溫長(zhǎng)期偏高或偏低,或者臨界范圍附近呈上升或下降趨勢(shì),則表示身體有異常,就會(huì)自動(dòng)提醒主人去醫(yī)院檢查或就診,從某種意義上克服了點(diǎn)測(cè)量的局限性,可具體直觀地反映身體狀況。
圖2中的數(shù)據(jù)及曲線是設(shè)計(jì)中的1次測(cè)試結(jié)果。虛線是根據(jù)實(shí)測(cè)體溫值直線連接得到的,實(shí)線是經(jīng)過平滑處理后的體溫曲線。體溫?cái)?shù)據(jù)如表1所示。
根據(jù)體溫曲線可以直觀地看出被測(cè)者25天內(nèi)的體溫變化趨勢(shì):從第2天開始,體溫逐漸上升,但在正常范圍內(nèi),第8天到第11天的體溫變化較大,此后的十幾天里一直在37.4℃左右徘徊,遠(yuǎn)高于37℃,這表明被測(cè)者已有連續(xù)2個(gè)星期持續(xù)體溫偏高即處于低熱狀態(tài),而且曲線走勢(shì)趨于穩(wěn)定,以后還有可能繼續(xù)下去,這就說明身體有問題。據(jù)相關(guān)醫(yī)學(xué)資料可知,被測(cè)者(男)極有可能有結(jié)核病或炎癥等疾病。當(dāng)然也可以根據(jù)需要,一天內(nèi)采集多次,做出更精確的記錄和體溫曲線。下一步是繼續(xù)完善程序,平滑曲線,結(jié)合醫(yī)學(xué)的相關(guān)指標(biāo),增強(qiáng)判據(jù),提高系統(tǒng)的可靠性。
還可以根據(jù)需要,幾天內(nèi)每天多次采樣,做出更精確的記錄和體溫曲線,觀察體溫變化,比較上、下午體溫。人的正常體溫一般下午比上午高0.17℃(腋窩溫),還可看體溫變化是否超過1℃,如果多次超過1℃則視為不正常。亞健康的一種明顯癥狀是體溫異常,下午的體溫常在36℃~38℃,這些可作為輔助手段,通過測(cè)得的體溫曲線容易判斷。
5 結(jié)束語
筆者設(shè)計(jì)的智能馬桶可以實(shí)現(xiàn)對(duì)亞健康的自動(dòng)預(yù)測(cè)。較之一年一次的體檢,偶爾的檢查,被動(dòng)地預(yù)防疾病,防患于未然的積極保健意識(shí)顯然更具有實(shí)際意義。而與計(jì)算機(jī)互連,以整合信息并控制,亦是家電信息化的必然趨勢(shì);健康儀器借助于計(jì)算機(jī)分析處理數(shù)據(jù),在一定期間的跟蹤觀測(cè)更具客觀性。存儲(chǔ)的數(shù)據(jù)或打印的曲線又可為醫(yī)生進(jìn)一步確診提供詳細(xì)憑據(jù),具有一定的實(shí)用價(jià)值。隨著家用電器逐步信息化、智能化、網(wǎng)絡(luò)化,智能馬桶將會(huì)逐步進(jìn)入日常生活,成為人們關(guān)注自身健康的好幫手。
評(píng)論