• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于虛擬現實的3D打印體驗系統(tǒng)設計與實現

      2017-12-02 01:29:14李子健趙祖燁田誦權張楠
      軟件導刊 2017年11期
      關鍵詞:著色器線管打印機

      李子健+趙祖燁+田誦權+張楠

      摘要:目前,3D打印技術不斷普及,但傳統(tǒng)學習渠道具有一定局限性,且3D打印設備價格昂貴,現場操作也存在一定安全問題。針對上述不足,應用虛擬現實技術,開發(fā)了一個3D打印體驗系統(tǒng)。該系統(tǒng)采用UG對設備建模,Blender對模型進行渲染,通過Unity3D三維引擎開發(fā)平臺完成虛擬場景構建,并通過SteamVR實現虛擬現實裝備HTC Vive與虛擬場景交互。經過虛擬3D打印模型測試,系統(tǒng)可穩(wěn)定運行,提供了一個直觀、安全、高效的3D打印體驗環(huán)境。

      關鍵詞關鍵詞:3D打??;虛擬現實;SteamVR;Unity3D;反向動力學

      DOIDOI:10.11907/rjdk.172589

      中圖分類號:TP319

      文獻標識碼:A文章編號文章編號:16727800(2017)011004403

      0引言

      3D打印技術是通過連續(xù)的物理層堆積,逐層增加材料生成三維實體的技術,又稱為增材制造(Additive Manufacturing,簡稱AM)。作為一種綜合性應用技術,3D打印綜合了數字建模、機電控制、信息、材料科學等諸多前沿技術 [1]。隨著技術的不斷發(fā)展,許多學校開設了相關課程,但通過視頻、圖片、文字的傳統(tǒng)教育方式,由于缺少實際對象,教學效果并不理想,而現場操作具有一定的危險性,且3D打印設備費用較高,更新和維護較為困難。

      針對上述問題,利用集沉浸感、交互性和想象性于一體的虛擬現實技術,設計了基于Unity3d的虛擬現實3D打印體驗系統(tǒng)。使用建模軟件進行三維模型搭建,利用Unity3d構建出3D打印體驗虛擬場景,運用計算機技術、多媒體技術以及HTC Vive虛擬現實硬件構建一個完整的3D打印體驗架構,采用C#語言、.NET框架以及Unity3D平臺對系統(tǒng)進行開發(fā)。該系統(tǒng)可為使用者提供一個直觀、安全、高效的3D打印體驗環(huán)境,激發(fā)學習興趣,同時減少了設備成本、避免了設備安全隱患,具有較高的經濟和安全性。

      1虛擬3D打印系統(tǒng)技術框架

      1.13D打印技術

      3D打印技術屬于快速成型技術中的一種,又稱為增材制造技術。增材制造技術是根據三維CAD的設計數據,使用液體、粉末、絲、片、板、塊等離散材料逐層疊加,制造出實物的數字化制造技術。與傳統(tǒng)加工方式相比, 3D 打印技術將三維實體加工變?yōu)橛牲c到線、由線到面、由面到體的離散堆積成形過程, 極大降低了制造復雜度[2]。

      1.2虛擬現實技術

      虛擬現實(Virtual Reality,簡稱VR)是以計算機技術為核心,結合相關科學技術,生成與一定范圍真實環(huán)境在視、聽、觸感等方面高度近似的數字化環(huán)境,用戶借助必要的裝備與數字化環(huán)境中的對象進行交互作用、相互影響,產生親臨實境的感受和體驗[3]。本系統(tǒng)通過Unity3D開發(fā)引擎并采用SteamVR插件,利用HTC Vive虛擬現實設備完成系統(tǒng)構建,豐富3D打印的體驗場景,不需3D打印裝備也可體驗3D打印技術。

      1.33D打印系統(tǒng)總體設計

      如圖1所示,系統(tǒng)總體設計結構分為4大部分:①虛擬現實交互設備:HTC Vive提供虛擬現實顯示硬件并與Unity中所創(chuàng)建元素之間進行交互;②用戶界面控制系統(tǒng):對打印機進行參數設置及狀態(tài)監(jiān)控;③打印機運行控制系統(tǒng):控制打印機的開機、調平、打印、冷卻等基本操作;④模型分析計算系統(tǒng):對需要打印的模型進行分析,對模型進行簡單的底座支撐計算,并計算打印噴頭的運動軌跡。系統(tǒng)通過HTC Vive虛擬現實裝備進行交互,進入用戶界面設置和控制,完成后進行模型打印,與此同時進行模型分析計算,確定每一層打印時打印噴頭的運動軌跡,最后完成打印。

      圖1總體設計結構

      2系統(tǒng)詳細設計

      2.1模型交互模塊

      交互模塊是虛擬現實系統(tǒng)中一個最為重要的環(huán)節(jié),是對虛擬現實系統(tǒng)場景的還原。系統(tǒng)場景中,打印機模型根據utilmaker的.stp文件,通過Free CAD軟件將模型分塊導出為.obj文件,使用Blender軟件進行詳細的屬性設置,渲染得到.fbx文件。整個漫游場景為一個已有的實驗室風格模型,如圖2所示。其它模型如觸控顯示器等都通過UG繪制導出.stl后,通過Blender轉換為.fbx文件。

      為了提高用戶體驗,增強模型的真實性,在處理過程中對模型進行優(yōu)化:對于用UG建模后的模型,由于表面缺少貼圖,要通過Free CAD將模型的材質相同部分一起導出成.obj模型,再全部導入到Blender中,最后導入到Unity3D中進行更加詳細的設置。如圖3所示,將金屬外殼部分的著色器更改為可以增加環(huán)境反射的Legacy Shaders/Reflective/Specular著色器,并將Reflection Cubemap設置為Cubemap,從而使金屬表面反射出實驗室環(huán)境等。

      圖2虛擬實驗室圖3模型

      2.23D打印機運動模塊

      打印機運動分為打印機噴頭、平臺、打印線材3部分運動。

      打印機噴頭運動分為打印時運動和開始及結束時運動兩種。前者則需要進行打印軌跡點保存,再讓噴頭跟隨軌跡運動。后者運動為移向固定點,只需使用物體移動函數即可。平臺運動分為打印開始、結束時的運動和打印過程中的運動。與噴頭運動類似,前者只需要使用移動函數移動即可。后者則根據噴頭完成一層打印后進行高度下降。打印線材運動則涉及到線材跟隨噴頭運動,為了增強模型的真實性,利用反向動力學(Inverse kinematics)使噴頭和材料組合成關節(jié)式物體實現線材運動。

      2.3模型分析計算模塊

      Unity3D中的材質通過著色器的控制對物體進行著色。著色器包括固定功能著色器、表面著色器及頂點及片段著色器。模型打印過程中應逐漸顯示出來,這種效果需要著色時獲取模型的頂點,只對處于一定高度的部分頂點和面進行著色,但表面著色器無法完成這項工作。本文編寫一種頂點及片段著色器,相當于將模型進行分層渲染,結合C#腳本控制模型的顯示。endprint

      3關鍵技術

      3.1柔體仿真與反向動力學

      3D打印機在打印過程中消耗線材,線材放在機身后由一根線管牽出,線管跟隨噴頭的運動而進行變形??紤]到線管的柔性以提高仿真效果,使用模型骨骼和反向動力學。反向動力學是一種通過先確定子骨骼位置,然后反求推導出所在骨骼鏈上n級父骨骼位置,從而確定整條骨骼鏈的方法[4]。具體過程是:先確定一個自由端的骨骼位置,然后再反向推導出它的父骨骼角度和位置,以此類推,一直推算到固定端處的骨骼,即為由自由端帶動固定端運動的方式。以人體為例,就是由手腳等自由端的運動帶動肩部或身體運動。

      本系統(tǒng)中,線管的固定端連接著打印機,自由端為連接噴頭部分,自由端跟隨噴頭運動,又通過反向動力學帶動剩余骨骼運動,從而達到模擬線管的變形形狀。再通過Blender進行蒙皮操作,使骨骼與模型綁定,為骨骼增加外殼,并通過效果調整影響線管模型變形的權值分配,最終模型如圖4所示,在Unity3d中的設置如圖5所示。

      3.2打印噴頭軌跡設定方法

      在模型的Meshfilter組件中可通過mesh.verticles屬性獲取模型的頂點,從而得到點集。通過遍歷集合中的所有點進行篩選,將模型指定高度的頂點橫縱坐標保存到指定數組中,根據掃描效率設定相應的掃描間距Δy,采用活性邊表法[5],將獲得的每一行掃描線的交點按照x坐標升序排列, 將每一行的掃描線數據根據y坐標升序排列, 由此形成掃描線交點表。根據y值快速獲取該掃描線上所有交點的x坐標,將坐標數組保存至噴頭運動軌跡點的類HeadMoveTrack中,打印機噴頭就會根據掃描線的順序進行移動。實例中的點移動一次,平臺就會下降,進行下一層的運算判斷。由于模型本身建模過程中的分層問題,當打印機設置精度大于模型本身的分層數時,會導致不存在滿足此范圍的頂點坐標。為避免該情況,本系統(tǒng)根據上下兩層的坐標填補,當檢測到實例中存儲的點少于一定數量時,重復進行上一層或下一層運動。

      3.3SteamVR插件使用方法

      VR開發(fā)還需將SteamVR開發(fā)插件中的CameraRig、SteamVR、Status三個Prefab全部導入到scene中,這樣才會進行VR設備識別。

      CameraRig表示整個人的活動范圍。其子物體有頭盔,包括相機和耳機,還有左右手柄。直接將此預設導入后調整Transform組件中的Scale,使其達到人在場景中的合適比例。本系統(tǒng)在VR中使用從手柄發(fā)射出的激光進行操作,通過繼承SteamVR的LaserPointer,并添加雙手的LaserCubeCollider類來實現。

      4VR環(huán)境測試

      根據3D打印機運行順序,對整個系統(tǒng)場景進行截圖。從3D打印機靜止狀態(tài)→選擇調好顏色的材料線圈→安裝至3D打印機→正在進行打印→打印結束拿出打印模型花瓶,效果如圖6所示。

      圖6虛擬3D打印運行效果

      5結語

      本文研究成果雖然是針對FDM(熔融沉積成型)3D打印機仿真打印,但也適用其它3D打印技術的虛擬打印系統(tǒng)開發(fā)。測試結果表明,基于Unity3D的3D打印體驗系統(tǒng)運行流暢,為學習者提供了一個直觀、安全、高效的體驗環(huán)境。通過該平臺,用戶可以快速了解3D打印工作流程,加上真實的環(huán)境音效,可增強現場體驗感,激發(fā)學習興趣。同時,避免了現場實操設備損壞和安全隱患。

      隨著VR技術的不斷發(fā)展,用戶在使用虛擬現實設備時帶來的體驗度將會大大提升。由于這種VR模擬系統(tǒng)帶來的用戶體驗是其它方式無法比擬的,所以,隨著3D打印技術的不斷普及,其它3D打印技術,如SLA(光固化立體造型)、SLS(選擇性激光燒結)等也可利用本系統(tǒng)進行完善。

      參考文獻參考文獻:

      [1]王雪瑩.3D打印技術與產業(yè)的發(fā)展及前景分析[J].中國高新技術企業(yè),2012 (26):35.

      [2]史玉升,張李超,白宇,等. 3D打印技術的發(fā)展及其軟件實現[J].中國科學:信息科學,2015(2):197203.

      [3]龍鉭.三維動畫制作中角色裝配技術的研究和實現[D].上海:上海交通大學,2010.

      [4]趙沁平.虛擬現實綜述[J].中國科學:信息科學,2009(1):246.

      [5]ROGERS D F. Procedural elements for computer graphics[M]. New York: The McGrawHill Companies, 1998:98104.

      [6]ROGERS D F. 計算機圖形學的算法基礎 [M].石教英,譯.北京:機械工業(yè)出版社,2002:8597.

      [7]張李超.快速成型軟件及控制系統(tǒng)的研究[D].武漢:華中科技大學,2002.

      [8]孫家廣.計算機圖形學[M].第3版.北京:清華大學出版社,1998:178180.

      [9]Unity documentation[EB/OL].https://docs.unity3d.com/Script Reference.

      [10]金璽曾.Unity手機游戲開發(fā)[M].北京:清華大學出版社,2013.

      [11]張克發(fā),趙興,謝有龍.AR與VR開發(fā)實戰(zhàn)[M].北京:清華大學出版社,2016:218235.

      責任編輯(責任編輯:杜能鋼)endprint

      猜你喜歡
      著色器線管打印機
      市政工程施工中地下管線的保護問題分析
      基于UE4 實時射線追蹤技術的研究與探討
      裝配式鋼結構電氣線管墻板與樓板預留連接精準定位施工工法研究
      基于Unity Shader石油泄漏現象模擬的研究
      基于IMx6的opengl圖形著色器開發(fā)研究
      中國新通信(2020年2期)2020-06-24 03:06:44
      另類3D打印機
      打印機基板大型注塑模具設計
      中國塑料(2016年7期)2016-04-16 05:25:55
      FDM型混色3D打印機的設計
      淺談線管埋設對房屋裂縫的影響及防治措施
      復制粘貼打印機
      阳原县| 宁夏| 普宁市| 乌审旗| 桂阳县| 汾西县| 于都县| 青州市| 莫力| 嘉义市| 库尔勒市| 轮台县| 屏东县| 麻阳| 泾川县| 延边| 县级市| 射阳县| 溧水县| 志丹县| 合山市| 中阳县| 武宁县| 读书| 万宁市| 文山县| 赣榆县| 杨浦区| 斗六市| 永修县| 唐海县| 高陵县| 万安县| 房产| 垣曲县| 毕节市| 临猗县| 盐津县| 潢川县| 大同县| 罗山县|