ARM9的無線多床位心電監(jiān)護(hù)儀的設(shè)計(jì)
1 引言
隨著社會(huì)生活節(jié)奏加快、人口逐漸老齡化,心血管疾病已經(jīng)成為同前威脅人類生命的豐要疾病之一,此類疾病往往具有突發(fā)性、短暫性和危險(xiǎn)性的特點(diǎn),如果不能及時(shí)發(fā)現(xiàn)并進(jìn)行治療將會(huì)產(chǎn)生非常嚴(yán)重的后果。心電圖是檢查.診斷和預(yù)防該類疾病的主要手段和依據(jù),對(duì)于心肌梗塞、心律失常等癥狀,心電監(jiān)護(hù)儀的使用貫穿于治療、康復(fù)的整個(gè)過程。由于傳統(tǒng)的基于PC機(jī)平臺(tái)的心電躲護(hù)儀,價(jià)格昂貴,體積龐大,不便于移動(dòng)且主要集中在大醫(yī)院,給醫(yī)生和病人帶來了很大的不便。因此,為了降低成本、縮小體積,本文設(shè)計(jì)了一種基于ARM9微處理器的新型便攜式多床位遙測(cè)心電監(jiān)護(hù)儀。該監(jiān)護(hù)儀采用Samsung公司的一款以ARM920T為控制器內(nèi)核的16/32位高速處理器S3C2410A芯片作為系統(tǒng)控制核心,利用nRF401無線收發(fā)芯片發(fā)送和接收心電數(shù)據(jù),具有功耗低、體積小、可靠性高、操作簡(jiǎn)單等優(yōu)點(diǎn)。
2 系統(tǒng)結(jié)構(gòu)
該遙測(cè)心電監(jiān)護(hù)儀可同時(shí)監(jiān)護(hù)1~12個(gè)床位.系統(tǒng)結(jié)構(gòu)框圖如圖1所示.其中與PC機(jī)相連的S3C2410A作為中心躲護(hù)端.其功能是傳遞由PC機(jī)發(fā)出的命令,與監(jiān)護(hù)各個(gè)床位的監(jiān)護(hù)終端進(jìn)行通信,將各個(gè)臨護(hù)終端所采集到的數(shù)據(jù)匯總到中心監(jiān)護(hù)端,并通過USB口傳遞給Pc機(jī)。監(jiān)護(hù)一個(gè)床位的便攜式心電監(jiān)護(hù)終端作為終端節(jié)點(diǎn),功能是采集心電信號(hào),對(duì)采集到的數(shù)據(jù)進(jìn)行必要的處理,同時(shí)當(dāng)收到中心監(jiān)護(hù)端的命令時(shí),做出回應(yīng)。
圖1 系統(tǒng)結(jié)構(gòu)框圖
3 系統(tǒng)硬件設(shè)計(jì)
系統(tǒng)硬件設(shè)計(jì)包括中心監(jiān)護(hù)端的硬件設(shè)計(jì)和監(jiān)護(hù)一個(gè)床位的各個(gè)心電監(jiān)護(hù)終端的硬件設(shè)計(jì)兩大部分。中心監(jiān)護(hù)端的硬件設(shè)計(jì)包括S3C2410A與PC機(jī)的連接和nRF401與S3C2410A的連接。由于S3C2410A具有USB設(shè)備控制器,因此可通過USB口與PC機(jī)相連,并得到5V的T作電壓。無線收發(fā)芯片nRF401直接與S3C2410A的串口1連接。圖2為監(jiān)護(hù)一個(gè)床位的心電監(jiān)護(hù)終端硬件電路的結(jié)構(gòu)框圖,包括ARM微處理器S3C2410A、心電放大及采集電路、外部擴(kuò)展的Nand FLash存儲(chǔ)器、電源、LCD顯示、鍵盤和nRF401尤線數(shù)傳模塊等。
3.1心電采集電路
心電采集電路包括放大器、低通濾波器、50Hz陷波器等。該電路的放大器由差動(dòng)放大電路和放大級(jí)電路兩級(jí)放大電路組成。導(dǎo)聯(lián)系統(tǒng)采用通用的二電極方式,右胸上電極及左腹下電極為心電采樣電極.右腹下電極為右腿驅(qū)動(dòng)電極。由于采集的心電信號(hào)是籌模信號(hào),采用三運(yùn)放籌動(dòng)放大電路作為第一級(jí)放大電路,增益約為22,再經(jīng)第二級(jí)放大電路,總增益接近1000。由于心電信號(hào)屬于低頻信號(hào),因此,為消除高頻信號(hào),本設(shè)計(jì)了采用了一階濾波電路的低通濾波器,截止頻率為100Hz。為抑制50Hz的工頻干擾,還設(shè)計(jì)了二階壓控電壓源帶阻濾波器,即50Hz陷波器。
圖2 監(jiān)護(hù)1個(gè)床位的硬件電路結(jié)構(gòu)框圖
3.2 ARM微處理器模塊
S3C2410A是二星公司推出的一款基于ARM920T處理器構(gòu)架的嵌入式CPUS3C2410,它提供8通道的10位模數(shù)轉(zhuǎn)換器,轉(zhuǎn)換器以2.5MHz MD轉(zhuǎn)換時(shí)鐘將模擬輸入信號(hào)以最大500ksps轉(zhuǎn)換率轉(zhuǎn)換為lO位二進(jìn)制數(shù)字編碼。根據(jù)美困心臟學(xué)會(huì)AHA標(biāo)準(zhǔn)[3]和Nyquist采樣定律,當(dāng)信號(hào)采樣頻率等于或大干信號(hào)最高頻率的2倍時(shí),就可以從抽樣后的信號(hào)中不失真的還原出原信號(hào)。ECG頻率范圍為0.05~100Hz,中心頻率在17Hz左右,故取采樣頻率取200Hz,即采樣周期為5ms即可滿足要求。采集到的信號(hào)經(jīng)通道1送入S3C2410A微處理器。經(jīng)分析處理后在液晶屏上顯示心電波形和分析結(jié)果。
3.3無線收發(fā)模塊
無線收發(fā)模塊采用Nordic公司研制的單片UHF無線收發(fā)芯片nRF401,該芯片工作在433MHzISM(Industrial,scienTIfic and Medical)瀕段。該頻段無需申請(qǐng)?jiān)S可證。并采用FSK調(diào)制解調(diào)技術(shù),抗干擾能力強(qiáng),并采用PLL頻率合成技術(shù),頻牢穩(wěn)定性好,數(shù)據(jù)傳輸速率可達(dá)20kbDs,傳輸距離可達(dá)1000m,完全滿足本設(shè)計(jì)所需要的通信距離要求。不同于其他的RF單片芯片,nRF401通過單片機(jī)串口直接于MCU通信,而無需對(duì)數(shù)據(jù)進(jìn)行曼徹斯特編碼,這使的nRF401的外圍元件很少,只包括一個(gè)基準(zhǔn)晶振和幾個(gè)無源器件,具有成本低、一致性好等特點(diǎn)。本設(shè)計(jì)中,nRF401直接與S3C2410A的串口1連接。
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波的檢測(cè)
在心電分析中,要進(jìn)行參數(shù)測(cè)量和波形分析,計(jì)算R-R間隔和心率,首先要進(jìn)行QRS波的檢測(cè)。本文采用四點(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波的位置即可檢測(cè)出 Q,S在一階差分中的位置,再根據(jù)時(shí)延關(guān)系就而可以求出R-R問期、心率等參數(shù)。由于籌分會(huì)增加部分高頻噪音,上述計(jì)算是在一階和二階差分經(jīng)平滑移動(dòng)處理后進(jìn)行的。該算法能抑止多種噪聲對(duì)心電信號(hào)的影響,經(jīng)過臨床測(cè)試,在靜息和慢走情況下.算法對(duì)動(dòng)態(tài)心電的檢測(cè)準(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)測(cè)20小時(shí)。
6 結(jié)論
本文設(shè)計(jì)了一種基于ARM9微處理器的新型便攜式多床位無線遙測(cè)心電監(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ù)。
項(xiàng)目經(jīng)濟(jì)效益:3000萬元。