隨著現在社會的發展,人們也日益開始關注健康事業的發展,對醫學技術的要求也越來越高。現實中很多病例無法通過現實病例學習,更多的醫生培養只能通過模擬設備進行,心電波形模擬波形發生系統的設計就是其中一個例子。
心電模擬發生系統使用4種不同頻率的標準心電波形及用于測試的方波、鋸齒波、三角波和正弦波,通過算法擬合出病人的34種異常心電波形(包括成人和兒童的),各周期波形可采用插入不同的延時子程序來實現。提取醫院病人的異常心電波形,通過擬合的方法可以模擬和轉換除顫后的正常波形,依據此方法設計出一個心電信號發生系統,系統可以采集、模擬任意導聯心電信號,并將結果存儲到心電數據庫供研究分析使用。最后設計出一種用微控制器和波形輸出以及鍵盤轉換電路構成的心電模擬波形發生器。
1 系統設計
心電模擬波形系統主要以ARM9處理單元為核心,另外還有高壓除顫采集電路、D/A轉換模塊、波形輸出電路、鍵盤接口電路與監護儀信號匹配以及應用程序的設計等幾個部分。
ARM微處理器是一種高性能、低功耗的32位微處器,它被廣泛應用于嵌入式系統中。ARM9代表了ARM公司主流的處理器,已經在手持電話、機頂盒、數碼像機、GPS、個人數字助理以及因特網設備等方面有了廣泛的應用。
本系統采用的ARM9嵌入式開發平臺,主要利用ARM9豐富的I/O資源和快速處理的強大功能。ARM9處理器的主要結構及其特點如下:
(1)32 b定點RISC處理器,改進型ARM/Thumb代碼交織,增強性乘法器設計。支持實時(real-TIme)調試。
(2)片內指令和數據SRAM,而且指令和數據的存儲器容量可調。
(3)片內指令和數據高速緩沖器(cache)容量從4 KB~1 MB。
(4)設置保護單元(protcction unit),非常適合嵌入式應用中對存儲器進行分段和保護。
(5)采用AMBA AHB總線接口,為外設提供統一的地址和數據總線。
(6)支持外部協處理器,指令和數據總線有簡單的握手信令支持。
(7)支持標準基本邏輯單元掃描測試方法學,而且支持BIST(built-in-self-test)。
(8)支持嵌入式跟蹤宏單元,支持實時跟蹤指令和數據。
新一代的ARM9處理器通過全新的設計,采用更多的晶體管,能夠達到高于ARM7處理器兩倍以上的處理能力。這種處理能力的提高是通過增加時鐘頻率和減少指令執行周期實現的。
2 硬件電路和原理
該部分主要分為ARM9硬件平臺、D/A轉換、波形輸出電路、信號的采集以及右腳驅動電路的共模負反饋電路。系統在ARM9處理單元的控制下,D/A轉換電路把波形數據轉換為模擬量進行輸出。當接收到高壓除顫信號后,處理器就會把異常心電波形采集轉換成為正常的心電波形圖。
系統硬件連接圖如圖1所示。
2.1 D/A轉換原理
心電模擬信號就必須通過采樣量化為數字量并將其存儲在數據存儲器內,供軟件進行分析使用。這個過程必須通過AD轉換器來實現。有數字量轉化為模擬量的D/A轉換模式:
(1)采用D/A轉換芯片;
(2)采用PWM方式,即脈寬調制;
(3)采用f-v方式,即頻率電壓轉換。
通過對心電圖信號波形的分析可知,波形變化周期大約是1 s,因此采用頻率電壓轉換方式已經具備足夠的數模轉換精度,頻率轉換指標也滿足要求,而且該方式所用硬件少,一般都是用軟件來實現的。
該部分是系統的核心,為了實現數字系統對這些電模擬量進行檢測、運算和控制,需要一個模擬量與數字量之間的相互轉換的過程,即常常需要將數字量轉換成模擬量,簡稱D/A轉換,完成這種轉換的電路為數模轉換器(Digital to Analog Converter,DAC)。
為了保證系統的穩定和信號的要求,D/A轉換芯片采用8位并行的DAC0832芯片,由12 V單電源供電,每個DAC有各自獨立的基準輸入。? DAC0832芯片結構框圖如圖2所示。
芯片內有一個8位DAC寄存器,形成兩級緩沖方式,這樣可使DAC在轉換輸出前一個數據的同時,采集下一個數據并送到8位輸入寄存器,以提高D/A的轉換速度。更重要的是,能夠在多個轉換器分時進行D/A轉換時,可以同時輸出模擬信號,使多個轉換器并聯工作,以增加轉換位數,達到提高轉換精度目的。考慮到要采用三路D/A,如果每一路獨占8個I/O端口,再加上若干控制端口,處理器提供的I/O端口數遠不能滿足要求。所以計劃采用共用數據端口,外接I/O口片選的方式來實現。這樣可以節約16個I/O口,也滿足了信號輸出同步性的要求。 2.2 信號采集電路
根據除顫高壓發生器的要求,當有高壓放電信號時,由于高壓除顫信號具有的放電電流具有雙向性,并且是在5ms時間內將電壓由12 V直流電壓轉換為4 000 V以上的高壓,使電容容量達到較高的程度,所以在安全性能上要充分考慮。
由除顫的高壓特性可以知道,除顫高壓發生器采用單端正激式升壓控制模式,除顫高壓有兩個明顯的特性:
(1)變壓比較大,由12 V直接升到4 000 V以上;
(2)對充電速度要求也比較高。
正激式變換優點是電路比較簡單,工作穩定,可靠性高,不存在由于電路不平衡造成的偏飽和問題。
2.3 波形輸出電路
選擇4個不同心率的正常心電波形作為信號源,模擬輸出Ⅰ,Ⅱ,Ⅲ,aVR,aVL,aVF心電信號。設探測電極在左上肢(LA)、右上肢(RA)、左下肢(LL)各點的電位分別為VL,VR,VF。
標準肢體導聯關系式如下:
威爾遜中心電端電壓為0,故有:
2.4 右腿驅動電路
右腿驅動電路是將采集到的心電信號進行反向放大,傳到右腿驅動電極,對共模干擾信號來說這是個負反饋,因此可有效地削弱人體上感應的共模干擾信號,以達到較強抑制頻率干擾的目的,采用右腿驅動,還可以使干擾電壓降到1%以下,能夠很好地達到所要求的效果。
3 系統軟件
系統軟件設計主要是在嵌入式Linux硬件平臺的基礎上完成的。系統軟件主要有主程序和產生的各種波形的子程序構成以及系統硬件驅動程序的編寫。主程序主要是對各個子程序的調用和組織,使整個系統能夠有序運行。驅動程序是為了能讓系統內核和系統之間的接口正常運行的。軟件也配合硬件電路進行心電采集、傳輸和模擬等。
3.1 應用程序的設計界面
軟件開發工作主要涉及界面程序的開發。界面程序的編寫主要是用Qt來完成的,驅動主要是用C編寫的。界面設計是兩種波形同時輸出,反映正常的心電除顫過程。
系統的軟件界面設置框圖如圖3所示。
3.2 系統應用程序設計
嵌入式Linux系統的有代表性的GUI系統主要有MiniGUI,MicroWindows,TIny X以及Qt/Embedded,這些GUI系統在接口定義、體系結構、功能特性等方面存在著很大的差別。而Qt/Embedded延續了Qt的強大功能,可以運行在多種不同的處理器上部署的嵌入式Linux操作系統。Qt/Embedded是著名的Qt庫開發商Trolltech的面向嵌入式系統的Qt版本。這個版本的主要特點是可移植性較好,許多基于Qt的X Window程序可以非常方便地移植到嵌入式系統。
Qt/Embedded以原始Qt為基礎,并做了許多出色的調整以適用于嵌入式環境。Qt/Embedded通過QtAPI與Linux I/O設施直接交互,成為嵌入式Linux端口。同Qt/X11相比,Qt/Embedded很省內存,因為它不需要一個X服務器或是Xlib庫,它在底層摒棄了Xlib,采用framebu-ffer作為底層圖形接口。同時,將外部輸入設備抽象為keyboard和mouse輸入事件。Qt/Embedded的應用程序可以直接寫內核緩沖幀,這避免開發者使用繁瑣Xlib/Server系統。該部分主要分為波形界面實現和用戶按鍵控制的實現。波形顯示采用Qt的函數類庫Qpainter,由于波形界面顯示兩路心電波形,會產生延遲效果,所以引入了多線程機制協調,Qt支持多線程,有獨立于平臺的線程類,線程安全方式的時間傳遞和一個全局Qt允許不同的線程調用Qt方法。
程序實現的流程圖如圖4所示。
4 結語
ARM系列處理器是當今在國內最流行的嵌入式處理器之一。Linux操作系統是一個開源的操作系統,開發人員可以免費獲取Linux內核的源代碼。因此系統設計采用嵌入式Linux操作系統并結合外圍的D/A轉換電路、高壓信號采集、右腿驅動、低通濾波和應用程序控制部分等實現了心電波形模擬發生系統的設計。該系統可以很好地模擬心電除顫的過程,并且輸出符合醫學標準的34種常見異常心率波形,用于正常的醫學教學。
本系統的優點是由于系統使用嵌入式Linux實時多任務操作系統,因此設計具有很高的實時性、穩定性和可靠性,并且可以實時采集顯示心電波形。結合心電除顫的過程以及病人心電波形設計一套心電模擬波形發生系統,極大地方便醫學培訓機構的教學,具有很高的使用價值和廣闊的應用前景。
評論
查看更多