鐘元權,張裕生
(安徽文達信息工程學院,安徽 合肥 231201)
VR 技術是電子技術與計算機技術相互發(fā)展與結合的一門新型技術,該技術能夠構建一種逼真的虛擬環(huán)境,并利用各種類型的傳感設備,使用戶能夠通過視覺、觸覺、聽覺等自身感官,并通過特定的動作技能來感知與操作虛擬環(huán)境中的物體,從而使其能夠真正參與到虛擬環(huán)境當中去,進而給用戶帶來一種身臨其境的感覺。VR 技術的出現(xiàn),使人機交互方式得到了徹底的改變,其屬于一種更加高級的人機接口技術,其能夠使計算機和用戶之間實現(xiàn)感性、直觀而又自然的交互?,F(xiàn)階段,我國已經開始大力開展對VR 技術的研究,VR 技術的應用前景正變得日益廣闊,并在軍事、設計、如樂、信息管理、醫(yī)學等諸多領域中有著極高的應用價值與發(fā)展?jié)摿?,特別是在機器人領域中,VR 技術更是已經成為機器人領域的未來研究方向。編程作為機器人應用系統(tǒng)中的重要環(huán)節(jié)之一,為了能夠滿足市場的發(fā)展需求,我國制造領域正日益趨向于小批量、多品種的柔性化發(fā)展,而在這種發(fā)展形勢下,傳統(tǒng)的機器人離線編程技術不僅需要耗費較大的人力與物力,而且難以保證編程效果。因此,面對制造領域的柔性化發(fā)展要求,人們急需探尋一種更加快捷而高效的編程方法,而基于VR 技術的機器人離線編程技術,則是借助于計算機圖形學技術來構建虛擬工作環(huán)境與機器人模型,并通過相應規(guī)劃算法的應用,能夠使機器人在離線狀態(tài)下實現(xiàn)路徑規(guī)劃。事實證明,基于VR 技術的機器人離線編程技術能夠提高機器人應用系統(tǒng)的安全性,縮短機器人的離線時間,并起到降低人力物力成本投入的效果。
目前,我國在機器人離線編程技術中已經開發(fā)出許多工具,這些工具的出現(xiàn),使機器人的離線編程技術要求得到了一定的滿足,不過,現(xiàn)階段我國所采用的機器人離線編程技術在某些方面仍舊存在較多缺點,這些缺點主要體現(xiàn)在以下幾個方面:其一,現(xiàn)階段所采用的三維仿真所提供的信息不符合人類工程學特點,這也使三維仿真技術的深度不夠,用戶仍舊需要通過屏幕來對場景進行被動式的觀察,在觀察深度上明顯存在不足。比如,三維仿真技術在應用過程中進行碰撞檢測時的難度過大;其二,無法隨意確定機器人的工具中心點路徑,并且所采用的方法具備很大的不便性。比如,用戶通過鼠標或鍵盤來對機器人的目標點坐標數(shù)據進行輸入時,仿真機器人與用戶之間無法進行三維交互;其三,用戶在對仿真系統(tǒng)進行操作時,需要用戶具備較強的專業(yè)性,能夠熟練操作仿真系統(tǒng),并且還要用戶具備一定的工作經驗。從上述缺點中可以很明顯的看出,我國現(xiàn)階段所使用的機器人離線編程技術忽略了人的因素,其僅僅只對少部分人的能力進行了利用,比如立體與多面圖像。此外,我國在機器人離線編程技術應用中仍舊受到顯示屏幕、鼠標及鍵盤等硬件方面的制約[1]。
相比于以往的機器人離線編程技術來說,通過VR 技術來構建三維虛擬環(huán)境,并結合計算機圖形接口技術的應用,以形成具備交互式特點的操作環(huán)境,能夠大幅提高機器人離線編程的有效性,進而使VR 技術成為機器人離線編程的一種有效解決方法。用戶可借助于數(shù)據手套、可穿戴式頭盔來實現(xiàn)虛擬環(huán)境下的交互式操作,在虛擬環(huán)境中不僅包括場景與機器人,同時還能使用戶真正的參與進來,進而改變以往的被動式觀察方式,用戶可借助于數(shù)據手套來對虛擬環(huán)境中的機器人進行控制[2]。因此,基于VR 技術的機器人離線編程技術具備以下應用優(yōu)勢:其一,VR 技術能夠按照人類工程形式向用戶提供信息,以使三維虛擬場景的構建變得更具深度,用戶可對工作單元進行可視化的布局,使用戶對機器人的工作空間有一個更加深入的了解,從而使機器人的工作中心布局變得更加快速,并且在虛擬碰撞檢測方面也更易實現(xiàn);其二,用戶可通過數(shù)據手套等交互式設備來對機器人的工具中心點中的任意一條路徑進行快速確定,以使用戶的能力得到充分的發(fā)揮,使用戶能夠自行對路徑進行最優(yōu)規(guī)劃;其三,基于VR 技術的機器人離線編程技術能夠為用戶提供一個先進的交互式人機接口,從而使機器人的編程工作得到大幅簡化,僅需通過少量專家經驗的應用就能快速完成機器人的編程工作。同時,用戶可通過多模塊人機接口來實現(xiàn)虛擬環(huán)境中機器人與用戶之間的交互式操作,如手勢交互、語音交互等,這使用戶的操作變得更加便捷而直觀,即使用戶不具備編程知識,也同樣能夠進行編程操作,并且其不需要用戶對機器人的構造及操作有所了解;其四,基于VR 技術的機器人離線編程技術還能夠對程序進行快速的修改與測試[3]。通過上述分析可以了解到,VR 技術不僅是一種友好的人機交互界面,其還能作為一種可靠的平臺來進行機器人離線編程及仿真工作,進而縮小了編程時間,使編程任務得到了相應的優(yōu)化,同時還能針對整個單元系統(tǒng)進行并行化編程,降低了編程任務對用戶操作水平與經驗的要求,使用戶能夠快速學會控制機器人。
本文所提出的基于VR 技術的機器人離線編程系統(tǒng)結構為單主機單用戶多外設的結構,該結構在VR 引擎與用戶交互時,主要是以輸入/輸出設備作為交互媒價的,I/O 設備能夠對用戶的輸入信息進行讀取,并將仿真結果反饋給用戶。
在基于VR 技術的機器人離線編程系統(tǒng)的硬件結構中,其主要包括以下部分,分別是SGI 圖形工作站、數(shù)據手套、超聲波頭部跟蹤裝置、Fastrak 跟蹤裝置以及液晶光閘眼鏡,SGI 圖形工作站是由Silicon Graphics 公司研發(fā)的,其屬于一種Indigo2 High Impact 的圖形工作站,該工作站相當于整個系統(tǒng)的計算平臺。數(shù)據手套則是由5DT 公司研發(fā)的,手套選用5th Glove。Fastrak 跟蹤裝置是由Polhemus 公司研發(fā)的,該跟蹤裝置作為一種高效的3SPACE Fastrak 傳感器系統(tǒng),其在機器人工作點中能夠為用戶提供六個自由度的定位服務。超聲波頭部跟蹤裝置是由Logitech 公司研發(fā)的,其具備視覺隨動功能。液晶光閘眼鏡是由Stereo Graphics 公司研發(fā)的,在該眼鏡中配備有CrystalEyes 體視系統(tǒng),該系統(tǒng)能夠為用戶帶來逼真的立體視覺效果。而通過超聲波傳感設備的應用,則能夠跟蹤用戶的頭部運動及方向,計算機則能夠根據用戶的頭部運動情況及其觀察方向對顯示畫面進行實時的計算,并將畫面信息利用立體顯示設備反饋給用戶,從而使用戶能夠觀察到想要觀察的畫面場景。此外,用戶還能利用Fastrak 傳感器來對虛擬環(huán)境中機器人的手臂運動進行控制,計算機會對機器人的變化模型進行計算,然后借助數(shù)據手套將相應的手勢語言進行表示出來,從而實現(xiàn)對機器人手臂動作的控制?;赩R 技術的機器人離線編程系統(tǒng)硬件結構如圖1所示。
圖1 基于VR技術的機器人離線編程系統(tǒng)硬件結構
在基于VR 技術的機器人離線編程系統(tǒng)的軟件結構中,其主要是利用WTK 函數(shù)庫來進行軟件開發(fā)工作的,WTK 的全稱為 WorldToolkit,利用WTK 函數(shù)庫來對機器人中的參數(shù)進行標定,以此實現(xiàn)對建模系統(tǒng)的開發(fā)。通過RGMS 的應用,即Robot Geometric Modeling System 來對三維虛擬場景中的物體及機器人模型進行構建,然后將構建的三維模型進行轉換,使其能夠成為被WTK 所支持與識別的格式文件,然后將該圖形文件導入到WTK程序當中來渲染模型,通過相應紋理、陰影、顏色及光照等效果的應用來使三維虛擬場景及機器人模型變得更加生動、逼真。在利用WTK 函數(shù)庫時,主要是通過仿真管理程序的應用來對虛擬場景中的進程執(zhí)行情況進行控制,仿真管理程序的應用原理應和Windows 中的消息循環(huán)機制相似,以實現(xiàn)對虛擬場景的高效化管理。在WTK 函數(shù)庫中有著相應的函數(shù)命令,其能夠對仿真循環(huán)狀態(tài)與事件次序進行改變,比如,WTuniverse-go 函數(shù)命令的調用就能夠使仿真循環(huán)狀態(tài)啟動,而WTuniverse_stop 函數(shù)命令的調用則會使仿真循環(huán)狀態(tài)中斷[4]。WTK 的任務仿真循環(huán)過程如圖2所示。
圖2 WTK的任務仿真循環(huán)過程
在利用VR 技術來構建機器人的離線編程仿真環(huán)境時,需要針對虛擬環(huán)境場景及機器人來進行相應的三維建模,應優(yōu)先明確虛擬環(huán)境場景的大小及機器人的幾何尺寸,然后通過交互方法采用RGM 來對虛擬環(huán)境場景及機器人的三維模型進行分別構建。在三維模型構建完畢后,將其進行圖形文件導出,導出的圖形文件應能夠被WTK 所識別,并且在WTK 中導入圖形文件之前,應先對構建的三維模型進行審視,確保三維模型構建正確并滿意后將其單獨存儲至模型庫當中,然后導入到WTK軟件當中,將這些構建的三維模型當作節(jié)點添加到場景當中,以使各個節(jié)點能夠按照層次進行排列,從而組成相應的場景圖形,并將機器人的手臂、軀干等部分進行組合,使其在場景圖中能夠作為一個相應的節(jié)點層次。比如,在對Puma 機器人進行組裝時,其運動臂共包括六個關節(jié)與連桿,并且連桿和基座由對應的關節(jié)進行連接,而第二個連桿和第一個連桿則是和第二關節(jié)進行連接,并以此進行類推。在第六連桿中,其和末端夾具相連接,并固定于基座當中。對于Puma 機器人來說,其六個連桿及基座均可當作相應的分離節(jié)點來構建三維模型,并在WTK 軟件中以從上至下的原則來對分層結構進行組建,在該分層結構中,基座為頂部分離結點,六個連桿則為底部分層節(jié)點。當分層結構中的某個分離結點在進行幾何運動時,則其也會帶動其他同層次與下層次的分離節(jié)點共同進行幾何運動,而對于上層的分離節(jié)點則不會受到影響。比如,在第二連桿做幾何運動時,則第三、四、五、六連桿同樣也會隨之進行幾何運動,但對于第一連桿與基座來說,則不會受到第二連桿的任何影響。而當?shù)诹B桿做幾何運動時,對于其它分離節(jié)點則不會受到任何影響。這是因為第六連桿為分層結構中的最底部分層節(jié)點,其只會隨著上部分層節(jié)點進行運動。當要想使機器人的整體進行幾何運動,則只需確保最頂部的分層節(jié)點進行幾何運動即可,也就是說,只需要使基座進行幾何運動即可。而對于機器人運動臂和傳感器之間的運動連接關系,則可利用傳感器來對機器人運動臂進行信息驅動,即可實現(xiàn)機器人運動臂和Fastrak 傳感器之間的運動連接,同時,通過運動約束條件的設置,便可實現(xiàn)利用Fastrak 傳感器對機器人運動臂進行控制了[4]。
對于場景圖渲染來說,通過在場景圖中各個圖形節(jié)點中設置材質、紋理、顏色、陰影等效果,能夠使模型變得更加逼真、生動。同時,為了使三維虛擬場景具備更快的顯示速度,應盡量避免場景過于復雜,可盡量減少多邊形的處理數(shù)量,并通過LOD,即Level of Detail 法來進行細節(jié)層次處理,以使多邊形的顯示數(shù)量得以降低[5]。對于立體顯示來說,可通過Crystal Eyes 體視系統(tǒng)來實現(xiàn),該體視系統(tǒng)共由三個部分組成,分別是SGI 圖形顯示器、液晶光閘眼鏡以及紅外線控制裝置。SGI 圖形顯示器的顯示頻率為120 幀/s,其相比于普通的顯示器來說,在顯示頻率上要高出兩倍左右,可通過仿真軟件將顯示器的視頻模式設置成STEREO,由計算機對RGB 信號進行發(fā)送,RBG 信號應采用偏移及交替的透視圖像,由眼鏡對紅外線進行檢測,并通過電路對液晶鏡頭的開啟關閉狀態(tài)進行切換,以使其能夠和顯示器中的圖像進行視域同步,左視域與右視域切換中其對應的左右鏡頭中僅有相對應的鏡頭是處于開啟狀態(tài)的,而另一鏡頭則是關閉狀態(tài)的[6]。
在基于VR 技術的機器人離線編程系統(tǒng)中,其視域跟蹤功能的實現(xiàn)是通過三維頭部跟蹤裝置來實現(xiàn)的,該跟蹤裝置共包括三個組成部分,分別是控制單元、發(fā)射器以及一個單獨的接收器,其發(fā)射器中布置有三個超聲波發(fā)生器,這三個超聲波發(fā)生器均被固定于三角架上,并且發(fā)生器的布置間距為30cm,發(fā)射器的布置方向需要面向于用戶的頭部前方。而接收器則共包括三個麥克風,其在液晶光閘眼鏡中是以三角形進行布置的,在液晶興閘眼鏡中的控制單元能夠對聲波的傳播時間進行計算,以實現(xiàn)對頭部方向及位置的確定,并利用RS232 接口和SGI 進行連接,以使頭部方向及位置信息能夠發(fā)送到主機當中去,從而使仿真系統(tǒng)能夠依據這些數(shù)據來對虛擬場景進行實時的更新,進而使用戶的視線能夠觀察到想要觀察的虛擬場景[7]。
在運動路徑生成方面,需要對機器人模型中的末端節(jié)點進行定義,以使運動路徑得以生成。該系統(tǒng)的Fastrak 傳感器能夠進行六個自由度的工作點定位,以使用戶與機器人之間得以進行三維交互。在Fastrak 傳感器系統(tǒng)中,其共包括控制單元、發(fā)射源與傳感器三個組成部分,其中,發(fā)射源與傳感器共同與控制單元相連接,并利用RS232 串口和SGI主機進行連接。控制單元能夠將傳感器中的模擬信號進行轉換,而發(fā)射源則能夠對電磁場進行發(fā)送,并利用傳感器進行檢測,由傳感器轉換成具備三個方向參數(shù)與位置參數(shù)的六個模擬信號,并發(fā)送給控制單元,由控制單元根據這六個模擬信號來對傳感器的方向及位置進行描述,從而根據傳感器的方向及位置來對手套方向及位置進行確定,并由仿真軟件來根據方向與位置信息來對機器人的末端工作點進行定位[8]。
在手勢識別及機器人的動作控制方面,主要是通過數(shù)據手套來實現(xiàn)的,在數(shù)據手套中嵌入有五個光纖傳感器,這五個光纖傳感器分別位于各個手指當中,以實現(xiàn)對手形狀的測量,并利用二軸側傾傳感器來對手腕的俯仰角與側傾進行測量,而手的位置則是由六自由度的跟蹤器來進行確定的。數(shù)據手套和SGI 主機之間是利用串口進行連接的,數(shù)據手套的工作方式包括利用命令、連續(xù)數(shù)據、報告數(shù)據與模擬鼠標。仿真軟件可對手套中用戶的手指屈伸度數(shù)據進行讀取,并通過模板匹配來實現(xiàn)手勢的實別,從而達到用戶通過數(shù)據手套來控制機器人運動臂動作的目的[9]。
在基于VR 技術的機器人離線編程技術中,碰撞檢測是其關鍵技術,其對于動作控制的精確性與真實感有著決定性的影響。對于碰撞檢測問題來說,可將其向多面體干涉檢驗問題進行轉化,并按照三個層次來進行,分別是求交檢查、包容性測試與包容盒檢查。當機器人在按照路徑進行運動時,只需對各個離散點進行上述三個層次的檢驗,即可實現(xiàn)對該路徑和環(huán)境的碰撞判定,從而確定該運動路徑的安全性[10]。在該系統(tǒng)中,主要是利用顏色變化來對碰撞與否進行指示的,當用戶在執(zhí)行發(fā)生碰撞的動作指令時,仿真器會拒絕執(zhí)行該動作指令,并發(fā)出報警。
VR 技術的出現(xiàn),使其為機器人領域帶來了巨大的變革,極大促進與帶動了機器人相關技術的發(fā)展與相互滲透,基于VR 技術的機器人離線編程系統(tǒng),能夠為用戶提供一個良好的高級人機交互接口,從而使機器人的離線編程工作能夠在一個直觀而有效的虛擬場景中更加高效的進行。