陸沐暉,王昕
(吉林商務(wù)旅游學(xué)校,吉林吉林,132013)
虛擬現(xiàn)實(shí)(Virtual Reality,簡(jiǎn)稱VR)是一種沉浸的互動(dòng)環(huán)境,采用計(jì)算機(jī)技術(shù)對(duì)設(shè)備的環(huán)境進(jìn)行控制,形成一種接近真實(shí)的視、聽、觸覺一體化的虛擬環(huán)境,用戶可以借助虛擬現(xiàn)實(shí)設(shè)備與使用對(duì)象進(jìn)行交互,從而在“沉浸”的環(huán)境中體驗(yàn)設(shè)備的使用效果,從而能夠真正提高體驗(yàn)效果,采用虛擬現(xiàn)實(shí)的環(huán)境來替代真實(shí)的工作環(huán)境,能夠幫助人們減少工作中的失誤。目前,將虛擬現(xiàn)實(shí)技術(shù)應(yīng)用與工業(yè)機(jī)器人的仿真設(shè)計(jì)中,主要集中在提高計(jì)算機(jī)模擬能力與工業(yè)機(jī)器人的仿真接口能力上,以便于利用工業(yè)機(jī)器人能夠模擬出設(shè)計(jì)的結(jié)果,在利用人為的編程設(shè)計(jì)3D的虛擬環(huán)境,模擬機(jī)器人的工作效果,操作人員可以在虛擬的環(huán)境下分析機(jī)器人的工作情況與仿真行為,可以隨意的改變查詢的位置與角度,分析機(jī)器人的每一個(gè)工作過程。
Open GL具有三維的繪圖功能,在虛擬現(xiàn)實(shí)環(huán)境設(shè)計(jì)中具有十分重要的作用,它能夠繪制三維圖像,對(duì)不同的環(huán)境光照進(jìn)行設(shè)計(jì),對(duì)不同的環(huán)境進(jìn)行模擬,達(dá)到增強(qiáng)現(xiàn)實(shí)的效果。
(1)Open GL的繪制過程
現(xiàn)代機(jī)器人虛擬現(xiàn)實(shí)技術(shù)的設(shè)計(jì)中,使用的OpenGL技術(shù)對(duì)機(jī)器人進(jìn)行建模,利用強(qiáng)大的繪圖功能,可以對(duì)虛擬現(xiàn)實(shí)環(huán)境中的物體繪制、對(duì)環(huán)境的光照設(shè)計(jì)、三維動(dòng)畫制作、對(duì)三維環(huán)境進(jìn)行管理,同時(shí)還具有圖形圖像增強(qiáng)技術(shù)等不同的環(huán)節(jié),可以利用OpenGL技術(shù)將虛擬的三維物體環(huán)境,投放到二維平面中,然后利用該技術(shù)處理計(jì)算機(jī)指定的像素,從而在二維平面中將三維立體影像展示出來。在利用OpenGL繪制相關(guān)物體圖像時(shí),將物體轉(zhuǎn)化為一個(gè)可以描述幾何性質(zhì)的頂點(diǎn),在執(zhí)行一系列的操作之后,就可以將像素轉(zhuǎn)化為一個(gè)實(shí)際的三維像素空間,最終形成相應(yīng)的3D空間圖案,具體的形成三維立體圖形過程如圖1所示。
圖1 OpenGL三維圖形生成過程
(2)Open GL技術(shù)對(duì)三維物體的顯示
在機(jī)器人仿真設(shè)計(jì)的過程中,需要在虛擬現(xiàn)實(shí)的環(huán)境下,對(duì)機(jī)器人的3D動(dòng)作進(jìn)行分解,這就需要利用OpenGL 的三維物體展示技術(shù),將機(jī)器人運(yùn)行的三維數(shù)據(jù)與二維數(shù)據(jù)結(jié)合在一起,才能有效的將機(jī)器人的三維運(yùn)動(dòng)軌跡展示出來,在OpenGL 的三維物體展示技術(shù)中主要采用坐標(biāo)轉(zhuǎn)換的方式,來設(shè)計(jì)立體模型,在計(jì)算機(jī)技術(shù)處理的過程中,為了將三維模型物體進(jìn)行數(shù)字化處理,準(zhǔn)確定義三維物體虛擬空間坐標(biāo),使得運(yùn)動(dòng)的軌跡能夠按照虛擬空間與現(xiàn)實(shí)空間的相關(guān)比例進(jìn)行設(shè)計(jì),從而獲得與現(xiàn)實(shí)相似的模擬結(jié)果,在整個(gè)軌跡設(shè)計(jì)過程中,要始終將物體的中心置于坐標(biāo)軸的原點(diǎn),通過旋轉(zhuǎn)與平移的方式將物體圍繞坐標(biāo)軸進(jìn)行運(yùn)動(dòng),而且在對(duì)物體進(jìn)行放大與縮小等相關(guān)的操作時(shí),可以將局部的坐標(biāo)進(jìn)行縮小與放大,使得整個(gè)物體圖像能夠保持空間的同一個(gè)范圍與方向。
(1)運(yùn)動(dòng)學(xué)仿真的構(gòu)建
對(duì)機(jī)器人的仿真進(jìn)行模擬,首先需要分析機(jī)器人的運(yùn)行軌跡,利用計(jì)算機(jī)技術(shù)來獲取運(yùn)動(dòng)的數(shù)據(jù),并采用機(jī)器人運(yùn)動(dòng)的一組運(yùn)動(dòng)學(xué)正解方程及逆解方程對(duì)整個(gè)數(shù)據(jù)進(jìn)行處理,然后通過編程計(jì)算,實(shí)現(xiàn)機(jī)器人在虛擬空間運(yùn)行的正解或者逆解方程,并通過不斷的計(jì)算來修正虛擬環(huán)境中的運(yùn)算軌跡,以滿足機(jī)器人在虛擬空間中的運(yùn)動(dòng)軌跡,在建立運(yùn)動(dòng)學(xué)坐標(biāo)的變換方程時(shí),OpenGL就可以通過一系列的坐標(biāo)系建立在機(jī)器人的各個(gè)連桿與機(jī)器人的各個(gè)環(huán)節(jié)上,然后通過各個(gè)運(yùn)動(dòng)量對(duì)應(yīng)的位置坐標(biāo)與方向,這樣就能夠建立相應(yīng)的機(jī)器人運(yùn)動(dòng)方程,在具體的構(gòu)建中,可以采用D-H參數(shù)法來完成機(jī)器人的仿真運(yùn)動(dòng)環(huán)境。
(2)捕捉拋物的仿真
在虛擬環(huán)境中,對(duì)機(jī)器人的仿真設(shè)計(jì),捕捉拋物的仿真是一個(gè)重要的內(nèi)容,這種仿真是基于機(jī)器人運(yùn)用仿真的基礎(chǔ)上,也涉及到新技術(shù)的使用,機(jī)器人拋物過程的設(shè)計(jì)是一個(gè)復(fù)雜的過程,不僅要考慮機(jī)器人運(yùn)動(dòng)的過程,還需要分析物體運(yùn)動(dòng)下落的軌跡,在運(yùn)動(dòng)過程的設(shè)計(jì)中,需要進(jìn)行一些合理的假設(shè),而且還盡可能的簡(jiǎn)化數(shù)據(jù)獲取的過程,在圖2的機(jī)器人多點(diǎn)設(shè)計(jì)中,就是將機(jī)器人運(yùn)動(dòng)與模擬捕捉拋物過程結(jié)合在一起,利用虛擬操作,在機(jī)器人的末端P點(diǎn)停留在運(yùn)動(dòng)空間的任意位置,然后在空間任意一個(gè)位置G點(diǎn)拋出物體,在具體對(duì)拋物軌跡進(jìn)行設(shè)計(jì)時(shí),還需要進(jìn)行碰撞試驗(yàn),以保證拋物運(yùn)動(dòng)軌跡與機(jī)器人運(yùn)動(dòng)的軌跡、機(jī)器人的操作范圍是否相吻合,如果操作機(jī)器人的捕捉范圍,機(jī)器人就會(huì)靜止不動(dòng),而只有拋物運(yùn)動(dòng)進(jìn)入到機(jī)器人運(yùn)動(dòng)的范圍內(nèi),機(jī)器人就會(huì)運(yùn)動(dòng)捕捉虛擬物體,從而能夠形成一個(gè)完整的運(yùn)動(dòng)軌跡。因此,在對(duì)機(jī)器人運(yùn)動(dòng)仿真進(jìn)行模擬時(shí),主要是利用機(jī)器人各個(gè)節(jié)點(diǎn)之間的動(dòng)作進(jìn)行模擬,只要能求出各個(gè)相應(yīng)節(jié)點(diǎn)的切斜角度,就能有效的對(duì)各種數(shù)據(jù)進(jìn)行模擬,然后利用計(jì)算機(jī)輸入相應(yīng)的具體數(shù)字,就能夠更好的實(shí)現(xiàn)機(jī)器人虛擬仿真運(yùn)動(dòng)。
圖2 機(jī)器人拋物運(yùn)動(dòng)軌跡的捕捉
(3)碰撞檢測(cè)
碰撞檢測(cè)主要功能是對(duì)物體運(yùn)動(dòng)的干涉檢測(cè)與物體運(yùn)動(dòng)的接觸檢測(cè),這種碰撞檢測(cè)又被稱作干涉檢測(cè)與接觸檢測(cè),主要是虛擬現(xiàn)實(shí)中機(jī)器人仿真過程中的交互行為,它主要包括:機(jī)器人在仿真交互的過程中,是否出現(xiàn)碰撞與交互行為,在發(fā)生交互行為后,機(jī)器人的狀態(tài)與位置是否發(fā)生變化,從而能夠準(zhǔn)確控制機(jī)器人的運(yùn)動(dòng)軌跡。目前,常用的軌跡算法有GJK、Vclip、ICollide、SWIFT++等等,在Open GL中采用碰撞檢測(cè)算法,能夠高效的模擬機(jī)器人的運(yùn)動(dòng)軌跡,在具體軌跡檢測(cè)過程中,主要采用包圍體層次法與距離跟蹤法等其軌跡進(jìn)行描述,形成的3D軌跡,從而能準(zhǔn)確模擬機(jī)器人的運(yùn)行軌跡,包圍體層次法主要是采用束縛虛擬物體的各個(gè)部分進(jìn)行包圍跟蹤計(jì)算,或者形成不同類型的層次結(jié)構(gòu),從而能夠形成機(jī)器人的運(yùn)行軌跡,采用距離跟蹤法對(duì)機(jī)器人碰撞的軌跡進(jìn)行檢測(cè),主要是對(duì)機(jī)器人的運(yùn)動(dòng)時(shí)間與幾何空間的聯(lián)系性來判斷機(jī)器人的運(yùn)行軌跡。對(duì)機(jī)器人運(yùn)動(dòng)軌跡的設(shè)計(jì),主要功能是利用連桿連接在一起,對(duì)其運(yùn)動(dòng)軌跡的模擬,關(guān)鍵位置取決于機(jī)器人各個(gè)關(guān)節(jié)角的位置、末端點(diǎn)的具體位置等,然后利用GJK、Vclip等算法計(jì)算關(guān)鍵點(diǎn)的位置與機(jī)器人運(yùn)動(dòng)的關(guān)節(jié)點(diǎn)角度,計(jì)算出點(diǎn)到面的距離,并對(duì)機(jī)器人的相應(yīng)關(guān)節(jié)點(diǎn)的運(yùn)轉(zhuǎn)角度進(jìn)行碰撞檢測(cè),詳細(xì)的距離機(jī)器人運(yùn)動(dòng)的軌跡,從而能夠模擬機(jī)器人的運(yùn)行軌跡。
(4)機(jī)器人力覺仿真設(shè)計(jì)
力覺仿真是機(jī)器人仿真設(shè)計(jì)的重要環(huán)節(jié),主要是保證機(jī)器人仿真聽覺與視覺同步,保證機(jī)器人的動(dòng)作更加協(xié)調(diào)、自然,使得機(jī)器人逐漸擁有與人類聽覺和視覺相同的功能,從而能保證機(jī)器人的動(dòng)作與人類動(dòng)作相似,這樣不僅能增加機(jī)器人在虛擬仿真環(huán)境中的真實(shí)感與沉浸感,使得仿真模擬的結(jié)果能夠無(wú)限的接近于真實(shí)的場(chǎng)景,更具有真實(shí)的效果?;谔摂M現(xiàn)實(shí)環(huán)境下的計(jì)算機(jī)仿真,使得操作者能夠與機(jī)器人互動(dòng),將操作的的操作數(shù)據(jù)直接反應(yīng)到虛擬現(xiàn)實(shí)的環(huán)境中,然后直接作用于機(jī)器人,利用這種虛擬的交互環(huán)境,能夠?qū)⒉僮髡叩娜S操作數(shù)據(jù)反饋給機(jī)器人,使得機(jī)器人能根據(jù)操作的指令運(yùn)動(dòng),這樣就讓人感覺到機(jī)器人的運(yùn)動(dòng)能夠?qū)崿F(xiàn)力覺、視覺、聽覺的全面效果,使得操作者能夠在虛擬環(huán)境中體驗(yàn)到身臨其境的感覺。
利用虛擬現(xiàn)實(shí)技術(shù)對(duì)機(jī)器人仿真設(shè)計(jì)進(jìn)行處理,對(duì)提高機(jī)器人的設(shè)計(jì)效果具有十分重要的作用,作為未來科技發(fā)展的重要發(fā)展趨勢(shì),利用虛擬現(xiàn)實(shí)技術(shù)對(duì)機(jī)器人進(jìn)行仿真設(shè)計(jì),可以快速準(zhǔn)確的對(duì)機(jī)器人的視覺、聽覺、力覺模型進(jìn)行構(gòu)建,對(duì)機(jī)器人的運(yùn)動(dòng)軌跡進(jìn)行記錄,有利于完成機(jī)器人生產(chǎn)、組裝、測(cè)試等提供多元化的服務(wù),通過利用Open GL技術(shù)進(jìn)行三維物體建模以及三種仿真手段,能為機(jī)器人仿真模擬提供一個(gè)接近真實(shí)的環(huán)境,對(duì)機(jī)器人的設(shè)計(jì)制造具有十分重要的作用。