基于ARM9的無線多床位心電監(jiān)護(hù)儀的設(shè)計(jì)
3.4存儲(chǔ)、顯示和鍵盤模塊
為了實(shí)現(xiàn)大容量的數(shù)據(jù)存儲(chǔ),利用S3C2410A自帶的Nand Flash控制器擴(kuò)展了一片16Mx8位的Nand Flash存儲(chǔ)器,可存儲(chǔ)12小時(shí)的心電數(shù)據(jù)。為了使用戶能夠?qū)Σ杉降男碾娦盘?hào)有一個(gè)直觀的印象和進(jìn)行常識(shí)性的觀察,利用S3C2410A自帶的LCD控制器,設(shè)計(jì)了LCD顯示屏的接口,并選用了一塊240x128的LCD顯示屏,用于顯示所采集的心電信號(hào)及一些基本參數(shù)。系統(tǒng)還設(shè)計(jì)了一個(gè)4x4的鍵盤模塊,用戶可通過鍵盤實(shí)現(xiàn)一些基本功能的切換。
4 系統(tǒng)軟件設(shè)計(jì)
本系統(tǒng)的軟件設(shè)計(jì)是基于Windows CE操作系統(tǒng)的。Windows CE是為各種嵌入式系統(tǒng)和產(chǎn)品設(shè)計(jì)的一種壓縮的、具有高效的、可升級(jí)的操作系統(tǒng),具有多線性、多仟?jiǎng)?wù)、全優(yōu)先的操作系統(tǒng)環(huán)境。由于Window CE操作系統(tǒng)本身沒有自帶獨(dú)立的開發(fā)環(huán)境,因此,需要在PC機(jī)(宿主機(jī))上完成應(yīng)用程序的開發(fā),實(shí)現(xiàn)仿真.并針對(duì)ARM嵌入式設(shè)備(目標(biāo)機(jī))進(jìn)行交叉編譯,使其與目標(biāo)機(jī)的CPU體系結(jié)構(gòu)相匹配,使操作系統(tǒng)和應(yīng)用軟件在目標(biāo)機(jī)上也能正常運(yùn)行。然后再移植到各目標(biāo)機(jī)上。在Windows CE操作系統(tǒng)構(gòu)建起來之后,就是上層應(yīng)用程序的實(shí)現(xiàn)問題。
4.1中心監(jiān)護(hù)端程序設(shè)計(jì)
Windows CE是一個(gè)多任務(wù)、多線程的操作系統(tǒng)[6]。圖為中心監(jiān)護(hù)端的功能不只是單一的網(wǎng)絡(luò)通信,還要進(jìn)行數(shù)據(jù)分析和處理,所以不在主線程中直接進(jìn)行通信。而是在主線程中創(chuàng)建一個(gè)單獨(dú)的子線程負(fù)責(zé)等待PC機(jī)的命令,收到命令后,為其創(chuàng)建一個(gè)單獨(dú)的通信子線程與相應(yīng)的終端節(jié)點(diǎn)進(jìn)行通信.等待子線程繼續(xù)等待PC機(jī)的命令。通信子線程接收數(shù)據(jù)并進(jìn)行校驗(yàn),并通過USB口傳遞到PC機(jī)。
由于多個(gè)通信子線程可能會(huì)同時(shí)對(duì)共享資源nRF401進(jìn)行訪問,形成線程沖突,因此需要協(xié)調(diào)好各個(gè)線程之間的同步問題?;コ鈱?duì)象(Mutex)是Windows CE操作系統(tǒng)所提供的實(shí)現(xiàn)線程同步的方法之一,主要用于協(xié)調(diào)多個(gè)線程對(duì)共享資源的訪問,其原理是只有擁有互斥對(duì)象的線程才具有訪問共享資源的權(quán)限。由于互斥對(duì)象只有一個(gè),因此就決定了任何情況下此共享資源都不會(huì)同時(shí)被多個(gè)線程所訪問。首先,利用API所提供的函數(shù)CreateMutex()創(chuàng)建一個(gè)互斥對(duì)象,初始化為FALSE狀態(tài)以標(biāo)識(shí)該互斥對(duì)象處于未被任何線程占有狀態(tài)。通信子線程通過waitForSingleobiect()來請(qǐng)求占用該互斥對(duì)象,若此時(shí)該互斥對(duì)象被占用,則該線程需等待直到前一線程釋放后才能成功占用;若此時(shí)該互斥對(duì)象未被占用,則可以實(shí)現(xiàn)對(duì)共享資源nRF401的訪問。例如負(fù)責(zé)與床位號(hào)為n的監(jiān)護(hù)終端通信的子線程獲得對(duì)nRF401的訪問權(quán)后,該子線程會(huì)發(fā)送一個(gè)1字節(jié)的同步信號(hào)“n”,床位號(hào)為n的監(jiān)護(hù)終端接收到命令后,返回“n”作為應(yīng)答,該通信子線程收到應(yīng)答,核對(duì)正確后,雙方開始數(shù)據(jù)傳輸,監(jiān)護(hù)終端將數(shù)據(jù)及其校驗(yàn)和以數(shù)據(jù)包的形式傳送給中心監(jiān)護(hù)端。該子線程接收完畢后,結(jié)束通信,用ReleaseMutex()來釋放對(duì)互斥對(duì)象的擁有權(quán),完成對(duì)于共享資源nRF401的訪問,從而其它線程可有機(jī)會(huì)獲取對(duì)nRF401的訪問權(quán)。然后對(duì)所接收的數(shù)據(jù)進(jìn)行校驗(yàn),再次提出占用互斥對(duì)象請(qǐng)求。這樣,每個(gè)通信子線程訪問nRF401的機(jī)會(huì)均等,子線程問相互獨(dú)立,避免了程序死鎖在一個(gè)連接上,提高了系統(tǒng)的整體響應(yīng)速度。
4.2監(jiān)護(hù)終端程序設(shè)計(jì)
監(jiān)護(hù)一個(gè)床位的各監(jiān)護(hù)終端的程序設(shè)計(jì)同樣采用多線程的結(jié)構(gòu),在主線程中對(duì)心電信號(hào)進(jìn)行A/D轉(zhuǎn)換、必要的處理和存儲(chǔ)、顯示等。另創(chuàng)建一個(gè)子線程,置nRF401為接收狀態(tài),等待接收中心監(jiān)護(hù)端的命令,收到命令并檢驗(yàn)合法后,置nRF401為發(fā)送狀態(tài)發(fā)送回應(yīng),并從存儲(chǔ)器巾讀取數(shù)據(jù)打包發(fā)送,若收到中心監(jiān)護(hù)端校驗(yàn)錯(cuò)誤信息,則重發(fā)數(shù)據(jù)包。
4.3 QRS波的檢測
在心電分析中,要進(jìn)行參數(shù)測量和波形分析,計(jì)算R-R間隔和心率,首先要進(jìn)行QRS波的檢測。本文采用四點(diǎn)平均濾波器法首先對(duì)心電信號(hào)進(jìn)行濾波,濾除電源工頻干擾、基線漂移,肌電噪聲、運(yùn)動(dòng)偽跡等所帶來的干擾。其解析式為:
其對(duì)心電信號(hào)的中心頻率(17Hz)影響較小,同時(shí)可抑制高頻噪聲和50Hz的工頻干擾。再對(duì)經(jīng)過濾波后的心電信號(hào)的一、二階差分值進(jìn)行平滑處理,利用心電信號(hào)的二階差分值極小值和一階差分過零點(diǎn)在較短的時(shí)間窗內(nèi)實(shí)現(xiàn)QRS波精確定位。即對(duì)四點(diǎn)濾波后的心電信號(hào)y(n)進(jìn)行一階和二階差分,通過不應(yīng)期判別、幅值判別等方法找到R波對(duì)應(yīng)的二階差分的極小值的位置。再根據(jù)啊二階差分與x(n)、y(n)的時(shí)延關(guān)系,求出濾波信號(hào)和原心電信號(hào)中R波的位置。在心電信號(hào)的一階差分信號(hào)中,R波和與其對(duì)應(yīng)的Q,S波的位置關(guān)系為:如果R波在一階差分信號(hào)中為QRS波群所對(duì)應(yīng)的向下過零點(diǎn)(其值為負(fù)),則Q波應(yīng)為R波所在位置前面的第1個(gè)向上過零點(diǎn)(其值為正);S波為R波所在位置后面的第1個(gè)向上過零點(diǎn)(其值為正)。這樣,由已知的R波的位置即可檢測出 Q,S在一階差分中的位置,再根據(jù)時(shí)延關(guān)系就而可以求出R-R問期、心率等參數(shù)。由于籌分會(huì)增加部分高頻噪音,上述計(jì)算是在一階和二階差分經(jīng)平滑移動(dòng)處理后進(jìn)行的。該算法能抑止多種噪聲對(duì)心電信號(hào)的影響,經(jīng)過臨床測試,在靜息和慢走情況下.算法對(duì)動(dòng)態(tài)心電的檢測準(zhǔn)確率非常高;即使在做體操和慢跑的情況下,其正確率還是在99.8%以上。
5 實(shí)驗(yàn)結(jié)果
使用此監(jiān)護(hù)儀分別對(duì)12名志愿者進(jìn)行了心電數(shù)據(jù)采集。實(shí)驗(yàn)表明,該監(jiān)護(hù)儀能同時(shí)監(jiān)護(hù)12個(gè)病人,也能獨(dú)立監(jiān)護(hù)1個(gè)病人,實(shí)時(shí)性良好.心電波形顯示清晰,對(duì)心電數(shù)據(jù)分析準(zhǔn)確,心律失常時(shí),會(huì)自動(dòng)報(bào)警,并對(duì)其進(jìn)行存儲(chǔ)和回放。佩戴者可在半徑100米范圍內(nèi)活動(dòng)得到較好的監(jiān)護(hù),采用2節(jié)5號(hào)電池供電,可連續(xù)監(jiān)測20小時(shí)。
6 結(jié)論
本文設(shè)計(jì)了一種基于ARM9微處理器的新型便攜式多床位無線遙測心電監(jiān)護(hù)儀,該監(jiān)護(hù)儀硬件集成度高,體積小,功耗低,便于患者隨身攜帶,在不影響患者日常活動(dòng)的同時(shí)使患者得糾較好的監(jiān)護(hù)。本文的創(chuàng)新之處是采用Windows CE嵌入式操作系統(tǒng)作為軟件平臺(tái),具有易定制、可擴(kuò)展、高穩(wěn)定性等優(yōu)點(diǎn)。采用多線程編程,可同時(shí)監(jiān)護(hù)多個(gè)床位,各線程之間相對(duì)獨(dú)立,避免了波形顯示停滯,或死鎖在一個(gè)連接上,提高了系統(tǒng)的整體響應(yīng)速度,使系統(tǒng)實(shí)時(shí)性更好。在Windows CE環(huán)境下,還可以通過中間驅(qū)動(dòng)程序?yàn)镾3C2410A擴(kuò)展串口通信,實(shí)現(xiàn)更多床位的實(shí)時(shí)集中監(jiān)護(hù)。
電容式觸摸屏相關(guān)文章:電容式觸摸屏原理
評(píng)論