摘 要
隨著日新月異科技發展,在心率體溫測量方面,我們取得了迅速的發展,就近日而言,脈搏測量儀已經在多個領域大展身手,除了在醫學領域有所建樹,在人們的日常生活方面的應用也不斷拓展,如檢疫中心的額溫槍都用到了技術先進的脈搏測量儀。在今年的疫情爆發的同時,我們可以積極應對,利用所學的知識,方便高效地檢測出人體有無異常體溫,在上學簽到時,我們可以利用此來檢測溫度,預防集體性感染事件。為了在心率測量儀的精準性和便攜性方面做出重大改變,我計劃設計一種以51單片機為核心的心率體溫測量儀。我們的心率體溫檢測系統以STC89C51單片機為核心,借用單片機系統的內部計時器計算時間。其大致的步驟為通過ST188光電傳感器感應生成脈沖,心跳次數由單片機累計所得,其對應的時間根據定時器獲取。本設計使用的時候可以展現脈搏心率次數以及時間長短,當其終止使用的時候可以展示總的脈搏心率次數以及時間長短。經過我的個人測試,系統成功運行,符合設計要求。通過軟件與硬件方面的整體調試并進行實驗,得出結論為在技術上可行,預期可以實現功能,準確、快速地完成測量任務。
關鍵詞:心率體溫檢測系統;STC89C51單片機;光電傳感器
1 控制系統設計
1.1 主控系統方案設計
方案一:單片機作為主要的控制芯片,是集成電路的一種,可以單獨完成現代產業所需要的控制功能。單片機外形很小,但是所具備的功能卻是很大的,它將微處理器、儲存器、輸入/輸出接口電路通過導線焊接到板子上,集成到同一片芯片。圖1.1是采用單片機作為本設計的控制部分,該系統主要有單片機、傳感器和顯示器構成。
人體檢測心率脈搏時,通過傳感器采集輸出脈沖信號,傳遞給單片機,單片機經過計算輸出給顯示電路進行顯示。而在液晶顯示屏上的,也就是我們得到的結果。通過得到的結果,來判斷我們是否處于非正常狀態。
圖1.1 基于單片機的心率脈搏檢測系統結構圖
方案二:以TI公司生產的DSP芯片作為核心。SP即數字信號處理器,是一種研究用數字對信號進行分析、轉換、濾波、檢測、調制、解調和高速算法的元件[3]。該系統主要由光電脈搏傳感器、脈搏信號調理電路和DSP實時檢測及處理系統三部分組成[4]。如圖1.2所示,當傳感器采集到人體生理脈搏信號時,信號就會經調理電路傳送到DSP系統中,實現心率脈搏的檢測。
圖1.2 基于DSP的心率脈搏檢測系統結構圖
總之,DSP的運行速度很高,但與之相對應的,是它負責的控制算法。相比而言單片機系統的控制方法相對簡單,可靠性高,價格低,功耗低。雖然單片機與DSP相比功能相對簡單,但完全可以滿足設計要求。因此,綜合個人實際以及現在市面上的元器件花費情況,我們選用單片機作為這次系統研究的主控芯片。
1.2 脈搏傳感器方案設計
傳感器也被稱為換能器、轉換器等。相當于我們身體中的五官,用來感受外界傳遞給我們的信息。
脈搏傳感器是脈搏檢測系統的重要部分。在本次系統設計之前,我花費了大量的精力,通過廣泛的社會調查,結合在大學期間所學習的知識,融匯貫通,研究出了幾套方案,具體如下面三種:
方案一:光電式傳感器。眾所周知,人體血液是一種不透明的液體。光對一般組織的穿透力相對于血液來說,是它的幾十倍。根據這項功能,我將目光放到了光電式傳感器上,使用光電效應手指脈沖傳感器,用它來記錄我們的脈沖信號。在它的內部結構中,我們用光電二極管的來鎖定裝置,其光電效應特性決定了光照強度與電流成正比,光照強度越大,相對應的鎖定電流也就越大。當然有固定的光強范圍。
在元器件所決定的光強范圍中,光電二極管的阻斷電流與光強成正比的線性關系[5]。當脈搏跳動時,人體中的血管體積和光透過血液的散發隨著脈搏的跳動而變化,隨之而對應的,不同強度的光傳遞到光電管的兩極,將會得到不同強度的光流。再由模擬量轉換成數字量,可以得到相對應的數字型號,再將得到的信號分別傳輸到通常用于測脈沖的光電傳感器的紅外對管和紅外放射管。
下面對紅外對管和紅外放射管分別做簡短的功能介紹,兩者相互作用,得到所需的數據資料。
我們首先用手指尖按住紅外對管,因為手指尖易于測量。手指的血液濃度和光頭率會伴隨著心臟的跳動而產生相對應的變化(一定范圍內),相對應的,紅外對管對應的信號也會不停改變。我們可以使用一些常規的處理方法,如放大、濾波、比較等,將采集到的模擬信號轉換成我們所需要的理想的數字信號 。
采用反射式的紅外管。這是目前市面上最主流的傳感器,我們通常都采用這種傳感器來采集信號,因為紅外線管是在手指的同一側接收和傳輸的,所以就可以忽視個體的差異,通常可以適用于大部分用戶。這種傳感器通過接收血液散射反射的光,通過這次的采集方式,我們能夠準確測量血管內部容積的變化。
方案二:壓電式傳感器。目前來說,一次性心電電極是使用最多的,這種傳感器通常采用接扣與敏感區分離的方法,通過這種方式我們能明顯的感受到干擾量的減少,因為人體運動會產生大量干擾,這對傳感器的準確性會產生極大地偏導。在考慮到人的體液會對我們的測量造成極大的干擾,所以我選擇了相對貼合我們實際的電機,我們所采集到的心電信號質量起著很大程度上取決于電極的好壞,我們采用的電極必須要有強大的粘合力,能緊帖在我們所需要的測量的部位[6]。為了在實際應用中統一和比較接收到的脈沖信號,在記錄脈沖信號時,我們對電極的位置、各部分元器件的連接有著極其嚴格的要求。
目前,市場上已開發出一種新型高分子壓電材料聚偏氟乙烯研制的壓電傳感器,作為壓電傳感器,它有著十分優良的特點:他的靈敏度較高,可以精確檢測出數據;在靈敏度較高的情況下,他還能有著十分可觀的頻率范圍;他的結構簡單,易于上手并且使用相比較其他方式來說十分方便。
當手指前端處于接觸狀態時,模擬信號從傳感器中提取出來,轉換為電信號。這樣傳感器通過捕捉手指脈沖的波長,可以得到人體的脈搏信號。
方案三:集成傳感器。當前,集成心電傳感器在市場是數不勝數,相比于其他傳感器,它具有最高的靈敏度,并且它的集成度高,個頭小巧,方便攜帶,它還可以比較直觀地看到心率的變化,其中且已包含了濾波等抗干擾電路,波形經過放大處理后,可以直接應用在單片機之中。它的缺點也十分明顯,就是它的價格非常昂貴,價格是其他傳感器的數十倍,就本次設計來說,考慮到經費以及鍛煉自己的目的,不會輕易選擇使用該型傳感器。
綜上所述,光電式傳感器的實用性,便捷性抗干擾性都要優于壓電式傳感器,并且在價格上碾壓集成傳感器,經多方考慮,本次設計選用了光電式傳感器來進行設計研究。
1.3 系統工作原理
本設計控制器采用 STC89C51單片機,用于實現人體的心率體溫測量系統檢測。我們可以利用光電脈沖傳感器收集人體脈沖和心率的數據。接收到的信號發送至STC89C51進行處理,得到的數據將會在液晶顯示屏上顯示,液晶顯示屏上顯示得到得的脈搏數和溫度。若有異常,顯示屏將會顯示出具體的脈搏溫度,得以提醒人們脈搏或提問異常。心率監測系統設計框圖如圖1.3所示:
圖1.3 心率監測系統設計框圖
日常的測試操作中,我們可以將手指位于傳感器的位置。當心臟跳動收縮時,血管內液體的濃度和流量也會發生變化。當光照射手指組織時,血管中血氧飽和度的變化會導致接收管中接收到的光強度發生變化,這里就呈現出線性正比的聯系,從而使光脈沖和心跳相等。當接收管波長變化時,紅外接收管也隨之變化,電流也隨之波動。此時,紅外接收器可以檢測轉換為脈沖信號的電壓變化。信號在單片機端口經過濾波、放大、成形后發射。單片機在接收到外部中斷信號后執行相應的命令[7]。CPU對輸入的脈沖信號進行處理,將得到的數值進行輸出,輸出的心率數值將會在液晶上面顯示。
2 硬件設計
2.1 主電路
2.1.1 單片機的選擇
此次設計選用單片機當作主控芯片,為了保證系統更好的運行,STC89C51單片機掌握起來更方便,成本低廉,超強的抗干擾性,在系統中可以進行編程,不需要編程器。故本設計采用STC89C51單片機[8]。
基于此有以下兩種方案可供選擇:
方案一:STC89S51單片機作為心率監測系統的CPU是因為其低廉的價格和編程的方便性。雖然STC89S51單片機的功能是有限的,但是對于心率監測系統的功能實現是沒有問題的。
方案二:飛思卡爾公司的嵌入式芯片9S12XS128,這款單片機的最實用的優點就是可以專門計數,這對于我們本系統來說是十分有利的。
最終,在考慮實際應用后,我選擇了STC89S51單片機放棄了嵌入式芯片9S12XS128,嵌入式芯片9S12XS128對比其他的單片機功能齊全,操作也更加簡單,與之相對應的是昂貴的價格。綜合來說,不符合設計心率體溫監測系統的設計初衷[9]。
2.1.2 STC89C51的主要功能及性能參數
此次設計選用的STC89C51單片機,使用COMOS8作為單片機的微處理器,片內具有4KB的Flash存儲器。該設備有40個管腳,速度快,價格便宜,燃錄方便,通過串行口下載,在線編程一般情況下增強型是6時鐘然而普通型是12時鐘;工作頻率范圍在40MHZ以內,和8051的80MHZ以內基本相一致;STC89C1相應的Flash可以劃分成4KB/8KB/15KB;內部存儲器為512B;定時器一共有3個16位;中斷源一共有8個;其不需要專用編程器;通用I/O口一般由32/36個;工作電壓通常情況下為3.8-5.5V;外形封裝可以分為40腳PDIP、44腳PLCC以及PQFP等[10]。
2.1.3 STC89C51單片機引腳說明
圖2.1 STC89C51封裝形式
2.3放大電路
脈沖低通比較器是基于身體脈搏心率運動后跳動次數200次/min來設計的,如圖2.3所示。R6、C6形成了低通濾波器從而能夠消除殘留的影響并決定著截止頻率。運放LM358能夠把信號放大而放大倍數依據R12/R13來決定,低通放大之后輸出的信號是疊加有噪聲的脈動正弦波如圖2.4所示。
圖2.3 低通放大電路
圖2.4 心率脈搏傳感器輸出波形圖
3 軟件設計
3.1編程語言的選擇
再進行編寫的時候,語言的選擇很重要,選擇一門正確的語言可以看起來簡單易懂、加快整個畢設的進程,在對比C語言和匯編語言的優缺點時,C語言具有很大的優勢,例如極大地提升程序的可讀性,研究開發的時間大大縮短,并且,它具有極大地庫文件,為我們的程序編寫提供了巨大的方便。因此選擇C語言[17]。
3.2 Keil程序開發環境
在本設計中,選擇使用Keil軟件、C語言進行編程,在短時間內很容易熟悉掌握其中Keil有以下特點:
(1)Keil軟件在很多的電腦操作系統中都能夠使用,下載方便快捷,提供了豐富的庫函數,并有功能強大的開發工具為之輔助[18]。這是其他軟件所不具有的;
(2)在使用Keil軟件編程的過程中,寫成程序進行編譯的過程中,如有錯誤不能直接的下載,會有提示;
(3)Keil軟件可以配合仿真軟件使用,將編譯好的程序下載到在仿真軟件中,通過仿真軟件可以查看程序的不足之處,方便進行修改;
(4)Keil可以完成許多開發過程,從編輯、編譯到連接和調試。Keil軟件界面如圖3.1所示。
圖3.1 Keil開發界面圖
3.3 STC-ISP程序燒錄軟件介紹
STC-ISP是為STC系列單片機開發的單片機下載編程軟件。它是一個用于下載代碼、在線模擬和顯示串行接口的集成軟件。它是在智能51系列產品開發過程中獲得的。它具有廣泛性和高性能。是目前51系列單片機控制系統研發中不可缺少的一部分[19]。
可以通過下載器下載微控制器程序(即用于串行接口的編程模塊,如CH340)。在連接了MCU開發板、下載程序和PC機之后,首先就是要選定單片機的型號,波特率將根據定時器的初值計算出來,在程序編寫完成且編譯也沒有出現錯誤的時候,在選定的文件夾中會有系統自動存放進去的“Hex”文件,選定好之后,最后單擊程序的下載按鈕即可。具體下載界面如圖3.2所示。
圖3.2 燒錄軟件對話框
3.4 CH340串口程序燒寫模塊介紹
本設計通過CH340串口燒寫模塊實現對單片機程序的燒寫。CH340串口燒寫模塊使用USB接口,十分方便的解決了筆記本電腦用戶對STC系列單片機的程序燒寫問題,本下載器低價格、高性能,是開發STC系列單片機的首選優秀工具。模塊如圖3.3所示。
圖3.3 CH340串口燒寫模塊
4 系統調試
4.1 系統硬件調試
根據選好的元器件,在熟悉掌握每一個引腳之后,要繪制電路圖。在繪制電路圖的過程中,要注意美觀、耐用、走線盡可能地少一些,是電路板看起來不會那么亂。在焊接的過程中,既要有正確的焊接技術,還要保證待焊接面是干凈的,這樣才能保證防止不良焊點的出現。如果待焊接面不干凈,需要將其清理干凈,才可以重新進行焊接。當板子根據原理圖焊接好之后,在對硬件進行調試的時候,首先就要檢查每個元器件的引腳有沒有完全的和板子焊接上或者會出現脫焊、虛連的這種情況,還要根據電路圖仔細檢查一下,看看有沒有漏焊的情況,同時要看需要連接的線路有沒有都連上,特別要注意電源線和地線的連接[20]。以免在通電的時候發生短路,燒毀某些元器件,或者不能正常工作的情況。
當單片機中有程序下載進去時,會發現LCD1602液晶屏沒有光亮,也不顯示任何的數字。如果發生上述的這種情況,不要心急,要逐一的去檢查每個元器件,參照原理圖,使用萬用表進行測量,確定是什么部位錯誤導致的。在萬用表上會有一個蜂鳴器,可以根據蜂鳴器有無聲音來判斷是否有問題[21]。
4.2 系統軟件調試
本設計是基于單片機控制,利用單片機的主程序完成對心率脈搏計的控制,使用的是STC89C51系列,這個系列的單片機應用非常廣泛,編譯語言以C語言為主。本次設計以Keil μVision 4軟件進行編寫。
Keil μVision 4使用的基本方法,首先需要建立一個新的項目,選擇使用的單片機類型,可以編寫一個新的文件,編寫完程序后進行編譯,編譯就是檢測程序是否有錯誤和警告,警告不會影響程序的運行。在編譯程序之后,生成.HEX文件。程序寫入控制芯片STC89C51后,接通電源,電源指示燈亮,系統啟動。當人的手指接觸到光電傳感器時,指示燈亮說明系統開始工作,記錄一分鐘心率脈搏次數,則心率脈搏計工作正常。
文章底部可以獲取博主的聯系方式,獲取源碼、查看詳細的視頻演示,或者了解其他版本的信息。
所有項目都經過了嚴格的測試和完善。對于本系統,我們提供全方位的支持,包括修改時間和標題,以及完整的安裝、部署、運行和調試服務,確保系統能在你的電腦上順利運行。