湖北民族學院信息工程學院 王 毅 楊 志 黃曉英 聶云浩 徐 建
基于STM32單片機的人體心率采集系統
湖北民族學院信息工程學院 王 毅 楊 志 黃曉英 聶云浩 徐 建
針對目前便攜式人體心率采集系統的研究,本文提出了一種通過搭建以STM32ZET6為控制核心,以脈搏傳感器SON1205為外部檢測模塊,通過C語言在KEIL5編程軟件下,設計心率檢測算法來實現對人體心率的檢測,本系統還能夠通過無線傳輸模塊NRF2401實現將采集到的人體心率等信息進行實時的傳輸,從而可以實現一種遠程監控,同時,系統還能夠將檢測到的人體心率通過液晶模塊顯示。實驗表明,該系統工作穩定,誤差較小,數據傳輸正常,能夠達到我們整套系統的要求。
心率采集;STM32;脈搏傳感器;NRF2401
隨著現代社會的不斷的發展以及人們生活水平的不斷提高,人們對自己健康的在意度也在不斷的加強,可是快速化的生活規律迫使人們沒有更多的時間好好的監控自己的身體狀況。同時大多數的孤巢老人身邊沒有子女的監護,一旦發生了任何的意外情況,所有人都只能鞭長莫及,無能為力。因此如何得到一套能夠十分便攜又可以遠程監控的心率采集統[1],是十分重要的。
改革開放以來,在無數前輩們的努力下,中國的科技有了快速的發展,小型化、集成化的MCU不斷的進入中國市場,從而使更多的電子器件進入普通百姓家中成為了可能。醫院雖然有高精度的心電測量儀,但是很多都是有線檢測,這在一定的程度上限制的病人的自由活動的空間,并且需要讓病人經常在醫院與家庭之間長期奔波。同時高精度的測量儀價格昂貴、笨重,無法進入普通百姓家,也無法進行隨身攜帶。
STM32單片機開發成本低廉,我們只需要在上面運行我們用C語言編寫的心率檢測算法結合我們所搭建的外圍電路模塊就能實現人體的心率采集,以及心率傳輸,操作簡單方便。
系統通過脈搏檢測模塊來感知人體心率的變化[2],將人體心率的變化通過方波的形式輸出,然后通過放大電路將方波信號進行放大至系統的MCU能夠檢測的幅度,最后將處理好的信號接到MCU的I/ O口送給MCU,讓MCU運行心率檢測算法進而得出此時人體的心率,MCU得到心率后通過液晶顯示,同時系統的MCU還利用無線傳輸模塊NRF2401將數據發送至遠程監護端,實現數據的遠程監護。
本系統的總體設計圖如圖1所示。
系統硬件電路采用的是模塊化的設計,按照系統結構組成,硬件結構相應的分為脈搏檢測模塊、顯示模塊、無線傳輸模塊。
2.1脈搏檢測模塊
人體心率檢測系統最為關鍵的一步就是獲取人體的心率,我們只有檢測到心率后,才能運行心率檢測算法得出人體的心率。在本套系統中我們使用的是模塊化的脈搏檢測器SON1205。它能夠將人體微弱的心率信號經過采集放大后輸出標準的方波信號。
脈搏檢測器電路圖如圖2所示。

圖1 系統總體設計圖
2.2顯示模塊
顯示模塊我們使用的是正點原子官方提供的TFT3.5寸的液晶顯示屏,通過寬大液晶顯示,能夠實現友好的人際界面交互,將檢測到的信息實時的顯示,同時根據檢測的結果給出一定的合理化的保健建議 。
2.3無線傳輸模塊
無線傳輸模塊用于將我們采集到的信息傳輸至遠端界面,因此本系統中我們采用的是NRF2401無線傳輸模塊。NRF2401是單片射頻收發芯片,一般工作在2.4~2.5Ghz ISM頻段,芯片內置頻率合成器、功率放大器、晶體震蕩器和調制器等功能的模塊,輸出功率和通信頻段可以通過程序來進行配置。
本套系統的重點是心率檢測算法的設計,只有良好的心率檢測算法,我們所采集到的信息才會誤差較小,從而給我們提供精確的信息。在本套系統中我們利用了STM32的內部資源,外部中斷和內部定時器的使用,我們通過外部中斷來獲取人體心率的變化,通過定時器來設置一個時間閘門,通過計數在這個時間閘門內心率變化的次數,從而通過一定的數據處理得到人體的心率。
如圖3所示為本系統的程序設計圖。

圖2 脈搏檢測器設計圖

圖3 程序設計圖
我們找來三個人對本套系統進行測試,將檢測結果與醫院高精度的心電檢測儀檢測的結果進行比較。
測試結果如表1所示。
從表中我們可以看出,在幾次測試中,數據結果與精密儀器的
結果雖然有一定的誤差,但是誤差是很小的一般都在3~5之間,再者數據傳輸端顯示的結果于檢測端是一樣的說明系統的數據傳輸正常穩定,系統能夠穩定的工作。

表1 系統測試結果
在本套系統中,完成了人體心率的采集與傳輸,通過采集到的結果通過液晶顯示屏給出一定的保健建議,使人們能夠時時刻刻的監護到自己的健康狀況,同時也為“空巢老人”的健康防護起到了一定的防范作用。通過系統的測試,達到了我們所需要的目的。
[1]張迪,吳水才.心電遠程監護系統的研究進展[D].北京:北京大學,2008.
[2]周星馳,周樟偉,陶大錦.人體生理信號采集系統[J].電子世界,2012(04).