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