隨著社會的發展,人們的醫療保健意識越來越強,所以醫生的培訓也就成為非常重要的環節。心電除顫技術作為醫生培訓的一個主要方面,若操作規范,動作熟練,往往在緊急關頭可以救人于危難之間,在培訓的時候,如果能夠真實地模擬急救除顫的場景,將會起到良好的學習效果。因此,在急救、有創性臨床操作訓練上,醫學模擬教學日益顯示出其成本低、重復性高、教學效率高以及符合醫學倫理要求等優勢。
除顫模擬發生系統可以任意選擇34種狀態(包括成人和兒童兩大類)時也可以連接醫用監護儀,使除顫模擬更加逼真。學員可以進行不同能量的除顫練習,同時這也便于老師檢驗學員的學習效果。
該系統是根據心電圖的有關原理以及監護儀的信號合成原理研制的,嚴格按照醫學的相關規定,產生的波形達到醫學教學的目的。在相關病態心電圖的關鍵點處達到比較逼真的效果,當系統接收到高壓除顫信號以后,根據系統的預設置,進行相應的波形變換。系統可以用于醫療培訓機構的培訓工具,使學員快速掌握心電除顫的方法。該系統與急救模擬人、監護儀配合使用,具有廣闊的市場前景。
本文介紹的心電除顫模擬發生系統是以ARM9為控制核心,充分利用ARM9豐富的I/O資源和強大的處理功能。它采用嵌入式的開發方案,并綜合考慮系統的通用性和使用性,系統輸出信號的幅度為0~5 mV可以連續輸出室性、室上性早搏型號等,還可以產生周期為1 s,脈寬為100 ms,幅度為1 mV的方波。便于對監護儀進行校準,信號均采用三導聯的同步信號輸出。
1 系統結構和設計方案
系統主要包括ARM9中央處理單元、高壓除顫信號采集模塊、D/A轉換模塊,與監護儀信號匹配模塊以及心電波形仿真和數據的提取,應用程序的設計等幾個部分。本系統采用ARM9嵌入式開發平臺,以下是ARM9處理器的主要結構及其特點。
(1)32 b定點RISC處理器,改進型ARM/Thumb代碼交織,增強性乘法器設計,支持實時(real-TIme)調試;
(2)片內指令和數據SRAM,而且指令和數據的存儲器容量可調;
(3)片內指令和數據高速緩沖器(Cache)容量從4 KB~l MB:
(4)設置保護單元(Protoction Unit),非常適合嵌入式應用中對存儲器進行分段和保護;
(5)采用AMBA AHB總線接口,為外設提供統一的地址和數據總線;
(6)支持外部協處理器,指令和數據總線有簡單的握手信令支持;
(7)支持標準基本邏輯單元掃描測試方法;
(8)支持BIST(Built-in-self-test);
(9)支持嵌入式跟蹤宏單元,支持實時跟蹤指令和數據。
心電除顫模擬發生系統總體設計方案,如圖1所示。
2 系統硬件部分設計
該部分主要分為ARM9硬件平臺、D/A轉換、濾波電路、高壓除顫信號的采集,其系統硬件連接圖如圖2所示。系統在ARM9的控制下,由D/A轉換把波形數據轉換為模擬量進行輸出。當接收到高壓采集信號后,處理器就會轉換輸出另一種心電波形圖。
2.1 D/A轉換和電阻衰減網絡
該部分是系統的核心,為了保證系統的穩定和ECG信號的要求,D/A轉換芯片采用8位并行的DAC0832芯片,由12 V單電源供電,每個DAC有各自獨立的基準輸入,對ARM9提供的數據進行變換,輸出部分采用4階巴特沃斯濾波,輸出的波形經衰減后得到所要求的心電信號,經有源濾波后輸出波形的峰值可達到10 V,通過電阻分壓網絡得到0~5 mV的電壓輸出范圍。考慮到要采用三路D/A,如果每一路獨占8個I/O端口,再加上若干控制端口,處理器提供的I/O端口數遠不能滿足要求,所以計劃采用共用數據端口,外接I/O口片選的方式來實現,這樣可以節約16個I/O口,也滿足了信號輸出同步性的要求。
2.2 高壓信號采集電路設計
該部分采集除顫器上的高壓放電信號,由于高壓除顫信號具有的放電電流具有雙向性,且放電時間只有4 ms,瞬態電壓可達到3 000 V,所以在安全性能上要充分考慮。該部分電路圖如圖3所示。
電路中采用大功率電阻和瞬態抑制二極管對高壓放電信號進行預處理,將高壓信號降低到比較小的范圍,通過整流電路把電流變為單向流動,然后通過光耦隔離輸入到ARM9的I/O口中,起到保護處理器的作用。
3 軟件設計
系統的硬件為基本功能和擴展功能的實現奠定了牢固的基礎,軟件系統的設計就是要充分利用硬件平臺的資源,實現軟件操作的有序運行。
軟件開發工作涉及到以下兩個方面:接口驅動程序的修改和完善;應用層軟件的開發。應用層的程序全部用C++開發完成的。
圖4是整個系統的軟件模塊結構圖。
3.1 D/A驅動程序和高壓信號采集驅動部分
設備驅動程序是操作系統內核和機器硬件之間的接口。設備驅動程序為應用程序屏蔽了硬件的細節,這樣在應用程序看來,硬件設備只是一個設備文件,應用程序可以像操作普通文件一樣對硬件設備進行操作,以往在開發應用程序時都有一個main函數作為程序的入口點,而在驅動開發時卻沒有main函數,模塊在調用insmod命令時被加載,此時的入口點是init module函數,通常在該函數中完成沒備的注冊。同樣,模塊在調用rmmod函數時被卸載,此時的入口點是cleanup module函數,在該函數中完成設備的卸載。在設備完成注冊加載之后,用戶的應用程序就可以對該設備進行一定的操作,如read,write等,而驅動程序就是用于實現這些操作,在用戶應用程序調用相應入口函數時執行相關的操作,init roodule入口點函數則不需要完成其他如read,write之類功能。
驅動程序主要函數如下:
3.2 系統應用程序設計與實現
該系統的應用程序是基于Qt/Embedded設計的,目前使用的嵌入式GUI系統存在Microwindows,MiniGUI,Qt/Embedded,Qt/Embedded延續了Qt的強大功能,可以運行在多種不同的處理器上部署的嵌入式Linux操作系統。Qt/Embedded提供了信號和插槽的編程機制,該部分采用的Qt是一個創建GUI程序的C++類庫,編寫Qt應用程序的主要工作是基于已有的Qt類編寫用戶類。該部分主要分為波形界面的實現和用戶按鍵控制的實現,波形顯示采用Qt的函數類庫Qpainter,由于波形界面顯示兩路心電波形,會產生延遲效果,所以引入了多線程機制協調,Qt支持多線程,有獨立于平臺的線程類,線程安全方式的時間傳遞和一個全局Qt庫互斥量允許不同的線程調用Qt方法。
4 結語
本系統設計采用三星2440嵌入式處理器作為核心搭建了硬件平臺,并采用嵌入式Linux操作系統并結合外圍的D/A轉換部分、與監護儀匹配網絡、高壓信號采集部分、應用程序控制部分等實現了心電除顫模擬發生系統的設計。該系統可以很好地模擬醫學除顫的過程,并可以與醫用監護儀相連接,輸出符合醫學標準的34種常見異常心率波形,由于系統使用嵌入式實時多任務操作系統,因此該設計具有很高的實時性、穩定性和可靠性。
上一篇:基于ARM9的媒體播放器設計
下一篇:基于ARM的海底大地電磁信號采集系統改進
推薦閱讀
史海拾趣
Appointech Inc公司,自創立之初就致力于提供創新的電子解決方案。在公司成立的早期階段,團隊憑借對電子技術的深刻理解和對市場需求的敏銳洞察,開發出了一系列具有競爭力的產品。這些產品不僅滿足了客戶的實際需求,也為公司贏得了初步的聲譽和市場份額。
作為一家有社會責任感的企業,睿赫公司始終關注環境保護和可持續發展。公司在產品研發和生產過程中,積極采用環保材料和綠色生產工藝,減少對環境的影響。同時,公司還積極參與公益事業,為社會做出了積極的貢獻。
在可持續發展方面,睿赫公司致力于推動電子行業的綠色化和智能化發展。公司不斷加強技術研發和創新,推出了一系列符合環保要求和高性能要求的產品,為電子行業的可持續發展做出了積極的貢獻。
90年代初,電子行業的競爭日益激烈,Bomar公司為了保持市場領先地位,開始尋求與全球優秀制造商的合作。在這一背景下,公司與一些精選的亞洲工廠建立了密切的合作關系。這些工廠按照Bomar公司的規格和標準進行生產,確保了產品質量的穩定性和一致性。通過與亞洲工廠的合作,Bomar公司成功降低了生產成本,提高了生產效率,進一步鞏固了其在全球市場的地位。
Dino-Lite公司自創立之初,就專注于數字顯微鏡技術的研發與創新。公司研發團隊不斷探索新技術,將傳統顯微鏡與現代數字技術相結合,成功推出了一系列高性能、易用性強的Dino-Lite數字顯微鏡產品。這些產品以其高清畫質、便捷操作和廣泛適用性,迅速贏得了市場的認可。
隨著技術的不斷進步,Dino-Lite公司不斷推出新產品,滿足了不同行業對數字顯微鏡的需求。例如,公司針對醫療領域推出了高分辨率、低光環境下的專業顯微鏡,為醫療診斷和治療提供了有力支持;同時,針對教育行業推出了性價比高的入門級產品,讓更多的學生和老師能夠接觸和使用到先進的顯微鏡技術。
Dino-Lite公司在發展過程中,始終注重市場拓展和合作伙伴關系的建立。公司與多家知名企業建立了長期穩定的合作關系,共同開拓市場、分享資源。通過與合作伙伴的緊密合作,Dino-Lite公司的產品得以快速進入各個行業領域,并獲得了良好的口碑和市場份額。
此外,Dino-Lite公司還積極參與國際展覽和交流活動,展示公司的最新技術和產品。這些活動不僅提高了公司的知名度,也為公司帶來了更多的商業機會和合作伙伴。
AT89S52單片機內置看門狗,啟動看門狗只需對位兩址寫以下內容mov 0a6h,#01ehmov 0a6h,#0e1h看門狗一旦啟動,將無法關閉,必需在8191個時鐘周期內重置mov 0a6h,#01ehmov 0a6h,#0e1h否則會引起系統復位,而且那兩字節內容寫其它值是無效的… 查看全部問答∨ |
|
如圖 convert mdl to vhdl無法出現,不知道是什么原因。我用的是dsp builder8.0 和 MATLAB7.0 。 dsp builder8.0的license文件已經全部復制到quartus II的license文件里了。 謝謝各位高手了,我在做畢設《基于quartus II的DDS設計》,導師突然要 ...… 查看全部問答∨ |
最近用ModelSim進行VHDL代碼的功能仿真,3秒的runtime居然要花將近20分鐘才能仿真完。有沒有什么選項設置可以讓仿真更快一點?還是說是我的設計上有問題才導致那么慢?還是因為電腦配置不行? 有大蝦有高招嗎?… 查看全部問答∨ |
有兩個問題: 1 做WIFI驅動要進行大量的測試,微軟提供了CETK測試工具很方便,但Linux平臺上沒有找到合適的測試工具,不知大家在linux上都用什么工具測試WIFI驅動呢? 2 在linux平臺上有沒有比較好用的開源自動化測試框架? … 查看全部問答∨ |
最近做了個小程序,在XP下做成系統服務后可以接受遠端客戶程序的連接。 但是在自己定制的XPE下做成系統服務不能接受連接,做成一個一般的應用程序(帶個簡單的窗口)就可以接受連接。 我在XPE下打開控制面板里的管理工具,里面什么都沒有。 想請 ...… 查看全部問答∨ |
PB在一次非法關機之后就無法打開我的工程了,一打開工程就彈出C++ RUNTIME LIBRARY 的錯誤 RUNTIME ERROR!!! … 查看全部問答∨ |
我在學習httpdisk源碼中,把網絡接收的數據先放到申請的內存中,然后通過RTlcopymemory到用戶數據的內存中, 1、請問難道不能直接訪問用戶數據內存嗎? 2、我想把它改成可以寫的。當發送數據時,是不是一定要先RTlcopymemory用戶數據到臨時內存中 ...… 查看全部問答∨ |
給位大俠!我第一次用proteus 仿真。編譯生成hex文件---加到msp430--但仿真輸出端口電壓為0!!郁悶死了!你們看看我的電路圖是不是數字電源dvcc沒有?謝謝!發圖如下 [ 本帖最后由 stoney123 于 2011-5-19 08:34 編輯 ]… 查看全部問答∨ |