病人醫療監護系統采用C/S架構的VC開發的應用系統,分為服務器端和客戶端,客戶端分為病人端和醫生端,通過面向對象技術來實現界面的顯示,界面顯示的過程中使用了雙緩沖繪圖技術以及VC自定義控件技術。
病人端把讀取到的曲線數據和隨機函數生成的數字數據,以波形圖像和數字形式在對應窗口顯示出來,然后通過服務器將數據發送到醫生端,并在醫生端以同樣的方式用窗口顯示出來,從而達到對病人的遠程監護。
論文詳細介紹了系統的設計和核心算法。
初步測試表明,系統實現了基本功能。
關鍵詞:醫療;監護;服務器;遠程;構架
中圖分類號:TP277
是傳統醫療方式存在很多不便,而且必須是跟醫生進行面對面交談,造成了醫生的工作量的增加,不利于醫生更好的展開工作。
鑒于此,開發一個醫療系統可以減輕醫生的負擔,也實現對病人不在醫生身邊時對病人的監護。
醫生希望詳細了解病人的生理數據,心率,脈搏,呼吸,血壓含量,體溫等。
病人希望得到更多的健康監護,并在身體狀況不佳時得到實時提醒,而診斷數據需要通過病人獲取,診斷方法和結論則由醫生保管,因此,存在距離問題。
為解決上述難題,近年來,面向家庭、個人的醫療監護系統逐漸成為醫療技術領域的研究熱點。
1 系統框架
1.1 系統概述
本系統主要的功能分為:采集端對病人數據的采集;
廣東深圳專業醫療產品設備外觀工業產品設計醫療檔案管理對醫療技術發展的重要性分析采集端對采集數據的成像顯示;服務器端對采集端以及監護端發送過來的數據的處理;監護端對服務器端轉發過來采集端數據的成像處理;報警功能的實現。
如圖1病人醫療監護系統的基本框架圖。
?。?)數據的采集以及隨機函數生成的數據;(2)數據的成像顯示,以及數據的發送;(3)服務器端數據的轉發;(4)監護端對收到的監護端數據的顯示。
課題研究中的數據,心率、脈
廣東深圳專業醫療儀器造型工業產品設計機電產品設計的關鍵技術探討搏氧、呼吸率的曲線的數據是從醫院拷貝過來的一段數據,存儲在txt中。
通過采集端的函數讀取,顯示到對應的窗口中。
數據的發送是通過C/S客戶服務器模式來完成,并將數據發送到服務器。
服務器通過對數據庫Map關系,查找到對應的監護端,并將采集端發送過來的數據發送到監護端。
監護端對收到的數據進行一些處理,并顯示出來。
圖1 病人醫療監護系統
采集端負責對病人數據進行采集(對txt文件的讀?。?,并定時向監護端發送數據;同時采集端對要對采集數據進行成像顯示;服務器端負責對采集端或者監護端發送過來的數據進行轉發處理,它通過查找數據庫來獲取采集端和監護端的映射關系;監護端對服務器端轉發過來采集端數據的成像處理。
2 詳細設計
2.1 服務器端
服務器端采用從CSocket繼承的類:CListenSocket類和CClientSocket類。
CListenSocket負責監聽開
廣東深圳專業醫療產品造型工業產品設計西安中小型企業工業設計現狀淺析通的端口號,監聽是否有客戶端訪問服務器。
如果發現有客戶端訪問服務器,則通過CListenSocket的一個虛函數OnAccept()來接受處理一個CClientSocket對象。
接受一個CClientSocket對象之后,由CClientSocket類對象的一個虛函數OnReceive()函數來處理新建的
廣東深圳專業理邦監護儀產品設計公司淺廣東深圳專業醫療器材產品外觀工業產品設計設計為先――BenQ五年工業設計回眸析高層建筑結構設計CClientSocket對象。
在OnReceive()函數中來完成自定義消息的發送,交由主窗口自定義消息函數OnNetReceive()來處理客戶端發送過來的消息。
消息的分類(例如文字消息或者曲線消息)通過枚舉對象來進行區分發送過來的消息。
針對不同的枚舉對象有不同的消息處理函數DisposeLogin(pPack,pSocket)完成對登陸用戶的處理并將其添加到一個static list對象中。
DisposeLogout(pPack)完成對登出客戶端的處理;DisposeTransmit(pPack)完成對接收的曲線的消息的處理;DispaseChat(pPack)完成收到的文字信息處理。
2.2 客戶端
客戶端分為采集端和監護端,采集端負責采集數據并完成數據的成像顯示,監護端負責接收采集端發送過來的數據處理。
2.2.1 采集端采用的是一個單文檔應用程序,通過多個窗口的創建來完成對病人身體狀況的一些模擬。
?。?)數據的讀取,病人信息通過計算機以及傳感器獲得心率、脈搏氧、以及呼吸率相關數據;(2)曲線的成像顯示。
對圖像的顯示是通過在主
廣東深圳專業醫療產品儀器工業產品設計產品設計中的色彩分析窗口中創建子窗口來實現,CDrawWnd類就是這些窗口的父類。
CDrawWnd類是從主窗口CWnd繼承的一個類,CDrawWnd采用了雙緩沖繪圖技術。
因為人類都有視覺暫留,普通的繪圖可能產生閃屏現象。
雙緩沖繪圖技術通過創建一個CDC對象和在CDC對象基礎上的一個CBitmap對象,在該CBitmap對象中來完成圖像的繪制(即類似畫板)。
然后將CDC對象粘貼到系統視圖區對象中來完成圖像的顯示;(3)因為心率、呼吸率、脈搏氧窗口的曲線顯示和心率、呼吸率、脈搏氧、血壓體溫的數據顯示是不一樣的。
所以它們都是CDrawWnd類派生下來的類,派生之后又派生出來了不同的類。
其中心率曲線、脈搏氧曲線和呼吸率曲線的對象是由CStripWnd類定義的不同類對象。
對曲線的存儲顯示是通過一個CStrip類來完成的,然后在CStripWnd類中來定義一個CStrip類對象,在DrawContent()完成曲線繪制。
另外心率、脈搏氧和呼吸率顯示的是一個整數,所以它們都是同一個類CTextWnd類的類對象。
血壓顯示了三個數據,因此血壓是CTextWnd類派生類的CTextABPWnd類的類對象。
體溫顯示的是一個小樹,因此體溫是CTexWnd類派生類的CTextTempWnd類的一個類對象;(4)采集端也有一個繼承自CSocket類的CClientSocket類,它的數據發送也是通過CClientScoket類的一個類對象調用Send()函數來完成。
數據的接受是通過CClientSocket類的虛函數OnReceive()來完成,并通過PostMessage()函數將數據拋送到視圖區自定義消息函數來處理。
2.2.2 監護端成像原理和采集端一樣,不同的是監護端可以完成多個采集端數據的接受,并且單擊采集端窗口的時候可以顯示對應的采集端曲線。
CInfoWnd負責接受來自不同采集端的小窗口的創建來完成數據的顯示,可以完成報警功能和選定病人端的功能。
每一個采集端都有一個閾值設置的CThresholdSetDlg類的對話框完成閾值的設置(閾值設置的原因是因為人體的一些數據是保持在一個范圍之內的,有一個最大值和最小值,這樣我們可以自己定義可以承受大的范圍)。
其它的功能類似于采集端,例如數據的發送等。
3 核心算法
3.1 客戶端算法
客戶端主要算法就是所有窗口的基類,下面就是該基類的實現的主要算法:
刪除創建的DC();
CDC*pDC=獲取設備DC();
獲取客戶區的DC(rc);
m_dcMem.創建和設備相同大小DC(pDC);
m_bmpMem.CreateCompatibleBitmap(設備DC,客戶區.Width(),客戶區.Height());
m_dcMem.SelectObject(&同客戶區大小相同CBitmap);
m_dcMem.FillSolidRect(設置客戶區背景色);
釋放DC(pDC);
3.2 服務器端算法
if(!m_scokListen.創建監聽的端口號(6000))
{:消息提示框(_T("Socket創建失??!"));
return;}
if(!m_scokListen.監聽端口())
{消息提示框(_T("Socket監聽失??!"));
m_scokListen.關閉();
return;}
NET_PACK*pPack=(NET_PACK*)CClien
廣東深圳專業起搏器產品設計公司論我國醫療器械發展前景tSocket傳送過來的數據;
CClientSocket*pSocket=(CClientSocket*)CClientSocket對象;
switch(pPack->枚舉類型)//枚舉類型標示消息的類型
{case LOGIN:
處理登陸函數(pPack,pSocket);
break;
case LOGOUT:
處理登出函數(pPack);
break;
case TRANSMIT:
處理曲線和數字數據函數(pPack);
break;
case CHAT:
處理聊天函數(pPack);
break;}
4 結束語
課題在深入分析網絡通信和VC成像基本原理,架構設計和核心技術的基礎上,以C/S模式的架構系統進行實驗性研究。
結合C++面向對象的技術,在各個窗口通過面向對象技術來實現對病人數據的模擬顯示。
病人醫療監護系統還有很多的不足之處。
服務器是VC開發的exe程序滿足不了數量比較龐大的用戶需求,只適合小容量的集群。
數據包在網絡傳輸的時候可能不能達到絕對的同步,如果數據包經過的路由器過多的話,也有可能發生丟失數據包的情況
參考文獻:
[1]劉奕,孫翱,何熙文.基于Socket的C++語言網絡通訊機制和程序設計[J].計算機應用研究,1999(05):49-51.
[2]朱蓉.利用中間件Socket實現多客戶機端底層網絡通信[J].計算機系統應用,2005(06):17-21.
[3]何進.基于Socket的TCP/IP網絡通訊模式研究[J].計算機應用研究,2001(08):134-136.
作者簡介:鄒燕飛(1981-),女,甘肅人,教師,講師,碩士,研究方向:并行計算、云計算、網格計算。
作者單位:咸陽師范學院 信息工程學院,陜西咸陽 712000
基金項目:云計算環境下資源負載均衡調度算法研究(項目編號:13XSYK057)。