基于虛擬現(xiàn)實的網(wǎng)絡(luò)化上肢康復(fù)訓(xùn)練系統(tǒng)
現(xiàn)階段,在國內(nèi)的康復(fù)治療中,針對患者功能訓(xùn)練的治療仍舊以治療師的手法操作為主,或輔助一些簡單的訓(xùn)練器械,且訓(xùn)練過程單調(diào)無趣,患者容易產(chǎn)生厭煩情緒。治療師不容易即時了解病人的訓(xùn)練程度和效果 [1][2]。研究表明,如果能夠在訓(xùn)練過程中提供多種形式的信息反饋,充分發(fā)揮患者的主觀能動性,將會使康復(fù)訓(xùn)練效果得到很大提高。虛擬現(xiàn)實是一種新興的并且迅速發(fā)展的技術(shù),它的主要特點是:利用計算機(jī)和傳感技術(shù)生成一個具有多種感官刺激的虛擬境界,這種虛擬境界可以使人產(chǎn)生一種身臨其境的感覺;人能以自然的方式與虛擬境界中的對象進(jìn)行交互[3]。將虛擬現(xiàn)實技術(shù)應(yīng)用到康復(fù)醫(yī)療領(lǐng)域,可以有效的解決現(xiàn)有的康復(fù)醫(yī)療方法的局限性[4]。
康復(fù)機(jī)器人技術(shù)在歐美等國家己經(jīng)得到了科研工作者和醫(yī)療機(jī)構(gòu)的普遍重視 ,也取得了一些有價值的成果. 06年 Tobias Nef等人研制了基于虛擬現(xiàn)實技術(shù)的上肢康復(fù)醫(yī)療機(jī)器人 ARMIn[5]。Rutgers大學(xué)和 Stanford醫(yī)學(xué)院在基于虛擬環(huán)境的遠(yuǎn)程康復(fù)機(jī)器人系統(tǒng)方面做了大量的工作[6]。清華大學(xué)研制了一種上肢康復(fù)設(shè)備 UECM,可以在平面內(nèi)進(jìn)行兩個自由度的運(yùn)行訓(xùn)練[1]。
本文針對實驗室現(xiàn)有的一種上肢康復(fù)訓(xùn)練機(jī)器人系統(tǒng)設(shè)計開發(fā)了虛擬現(xiàn)實的輔助康復(fù)訓(xùn)練系統(tǒng),以激發(fā)患者進(jìn)行康復(fù)訓(xùn)練的興趣和動力,達(dá)到提高康復(fù)訓(xùn)練效果的目的。
1.系統(tǒng)總體概況
1.1 康復(fù)訓(xùn)練機(jī)器人系統(tǒng)總體結(jié)構(gòu)圖康復(fù)訓(xùn)練機(jī)器人系統(tǒng)主要可分為上位機(jī)遠(yuǎn)程監(jiān)控系統(tǒng)和下位機(jī)系統(tǒng)。 系統(tǒng)整體結(jié)構(gòu)圖如圖 1所示。
500)this.style.width=500;" />
1.2 康復(fù)機(jī)器人機(jī)構(gòu)設(shè)計
康復(fù)機(jī)器人機(jī)構(gòu)部分主要有座椅部分、支撐部分、牽引部分組成,如圖 2所示。訓(xùn)練時,病人坐在椅子上,通過懸吊線和肘關(guān)節(jié)支撐套將病人的手臂吊起,病人的手被固定在康復(fù)訓(xùn)練牽引機(jī)械臂的托盤上。
500)this.style.width=500;" />
1.3康復(fù)機(jī)器人系統(tǒng)工作原理
該康復(fù)訓(xùn)練系統(tǒng)由 4部分組成:基于虛擬現(xiàn)實技術(shù)的輔助訓(xùn)練客戶端,康復(fù)機(jī)器人控制系統(tǒng)(下位機(jī)) ,醫(yī)生端監(jiān)控計算機(jī)(上位機(jī)),和網(wǎng)絡(luò)通訊部分。其中康復(fù)機(jī)器人控制系統(tǒng)由 ARM主控模塊、測量控制電路、鍵盤及 LCD顯示電路、存儲器件等主要部分組成。被動訓(xùn)練模式運(yùn)行時,安裝在康復(fù)訓(xùn)練牽引機(jī)械臂的力和位置傳感器將采集的病人運(yùn)動的力和位置信號經(jīng)過信號處理后送給 ARM主控模塊,主控模塊經(jīng)過預(yù)處理后再通過下位機(jī)網(wǎng)絡(luò)模塊把力和位置信息通過局域網(wǎng)傳送給醫(yī)生端監(jiān)控主機(jī),同時監(jiān)控軟件繪制出力度信號和位置信號的實時曲線,并訪問后臺病案數(shù)據(jù)庫,實時記錄訓(xùn)練各項狀態(tài)參數(shù)。醫(yī)生根據(jù)反饋的信息判斷病人的康復(fù)情況,并通過上位機(jī)設(shè)置康復(fù)訓(xùn)練參數(shù),發(fā)送控制指令給下位機(jī),下位機(jī)根據(jù)醫(yī)生設(shè)置的參數(shù),采用相應(yīng)的控制算法,發(fā)送控制信號,經(jīng)驅(qū)動電路放大后驅(qū)動電機(jī),從而控制康復(fù)訓(xùn)練牽引機(jī)械臂的運(yùn)動。主動模式和阻抗模式運(yùn)行時,虛擬現(xiàn)實訓(xùn)練客戶端軟件和上位機(jī)遠(yuǎn)程監(jiān)控軟件同時通過局域網(wǎng)連接至下位機(jī) ARM嵌入式康復(fù)機(jī)器人主控模塊,主控模塊把采集到的力度和位置信號經(jīng)過預(yù)處理后,同時發(fā)送給上位機(jī)監(jiān)控程序和虛擬現(xiàn)實訓(xùn)練程序。虛擬現(xiàn)實輔助訓(xùn)練軟件利用接收到的網(wǎng)絡(luò)數(shù)據(jù)通過相應(yīng)算法轉(zhuǎn)化為虛擬場景中物體的坐標(biāo),同時配合設(shè)置好的虛擬場景和人機(jī)交互策略實現(xiàn)虛擬現(xiàn)實輔助康復(fù)訓(xùn)練過程。本文分別使用 windows GDI 和 OpenGL+3dmax 設(shè)計了兩套虛擬現(xiàn)實康復(fù)訓(xùn)練程序,分別配合主動訓(xùn)練模式和阻抗訓(xùn)練模式。
2、虛擬現(xiàn)實輔助康復(fù)訓(xùn)練客戶端軟件開發(fā)
康復(fù)病人由于肢體肌肉處于廢退狀態(tài),很容易對鍛煉感到厭煩,這對于病人的康復(fù)進(jìn)程是很不利的。為此本文利用 Windows GDI,OpenGL+3Dmax設(shè)計了兩個具有良好交互性的游戲程序作為患者輔助康復(fù)訓(xùn)練平臺,使患者在游戲過程中不知不覺的完成鍛煉,變原來的消極鍛煉為積極主動的參與鍛煉。
2.1配合阻抗訓(xùn)練模式的虛擬現(xiàn)實輔助訓(xùn)練軟件設(shè)計
2.1.1 阻抗訓(xùn)練模式介紹
該訓(xùn)練模式適用于即將康復(fù)的患者,這類患者的患肢已經(jīng)逐步恢復(fù)運(yùn)動能力,這時就可以根據(jù)患者的康復(fù)情況,在康復(fù)鍛煉過程中通過機(jī)器人給患者的患肢作用一定大小的阻尼力,使患者完成動作的時候克服阻力,從而增強(qiáng)肌肉的力量,逐步恢復(fù)到正常狀態(tài)。
2.1.2 程序設(shè)計
該軟件采用 VC++6.0創(chuàng)建的基于單文檔的 MFC應(yīng)用程序。游戲開始后病人通過控制機(jī)械臂的水平運(yùn)動,控制虛擬場景中水平擋板的移動反彈小球,擊打上畫面上方的矩形磚塊。如圖 3所示。程序開始運(yùn)行后,通過 GDI繪制出彈球游戲的基本場景,小球和水平移動擋板,完成游戲參數(shù)的基本初始化工作。在創(chuàng)建框架窗體的同時使用 CAsyncSocket類的 MySocket派生類,初始化訓(xùn)練客戶端套接字,封裝了網(wǎng)絡(luò)通信消息響應(yīng)函數(shù)。并重載了其中的 OnReceive(), OnAccept(),OnConnect(),OnClose()等消息響應(yīng)函數(shù),這些函數(shù)分別映射 CMyView類中相應(yīng)的處理函數(shù)。完成套接字初始化后,立即與下位機(jī)服務(wù)器連接,并開始接收下位機(jī)傳送的位置和力度數(shù)據(jù)。當(dāng)有網(wǎng)絡(luò)數(shù)據(jù)到達(dá)時,程序映射調(diào)用 CMyView類中的 OnReceive()函數(shù),完成接收下位機(jī)傳送的位置信號數(shù)據(jù),通過公式(1)
shippositon=(long)(-w*855/180) (1)
其中 w為接收到的機(jī)械臂角度值,shippositon為經(jīng)過換算后的擋板在屏幕上位置的坐標(biāo)點數(shù)值。將機(jī)械臂角度值轉(zhuǎn)化為虛擬環(huán)境中水平擋板的實際位置值,最后傳送至 Moveship()函數(shù)中完成移動擋板,碰撞檢測,刷新場景等流程。水平擋板在程序運(yùn)行開始后初始化在視圖區(qū)域中間位置,即機(jī)器人機(jī)械臂 90度位置。當(dāng)病人左右移動機(jī)械臂時,由下位機(jī)根據(jù)與 90度位置偏離程度的大小,通過計算輸出相應(yīng)大小的阻尼力。程序一共分為三個難度等級,每一難度等級的磚塊全部擊打完畢并進(jìn)入下一難度等級。每增加一級,程序會加速小球的下落速度來提高游戲難度。運(yùn)行時程序同時記錄病人的得分情況和游戲生命值。
500)this.style.width=500;" />
2.2配合主動訓(xùn)練模式的虛擬現(xiàn)實輔助訓(xùn)練軟件設(shè)計
2.2.1 主動訓(xùn)練模式介紹 該訓(xùn)練模式適用于病情比較輕的患者,這些的患者的患肢雖然有些運(yùn)動障礙,但是沒有完全喪失運(yùn)動能力,因此可以通過設(shè)計一些具有良好交互性的虛擬場景游戲,使患者完全自主地利用康復(fù)機(jī)器人進(jìn)行鍛煉。
2.2.2程序設(shè)計
整個軟件采用VC++6.0創(chuàng)建的 win32 application應(yīng)用程序,調(diào)用 OpenGL的庫函數(shù)開發(fā)。軟件所涉及的帶有貼圖的 3D模型和其他圖形素材,采用了現(xiàn)成的資源,這樣既保證了圖形圖像的質(zhì)量又提高了開發(fā)效率。該輔助訓(xùn)練軟件結(jié)合主動訓(xùn)練模式,給病人提供了寬廣的 3D虛擬場景,通過訓(xùn)練臂,并輔助一個羅技游戲搖桿進(jìn)行漫游,患者通過機(jī)械臂控制場景人物平面方位角的改變,輔助游戲搖桿負(fù)責(zé)場景人物的前進(jìn),后退,俯仰角度以及射擊擊發(fā)。患者需要完成的交互訓(xùn)練任務(wù)是盡快在該場景中找出移動的目標(biāo)靶并射擊命中。如圖 4所示:
500)this.style.width=500;" />
該程序首先由 Win32應(yīng)用程序框架中的WinMain()函數(shù)提供程序的入口。當(dāng)窗口成功建立時,MsgProc()窗口回調(diào)函數(shù)調(diào)出OpenGL框架中Init()函數(shù)對OpenGL視圖進(jìn)行變換調(diào)整。Windows窗口生成后就進(jìn)入 GameLoop()主循環(huán)中,在此一直循環(huán)調(diào)用 OpenGL框架中的Render()函數(shù)進(jìn)行我們需要的圖形場景處理和顯示,程序退出時,調(diào)用 CleanUp()清除OpenGL連接。在交互方面,程序初始化時采用 Winsock 2.0建立了套接字,通過局域網(wǎng)接收下位機(jī)傳送的機(jī)械臂位置數(shù)據(jù),通過計算轉(zhuǎn)化為場景人物的平面旋轉(zhuǎn)角度。從而達(dá)到實時交互的目的。前進(jìn)后退,俯仰角度的改變以及子彈的發(fā)射,采用鍵盤按鍵消息事件的方式實現(xiàn),再通過游戲搖桿驅(qū)動程序關(guān)聯(lián)響應(yīng)的按鍵,達(dá)到搖桿輔助控制的目的。程序分別使用mciSendString函數(shù)和 sndPlaySound函數(shù)來實現(xiàn)游戲過程中的各種音效。
3、實驗結(jié)果
進(jìn)行康復(fù)訓(xùn)練時,病人的手固定在康復(fù)訓(xùn)練牽引機(jī)械臂的托盤上,醫(yī)生通過上位機(jī)界面(醫(yī)生端)分別設(shè)置運(yùn)動模式為主動訓(xùn)練和抗阻訓(xùn)練,并調(diào)用相應(yīng)的虛擬現(xiàn)實輔助訓(xùn)練程序進(jìn)行交互式康復(fù)訓(xùn)練,結(jié)果明顯提高了病人參與康復(fù)訓(xùn)練的積極性,訓(xùn)練時間明顯增加,同時病人也能保持興奮愉快的狀態(tài)。病人訓(xùn)練的同時,上位機(jī)界面實時曲線繪制正常,在阻抗訓(xùn)練模式下實時訓(xùn)練參數(shù)曲線繪制如圖 5所示,能較為準(zhǔn)確的反映病人的訓(xùn)練狀態(tài)。訓(xùn)練結(jié)束后打開病案數(shù)據(jù)庫的歷史數(shù)據(jù)記錄表,可以看到位置數(shù)據(jù)和力度數(shù)據(jù)記錄正確。
500)this.style.width=500;" />
5、總結(jié)
綜上所述,本康復(fù)訓(xùn)練機(jī)器人系統(tǒng)采用的上下位機(jī)聯(lián)合的方式,通過設(shè)計兩種基于虛擬現(xiàn)實技術(shù)的互動訓(xùn)練程序,為患者的康復(fù)訓(xùn)練提供了一個生動的平臺,將患者從枯燥乏味的康復(fù)訓(xùn)練中解放出來。實驗結(jié)果證明,所設(shè)計的輔助訓(xùn)練程序能夠較好的配合患者進(jìn)行主動訓(xùn)練和抗阻訓(xùn)練模式的要求。在以后的研究中,還需要針對網(wǎng)絡(luò)時延對病人與虛擬環(huán)境交互實時性的影響進(jìn)行進(jìn)一步的克服和改進(jìn)。
本文作者的創(chuàng)新點是:本文針對中風(fēng)病人和上肢受傷病人在傳統(tǒng)的基于康復(fù)器械的訓(xùn)練中,人機(jī)之間缺乏良好的互動性以及訓(xùn)練模式內(nèi)容枯燥乏味的缺點,開發(fā)了一種新穎的基于虛擬現(xiàn)實和計算機(jī)網(wǎng)絡(luò)的上肢輔助康復(fù)訓(xùn)練系統(tǒng)。該系統(tǒng)配合康復(fù)訓(xùn)練的主動模式和阻抗模式,可以對病人進(jìn)行具有趣味性和良好交互性的康復(fù)訓(xùn)練過程。