課 題 名 稱基于單片機的智能脈搏測試儀設計 學 生 姓 名 王 * 學 號08412* 系、年級專業電氣工程系08級電氣工程及其自動化 指 導 教 師楊 波 職 稱副 教 授
摘要脈搏測量儀在我們的日常生活中已經得到了非常廣泛的應用。為了提高脈搏測量儀的簡便性和精確度,本課題設計了一種基于51單片機的脈搏測量儀。系統以AT89C51單片機為核心,以紅外發光二極管和光敏三極管為傳感器,并利用單片機系統內部定時器來計算時間,由光敏三極管感應產生脈沖,單片機通過對脈沖累加得到脈搏跳動次數,時間由定時器定時而得。系統運行中能顯示脈搏次數和時間,系統停止運行時,能夠顯示總的脈搏次數和時間。經測試,系統工作正常,達到設計要求。
目 錄 摘 要 Abstract 1 概述 1.1 選題的背景和意義 1.2 脈搏測量儀的發展與應用 2 脈搏測量儀系統結構 2.1 光電脈搏測量儀的結構 2.2 工作原理 2.3 光電脈搏測量儀的特點 3 硬件系統 5 3.1 控制器 5 3.2 脈搏信號采集 7 3.3 信號放大整形 10 3.4 單片機處理電路 3.5 顯示電路 4 軟件系統 17 4.1 主程序流程: 17 4.2 定時器中斷程序流程: 17 4.3 INT中斷程序流程: 19 4.4 顯示程序流程: 21 4.5 軟件說明 23 5 抗干擾措施及使用方法 5.1抗干擾措施 5.2測量儀使用方法 6 系統調試 26 7 總結與展望 參考文獻 28 附 錄 29 致 謝 32
1 概述1.1 選題的背景和意義 脈搏攜帶有豐富的人體健康狀況的信息,自公元三世紀我國最早的脈學專著《脈經》問世以來,脈學理論得到不斷的發展和提高。在中醫四診(望、聞、問、切)中,脈診占有非常重要的位置。脈診是我國傳統醫學中最具特色的一項診斷方法,其歷史悠久,內容豐富,是中醫“整體觀念”、“辨證論證”的基本精神的體現與應用。脈診作為“綠色無創”診斷的手段和方法,得到了中外人士的關注。但由于中醫是靠手指獲取脈搏信息,雖然脈診具有簡便、無創、無痛的特點易為患者接受,然而在長期的醫療實踐中也暴露出一些缺陷。首先,切脈單憑醫生手指感覺辨別脈象的特征,受到感覺、經驗和表述的限制,并且難免存在許多主觀臆斷因素,影響了對脈象判斷的規范化;其次,這種用手指切脈的技巧很難掌握;再則,感知的脈象無法記錄和保存影響了對脈象機理的研究。脈診的這種定性化和主觀性,大大影響了其精度與可行性,成為中醫脈診應用、發展和交流中的制約因素。為了將傳統的中醫藥學發揚光大,促進脈診的應用和發展,必須與現代科技相結合,實現更科學、客觀的診斷。 醫院的護士每天都要給住院的病人把脈記錄病人每分鐘脈搏數,方法是用手按在病人腕部的動脈上,根據脈搏的跳動進行計數。為了節省時間,一般不會作1分鐘的測量,通常是測量10秒鐘時間內心跳的數,再把結果乘以6即得到每分鐘的心跳數,即使這樣做還是比較費時,而且精度也不高。為了提高脈搏測量的精確與速度,多種脈搏測量儀被運用到醫學上來,從而開辟了一條全新的醫學診斷方法。 早在1860年Vierordt 創建了第一臺杠桿式脈搏描記儀,國內20世紀50年代初朱顏將脈搏儀引用到中醫脈診的客觀化研究方面。此后隨著機械及電子技術的發展,國內外在研制中醫脈象儀方面進展很快,尤其是70年代中期,國內天津、上海、江西等地相繼成立了跨學科的脈象研究協作組,多學科共同合作促使中醫脈象研究工作進入了一個新的境界。脈象探頭式樣很多,有單部、三部、單點、多點、剛性接觸式、軟性接觸式、氣壓式、硅杯式、液態汞、液態水、子母式等組成,脈象探頭的主要原件有應變片、壓電晶體、單晶硅、光敏元件、PVDF壓電薄膜等,其中以單部單點應變片式為最廣泛,不過近年來正在向三部多點式方向設計。 目前脈搏測量儀在多個領域被廣泛應用,除了應用于醫學領域,如無創心血管功能檢測、妊高癥檢測、中醫脈象、脈率檢測等等,商業應用也不斷拓展,如運動、健身器材中的心率測試都用到了技術先進的脈搏測量儀。 1.2 脈搏測量儀的發展與應用 隨著科學技術的發展,脈搏測量技術也越來越先進,對脈搏的測量精度也越來越高,國內外先后研制了不同類型的脈搏測量儀,而其中關鍵是對脈搏傳感器的研究。起初用于體育測量的脈搏測試集中在對接觸式傳感器的研究,利用此類傳感器所研制的指脈、耳脈等測量儀各有其優缺點。指脈測量比較方便、簡單,但因為手指上的汗腺較多,指夾常年使用,污染可能會使測量靈敏度下降:耳脈測量比較干凈,傳感器使用環境污染少,容易維護。但因耳脈較弱,尤其是當季節變化時,所測信號受環境溫度影響明顯,造成測量結果不準確。 過去在醫院臨床監護和日常中老年保健中出現的日常監護儀器,如便攜式電子血壓計,可以完成脈搏的測量,但是這種便攜式電子血壓計利用微型氣泵加壓橡膠氣囊,每次測量都需要一個加壓和減壓的過程,存在體積龐大、加減壓過程會有不適、脈搏檢測的精確度低等缺點。 近年來國內外致力于開發無創非接觸式的傳感器,這類傳感器的重要特征是測量的探測部分不侵入機體,不造成機體創傷,能夠自動消除儀表自身系統的誤差,測量精度高,通常在體外,尤其是在體表間接測量人體的生理和生化參數。其中光電式脈搏傳感器是根據光電容積法制成的脈搏傳感器,通過對手指末端透光度的監測,間接檢測出脈搏信號。具有結構簡單、無損傷、精度高、可重復使用等優點。通過光電式脈搏傳感器所研制的脈搏測量儀已經應用到臨床醫學等各個方面并收到了理想效果。 人體心室周期性的收縮和舒張導致主動脈的收縮和舒張,是血流壓力以波的形式從主動脈根部開始沿著整個動脈系統傳播,這種波成為脈搏波。從脈搏波中提取人體的心理病理信息作為臨床診斷和治療的依據,歷來都受到中外醫學界的重視。脈搏波所呈現出的形態(波形)、強度(波幅)、速率(波速)和節律(周期)等方面的綜合信息,在很大程度上反映出人體心血管系統中許多生理病理的血流特征,因此對脈搏波采集和處理具有很高的醫學價值和應用前景。但人體的生物信號多屬于強噪聲背景下的低頻的弱信號, 脈搏波信號更是低頻微弱的非電生理信號,因此必需經過放大和后級濾波以滿足采集的要求。
2 脈搏測量儀系統結構脈搏測量儀的設計,必須是通過采集人體脈搏變化引起的一些生物信號,然后把生物信號轉化為物理信號,使得這些變化的物理信號能夠表達人體的脈搏變化,最后要得出每分鐘的脈搏次數,就需要通過相應的硬件電路及芯片來處理物理變化并存儲脈搏次數。在硬件設計中一般的物理信號就是電壓變化,有了這個系統的設計思路,本課題就此開始實施。 2.1 光電脈搏測量儀的結構 光電脈搏測量儀是利用光電傳感器作為變換原件,把采集到的用于檢測脈搏跳動的紅外光轉換成電信號,用電子儀表進行測量和顯示的裝置。本系統的組成包括光電傳感器、信號處理、單片機電路、數碼顯示、電源等部分。 (1)光電傳感器 即將非電量(紅外光)轉換成電量的轉換元件,它由紅外發射二極管和接收三極管組成,它可以將接收到的紅外光按一定的函數關系(通常是線性關系)轉換成便于測量的物理量(如電壓、電流或頻率等)輸出。 (2)信號處理 即處理光電傳感器采集到的低頻信號的模擬電路(包括放大、整形等)。 (3)單片機電路 即利用單片機自身的定時中斷計數功能對輸入的脈沖電平進行運算得出心率(包括AT89C51、外部晶振、外部中斷等)。 (4)數碼顯示 即把單片機計算得出的結果用8位LED數碼管靜態掃描來顯示,便于直接準確無誤的讀出數據。 (5)電源 即向光電傳感器、信號處理、單片機提供的電源,可以是5V的交流或直流的穩壓電源。 2.2工作原理 本設計采用單片機AT89C51為控制核心,實現脈搏測量儀的基本測量功能。脈搏測量儀硬件框圖如下圖2.1 所示: 圖 2.1 脈搏測量儀的工作原理 當手指放在紅外線發射二極管和接收三極管中間,隨著心臟的跳動,血管中血液的流量將發生變換。由于手指放在光的傳遞路徑中,血管中血液飽和程度的變化將引起光的強度發生變化,因此和心跳的節拍相對應,紅外接收三極管的電流也跟著改變,這就導致紅外接收三極管輸出脈沖信號。該信號經放大、濾波、整形后輸出,輸出的脈沖信號作為單片機的外部中斷信號。單片機電路對輸入的脈沖信號進行計算處理后把結果送到數碼管顯示。 2.3光電脈搏測量儀的特點 與傳統的脈搏測量儀相比,光電式脈搏測量儀具有以下特點: (1) 測量的探測部分不侵入機體,不造成機體創傷,通常在體外。 (2) 傳感器可重復使用且速度快,精度高。 (3) 測試的適用電壓為5V的直流電壓。 (4) 穩定性好、磨損小、壽命長、維修方便。 (5) 由于結構簡單,因此體積小、重量輕、性價比優越。 (6) 測量的有效范圍為50次-300次/分鐘。
3 硬件系統3.1 控制器 3.2脈搏信號采集 目前脈搏波檢測系統有以下幾種檢測方法:光電容積脈搏波法、液體耦合腔脈搏傳感器、壓阻式脈搏傳感器以及應變式脈搏傳感器。近年來, 光電檢測技術在臨床醫學應用中發展很快, 這主要是由于光能避開強烈的電磁干擾, 具有很高的絕緣性, 且可非侵入地檢測病人各種癥狀信息,具有結構簡單、無損傷、精度高、可重復好等優點。用光電法提取指尖脈搏光信息受到了從事生物醫學儀器工作的專家和學者的重視。 3.2.1光電傳感器的原理 根據朗伯一比爾(Lamber—Beer)定律,物質在一定波長處的吸光度和他的濃度成正比。當恒定波長的光照射到人體組織上時,通過人體組織吸收、反射衰減后,測量到的光強將在一定程度上反映了被照射部位組織的結構特征。 脈搏主要由人體動脈舒張和收縮產生的,在人體指尖組織中的動脈成分含量高,而且指尖厚度相對其他人體組織而言比較薄,透過手指后檢測到的光強相對較大,因此光電式脈搏傳感器的測量部位通常在人體指尖。 手指組織可以分成皮膚、肌肉、骨骼等非血液組織和血液組織,其中非血液組織的光吸收量是恒定的,而在血液中,靜脈血的搏動相對于動脈血是十分微弱的,可以忽略。因此可以認為光透過手指后的變化僅由動脈血的充盈而引起的,那么在恒定波長的光源照射下,通過檢測透過手指的光強將可以間接測量到人體的脈搏信號。 3.2.2光電傳感器的結構 傳感器由紅外發光二級管和紅外接收三極管組成。采用GaAs紅外發光二極管作為光源時,可基本抑制由呼吸運動造成的脈搏波曲線的漂移。紅外接收三極管在紅外光的照射下能產生電能,它的特性是將光信號轉換為電信號。在本設計中,紅外接收三極管和紅外發射二極管相對擺放以獲得最佳的指向特性。 從光源發出的光除被手指組織吸收以外,一部分由血液漫反射返回,其余部分透射出來。光電式脈搏傳感器按照光的接收方式可分為透射式和反射式2種。其中透射式的發射光源與光敏接收器件的距離相等并且對稱布置,接收的是透射光,這種方法可較好地反映出心律的時間關系。因此本系統采用了指套式的透射型光電傳感器, 實現了光電隔離,減少了對后級模擬電路的干擾。結構如圖3.2所示。 圖3.2 透射式光電傳感器 3.2.3 光電傳感器檢測原理 檢測原理是: 隨著心臟的搏動,人體組織半透明度隨之改變:當血液送到人體組織時,組織的半透明度減小,當血液流回心臟,組織半透明度則增大;這種現象在人體組織較薄的手指尖、耳垂等部位最為明顯。因此本設計將紅外發光二極管產生的紅外線照射到人體的手指部位,經過手指組織的反射和衰減由裝在該部位旁邊的光敏三管來接收其透射光并把它轉換成電信號。由于手指動脈血在血液循環過程中呈周期性的脈動變化,所以它對光的反射和衰減也是周期性脈動的, 于是紅外接收三極管輸出信號的變化也就反映了動脈血的脈動變化。故只要把此電信號轉換成脈沖并進行整形、計數和顯示,即可實時的測出脈搏的次數。 3.2.4信號采集電路 圖3.3是脈搏信號的采集電路,U3是紅外發射和接收裝置,由于紅外發射二極管中的電流越大,發射角度越小,產生的發射強度就越大,所以對R21阻值的選取要求較高。R21選擇270Ω同時也是基于紅外接收三極管感應紅外光靈敏度考慮的。R21過大,通過紅外發射二極管的電流偏小,紅外接收三極管無法區別有脈搏和無脈搏時的信號。反之,R21過小,通過的電流偏大,紅外接收三極管也不能準確地辨別有脈搏和無脈搏時的信號。當手指離開傳感器或檢測到較強的干擾光線時,輸入端的直流電壓會出現很大變化,為了使它不致泄露到U2B輸入端而造成錯誤指示,用C8、C9串聯組成的雙極性耦合電容把它隔斷。當手指處于測量位置時,會出現二種情況:一是無脈期。雖然手指遮擋了紅外發射二極管發射的紅外光,但是由于紅外接收三極管中存在暗電流,會造成輸出電壓略低。二是有脈期。當有跳動的脈搏時,血脈使手指透光性變差,紅外接收三極管中的暗電流減小,輸出電壓上升。但該傳感器輸出信號的頻率很低,如當脈搏只有為50次/分鐘時,只有0.78Hz,200次/分鐘時也只有3.33Hz,因此信號首先經R22、C10濾波以濾除高頻干擾,再由耦合電容C8、C9加到線性放大輸入端。 圖3.3 信號采集電路 3.3信號放大整形 3.3.1脈搏信號介紹 由于光電傳感器所輸出的信號波源強度比較弱,且為類似于正弦波波形,如圖3.4所示,所以對信號進行放大整形處理,使其以較強方波形式輸出。 圖3.4 脈搏仿真信號正弦波 3.3.2 放大整形電路 圖3.5 放大整形電路 圖3.6為正弦信號通過放大整形電路之后得到的方型波。 圖3.6整形后的方波 圖3.7為脈搏信號在放大整形前后的對比。 圖3.7 脈搏信號對比 3.4單片機處理電路 如圖3.8所示,本部分運用了ATMEL公司的89C51單片機作為核心元件,在這里運用單片機能更快更準確地對數據進行運算,而且可以根據實際情況進行 編程,所用外圍元件少,輕巧省電,故障率低。 來自傳感和整形輸出電路的脈沖電平輸入單片機89C51的P3.5/T1引腳,單片機設為下降沿中斷觸發模式,故每次脈沖下降沿到達時觸發單片機產生中斷并進行計時,來一個脈沖脈搏次數就加一;定時器中斷主要完成十秒鐘的定時功能。單片機對十秒鐘內的脈沖次數進行累加并進行計算得出所測人一分鐘的脈搏次數,通過P0、P2口把測量過程和結果送到數碼管顯示出來。 圖3.8 單片機處理電路 3.5 顯示電路 3.5.1 LED 的綜述 在單片機的應用系統中,為了便于人們觀察和監視單片機的運行情況,常常 需要用顯示器顯示運行的中間結果、狀態等信息,因此顯示器也是不可缺少的外 部設備之一。顯示器的種類很多,從液晶顯示、發光二極管顯示到CRT 顯示器, 都可以與微機配接。在單片機應用系統中常用的顯示器主要有發光二極管數碼顯 示器,簡稱LED 顯示器。LED 顯示器具有耗電省、成本低廉、配置簡單靈活、安裝方便、耐振動、壽命長等優點。但顯示內容有限,不能顯示圖形,因而其應用有局限性。 如圖3.9為共陰極數碼管結構。 圖3.9 共陰極數碼管結構 3.5.2 LED數碼管的顯示方法 靜態顯示方式是指當顯示器顯示某一字符時,發光二極管的位選始終被選中。在這種顯示方式下,每一個LED數碼管顯示器都需要一個8位的輸出口進行控制。由于單片機本身提供的I/O口有限,實際使用中,通常通過擴展I/O口的形式解決輸出口數量不足的問題。靜態顯示主要的優點是顯示穩定,在發光二極管導通電流一定的情況下顯示器的亮度大,系統運行過程中,在需要更新顯示內容時,CPU才去執行顯示更新子程序,這樣既節約了CPU的時間,又提高了CPU的工作效率。其不足之處是占用硬件資源較多,每個LED數碼管需要獨占8條輸出線。隨著顯示器位數的增加,需要的I/O口線也將增加。 動態顯示方式是指一位一位地輪流點亮每位顯示器(稱為掃描),即每個數碼管的位選被輪流選中,多個數碼管公用一組段選,段選數據僅對位選選中的數碼管有效。對于每一位顯示器來說,每隔一段時間點亮一次。顯示器的亮度既與導通電流有關,也與點亮時間和間隔時間的比例有關。通過調整電流和時間參數,可以既保證亮度,又保證顯示。若顯示器的位數不大于8位,則顯示器的公共端只需一個8位I/O口進行動態掃描(稱為掃描口),控制每位顯示器所顯示的字形也需一個8位口(稱為段碼輸出)。 通過比較,我們可以發現LED動態顯示更加適合本設計,所以就采用此方法。 圖3.10 數碼管顯示電路 3.5.3 74LS246介紹 74LS245是我們常用的芯片,用來驅動LED或者其他的設備,它是8路同向三態雙向總線收發器(如圖3.11),可雙向傳輸數據。 圖3.11 74LS246結構圖 74LS245還具有雙向三態功能,既可以輸出,也可以輸入數據。 當8051單片機的P0口總線負載達到或超過P0最大負載能力時,必須接入74LS245等總線驅動器。 當片選端/CE低電平有效時,DIR=“0”,信號由B向A傳輸; DIR=“1”,信號由A向B傳輸;當CE為高電平時,A、B均為高阻態。 由于P2口始終輸出地址的高8位,接口時74LS245的三態控制端1G和2G接地,P2口與驅動器輸入線對應相連。P0口與74LS245輸入端相連,E端接地,保證數據線暢通。8051的/RD和/PSEN相與后接DIR,使得RD且PSEN有效時,74LS245輸入(P0.1←D1),其它時間處于輸出(P0.1→D1)。
3.5.4 脈搏測量儀電路原理圖 圖 3.12 電路原理圖
4 軟件系統4.1 主程序流程: 系統主程序控制單片機系統按預定的操作方式運行, 它是單片機系統程序的框架。系統上電后,對系統進行初始化。初始化程序主要完成對單片機內專用寄存器、定時器工作方式及各端口的工作狀態的設定。系統初始化之后, 進行定時器中斷、外部中斷、顯示等工作,不同的外部硬件控制不同的子程序。流程如圖4.1所示。
圖 4.1 主程序流程圖 4.2 定時器中斷程序流程: 定時器中斷服務程序由十秒鐘鐘計時、按鍵檢測、有無測試信號判斷等部分組成。當定時器中斷開始執行后,對十秒鐘開始計時,50ms計時到之后繼續檢測下50ms,直到10s到了再停止并保存測得的脈搏次數。同時可以對按鍵進行檢測,只要復位測試值就可以重新開始測試。主要完成一分鐘的定時功能和保存測得的脈搏次數。流程如圖4.2所示。 圖 4.2 定時器中斷程序流程圖 定時器中斷子程序: - IE=0x8A;
- TMOD=0x51;
- TH0=(65536-50000)/256;
- TL0=(65536-50000)%256;
- while (1)
- {
- if(K1==0)
- {
- Delay(10);
- if (K1==0)
- {
- TR1=TR0=1;
- }
- }
- else
- {
- for(i=0;i<5;i++)
- {
- P2=DSY_BIT[i];
- P0=DSY_CODE[Disp_Buffer[i]];
- Delay(2);
- }
- }
- }
復制代碼
4.3 INT中斷程序流程: 外部中斷服務程序完成對外部信號的測量和計算。外部中斷采用邊沿觸發的方式,當處于測量狀態的時候,來一個脈沖脈搏次數就加一,由單片機內部定時器控制十秒鐘,并通過計算得出一分鐘內的脈搏次數。流程如圖4.3所示。
圖 4.3 INT中斷程序流程圖
外部下降沿觸發子程序: IE=0x8A; TMOD=0x51; TH0=(65536-50000)/256; TL0=(65536-50000)%256; while (1) { if(K1==0) { Delay(10); if (K1==0) { TR1=TR0=1; } }
Tmp=TH1*256+TL1; 4.4 顯示程序流程: 顯示程序包括顯示上次的脈搏次數、本次測量中的時間和脈搏的次數。從中斷程序中取得結果后,先顯示上次的脈搏次數,經過10ms的延時后再顯示測試中的脈搏次數,再經過10ms的延時顯示測試中的時間。流程如圖4.4所示。
圖 4.4 顯示程序流程圖 顯示子程序: Tmp=TH1*256+TL1; Disp_Buffer[4]=Tmp*6/10000; Disp_Buffer[3]=Tmp*6/1000%10; Disp_Buffer[2]=Tmp*6/100%10; Disp_Buffer[1]=Tmp*6%100/10; Disp_Buffer[0]=Tmp*6%10; TH1=TL1=0;
4.5 軟件說明 本程序采用C語言,程序的可讀性非常好。 程序中對前一次測量的脈搏數據進行了自動保存,并且用數碼顯示。 程序在執行過程若發現有干擾則忽略該干擾而不顯示,進一步減少讀入數據的誤差。
5 抗干擾措施及使用方法5.1抗干擾措施 為了提高測量儀的精確度,系統首先要解決的是硬件方面的干擾問題。光電式脈搏測量儀的測量過程中,前端測量到的脈搏信號十分微弱,容易受到外界環境干擾,其中主要的干擾源有測量環境光干擾、電磁干擾、測量運動噪聲。 5.1.1環境光對脈搏傳感器測量的影響 在光電式脈搏傳感器中,光敏器件接收到的光信號不僅包含脈搏信息的透射光的信號,而且包含測量環境下的背景光信號,由于動脈波動引起的光強變化比背景光的變化微弱得多,因此在測量過程當中要保持測量背景光的恒定,減少背景光的干擾。 測量環境下的背景光包含環境光和在測量過程中引起的二次反射光。為了減少環境光對脈搏信號測量的影響,同時考慮到傳感器使用的方便性,采用密封的指套式包裝方式,整個外殼采用不透光的介質和顏色,盡量減小外界環境光的影響,為了避免測量過程中的二次反射光的影響,在指套式傳感器的內層表面涂上一層吸光材料,這樣能有效減少二次反射光的干擾。 加上指套式外殼后的脈搏傳感器測量到的脈搏波形比較平滑。這是因為加指套式的脈搏傳感器中環境光在測量過程中基本不受外界環境光的影響,而且能夠有效減少二次反射光,使照射到手指上的光波長單一,所以得到的脈搏信號較為穩定,沒有明顯的重疊雜波信號,能夠很好的體現出脈搏波形的特征。 5.1.2電磁干擾對脈搏傳感器的影響 通過光電轉換得到的包含脈搏信息的電信號一般比較微弱,容易受到外界電磁信號的干擾,在傳統的光電式脈搏傳感器電路中,由于光敏器件和放大電路是分離的,那么在信號的傳遞過程就很容易受到外界電磁干擾,通常在一級放大電路采用電磁屏蔽的方式來消除電磁干擾。本系統采用了新型的光敏器件,在芯片內部集成光敏器和一級放大電路,有效地抑制了外界電磁信號對原始脈搏信號的干擾。 工頻干擾是電路中最常見的干擾,脈搏信號變化緩慢,特別容易受到工頻信號的干擾,因此對工頻信號干擾的抑制是保證脈搏信號測量精度的主要措施之一。通常脈搏信號的頻率范圍在0.3-30Hz之間,小于工頻50Hz,因此通過低通濾波器可以有效濾除工頻干擾,這在信號調理電路中容易實現;同時可以在控制電路中對光源進行脈沖調制,這樣不但能夠降低系統的功耗,而且能夠在一定程度上減小外界的電磁干擾,在脈搏信號數據采集后,可以通過數據處理法方法進一步濾除工頻信號的干擾。 5.1.3 測量過程中運動噪聲的影響 測量過程當中,通常情況下手指和光電式脈搏傳感器可能產生相對的運動,這樣對脈搏測量產生誤差,可以通過2個方面減少運動噪聲誤差:一是改善指套式傳感器的機械抗運動性,比如說使指套能夠更緊的套在手指上,不易松動;二是從脈搏信號處理的角度,通過算法來減小誤差。對于傳感器的設計,現在采用的主要是第一個途徑。 5.2測量儀使用方法 測量儀通電后,數碼管全部顯示0。把手輕輕置于右下角的傳感器中,以稍微有壓迫感為宜,這時很快就可以看到紅色發光二極管會伴隨你的脈搏而閃爍,讓你直觀的看到自己脈搏跳動的速度,按下復位鍵后單片機和顯示部分開始工作,單片機立刻開始計數,同時數碼管顯示出你的心率,非常方便。如果偶爾出現不穩的情況,請按復位鍵對系統進行復位。
6 系統調試根據系統設計方案,本系統的調試可分為兩大部分:模擬部分和純MCU部分。由于在系統設計中采用模塊化設計,所以方便了對各電路功能模塊的逐級測試。斷開兩部分的連接點,先調試MCU部分。試著輸入一系列脈沖(用適當的電阻接正極,間斷性地輸入),觀察MCU部分能是否能顯示;模擬部分用不透明的筆在紅外發射二極管和接收三級管之間搖擺,借助示波器觀察波形效果如何。單片機軟件先在最小系統板上調試,確保工作正常之后,再與硬件系統聯調。最后將各模塊組合后進行整體測試,使系統的功能得以實現。 (1)放大倍數的增加 傳感器的輸出端經示波器觀察有幅度很小的正弦波,但經整形輸出后檢測到的脈沖還是很弱,在確定電路沒有問題的情況下,加強信號的放大倍數,調整電阻R3和R5的阻值。 (2)時鐘的調試 根據晶體振蕩頻率計算出內部定時器的基本參數,通過運行一段時間可通過秒表來校正后,看時間誤差的量,以這個量為依據改變程序中的內部定時器基本參數,就可使時鐘調準確。 (3) 開機后無顯示 首先檢查交流電源部分,有無交流,若無則可能保險管或變壓器燒壞,如有繼續查直流有無,如無則電源已燒壞,可更換解決。 (4) 顯示正常但經適當運動后測量,脈搏次數沒有增加 可能是前置放大級有問題,可采用更換的辦法判斷并排除。 (5) 進人測量狀態, 但測量值不穩定 主要是光電傳感器受到電磁波等干擾,其次是損壞或有虛焊。 (6) 開機后顯示不正常或按鍵失靈 可查手指擺放的位置或按鍵電路,若無故障則是硬件損壞。
7 總結與展望單片機近20年的飛速發展,儼然已成為計算機發展和應用的一個重要方面。另一方面,單片機應用的重要意義還在于,它從根本上改變了傳統的控制系統設計思想和設計方法。從前必須由模擬電路或數字電路實現的大部分功能,現在已能用單片機通過軟件方法來實現了。這種軟件代替硬件的控制技術也稱為微控制技術,是傳統控制技術的一次革命。而51單片機作為單片機的主流,隨著集成技術的發展,51系列單片機繼承和發展了MCS-51系列的技術特色,有逐漸取而代之之勢。 本設計主要是51單片機在脈搏測試系統中的應用。重點介紹了單片機的最小系統,通過單片機最小系統實現了脈搏的測量系統,由光電傳感器采集到脈沖信號,經過信號的放大、濾波和整形電路將輸出的信號通過單片機的外部中斷獲取并最終在數碼管上顯示。利用單片機自身的定時中斷、外部中斷、計數等功能,不僅能顯示出此次脈搏測量的次數,還能自動儲存這個數據。 本次所設計的測量儀系統實現簡單、功能穩定、使用方便,應用廣泛,具有實際意義。由于時間比較短,同時本人掌握的知識有限,本次設計雖已完成,但其中有很多不足,如程序不夠簡練,電路板不夠美觀,光電傳感器靈敏度不夠高,數碼管顯示部分不夠完美等,同時此次設計的測量儀功能比較單一,沒有如語音系統實現自動讀出脈搏次數等人性化功能,且在設計過程中使用的運放數量也較多,加大了電源管理的復雜度。然而科技的進步勢必會使測量儀的功能日益強大和完善,其應用領域將不斷擴大,將會給我們的生活帶來更多的方便和精彩。 為了更好的進行電脈搏測量儀的設計,在近一個學期的時間里,認真收集有關資料,并做相關的整理和閱讀,為這次的設計做好充分的準備。經過這次畢設,我收獲了很多,具體總結如下:(1)通過此次的設計,使我知道了無論做什么事都應該事先做好充分的準備,不應該盲目的只為了完成任務而被動的學習。(2)通過此次的設計,使我了解了脈搏測量儀在國內外發展之迅速、應用領域之廣、市場前景之大。(3)通過此次的設計,使我對硬件設計和各模塊的功能有了更深的了解,同時提高了動手能力。(4)通過次次的設計,使我體會到堅持不懈的毅力對完成一件事情起著巨大的作用。(5)通過此次的設計,使我深刻的體會到團隊合作精神的重要性及相互討論過程中的樂趣。
致謝 四年大學生活即將結束,在這四年中,我收獲了知識,收獲了友誼,更收獲了為人處事的道理。感謝學校為我提供了自我發揮的舞臺,我在這里盡情展現自己的才能。在這個大家庭里,我和其他的同學共同生活,共同學習。 其實生活的道路一直不是這么平坦的,在前進的道路上,我遇到了很多的困難和挫折,但是憑借著自己的毅力和周圍老師、同學的幫助,我最終都努力地克服了。 感謝學院、分院的各級領導,為我們創造的良好的學習氛圍,感謝各位老師和我的朋友,以及08電氣二班的各位同學們,你們的關心與幫助使我能夠更好地成長。 感謝我的各位專業授課老師,正是你們的辛勤工作,使我對本專業產生了濃厚的興趣,而且學到了很多的知識,掌握了很多的方法。你們的諄諄教誨使我有志于在本專業繼續深造。 感謝我的畢業設計指導老師楊波老師,您的指導和教誨將我領進了單片機這一扇大門。您嚴謹的教學態度、樂觀的生活態度深深地影響著我,是您細心認真地指導我的畢業設計,指出我的不足之處,以使我及時修改更正。 父母是我生命中最重要的人,我今天取得的成績與他們為我的付出是分不開的。他們一如既往的支持,是我前進的最大動力,是我成功的基石,感謝你們多年來為我的付出。
單片機源程序如下:
- #include <reg51.h>
- #define uchar unsigned char
- #define uint unsigned int
- uchar code DSY_CODE[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};
- uchar Disp_Buffer[]={0,0,0,0,0};
- uchar code DSY_BIT[]={0xFE,0xFD,0xFB,0xF7,0xEF};
- uchar Count=0;
- sbit K1=P1^0;
- void Delay(uchar x)
- {
- uchar i;
- while (x--) for (i=0;i<120;i++);
- }
- void main()
- {
- uchar i;
- IE=0x8A;
- TMOD=0x51;
- TH0=(65536-50000)/256;
- TL0=(65536-50000)%256;
- while (1)
- {
- if(K1==0)
- {
- Delay(10);
- if (K1==0)
- {
- TR1=TR0=1;
- }
- }
- else
- {
- for(i=0;i<5;i++)
- {
- P2=DSY_BIT[i];
- P0=DSY_CODE[Disp_Buffer[i]];
- Delay(2);
- }
- }
- }
- }
- void INT_T0() interrupt 1
- {
- uint Tmp;
- TH0=(65536-50000)/256;
- TL0=(65536-50000)%256;
- if(++Count==200)
- {
- TR1=TR0=0;
- Count=0;
- Tmp=TH1*256+TL1;
- ……………………
- …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
完整的Word格式文檔51黑下載地址:
基于單片機的脈搏測量儀(參考論文).doc
(821.5 KB, 下載次數: 34)
2018-4-13 12:54 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|