基于LabVIEW的遠(yuǎn)程心電監(jiān)護(hù)系統(tǒng)設(shè)計(jì)
摘要 基于LabVIEW平臺(tái)開(kāi)發(fā)出應(yīng)用于遠(yuǎn)程心電監(jiān)護(hù)系統(tǒng)監(jiān)護(hù)中心的軟件,包括服務(wù)器和醫(yī)生客戶(hù)端程序。服務(wù)器實(shí)現(xiàn)的功能有心電數(shù)據(jù)接收和存儲(chǔ)、發(fā)送心電數(shù)據(jù)給醫(yī)生客戶(hù)端、反饋醫(yī)生客戶(hù)端診斷結(jié)果等;醫(yī)生客戶(hù)端實(shí)現(xiàn)的功能有接收服務(wù)器心電數(shù)據(jù)、心電數(shù)據(jù)顯示、發(fā)送診斷結(jié)果、調(diào)用地圖顯示位置等。經(jīng)過(guò)測(cè)試,軟件操作平臺(tái)界面友好,各個(gè)功能均得以實(shí)現(xiàn),較好地完成了預(yù)期的設(shè)計(jì)需求。
本文引用地址:http://www.ex-cimer.com/article/201808/386795.htm遠(yuǎn)程心電監(jiān)護(hù)在心臟病的診斷和救治方面發(fā)揮著重要作用。其獲得的動(dòng)態(tài)心電圖可提高對(duì)非持續(xù)性異位心律,尤其是對(duì)一過(guò)性心律失常及短暫的心肌缺血發(fā)作的檢出率,是診斷心肌缺血、心律失常,評(píng)估起搏器功和藥物療效的有效指標(biāo)。同時(shí)24 h連續(xù)能監(jiān)測(cè),可快速發(fā)現(xiàn)異常信號(hào),給予病人及時(shí)的救治。
監(jiān)護(hù)中心軟件開(kāi)發(fā)環(huán)境采用LabVIEW 2010。LabVIEW由美國(guó)國(guó)家儀器(NI)公司研制開(kāi)發(fā),是一種用圖標(biāo)代替文本行創(chuàng)建應(yīng)用程序的圖形化編程語(yǔ)言,廣泛地被工業(yè)界、學(xué)術(shù)界和研究實(shí)驗(yàn)室所接受。其不僅局限在測(cè)試測(cè)量領(lǐng)域的應(yīng)用,且具備了開(kāi)發(fā)應(yīng)用軟件能力,集成了大量常用控件,可方便地創(chuàng)建用戶(hù)界面,同時(shí),提供眾多不同模塊的開(kāi)發(fā)工具包,大幅節(jié)省了軟件開(kāi)發(fā)周期。本文即以此為平臺(tái)進(jìn)行監(jiān)護(hù)中心的開(kāi)發(fā)。
1 系統(tǒng)整體方案
動(dòng)態(tài)心電監(jiān)護(hù)系統(tǒng)包括動(dòng)態(tài)心電采集系統(tǒng)(Holter)和監(jiān)護(hù)中心軟件平臺(tái)兩個(gè)部分,如圖1所示。
動(dòng)態(tài)心電采集系統(tǒng)采用型號(hào)為T(mén)MS320C5515的DSP(Digital Signal Processor)作為主處理器,包括的主要模塊有:心電采集模塊、數(shù)據(jù)存儲(chǔ)模塊、LCD顯示模塊、實(shí)時(shí)數(shù)據(jù)檢測(cè)模塊、無(wú)線通訊模塊、電源管理模塊等。LCD屏同時(shí)顯示3個(gè)不同導(dǎo)聯(lián)的心電數(shù)據(jù),通過(guò)按鈕切換,可以任意選擇當(dāng)前顯示導(dǎo)聯(lián)。當(dāng)前時(shí)間、收到的醫(yī)生診斷信息、心電檢測(cè)模塊檢測(cè)的心率均會(huì)實(shí)時(shí)顯示在屏幕上。為了節(jié)省用電量,每隔2 min按鈕沒(méi)有響應(yīng),LCD屏即進(jìn)入休眠狀態(tài)。實(shí)時(shí)心電數(shù)據(jù)檢測(cè)模塊檢測(cè)出異常數(shù)據(jù)時(shí),無(wú)線通訊模塊將異常點(diǎn)附
近一段時(shí)間的心電數(shù)據(jù)通過(guò)GPRS網(wǎng)絡(luò)發(fā)送給遠(yuǎn)程監(jiān)護(hù)中心服務(wù)器,醫(yī)護(hù)人員根據(jù)接收到的心電數(shù)據(jù)進(jìn)行診斷,并反饋用戶(hù)相應(yīng)的指導(dǎo)意見(jiàn)。同時(shí),若檢測(cè)沒(méi)有異常,無(wú)線通訊模塊也會(huì)每隔15 min將一段時(shí)間的心電數(shù)據(jù)發(fā)送至監(jiān)護(hù)中心服務(wù)器。SD卡(Secure Digital Memory Card)進(jìn)行24 h連續(xù)不斷的心電信號(hào)存儲(chǔ),以供醫(yī)生進(jìn)行心電數(shù)據(jù)分析。
2 監(jiān)護(hù)中心軟件實(shí)現(xiàn)
監(jiān)護(hù)中心軟件在LabVIEW 2010開(kāi)發(fā)環(huán)境中進(jìn)行開(kāi)發(fā),同時(shí)建立SQL Server數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)中創(chuàng)建多個(gè)表,包含醫(yī)院信息、Holter信息、患者信息、接收數(shù)據(jù)信息、醫(yī)生信息、用戶(hù)密碼信息等。在程序中調(diào)用相應(yīng)的函數(shù)來(lái)進(jìn)行查詢(xún)、插入、修改等操作。
2.1 服務(wù)器程序設(shè)計(jì)
服務(wù)器程序是整個(gè)監(jiān)護(hù)中心的最重要部分,其完成的功能有GPRS數(shù)據(jù)接收、心電數(shù)據(jù)發(fā)送給醫(yī)生客戶(hù)端、醫(yī)生客戶(hù)端診斷意見(jiàn)發(fā)送給相應(yīng)的Holter。服務(wù)器與Holter、醫(yī)生客戶(hù)端、數(shù)據(jù)庫(kù)的連接關(guān)系如圖2所示。
為了保證數(shù)據(jù)傳輸?shù)耐暾院涂煽啃?,服?wù)器與Holter以及服務(wù)器和醫(yī)生客戶(hù)端之間的通訊均采用TCP/IP協(xié)議。同時(shí)為使通訊過(guò)程相對(duì)簡(jiǎn)潔,在服務(wù)器端使用3個(gè)TCP通訊端口。服務(wù)器與Holter通訊接口負(fù)責(zé)接收Holter的GPRS數(shù)據(jù),并將醫(yī)生診斷信息發(fā)送給Holter。服務(wù)器與醫(yī)生客戶(hù)端的命令傳輸端口收發(fā)醫(yī)生客戶(hù)端登陸、患者登記以及其他命令狀態(tài)信息。服務(wù)器與醫(yī)生客戶(hù)端數(shù)據(jù)傳輸端口進(jìn)行GPRS和24 h動(dòng)態(tài)心電數(shù)據(jù)的傳輸。
2.1.1 GPRS數(shù)據(jù)接收
GPRS數(shù)據(jù)接收模塊負(fù)責(zé)接收Holter發(fā)送來(lái)的數(shù)據(jù),并將數(shù)據(jù)保存至文件,填寫(xiě)數(shù)據(jù)庫(kù)中相應(yīng)的表,并告知客戶(hù)端有新數(shù)據(jù)需要處理。為了提高數(shù)據(jù)處理的速度,數(shù)據(jù)接收采用LabVIEW的生產(chǎn)者消費(fèi)者循環(huán)模式(見(jiàn)圖3)。
首先創(chuàng)建一空的隊(duì)列和兩個(gè)線程,生產(chǎn)者線程循環(huán)接收Holter發(fā)來(lái)的數(shù)據(jù),并將數(shù)據(jù)和TCP連接信息放入隊(duì)列。同時(shí),消費(fèi)者線程循環(huán)讀取隊(duì)列中的信息,進(jìn)行解碼處理。G PRS心電數(shù)據(jù)在被Holter發(fā)送之前已被編碼為統(tǒng)一格式,消費(fèi)者線程接收到GPRS心電數(shù)據(jù)后可解碼出該Holter的編號(hào),由此編號(hào)便可從數(shù)據(jù)庫(kù)中的患者信息表中查詢(xún)到該佩戴者的詳細(xì)信息。解碼出的心電數(shù)據(jù)存入數(shù)據(jù)庫(kù)相應(yīng)位置,數(shù)據(jù)接收完畢后,更新數(shù)據(jù)庫(kù)Holter使用信息,同時(shí)觸發(fā)轉(zhuǎn)發(fā)數(shù)據(jù)給醫(yī)生客戶(hù)端的線程。
2.1.2 數(shù)據(jù)分發(fā)模塊
服務(wù)器數(shù)據(jù)分發(fā)模塊將接收到的心電數(shù)據(jù)轉(zhuǎn)發(fā)給醫(yī)生客戶(hù)端進(jìn)行處理,程序流程圖見(jiàn)圖4。服務(wù)器上實(shí)時(shí)儲(chǔ)存著所有與該服務(wù)器連接的醫(yī)生客戶(hù)端TCP連接信息,數(shù)據(jù)分發(fā)線程觸發(fā)時(shí),服務(wù)器會(huì)將消息發(fā)送給每個(gè)正在連接的客戶(hù)端,并將數(shù)據(jù)發(fā)送給最先回應(yīng)的客戶(hù)端。同時(shí),對(duì)其他客戶(hù)端發(fā)送取消數(shù)據(jù)發(fā)送的信息。
2.2 醫(yī)生客戶(hù)端模塊
醫(yī)生客戶(hù)端完成患者信息登記、心電數(shù)據(jù)處理等功能。程序啟動(dòng)界面為一登陸界面,只有獲得用戶(hù)名和密碼的醫(yī)生才有權(quán)限進(jìn)入數(shù)據(jù)接收處理的界面。進(jìn)入軟件后,醫(yī)生便可進(jìn)行患者登記、修改登記信息、實(shí)時(shí)接收服務(wù)器轉(zhuǎn)發(fā)數(shù)據(jù)等。醫(yī)生客戶(hù)端接收到心電數(shù)據(jù)后進(jìn)入顯示操作界面,圖5所示為程序運(yùn)行時(shí)心電數(shù)據(jù)顯示效果,其中白色背景部分心電為接收到的心電的全覽圖,紅格背景部分?jǐn)?shù)據(jù)為全覽圖中選擇的藍(lán)色部分的心電信號(hào)。同時(shí)提供時(shí)間測(cè)量、幅值測(cè)量、放大等工具按鈕,允許用戶(hù)改變走紙速度、幅值放大、顯示導(dǎo)聯(lián)。根據(jù)文件中保存的從Holter模塊中的SIM900獲取的經(jīng)緯度信息,調(diào)用百度地圖API,即可實(shí)現(xiàn)地圖定位,獲取佩戴者的位置信息,方便對(duì)突發(fā)病人的緊急救治。醫(yī)生可將診斷結(jié)果或意見(jiàn)建議等信息經(jīng)服務(wù)器發(fā)送給Holter??蛻?hù)端還提供歷史數(shù)據(jù)查詢(xún)功能,只需提供病人登記號(hào),即可向服務(wù)器查詢(xún)?cè)撌褂谜咭欢螘r(shí)間內(nèi)所有無(wú)線發(fā)送的心電數(shù)據(jù)。
3 結(jié)束語(yǔ)
本文在LabVIEW 2010開(kāi)發(fā)環(huán)境下設(shè)計(jì)完成了遠(yuǎn)程心電監(jiān)護(hù)系統(tǒng)中監(jiān)護(hù)中心平臺(tái)的軟件設(shè)計(jì)。經(jīng)過(guò)測(cè)試,較好地實(shí)現(xiàn)了預(yù)期的設(shè)計(jì)需求。同時(shí),將LabVIEW應(yīng)用于大型軟件開(kāi)發(fā),縮短了開(kāi)發(fā)周期,并提升了軟件設(shè)計(jì)效率。
評(píng)論