便攜式單片機控制液晶顯示型心率計
引言
過去人們測量脈搏時常用的方法是使用測量脈搏的聽診器,或者使用吸附在人體上的電極等老式測量方法,這些方法無疑都不便于室外場所使用。本心率計在設(shè)計時就充分考慮到了這一點。它采用紅外線來進行檢測采集人體的脈搏,檢測的部位為被檢測人的任意一個手指或者是耳垂。
檢測的基本原理是:隨著心臟的搏動,人體組織半透明度隨之改變。當(dāng)血液送到人體組織時,組織的半透明度減??;當(dāng)血液流回心臟,組織的半透明度增大。這種現(xiàn)象在人體組織較薄的手指尖、耳垂等部位最為明顯。因此,本心率計將紅外發(fā)光二極管產(chǎn)生的紅外線照射到人體的上述部位,并用裝在該部位另一側(cè)或旁邊的紅外光電管來檢測機體組織的透明程度并把它轉(zhuǎn)換成電信號。由于此信號的頻率與人體每分鐘的脈搏次數(shù)成正比,故只要把它轉(zhuǎn)換成脈沖并進行整形、計數(shù)和顯示,就能實現(xiàn)實時檢測脈搏次數(shù)的目的。
硬件電路設(shè)計
筆者設(shè)計的這款便攜式單片機控制液晶顯示型心率計,硬件整體電路如圖1所示。它可分為兩個大的電路組成部分,即心率采集處理電路和單片機控制顯示部分。
心率采集處理電路
心率采集處理電路如圖2所示。該部分電路主要由脈搏次數(shù)紅外檢測采集電路模塊、信號抗干擾電路模塊、信號整形電路模塊等三個主要的電路模塊組成。其中,紅外線發(fā)射管D1和紅外線接收管Q1組成了紅外檢測采集電路;R2與C1、C2與C3、R4與C4和IC1a共同構(gòu)成了信號抗干擾電路組,它們分別承擔(dān)了對信號的低通濾波、干擾光線的光電隔離、殘余高頻干擾的濾除等任務(wù)。另外,IC1b、C5與R10、IC1c則共同組成了信號整形電路模塊。
心率采集處理電路工作的基本過程如下:
首先,紅外檢測采集電路中D1發(fā)射紅外線,而Q1則接收相應(yīng)組織的半透明度,同時轉(zhuǎn)換為電信號。由于脈搏一般在50次/分~200次/分之間,對應(yīng)的頻率范圍在0.78Hz~3.33Hz之間,因此經(jīng)紅外檢測采集到并轉(zhuǎn)換得到的電信號頻率就非常低。為了防止信號因外界高頻信號干擾而使檢測結(jié)果有誤,信號就必須先進行低通濾波,以便濾出絕大部分的高頻干擾。電路中采用R2和C1來完成濾除高頻干擾的任務(wù)。
然后,由于本心率計設(shè)計的適用場所為室外,因此它必然會遇到強光輻射的情況。為了避免在接收正常脈搏紅外線時受到強光的干擾,電路中設(shè)計使用C2、C3背靠背串聯(lián)組成的雙極性耦合電容構(gòu)成一個簡單的光電隔離電路,從而實現(xiàn)了對于干擾光線的隔離。此外,為了防止前面對于高頻干擾濾除的不夠徹底,電路中還設(shè)計連接了由IC1a、R4、C4組成的截止頻率為10Hz左右的低通濾波器電路,以便進一步濾除干擾,同時將前面的信號放大200倍左右。
經(jīng)前面處理得到的信號為疊加有噪聲的脈沖正弦波,接下來必須對這個信號經(jīng)過整形。先是通過比較器IC1b將正弦波轉(zhuǎn)換成方波。利用R8可以實現(xiàn)將比較器的閾值調(diào)定在正弦波的幅值范圍之內(nèi)的目的。接下來,從IC1b的7引腳輸出的方波信號經(jīng)C5、R10構(gòu)成的微分電路,進行微分處理后將成為正負相間的尖脈沖。為了穩(wěn)定脈沖的輸出,電路設(shè)計時是將此脈沖輸入到單穩(wěn)多諧振蕩器IC1c的反相輸入端,并利用IC1c的輸出來作為后極工作的實際使用脈沖。
IC1c在工作時,凡有輸入信號時,它會在輸入信號后沿到來時輸出高電平,從而使C6通過R11充電。大約持續(xù)20ms之后,IC1c同相輸入端的電位會因C3充電電流減小而降低,當(dāng)此電位低于反相輸入端的電位時(尖脈沖已過去很久), IC1c就將改變狀態(tài)并再次輸出低電平。這20ms的脈沖時間是與脈搏同步的,這種脈沖在電路工作時是與紅色發(fā)光二極管D3的閃爍情況相對應(yīng)的。
經(jīng)過IC1c之后的脈沖就是后面單片機控制電路所需的實際脈沖,通過R12送到單片機P3.3引腳后,就可實現(xiàn)后面的計數(shù)和顯示了。
IC1a、IC1b、IC1c工作所需的4.5V電源電壓,在電路中是通過R14、R15對9V分壓并經(jīng)IC1d緩沖而得到的。這樣的設(shè)置,就使得即使電池電壓降低到6V,本電路也能實現(xiàn)正常工作。
單片機控制電路
單片機控制電路如圖3所示。本部分電路主要由AT89C2051單片機、SMC1602A液晶顯示芯片、12MHz的晶振電路以及復(fù)位電路等幾個部分組成。電路主要完成對于前面采集處理得到的脈沖進行計數(shù)和顯示的任務(wù)。
經(jīng)采集處理后得到的脈沖信號,通過P3.3引腳被輸入到單片機中。單片機被設(shè)為負跳變中斷觸發(fā)模式。因此,每次脈沖下降沿到達時,單片機就將被觸發(fā)并產(chǎn)生中斷進行計時;而當(dāng)下一次脈沖的下降沿到達時,單片機就對兩次脈沖間的時間間隔進行運算,運算的結(jié)果就是心率。這個結(jié)果值,將通過P1口送至SMC1602A液晶顯示芯片的數(shù)據(jù)端口,從而被顯示出來。
在顯示心率值之后,單片機將對此心率值與80~120的人體正常脈搏范圍進行比較。若此值X為80≤X≤120,液晶顯示芯片中會顯示“Very Good!”,以表示被測者心率正常;若此值不在80~120范圍之內(nèi),即X<80或者X>120,那么,液晶顯示芯片中會顯示“A Little Bad!”,以便表示被測者心率出現(xiàn)不正常。
另外,為了提示用戶及時觀察心率值的顯示,電路中還設(shè)置了一個提示音的裝置。即每次脈沖到來時,單片機P3.7引腳所連接的蜂鳴器SP均會發(fā)出提示音,這樣,當(dāng)用戶第二次聽到這個提示音時,就表明1分鐘的脈搏計數(shù)顯示已經(jīng)完成。如此一來,結(jié)合前面心率采集處理電路中對于每次脈搏給予的點亮閃爍裝置,本心率計在使用時就可以通過聲光相結(jié)合的形式形象地把脈搏的快慢顯示出來。
此外,本心率計設(shè)計的有效測量顯示范圍為50次/分~199次/分。為避免可能出現(xiàn)的干擾的影響,單片機對兩個脈沖之間的時間間距進行檢測,若發(fā)現(xiàn)有干擾,即次數(shù)值不在設(shè)置的有效測量顯示范圍之內(nèi)時,則忽略該干擾而不顯示。這樣就更加降低了心率計在實際使用時出現(xiàn)誤差的可能性。
元器件選取
電路中單片機選用AT89C2051單片機。液晶顯示器芯片則選用SMC1602A,電路中用到的運算放大器IC1為常用的四運放LM324,它的四路分別分配給了IC1a、IC1b、IC1c和IC1d。本心率計的電源為7~9V直流電源,可以通過電池供電,也可通過交直流轉(zhuǎn)換后來獲取,正常工作時的工作電流為100mA。設(shè)計中使用的提示音裝置為普通蜂鳴器,也可用8Ω微型喇叭來代替。另外,單片機采用的是12MHz的晶振,若用其它頻率晶振,在軟件設(shè)計中就需進行相應(yīng)修改。
在使用前的安裝時,可以將紅外線發(fā)射管D1和紅外線接收管Q1分別連接到一個夾子的兩端。將剩余的電路板等部件安裝于一個小盒中,為便于攜帶,小盒外部在電路安裝完畢后應(yīng)粘接一個可連接皮帶的裝置。為了方便使用時進行按鍵和觀察,復(fù)位鍵K1、紅色發(fā)光二極管D3、蜂鳴器SP以及液晶顯示器芯片的顯示窗口均要在盒子上留出相應(yīng)放置的位置。同時液晶顯示的窗口還應(yīng)外加一個保護硬模,以免室外測量時的損壞。
在實際使用時,先將由圖1中紅外線發(fā)射管D1和紅外線接收管Q1構(gòu)成的檢測夾子裝置夾在被測者的任意一個檢測手指上,然后連通電源。若觀察到紅色發(fā)光二極管在閃爍,那就表明心率計能夠正常工作。此時,為保證觀察的準確性,可以按下復(fù)位鍵K1使系統(tǒng)復(fù)位之后再重新開始測量并計數(shù)顯示。
注意在兩次聽到蜂鳴器的提示音之后,首先觀察到的結(jié)果是被檢測者的心率,然后就是這個心率是否正常的英文提示語。若顯示為“Very Good!”,則表示被檢測者心率正常;若顯示“A Little Bad!”,那么就表明被檢測者的心率不太正常了。
軟件設(shè)計
本心率計的軟件設(shè)計采用的語言為匯編語言,主要的程序流程圖如圖3~圖6所示。其中,圖3為主程序流程圖,圖4為定時器中斷子程序流程圖,圖5為INT1外中斷子程序流程圖,圖6為顯示部分的子程序流程圖。
結(jié)語
本文所設(shè)計的新型便攜式心率計,設(shè)計方法比較簡單易行,使用的元件也比較普遍。從總體來看,它具有體積小、抗干擾能力強、使用方便、易于觀察、易于攜帶等多種優(yōu)點。因此,該心率計將非常適合于體育訓(xùn)練和室外作業(yè)等場合的使用。