摘要:針對培訓係統要求(qiú)人機交互界麵好以及沉(chén)浸感強等特點,在鑽床教學係統開發中采用實時3D 建構工具Quest3D,提出了一種針對鑽床教學培訓的虛擬現實(shí)係統的(de)開發方案,將虛擬現實係統分為(wéi)三維顯示(shì)模塊(kuài),運動控製模塊,場景交互模塊和場景聲控模塊等,通過Quest3D的圖(tú)形編程使得整個係(xì)統開發周期縮短,運行效率提高。成功將三維場景虛擬交(jiāo)互技術運用(yòng)於(yú)鑽床教學培訓係統中。
關鍵詞:三維場景交互;教學培訓(xùn)係統(tǒng);虛擬仿真;Quest3D
1 、引言
在機床教學(xué)培訓中,由於資金(jīn)的限製,很難滿足人才培養所需的設(shè)備或(huò)實驗室,並且在實際加工過程中,由於操作的不當,往往會造成設備的(de)損失以及人員的傷(shāng)害。而虛擬現實技術開發的培訓係(xì)統可以很好地解決資金和安全的難題(tí),並能起(qǐ)到實時培(péi)訓的效果。
近年,國內外關於虛擬現實技術在機床(chuáng)中應用的研究很多。文獻[1]將Pro/E的NC代碼自動生成技術和VERICUT的加工仿真功能結合起來,提出了一種Pro/E 和VERICUT 聯合運用的虛擬機床技術。文(wén)獻[2]將Vericut 和(hé)Master-CAM結合,實現了機床的仿真過程,該仿真易學易用,可作為(wéi)教(jiāo)學中對機床教學的一種補充。文獻[3]利用VRML 與JavaScript 並結合VC++6.0 和OpenGL 開發了一個基於Web 的加工中心虛擬加工仿真係(xì)統,可實現(xiàn)Web 環境下機床三維瀏覽(lǎn),運動仿真,裝配顯示等功能。文獻[4]實現了在Open Inventor 平台下數控機床的三維可視化操作仿真係統,提出了一種(zhǒng)逼真的虛擬環境下的數控機床操作方法。文(wén)獻(xiàn)[5]基於VRML 和Unity3D 提出了一種虛擬現實在人機交互中的應(yīng)用,但其(qí)人機交互界麵性效果不是很好。
文獻(xiàn)[6]通過對數(shù)控車(chē)削仿真係統(tǒng)的開(kāi)發與研究,實現了切削加工的動態顯示。文獻[7]基於(yú)VC++與OpenGL 開發了虛擬(nǐ)數控加工仿真(zhēn)係統,通過對G代碼的讀取和自定義輸入,實現了車削加工的動態仿(fǎng)真。文獻[8]基於Open Inventor 提出了一種數控(kòng)培訓係統的現實方案,並打破了傳(chuán)統數控仿真軟件的操作界(jiè)麵,在立體投影環境中具(jù)有深度沉浸感,交互性強。文獻[9]提出利用虛擬現實技術,網絡技(jì)術和多媒體技(jì)術,開發了基於VRML 和C/S 結(jié)構(gòu)模式的集培訓與考核(hé)功能於一體的數(shù)控加(jiā)工實訓(xùn)係統。楊麗娟[10]利用VisualBasic 6.0 開發的可視化數控車削虛擬教學係統,雖然實現了程序編輯,機床操作,參數設置等內容,但(dàn)是該係統采用界麵式的操作,和現實(shí)機床的操作有所區別,不能建立很深的沉浸感,並且采用基礎語言編程,使得係(xì)統開發周(zhōu)期較長。楊萍,韓曉(xiǎo)明等[11]將Quest3D 技術應用於(yú)虛擬駕駛平台係統開發,並實現了駕駛模擬係統中運(yùn)動物體的物理仿真。文獻[12]利用建模工具Solidworks和3Ds Max 建立火箭炮的(de)火控係統的3D 模(mó)型,通過Virtools 建立互動接口,實現火箭炮的虛擬教學係(xì)統(tǒng)方案。
文獻[13]在虛擬(nǐ)機床及虛擬(nǐ)工藝回顧中提到早期國外對於虛(xū)擬現實在機械工藝中的研(yán)究主要在於虛擬工藝環(huán)境的研究;而近年來開辟了仿(fǎng)真技術,建立了一些虛擬機床以及虛擬機械加工工藝的係統,有的基(jī)於網絡(luò),有的係(xì)統則是強調硬件交互能力。這些研究在虛擬機床仿真方麵(miàn)都取得了一些進展,但總的來說,這些研究主(zhǔ)要(yào)存在以下局限(xiàn)性:沒有形成(chéng)一套完(wán)整的係統;大多係統基於基礎語言開發的,開發難度大(dà)、周期長,功能實現(xiàn)起來困難;有的係統對計算機配(pèi)置要求很高,一般都基於高檔圖形工作站;所有係統都是針對數控機床加工仿真的,沒有一套專(zhuān)門(mén)針對普通(tōng)機床教學和培訓開發的係統。本文(wén)基於Quest3D 平台(tái)提出了一(yī)種針對機床仿真(zhēn)教學的培訓係統,該方案從虛擬環境上不但考慮了環境的視覺,還加入了機床運行時的聲音環境,增強了係統(tǒng)的沉寖感(gǎn);在人機交互式(shì)上,郭建,汪廣(guǎng)擴等(děng)[14]基於Quest3D 采用二維按鈕觸控方式,開發了一套關於(yú)車床教學的培訓係統。
而對(duì)鑽床培訓係統采用三維場景交互的方(fāng)式,使係統的交互性更貼近現實。通過solid edge 建立機床的三(sān)維實體模型,接(jiē)著導入(rù)3DMax 進行渲染並導出.X文件,最(zuì)後(hòu)通(tōng)過Quest3D 平台(tái)實現三維場景的人機交互。另外,教學係統還應(yīng)起到引導學員進行正確操作的作(zuò)用,該係統在界麵中不但給出了機床工作時的主要參數,還給出了每個按鈕的功能(néng)及操作提示,使得界麵更加人性化。用戶在操作係統的過程中,具有較為真(zhēn)實的多種感知體驗,強化了人員的參與感,給學習(xí)者留下較為深刻的印象。
2 、係統的總體設計
2.1 係統的總體框架
本(běn)文中虛擬鑽床教學培訓係統由五個模塊組成,分別是:三維顯示模塊、運動控製模塊、人機交互模塊、數據(jù)采集與處理模塊、場景聲控模塊。其結構如圖1。三維顯示模(mó)塊以(yǐ)及聲控模塊主要是(shì)對三(sān)維(wéi)虛擬場景的一個模擬,是整個係統人機交互界麵的基礎,人機交互模塊即實現用戶在麵向三維場景時(shí)對係統進行操作,而運動控製模(mó)塊則是根(gēn)據用戶的操作信息,將驅動相應的三(sān)維(wéi)實體做出與之對(duì)應的運動,最終通過數據模塊(kuài)將某些重要實體的運動信(xìn)息采集起(qǐ)來經過運算(suàn)處理後在場景中顯現出相應的數據。
圖1 係統總體框架
2.2 鑽床運動的總體設計
現實中,鑽床(chuáng)主要由床身,主軸,主軸箱,電機,工作台(tái),升降主軸,鑽頭以及一些按鈕或手柄組(zǔ)成。從實際(jì)出發,將鑽床運動分為四個部分:按鈕和手柄的運動、工作台(tái)的運動、刀具的運動(dòng)、主軸的運動。其結構如圖2。
圖(tú)2 鑽床運動框架
3 、係統的開發過程
3.1 三維顯(xiǎn)示模塊設計
3.1.1 三維模型的建立與導入
本教學係統使用solid edge 根據收集的二維圖紙建立Z5140 鑽床(chuáng)的三維模型,在建模過程中,沒有畫出鑽床內部的細(xì)節(jiē),隻是對機床的外觀進行了建模;將建好的模型導出為STL 格式,再導入到(dào)3DMax 軟件進行渲染,並經過坐標的變換處理後導出為.X格式文件。將.X文(wén)件(jiàn)以single object 的類型導入到Quest3D中。
3.1.2 係統(tǒng)場景的設置
場景設置主要包括光照設置、攝影機視角設置、貼圖效果設置、環境音效設(shè)置等。
場景渲染如圖3 所示。
圖3 場景渲染
對於場景的渲染(rǎn),一般通過在渲染通道下加入物體相機和燈光以及需要渲染的三維物體,通過該(gāi)場景(jǐng)渲染模塊,可以給人展示逼真的三維效(xiào)果(guǒ),係統選用物體注視相機(Object Inspection Camera)作為(wéi)場景的交互(hù)窗口,還可以通過鼠標來(lái)旋轉場景和對場景進(jìn)行縮放。
光照設置,環(huán)境音效(xiào)以及貼圖效果(guǒ)設置的主要(yào)目的是(shì)給用戶(hù)帶來視覺衝擊,增(zēng)強用戶的沉浸感(gǎn)和係統(tǒng)的交互性。光源的位置通過運動矩陣來調節,整個場景(jǐng)主要以平行光作為主光源,采(cǎi)用點光源對某(mǒu)些陰影部分進行光照的(de)補償,使整個場景具有(yǒu)光照強度的(de)變化的同時而又不會造成某些區域沒有光照,這樣有利於(yú)用戶對(duì)機床狀態的一個全局把(bǎ)控。對於機床運行時,係統給出了(le)一個機床運行時.wav 格式的聲音文件,當用戶觸發並啟動機床時,係統將會自動發出機床運轉時的聲音,給人更深的真實性和沉浸感。
係統音效(xiào)控製文(wén)件(jiàn)如圖4 所示。
圖4 係統音效控製文(wén)件
3.2 運動控製模(mó)塊的設計
當用戶在對機床進(jìn)行操作時,通過對用戶輸入信息的采集,再(zài)對采集的信息進行邏輯(jí)判斷並執行相應的運算操作,獲取相應的物(wù)體狀態信息,最後將物體信息傳輸到物體的運動信息模塊,從而達到用戶機床能(néng)按照用戶(hù)的(de)操作進行相應的運動的(de)目的。運動模塊的設計思如圖5。
圖5 運動模塊設計思路
3.2.1 機床各(gè)部件基本運動的實現
三維交互場景中的機床是(shì)由多(duō)個模型裝配而成,每個模型(xíng)都有一個獨(dú)立的運動矩陣,矩陣裏存(cún)有模型的位置(zhì)和比例信息,物體的(de)運動則是(shì)通過改變矩陣中的位置向量和旋轉向量來改變(biàn)物體的狀態。
本(běn)係(xì)統通過GUI 和機(jī)床三維實體觸控來實現物體(tǐ)狀(zhuàng)態信息的切換,GUI 按鈕主要用於機床的複位操作(zuò)以及工藝的選擇。機床(chuáng)各部件的(de)運動(dòng)關係則是通過檢測鼠標與機床(chuáng)實體的觸控來達到0,1 的信(xìn)息的切換,並根據需(xū)要,通過expression value 通(tōng)道編輯的算式使鼠標觸控時的值可以在(zài)某個範圍內循環,進而擴展鼠標觸控時的0,1 狀態到更多的狀態。本係(xì)統中主軸自動進給(gěi)搖杆手柄具有3 個狀態(tài),手柄當(dāng)前值OLD 在- 1~3 之間循環,通過鼠標每次觸(chù)發的值傳給expression value 通道(dào),通過式(1)的(de)邏輯計算輸出狀態分別為0,1,2,實現手柄三個狀(zhuàng)態的循環。
OLD > 2|OLD < 0?0:(A&B) - (A&C) + OLD (1)式中OLD 表示通道當前(qián)值,ABC 表示輸入(rù)的0,1 值,當前值大於2 或者小於0 時,當前值自動置0,否則在當(dāng)前值的(de)基礎(chǔ)上加上(shàng)一個(gè)有效的(de)用戶輸入(rù)值。程序中(zhōng)-1對應的手柄狀態和0 所對應的狀態相(xiàng)同。
速(sù)度控(kòng)製操(cāo)作杆一的控製文件如圖6 所示。
圖6 速度控製操作杆一的控(kòng)製文件
在(zài)矩陣變換過程中,本係(xì)統通過機床實體觸控時產生(shēng)的值賦值給expression value 通道,經過算式計算(suàn)來實現運動矩陣(zhèn)的動態改變。具體(tǐ)實現過程為:首(shǒu)先通過鼠標按鍵的按下(xià)和三維實體的碰撞(zhuàng)來產生觸控信號,然後(hòu)經if 語句,當條件(jiàn)成(chéng)立時將按鍵的有效輸入信息賦值到value 通道,再通過gan1state 通道確定gan1 最終對應的狀(zhuàng)態信息。
3.2.2 物體運動坐標係位置(zhì)的變(biàn)換
由於.X文件導入Quest3D後的模型坐標可能不在幾何中心(xīn)上,考慮到物體的運動(dòng)與(yǔ)物體坐(zuò)標係的位置信(xìn)息有(yǒu)關(guān),為此(cǐ),在控(kòng)製物體運動時(shí),希望物體坐標(biāo)係能在物體的幾何中心上,本文提出兩種改變坐標原點的方法。對於一些幾何中心複雜,並且與很多物體的運動相(xiàng)關(guān)的(de)物體,本係統采用父子關(guān)係(xì)來實現這些部件的運動,即通過將父子關係物體移動到物體的中心,便可實現物體坐標(biāo)係的間接等效移動,並且可以(yǐ)達到同時操控幾個物體的目的,實現(xiàn)物體間的協調運(yùn)動。采用該項技術可以有效地(dì)避(bì)免繁瑣和重複的編程,提高編程效率,使程序更加優化(huà),不足之處在於將物體移到另一個物體的(de)幾何中心非(fēi)常困難。但隻需要將場景中(zhōng)父物體的運動矩陣的快捷方式連接到(dào)子物體的father通道上便可建立一對父子關係。
對(duì)於某些物體,由於自身結構的簡單,可以通過在物體通道下的Off Set Matrix 通道(dào)連接一個矩陣通道,雙擊矩陣(zhèn),並切換到動畫製作界麵下(xià),改變(biàn)矩陣中的相關數(shù)值,便可移動坐標到物體(tǐ)的幾何中心上,在移(yí)動過程中可以通過去除渲染(Culled Wire Rendering),觀察物體的線條(tiáo)信息更易找準物體的幾何中心。
3.3 三維實體碰撞檢測
在加工仿(fǎng)真過程中,需要利用碰撞檢測判斷刀具是否接觸到工件,以及顯示工件接觸到刀具過後的變形效果。由於道具模型比較複雜,且(qiě)碰撞檢測是通過模型麵片相交來實現的,為(wéi)了減少碰(pèng)撞檢測時的計(jì)算(suàn)量(liàng)。本係(xì)統采用規則的模型球體來參與物體的碰撞檢(jiǎn)測(cè),利用父子關係,使它跟隨主體運動(dòng)。本係(xì)統依靠該方法成功實(shí)現鑽床鑽削工件的虛擬加工過程仿真。
3.4 機床運動參(cān)數采集和處理(lǐ)模塊
為了方便用戶實時了解機床的工作(zuò)情況,合理調節機床運動,本係統設置了數據(jù)采集(jí)與顯示模塊。數據采集與顯示流程如圖7 所示。
圖7 數據(jù)采集與顯示流程
在(zài)虛擬環境中,所能采集到的(de)數據是機床模型尺寸和運動參數(shù),需要對采集的數據進行一些後處理。係統運行時(shí),通道中的數據都是動態變化的,隻(zhī)需要把相關通道數據的快(kuài)捷方式連接到數據采集通道,通過expressionvalue 通道對數據進(jìn)行處理(lǐ)後,再通過2D貼(tiē)圖方式顯(xiǎn)示在GUI 界麵上。
轉速數據顯示程(chéng)序模塊如圖8 所示。
圖8 轉速數據顯示程序模塊
3.5 場景交互界麵設計
由於鼠標在三維模型上的觸控檢測需要判斷鼠標是否與實體發生了碰撞,以及鼠標所指向的按鈕(niǔ)的功用是什(shí)麽,該操作有哪些注意事項,這些都需要(yào)設計(jì)者予以考(kǎo)慮。為此,本係統通(tōng)過改(gǎi)變操作手(shǒu)柄和按(àn)鈕等實體模型的顏色來提示用戶鼠標已經指向了(le)相關手柄(bǐng)或者按鈕,一旦鼠標光標和手柄產生碰撞,信息提示區就會顯示該手柄的功能及對應的(de)機床運動參數,使用戶能夠免(miǎn)去背誦(sòng)繁雜的操作手冊(cè)。並且能指(zhǐ)導用戶(hù)按照正確的工藝順序以及規範的操(cāo)作流程進行機床的操作。對於模型顏色(sè)的(de)改變,本係統是通過改變物體材質中的emissive 特性實現(xiàn);並通(tōng)過邏輯的判斷(duàn),采用2D 貼圖的(de)方式,將文字提示信息展(zhǎn)現在場景特定的位置(zhì)。另外本係統在(zài)該項技術的基礎上建立了三維交互式操作,通過鼠(shǔ)標與三維實體觸碰檢測實現用戶對機床的操作,在Detect Mouse Collision 通道後,跟被碰物體便可實現(xiàn)鼠標與物體的碰撞檢測,通過這種碰撞檢(jiǎn)測,為三維(wéi)場景交互的設計奠定了基礎。
三(sān)維場景交(jiāo)互操作設計如圖9 所示。
圖9 三維場(chǎng)景交互操作(zuò)設計
4 、係統運行仿真實例
通過把鑽床的三維實(shí)體模型導(dǎo)入(rù)到3Dmax 中渲(xuàn)染,再利用Quest3D開發平台,成功(gōng)開發了Z5140 立式鑽床虛擬教學及其培訓係統。如圖10、圖11 所示(shì),用戶可以利用鼠標對機(jī)床(chuáng)模(mó)型進行(háng)視角窗口的變換;通(tōng)過GUI按鈕或者機床(chuáng)自(zì)身的控製搖杆可(kě)進行虛擬加工仿真(zhēn)操作(zuò);通過數據顯示區,用(yòng)戶可以在界麵左上角實時了解到機床的工(gōng)作參數。作為(wéi)一(yī)個培訓係統,不(bú)僅(jǐn)應該有可以模擬真實的場景(jǐng)與(yǔ)操作,還應在故障診斷仿真功能上起到類似教師的作用[15]。設計者在界麵上更加注重係統的教學功能,設置了信息提示區,使用戶能夠了(le)解到各個(gè)觸控裝置的作(zuò)用,並且給予用戶正(zhèng)確操作的提示,起到了操作指導的作用。
圖(tú)10 鑽削工藝(yì)仿真
圖11 擴孔工藝仿(fǎng)真
從圖10、圖11 可以(yǐ)看到,當鼠(shǔ)標接觸到三角(jiǎo)搖杆時,搖杆顯示為高(gāo)亮,信息區具(jù)有搖杆操作信息以及當前進行工藝正確性的提示,從而使用戶更(gèng)好地了解到機(jī)床自身正確(què)的操作規程。
5 、結(jié)束語
采(cǎi)用Quest3D平台開發的(de)程序,可以直接導出為.exe文件,該格式文件可以獨立安裝運行(háng),與(yǔ)三維實體建(jiàn)模的仿真係統相比對運行係(xì)統的配置具有較低的要求,因為(wéi)Quest3D 裏麵(miàn)的模型是將CAD 中實體模型進(jìn)行(háng)格式(shì)轉化與優化處理後的殼體模型。在開發時,設計者可(kě)以借(jiè)助(zhù)於Quest3D大量的功能模塊,避(bì)免了基於基礎語言開發的繁瑣編程過程,達到縮短開發周期的目的。在未來的研究中,將會在本係統的基(jī)礎上完善鑽床內部的三(sān)維模型(xíng),繼續(xù)開發一套鑽床虛擬裝配訓練係(xì)統,讓用戶(hù)通過使用本係統不僅能夠(gòu)學習鑽床(chuáng)加工工藝,還能(néng)夠通過鑽床內部機械結構了解鑽(zuàn)床的基本工作(zuò)原理,為以後處理機床故障奠定基礎。
如果您有機床行業、企業相關新聞(wén)稿件發表,或進行(háng)資訊合(hé)作,歡迎聯係本網編輯部, 郵箱:skjcsc@vip.sina.com
- 2024年11月 金屬切削機床產量數據(jù)
- 2024年(nián)11月 分地區金屬切削機床產量數(shù)據
- 2024年11月 軸(zhóu)承出口情況
- 2024年11月 基(jī)本型乘用車(chē)(轎車(chē))產量數據
- 2024年11月 新能(néng)源汽車產量數據(jù)
- 2024年11月 新能源汽車銷量情況
- 2024年(nián)10月 新能源汽車產量數據
- 2024年10月 軸承出口情況
- 2024年10月 分地區金屬切削機床產量數據
- 2024年10月 金屬切削機床產量數據
- 2024年9月 新能源汽車銷量情況
- 2024年8月 新能源(yuán)汽車(chē)產量數據
- 2028年8月 基本型乘用車(轎車)產量數據
- 機械加工過(guò)程圖示
- 判斷一台加工中心精度的幾(jǐ)種(zhǒng)辦法(fǎ)
- 中(zhōng)走(zǒu)絲線切割機床的(de)發(fā)展趨勢
- 國產(chǎn)數控係統和數控機床何去(qù)何從?
- 中國的技術工人都去(qù)哪裏了(le)?
- 機械老板做了十多年,為何(hé)還是小作坊?
- 機械行業最新自殺性營銷(xiāo),害人(rén)害己!不倒閉才
- 製造業大逃亡
- 智能時代,少談點(diǎn)智造,多談點製(zhì)造
- 現實麵前,國人沉默。製造業的騰飛,要(yào)從(cóng)機床
- 一文搞懂(dǒng)數控車床加工刀具補償功能
- 車床鑽孔攻螺紋加工方法及工裝設計
- 傳(chuán)統鑽削與螺旋(xuán)銑孔加工工(gōng)藝的區(qū)別