FPGA在數字式心率計中的電路組成及工作原理
心率計是常用的醫學檢查設備,實時準確的心率測量在病人監控、臨床治療及體育競賽等方面都有著廣泛的應用。心率測量包括瞬時心率測量和平均心率測量。瞬時心率不僅能夠反映心率的快慢。同時能反映心率是否勻齊;平均心率雖只能反映心率的快慢,但記錄方便,因此這兩個參數在測量時都是必要的。
本文引用地址:http://www.j9360.com/article/191224.htm測量心率有模擬和數字兩種方法。模擬方法是在給定的時間間隔內計算R波(或脈搏波)的脈沖個數,然后將脈沖計數乘以一個適當的常數測量心率的。這種方法的缺點是測量誤差較大、元件參數調試困難、可靠性差。數字方法是先測量相鄰R波之間的時間,再將這個時間轉換為每分鐘的心跳數測量心率的。這種方法的優點是測量精度高、可靠性好,并且能同時測量瞬時心率和平均心率。用數字方法測量心率的電路又分為兩種類型:一種是使用一個可預置的計數器實現現除法電路;另一種是通過自動下降的時鐘頻率測量相鄰R波之間的時間。
本心率計在數字式心率計的基礎上,采用FPGA和VHDL語言實現,減少了元器件使用數量,提高了測量精度和可靠性。該電路能夠實時采集并測量人體心跳的瞬時和平均心跳速率,判斷并顯示心率狀態(即心跳是否正常、是否過快或過慢、是否有心率不齊現象)。如果心率過快或過慢或者有心率不齊現象,那么將用不同顏色發光管進行閃爍報警顯示。
1 測量方法及電路組成
1.1 測試方法
如上所述,采用數字方法測量瞬時心率(Intantaneous Heart Rate,IHR)時,先測量兩相鄰R波之間的時間(即心率周期),再將這個心率周期轉換為每分鐘的心跳數。如圖1所示,設心率周期為T秒,則瞬時心率的計算公式為IHR=60/T。如果用頻率為f0的時鐘脈沖作為測量時間基準,在T秒時間內對時鐘脈沖計烽,并設計數值為N,則T=N/f0秒,故瞬時心率的計算公式為IHR=60f0/N。當f0=1kHz時,IHR=60×1000/N=60000/N。
平均心率(Average Heart Rate)的測量是將一定時間內測得的各個瞬時心率求平均值。設測得的瞬時心率為IHR1,IHR2,…,IHRn,則平均心率的計算公式為:
AHR=(IHR1+IHR2+…+IHRn)/n
1.2 電路組成
系統的組成框圖如圖2所示。按下start開關將啟動測量過程,由傳感器獲得的模擬心電信號(R波或脈搏波)經過放大后加到比較器的一個輸入端,與另一個輸入端的參考電壓進行比較,將心電信號轉換為同周期的方波信號,再輸入FPGA進行心率測量。
在FPGA中,波形變換電路首先將這個脈沖寬較寬的方波信號進行微分,轉換為脈沖寬度等于時鐘信號(clk1)一個周期的方波信號,通過周期計數器在心率周期T時間內對時鐘信號計數,再根據前面給出的瞬時心率計算公式做除法運算即可得到瞬時心率。瞬時心率通過譯碼電路轉換為七段顯示代碼后送到FPGA外部的三個LED顯示器上進行顯示。在一次測量結束時,心率計算模塊將測到的各個瞬時心率求平均,得到的平均心率轉換為七段顯示代碼也送到三個LED顯示器進行顯示。
告警控制模塊根據每一個瞬時心率值判斷心率是否正常、是否過快或過慢,并根據相鄰兩個瞬時心率值判斷是否有心率不齊現象,分別以英文字母E(正常)、F或S(過快或過慢)及I(心率不齊)的七段顯示代碼送告警顯示電路中的三個LED顯示器進行顯示,并將這三種心率狀態以8Hz的頻率送到告警顯示電路中顏色分別為綠、紅、黃的三個發光二極管進行閃爍報警顯示。按下stop開關將結束測量過程,并將平均心率送三個LED顯示器進行顯示。
系統的主時鐘頻率為32MHz,送到FPGA中的時鐘分頻電路產生1kHz和8Hz的時鐘頻率,分別送到用作波形變換、瞬時心率計算和心率狀態顯示的波形變換模塊、心率計算模塊和告警控制模塊。系統中的數字電路全部由FPGA芯片實現,外圍只有少量的模擬器件,包括比較器、LED和發光二極管顯示器、電源電路及晶振電路等,因而系統的體積小、工作穩定、可靠性高。
DIY機械鍵盤相關社區:機械鍵盤DIY
評論