趙從涵
(湖北工業(yè)大學(xué)電子與電氣學(xué)院 湖北省武漢市 430068)
本系統(tǒng)主要由4 枚按鍵、LCD1602、光電傳感器、運放等構(gòu)成。其中三枚按鍵負責(zé)設(shè)置脈搏數(shù)的上下限額,一枚按鍵構(gòu)成單片機最小系統(tǒng)用于重置測量結(jié)果。蜂鳴器可以在測試結(jié)果超過限值范圍的時候發(fā)出響聲。
非ECG 檢測方法主要是利用人體血液的透光性變化隨著脈搏的近似規(guī)律性,接收端接則會依據(jù)感應(yīng)特性捕捉微弱的人體脈搏信號。單片機的特定IO 口會將已經(jīng)明顯的脈沖信號通過外部中斷轉(zhuǎn)化為脈搏數(shù)。系統(tǒng)由測得一定時間內(nèi)的脈搏數(shù)再經(jīng)過換算得出被測者大約在一分鐘的脈搏數(shù),并在液晶屏上顯示結(jié)果。
輸入的直流電會有一個開關(guān)控制開閉狀態(tài)。VCC 線路接入主控的VCC 引腳以及使能端,同時也通過按鍵再連接主控的復(fù)位端,當(dāng)按鍵按下,會有脈沖信號進入復(fù)位端,觸發(fā)復(fù)位工作。供電同樣接入顯示模塊以及蜂鳴器,保證各個部分能夠正常工作??傮w框架設(shè)計如圖1 所示。
圖1:總體框架設(shè)計
STC89C52 的P0 為數(shù)據(jù)線接口,P1.2、P1.1、P1.0 分別連接LCD 的EN、R/W、RS 端。其中EN 是下降沿觸發(fā)信號,R/W 是讀/寫信號,RS 是寄存器選擇信號。然后LCD1602 的D1-D7 口分別接到STC89C52 的39-32 腳(見圖2)。
圖2:顯示模塊與主控連接
首先取一個要顯示的字符或數(shù)據(jù)送到LCD 的顯示緩沖區(qū)。本系統(tǒng)程序設(shè)計留有延時2.5ms,判斷是否夠顯示的個數(shù),不夠則地址位加一取下一個要顯示的字符或數(shù)據(jù)。
采集傳感器采用ST188。ST188 有一個二級管紅外發(fā)射端和一個三級管紅外接受端。采用+5V 電源供電,R4 取330Ω,R5 取20kΩ,起到保護作用。其1、2 號引腳為ST188 發(fā)射端,供電后發(fā)出紅外射線,3、4 號引腳為ST188 接受端。2、3 號管腳統(tǒng)一接地。4 號腳最后作為輸出端接入信號處理部分。
脈搏信號需要進行一系列等處理,體脈搏信號微弱,幅值大約在幾十 uV,若不處理會有強烈的噪音干擾。結(jié)合效能以及成本采用LM358 搭建起一個濾波、放大電路。
1.4.1 濾波電路
為更好地處理低頻噪聲以及高頻噪音,選用低通濾波器和高通濾波器結(jié)合而成的帶通濾波器。高通濾波器選取電容10uF 以及電阻24KΩ,低通濾波器選用電容1uF 以及電阻10KΩ,根據(jù)人體每分鐘心跳60-100 次每分鐘計算相關(guān)脈搏頻率為1-1.67Hz,而通過計算,帶通濾波器的截止頻率為0.7-15.9Hz,低于0.7 Hz 以及高于15.9 Hz 的信號都將被濾除。此外,帶通濾波器不能直接與主控接,否則會造成參數(shù)漂移,因此需要在帶通濾波器后加入緩沖部分再接入電路。
1.4.2 放大、整形電路
經(jīng)過濾波后的脈搏信號受到低頻干擾,導(dǎo)致單片機不能準(zhǔn)確的進行計數(shù),會使誤差與預(yù)期標(biāo)準(zhǔn)相差較大。采用整形電路——選取滯回電壓比較器來增強抗干擾能力。集成運放芯片選用LM358,根據(jù)計算經(jīng)過運放的信號會被放大約100 倍,除此外還外接上了一個LED 用作指示脈搏跳動的狀態(tài),LED 會根據(jù)脈搏變化規(guī)律進行同樣規(guī)律的亮滅。
信號的處理部分最后與STC89C52 的輸入輸出功能接口(第12 腳,P3.2)連接。綜上,信號整體處理流程概括為:光電傳感器→放大電路→有源濾波電路→整形電路
此次項目除了一個可以重置數(shù)值的按鍵,其余三個按鍵與主控直接相連,均是為設(shè)置上下限的按鍵,分別為減數(shù)值鍵、加數(shù)值鍵、開始/結(jié)束設(shè)置按鍵。按下一次設(shè)置按鍵,首先進入上限設(shè)置,設(shè)置完成后,再次按下該鍵切換到下限設(shè)置,下限設(shè)置完畢后,再次按下該鍵,結(jié)束上下限設(shè)置。
蜂鳴器正極連接三級管9012 的集電級,負極接地。9012 發(fā)射級接入電源,9012 的基級會與主控RD 腳相連。如果所測得心率高于上限值或者低于下限值,蜂鳴器會受到信號控制發(fā)出報警聲,提醒使用者。
主程序流程:首先單片機初始化,相關(guān)寄存器被清除。無測試狀態(tài)下脈搏顯示000/min,并顯示預(yù)先設(shè)定然的上下限閾值。單片機通過定時15s 內(nèi)測量人體的脈搏次數(shù)。若需要調(diào)整相關(guān)報警上下限,則需要首先按下范圍設(shè)定按鍵,之后再通過加鍵或減鍵進行相應(yīng)調(diào)整。
按鍵程序是一個獨立模塊設(shè)計,對應(yīng)的按鍵IO 口輸出為1。當(dāng)按鍵按下,首先會有一個1ms 的消除抖動時間,如在消抖結(jié)束后確認按鍵已經(jīng)被按下,則主控會根據(jù)該按鍵所代表的值去實現(xiàn)該按鍵功能。相關(guān)的數(shù)值控制的各部分代碼限于篇幅原因不在此展開詳述。
因為需要計算脈搏,所以離不開關(guān)于時間的代碼編寫。首先初始定時器(代碼未展示),這樣做可以很好的減小測量誤差。如下面代碼所示,在程序中脈搏測量雖然能夠?qū)崟r檢測,但也是以一小時間段為單位,而并不是真正意義上的實時檢測。計數(shù)器從1 開始,記錄到超過等于6 次時間,然后算出間隔時間。
rate=60000/(time[1]+time[2]+tim3]+time[4]+time[e[5])/5 是程序中計算脈搏公式。計算中會對所測得的5 個時間取平均值再去計算脈搏,此目的能夠有效抵消對于即將測試前以及測量即將結(jié)束后的測量數(shù)據(jù)誤差。最后通過write_sfm3(1,5,rate)代碼將計算好的數(shù)據(jù)輸送至顯示屏上。
本課題研究對象為可佩戴脈搏測量器,考慮可配戴舒適性和便捷性,還需對原有的設(shè)計系統(tǒng)做一些附加的改良。
首先,本系統(tǒng)有意縮減空間:根據(jù)制作的PCB,LCD1602 與C52 芯片之間會由巨大空隙,而實際制作時,將主控芯片藏匿在顯示器下方空間,這樣既美觀也能騰出相應(yīng)空間使得整個系統(tǒng)更加緊湊。
其次,萬用板的4 個腳十分尖銳,若碰觸到人體皮膚則會有明顯不適感,有違可佩戴儀器的基本舒適原則,因此需要將萬用板的四個角打磨光滑。
再次,需在電路與人體之間加入一個隔層,經(jīng)過反復(fù)對比,采用海綿材料覆蓋背板電路,使得佩戴更加舒適。除此之外,經(jīng)過連接脈搏測量帶,使得該測試系統(tǒng)能夠進行佩戴在手部使用。
如此,方能夠達到可佩戴的基礎(chǔ)要求。
利用Protel99 軟件對所搭建的整個電路進行模擬仿真,驗證設(shè)計合理性。
除了對整個原理圖進行仿真外,還特意根據(jù)本課題設(shè)計的濾波部分利用MATLAB 軟件進行單獨仿真,在輸入幅度為1V 的正弦函數(shù)信號后,經(jīng)過濾波部分最大可以通過頻率為193Hz 左右,低頻信號也被很好的濾除,因此能夠完成帶通的工作。
因為傳感器和其他器件本身并非理想線性,會有一定誤差。為測試本系統(tǒng)是否達到設(shè)計要求,對此次課題系統(tǒng)驗證相關(guān)誤差,利用聽診器測出的脈搏次數(shù)為實際的脈搏次數(shù),作為對照參考。利用此脈搏檢測系統(tǒng)測試出的結(jié)果與真實結(jié)果均方差約為0.58,滿足使用需求。如圖3 所示。
圖3:測試結(jié)果
除了測量誤差的要求,本系統(tǒng)還需要對是否能佩戴進行測試。故召集三批(每批10 個)志愿者,將本測量系統(tǒng)與指夾式脈搏測量儀器分別進行單次測量與連續(xù)測量舒適度比對.
從結(jié)果來看,在單次脈搏測量方面,僅有16.7%的測試者認為本系統(tǒng)能夠舒適測量。然而在連續(xù)測量情況下,有近60%的測試者認為本系統(tǒng)具有舒適性。其主要原因為長時間佩戴,指夾式測量導(dǎo)致所測部位有輕微不適感,以至于舒適性略有降低,反而本系統(tǒng)無夾持裝置能夠發(fā)揮較大優(yōu)勢。
本文首先根據(jù)C52 芯片資料,搭建單片機最小系統(tǒng)。利用單片機常用的外圍電路引腳和連接方法并參考1602 中文資料等連接LCD 液晶顯示與主控。然后,本文設(shè)計脈搏采集處理電路,計算相關(guān)電阻使得濾除不需要的干擾噪音。最后為整個電路加入按鍵、LED 燈、蜂鳴器交互部分使得脈搏測試儀器功能更強、更加人性化。
本脈搏測試儀在測試后達到相關(guān)要求并且有以下優(yōu)點:成本低廉、無痛檢測,這些能滿足大部分人群的需要。而且本系統(tǒng)能夠佩戴使用,使得脈搏檢測更加便捷。