田 力, 范秀敏,2, 劉振峰, 鄧逸辰
(1. 上海交通大學(xué) 機(jī)械與動(dòng)力工程學(xué)院, 上海 200240;2. 上海市網(wǎng)絡(luò)化制造與企業(yè)信息化重點(diǎn)實(shí)驗(yàn)室, 上海 200030)
?
創(chuàng)新機(jī)構(gòu)拼裝與運(yùn)動(dòng)學(xué)仿真虛擬實(shí)驗(yàn)平臺研究
田 力1, 范秀敏1,2, 劉振峰1, 鄧逸辰1
(1. 上海交通大學(xué) 機(jī)械與動(dòng)力工程學(xué)院, 上海 200240;2. 上海市網(wǎng)絡(luò)化制造與企業(yè)信息化重點(diǎn)實(shí)驗(yàn)室, 上海 200030)
通過分析真實(shí)實(shí)驗(yàn)流程,基于OSG(OpenSceneGraph)圖形渲染引擎及Bullet物理引擎,提出根據(jù)機(jī)構(gòu)設(shè)計(jì)方案,在虛擬環(huán)境中進(jìn)行機(jī)構(gòu)拼裝,并對完成拼裝的機(jī)構(gòu)進(jìn)行運(yùn)動(dòng)學(xué)仿真的實(shí)現(xiàn)方法,包括虛擬構(gòu)件的信息建模與管理、裝配約束特征識別、約束解算及機(jī)構(gòu)運(yùn)動(dòng)學(xué)自動(dòng)建模與運(yùn)動(dòng)解算等?;谶@些方法,開發(fā)了機(jī)構(gòu)拼裝與運(yùn)動(dòng)仿真虛擬實(shí)驗(yàn)平臺,以曲柄搖桿與搖桿滑塊機(jī)構(gòu)拼裝實(shí)驗(yàn)對實(shí)現(xiàn)方法進(jìn)行了驗(yàn)證。
虛擬實(shí)驗(yàn); 虛擬裝配; 機(jī)構(gòu)運(yùn)動(dòng)仿真; Bullet
機(jī)械基礎(chǔ)實(shí)驗(yàn)教學(xué)是機(jī)械教學(xué)中不可或缺的重要環(huán)節(jié)。通過實(shí)驗(yàn),學(xué)生不僅能加深對課程理論知識的理解和掌握,而且能將理論知識與實(shí)際應(yīng)用結(jié)合起來,在鍛煉學(xué)生動(dòng)手能力的同時(shí),也能鍛煉學(xué)生分析問題、解決問題的能力。傳統(tǒng)的機(jī)械基礎(chǔ)實(shí)驗(yàn)面臨資金投入大、實(shí)驗(yàn)過程損耗大、實(shí)驗(yàn)室管理難度大及設(shè)備維護(hù)費(fèi)用高等突出問題[1]。
筆者在課題組以往虛擬裝配領(lǐng)域研究[2]的基礎(chǔ)上,對機(jī)構(gòu)拼裝與運(yùn)動(dòng)仿真虛擬實(shí)驗(yàn)平臺(mechanical assembly virtual experiment platform, MAVEP)進(jìn)行了創(chuàng)新研究和成功應(yīng)用。
機(jī)構(gòu)拼裝及運(yùn)動(dòng)仿真虛擬實(shí)驗(yàn)是機(jī)械類虛擬實(shí)驗(yàn)的一種。許多學(xué)者對這類實(shí)驗(yàn)進(jìn)行了研究,提出的實(shí)現(xiàn)方案主要分為3類。
第一類是將操作過程錄制為視頻進(jìn)行演示教學(xué)。文獻(xiàn)[3]通過動(dòng)畫演示典型機(jī)構(gòu)的運(yùn)行效果;文獻(xiàn)[4]基于Solidworks的網(wǎng)絡(luò)瀏覽器eDrawings建設(shè)了機(jī)械基礎(chǔ)網(wǎng)絡(luò)交互式虛擬實(shí)驗(yàn)系統(tǒng),進(jìn)行機(jī)械設(shè)計(jì)教學(xué)輔助演示;文獻(xiàn)[5]基于Cult 3D技術(shù)實(shí)現(xiàn)了機(jī)構(gòu)的裝配復(fù)現(xiàn),并以動(dòng)畫方式實(shí)現(xiàn)對機(jī)構(gòu)運(yùn)動(dòng)的動(dòng)態(tài)顯示。
第二類是對商業(yè)軟件進(jìn)行二次開發(fā),借助商業(yè)軟件內(nèi)核實(shí)現(xiàn)裝配及仿真。文獻(xiàn)[6]提出利用Solidworks建立典型機(jī)構(gòu)的三維模型庫,將裝配模型導(dǎo)入ADAMS中進(jìn)行運(yùn)動(dòng)仿真;文獻(xiàn)[7]建立了一種三自由度平面并聯(lián)機(jī)構(gòu)虛擬樣機(jī)實(shí)驗(yàn)平臺,利用ADAMS完成對平面3RRR并聯(lián)機(jī)構(gòu)的仿真分析;文獻(xiàn)[8]設(shè)計(jì)了一套基于Solidworks的虛擬裝配實(shí)驗(yàn)系統(tǒng),采用Cosmosmontion插件進(jìn)行機(jī)構(gòu)運(yùn)動(dòng)仿真分析。
第三類是自主開發(fā)機(jī)構(gòu)裝配和運(yùn)動(dòng)仿真軟件。文獻(xiàn)[9]采用Modelica語言實(shí)現(xiàn)了對典型機(jī)構(gòu)的邏輯運(yùn)算,驅(qū)動(dòng)機(jī)構(gòu)運(yùn)動(dòng)仿真;文獻(xiàn)[10]采用Matlab的SimMechanics仿真模塊實(shí)現(xiàn)對簡單機(jī)構(gòu)的運(yùn)動(dòng)學(xué)解算。但是,目前除了使用商業(yè)軟件外,能支持在三維虛擬環(huán)境中自行設(shè)計(jì)的機(jī)構(gòu)進(jìn)行拼裝,并且拼裝后可進(jìn)行機(jī)構(gòu)運(yùn)動(dòng)仿真的平臺并不多。商業(yè)軟件使用時(shí)需要較高理論知識,學(xué)生需先學(xué)會(huì)軟件的復(fù)雜操作流程,這給本科生的教學(xué)帶來不便。
筆者創(chuàng)新開發(fā)的機(jī)構(gòu)拼裝與運(yùn)動(dòng)仿真虛擬實(shí)驗(yàn)平臺以O(shè)SG(OpenSceneGraph)作為渲染引擎進(jìn)行三維可視化顯示,以Bullet物理引擎支持運(yùn)動(dòng)學(xué)仿真。平臺建有典型虛擬構(gòu)件庫,能選擇構(gòu)件進(jìn)行自由拼裝;在裝配過程中能實(shí)現(xiàn)約束的動(dòng)態(tài)識別,自動(dòng)完成幾何模型至剛體模型、幾何約束至運(yùn)動(dòng)副映射,完成裝配后可進(jìn)行機(jī)構(gòu)的運(yùn)動(dòng)學(xué)仿真。該平臺主要包括兩大功能模塊——CAD環(huán)境建模模塊與虛擬實(shí)驗(yàn)環(huán)境模塊(見圖1),每個(gè)模塊中又分別包含若干子功能模塊。
圖1 機(jī)構(gòu)拼裝與運(yùn)動(dòng)仿真虛擬實(shí)驗(yàn)平臺框架圖
(1) CAD環(huán)境建模模塊。該模塊主要用于創(chuàng)建虛擬構(gòu)件三維模型,同時(shí)利用CAD二次開發(fā)功能編寫接口程序,提取構(gòu)件模型信息并創(chuàng)建構(gòu)件信息文件。接口程序的主要功能包括:交互式幾何特征選取、構(gòu)件模型基本信息提取(包括位置、姿態(tài)、點(diǎn)線面信息等)、約束特征信息生成、信息文件輸出。本文以Pro/E建模軟件實(shí)現(xiàn)。
(2) 虛擬場景控制模塊。該模塊作為平臺的最主要模塊,對虛擬場景進(jìn)行組織管理,其主要功能包括:虛擬構(gòu)件管理、模型操縱控制、虛擬場景更新、視角控制、3D立體顯示支持、分析結(jié)果圖表顯示支持。
(3) 裝配操作仿真模塊。該模塊主要用于進(jìn)行機(jī)構(gòu)裝配仿真操作和建立幾何約束,其主要功能包括:裝配約束自動(dòng)識別和裝配約束確認(rèn)解算。
(4) Bullet機(jī)構(gòu)運(yùn)動(dòng)學(xué)仿真模塊。該模塊支持機(jī)構(gòu)的運(yùn)動(dòng)學(xué)仿真,其主要功能包括:幾何模型至剛體模型映射、運(yùn)動(dòng)副自動(dòng)建模、機(jī)構(gòu)運(yùn)動(dòng)學(xué)解算。
創(chuàng)新機(jī)構(gòu)拼裝與運(yùn)動(dòng)仿真虛擬實(shí)驗(yàn)平臺的關(guān)鍵技術(shù)主要有基于約束特征的構(gòu)件信息建模與管理、裝配約束特征識別與約束解算、機(jī)構(gòu)運(yùn)動(dòng)學(xué)自動(dòng)建模與運(yùn)動(dòng)解算。
2.1 基于約束特征的構(gòu)件信息建模與管理
為實(shí)現(xiàn)機(jī)構(gòu)的自由拼裝,需要對典型構(gòu)件進(jìn)行抽象與統(tǒng)一數(shù)字化建模。為提高交互的實(shí)時(shí)性,在裝配系統(tǒng)中采用了多邊形面片模型對零部件進(jìn)行描述。本文利用Pro/E的二次開發(fā)功能,將幾何實(shí)體模型轉(zhuǎn)換為三角面片模型進(jìn)行零部件的幾何外形描述。但使用三角面片模型進(jìn)行簡化也存在一些問題,如缺失一定的幾何精度、拓?fù)湫畔⒑凸こ淘O(shè)計(jì)信息。因此,需要采用構(gòu)件信息文件與三角面片模型共同描述虛擬構(gòu)件。
利用構(gòu)件信息文件來補(bǔ)充描述完整的構(gòu)件信息,包括構(gòu)件ID、構(gòu)件基本信息、版本信息、屬性信息、幾何拓?fù)湫畔?、約束項(xiàng)信息。
(1) 構(gòu)件ID:它是虛擬構(gòu)件的唯一標(biāo)志,用于區(qū)分與查找各個(gè)虛擬構(gòu)件。
(2) 構(gòu)件基本信息:包括構(gòu)件名稱,構(gòu)件類型,構(gòu)件功能描述,三維模型路徑等,用于對虛擬構(gòu)件進(jìn)行描述以及與三維模型進(jìn)行關(guān)聯(lián)。
(3) 版本信息:包括版本號,創(chuàng)建者,創(chuàng)建日期,修改日期,用于對虛擬構(gòu)件進(jìn)行版本管理。
(4) 屬性信息:它是描述構(gòu)件的物理信息,賦予虛擬構(gòu)件物理特性。
(5) 幾何拓?fù)湫畔ⅲ河糜跇?gòu)建約束項(xiàng)信息并參與約束識別。
(6) 約束項(xiàng)信息:通常有單向和雙向2種約束方式,單向約束即約束信息完全存儲于待裝零部件,而雙向約束將約束信息分解為兩部分,分別存儲于已裝配零部件與待裝零部件。本文采用雙向約束,將每一個(gè)約束分解為2個(gè)約束項(xiàng),約束項(xiàng)由約束類型、約束參數(shù)、約束范圍及構(gòu)成約束項(xiàng)的幾何元素ID構(gòu)成。幾何元素ID與幾何拓?fù)湫畔⒅械膸缀卧匾灰粚?yīng)。每一個(gè)零部件存儲若干約束項(xiàng),若兩個(gè)零部件之間的約束項(xiàng)滿足一定關(guān)系,即可進(jìn)行識別并建立一個(gè)完整的約束。圖2及表1分析了連桿構(gòu)件所具有約束項(xiàng)及組成約束項(xiàng)的幾何元素。
圖2 連桿構(gòu)件幾何元素
約束項(xiàng)類型約束項(xiàng)元素1約束項(xiàng)元素2約束項(xiàng)元素3軸孔約束軸A面A?軸孔約束軸A面B?軸孔約束軸B面A?軸孔約束軸B面B?移動(dòng)約束面A面C面D移動(dòng)約束面B面C面D
由于虛擬實(shí)驗(yàn)平臺中虛擬構(gòu)件數(shù)量較多,有必要對構(gòu)件的幾何模型文件及構(gòu)件的信息文件進(jìn)行管理。本文以XML實(shí)現(xiàn)虛擬構(gòu)件庫對虛擬構(gòu)件進(jìn)行組織管理,以DOM技術(shù)對XML文檔進(jìn)行解析。DOM技術(shù)是基于樹型的解析技術(shù)[11],XML文檔被加載后,在內(nèi)存形成DOM樹,通過遍歷DOM樹,可方便獲取指定構(gòu)件節(jié)點(diǎn)的信息。虛擬構(gòu)件庫的XML形式描述如下:
虛擬構(gòu)件庫的XML描述中包括構(gòu)件幾何模型文件目錄,所有的構(gòu)件模型及構(gòu)件信息文件均存放在該目錄之下進(jìn)行統(tǒng)一管理。對每個(gè)虛擬構(gòu)件的描述包含序號、文件名稱、顯示名稱及參數(shù)等4項(xiàng)信息。
2.2 裝配約束特征識別與約束解算
虛擬裝配過程即建立各零部件之間約束關(guān)系的過程,約束關(guān)系的建立分為兩部分:約束特征的自動(dòng)識別與約束解算。用戶操作待拼裝零部件,平臺根據(jù)用戶的操作意圖,對待拼裝零部件與已拼裝零部件之間可能存在的匹配約束項(xiàng)進(jìn)行識別,由用戶進(jìn)行確認(rèn)。裝配約束識別與約束解算的具體過程如圖3所示。
圖3 裝配約束識別與約束解算過程
在進(jìn)行約束識別時(shí),需要判斷是否存在已裝配構(gòu)件與待裝構(gòu)件接近。已裝配構(gòu)件中通常包含若干已裝配構(gòu)件,利用AABB包圍盒或包圍球相交測試來判斷接近性通常不能滿足精度要求。本文利用已裝配構(gòu)件與待裝構(gòu)件的OBB包圍盒相交測試來判斷兩個(gè)構(gòu)件之間的接近性。但對于桿件,若直接進(jìn)行OBB包圍盒相交測試,則兩桿件發(fā)生穿透時(shí)才相交,真實(shí)性差。因此,要對已裝配構(gòu)件的包圍盒設(shè)定一個(gè)放大系數(shù),將放大包圍盒與待裝構(gòu)件包圍盒進(jìn)行相交測試。OBB包圍盒的相交測試采用分離軸算法[12],調(diào)整已裝配構(gòu)件的放大系數(shù),可以設(shè)定識別精度。包圍盒與待裝構(gòu)件包圍盒相交的已裝配構(gòu)件將被設(shè)定為識別構(gòu)件,進(jìn)行約束項(xiàng)的識別解算。圖4為虛擬構(gòu)件接近識別。
圖4 虛擬構(gòu)件接近識別
在識別出接近虛擬構(gòu)件后,需要識別出匹配的約束對。本文根據(jù)約束的類型、約束幾何元素的相對位置關(guān)系以及約束的尺寸參數(shù)等,來增強(qiáng)約束項(xiàng)識別的準(zhǔn)確性。例如在一個(gè)連桿與一個(gè)轉(zhuǎn)動(dòng)副軸之間建立軸孔約束時(shí),需識別出一對對齊軸線及一對貼合面。虛擬實(shí)驗(yàn)平臺根據(jù)調(diào)整的待裝構(gòu)件的位置姿態(tài),計(jì)算連桿與轉(zhuǎn)動(dòng)副軸中每個(gè)孔或軸的軸線之間的距離,按最小距離識別出用戶希望建立約束的孔與軸的位置;計(jì)算2個(gè)連桿可形成貼合面的各面之間的距離,按最小距離識別出用戶希望建立約束的貼合面。由識別出的軸線與貼合面確定出兩構(gòu)件各自的匹配約束項(xiàng)。
2.3 基于Bullet的機(jī)構(gòu)運(yùn)動(dòng)學(xué)仿真
Bullet是一個(gè)跨平臺的物理引擎,支持三維碰撞檢測、剛體動(dòng)力學(xué)與柔體動(dòng)力學(xué)解算。本文利用Bullet實(shí)現(xiàn)機(jī)構(gòu)的運(yùn)動(dòng)學(xué)仿真。圖5是利用Bullet進(jìn)行運(yùn)動(dòng)學(xué)解算的流程。在進(jìn)行運(yùn)動(dòng)學(xué)解算前,需要將裝配仿真過程中導(dǎo)入的幾何模型及建立的幾何約束關(guān)系轉(zhuǎn)換成Bullet支持的剛體模型及運(yùn)動(dòng)副。剛體模型用于描述參與仿真的物理實(shí)體模型;運(yùn)動(dòng)副用于描述參與運(yùn)動(dòng)的剛體模型之間的約束關(guān)系;幾何模型用于可視化顯示及裝配仿真。
圖5 基于Bullet的運(yùn)動(dòng)學(xué)解算流程
首先,由OSG描述的三角面片幾何模型轉(zhuǎn)換為由Bullet描述的剛體碰撞模型,支持仿真過程中的碰撞檢測;其次,讀取構(gòu)件信息文件中的物理信息并賦予剛體碰撞模型,形成包含物理信息的完整構(gòu)件描述模型;最后,獲取裝配完成后幾何模型的位置與姿態(tài)信息,設(shè)置剛體模型的位置與姿態(tài)屬性,使兩者保持一致。在幾何模型映射為剛體模型過程中,靜態(tài)構(gòu)件(如機(jī)架)與動(dòng)態(tài)構(gòu)件以構(gòu)件質(zhì)量進(jìn)行區(qū)分:若其質(zhì)量為零,則為靜態(tài)構(gòu)件,在機(jī)構(gòu)運(yùn)動(dòng)過程中保持固定;若其質(zhì)量為正值,則其為動(dòng)態(tài)構(gòu)件,在運(yùn)動(dòng)過程中參與運(yùn)動(dòng)。
Bullet物理引擎基于運(yùn)動(dòng)副進(jìn)行運(yùn)動(dòng)解算。用戶在進(jìn)行機(jī)構(gòu)的拼裝過程中,創(chuàng)建虛擬構(gòu)件之間的幾何約束。在運(yùn)動(dòng)學(xué)仿真前,需實(shí)現(xiàn)由幾何約束至運(yùn)動(dòng)副的自動(dòng)建模,提取幾何約束中有關(guān)信息進(jìn)行組織轉(zhuǎn)換,建立Bullet引擎所支持的運(yùn)動(dòng)副。通常在形成運(yùn)動(dòng)約束關(guān)系的兩個(gè)運(yùn)動(dòng)構(gòu)件上分別建立約束坐標(biāo)系來共同描述運(yùn)動(dòng)副。約束坐標(biāo)系相對虛擬構(gòu)件自身局部坐標(biāo)系建立,以相對于局部坐標(biāo)系的變換矩陣表達(dá),在機(jī)構(gòu)運(yùn)動(dòng)過程中,約束坐標(biāo)系相對虛擬構(gòu)件保持不變。以軸孔約束至鉸接副的自動(dòng)建模為例,軸孔約束利用軸與孔的一對軸線及一對貼合面建立,如圖6所示。
圖6 軸孔約束至鉸接副自動(dòng)建模
建立鉸接副需建如圖6所示的2個(gè)約束坐標(biāo)系,約束坐標(biāo)系以相對構(gòu)件局部坐標(biāo)系的變換矩陣表達(dá):
式中,Mc為約束坐標(biāo)系變換矩陣,Ml為構(gòu)件局部坐標(biāo)系變換矩陣,Ml_c為局部坐標(biāo)系至約束坐標(biāo)系的轉(zhuǎn)換矩陣。Ml_c通過提取幾何約束信息計(jì)算建立。鉸接副繞z軸旋轉(zhuǎn),必須保證兩構(gòu)件約束坐標(biāo)系z軸同向,否則在機(jī)構(gòu)運(yùn)動(dòng)仿真時(shí),構(gòu)件會(huì)發(fā)生翻轉(zhuǎn),破壞運(yùn)動(dòng)副。
完成幾何模型至剛體模型、幾何約束至運(yùn)動(dòng)副的自動(dòng)轉(zhuǎn)換后,設(shè)置驅(qū)動(dòng)及仿真參數(shù)。Bullet引擎根據(jù)剛體之間的運(yùn)動(dòng)副關(guān)系及驅(qū)動(dòng)信息,對機(jī)構(gòu)運(yùn)動(dòng)進(jìn)行解算,計(jì)算每個(gè)時(shí)刻各運(yùn)動(dòng)構(gòu)件剛體模型的位置及姿態(tài)、速度、加速度等信息,以計(jì)算結(jié)果設(shè)置剛體模型對應(yīng)屬性,剛體模型再根據(jù)自身屬性更新幾何模型相應(yīng)的狀態(tài),實(shí)現(xiàn)機(jī)構(gòu)運(yùn)動(dòng)的可視化仿真。
以C++作為開發(fā)語言,Visual Studio 2005作為開發(fā)工具,以O(shè)SG圖形渲染引擎及Bullet物理引擎作為支持,開發(fā)了創(chuàng)新機(jī)構(gòu)拼裝與運(yùn)動(dòng)仿真虛擬實(shí)驗(yàn)平臺,實(shí)現(xiàn)了虛擬場景創(chuàng)建與管理、模型節(jié)點(diǎn)維護(hù)、基本模型操作等虛擬現(xiàn)實(shí)基本功能。該平臺適用于學(xué)生進(jìn)行機(jī)構(gòu)拼裝仿真、機(jī)構(gòu)運(yùn)動(dòng)分析、機(jī)構(gòu)設(shè)計(jì)方案驗(yàn)證等。典型的機(jī)構(gòu)拼裝實(shí)驗(yàn)過程如圖7所示。
圖7 實(shí)驗(yàn)過程
以曲柄搖桿與搖桿滑塊機(jī)構(gòu)的拼裝與仿真為例,在3D環(huán)境下進(jìn)行虛擬實(shí)驗(yàn)的具體過程如下。
步驟1:根據(jù)自行設(shè)計(jì)的機(jī)構(gòu)簡圖,在平臺虛擬構(gòu)件庫中選擇所需尺寸的構(gòu)件,將其從構(gòu)件庫導(dǎo)入虛擬場景中,將基座、連桿、轉(zhuǎn)動(dòng)副軸、移動(dòng)副軸等導(dǎo)入虛擬實(shí)驗(yàn)平臺。
步驟2:進(jìn)行虛擬拼裝過程仿真,將各個(gè)虛擬構(gòu)件拼裝成完整機(jī)構(gòu)。依次調(diào)整各個(gè)構(gòu)件的位置與姿態(tài),對動(dòng)態(tài)識別約束進(jìn)行確認(rèn),建立各個(gè)構(gòu)件之間的幾何約束關(guān)系。
步驟3:通過平臺功能,檢查各個(gè)構(gòu)件之間運(yùn)動(dòng)副的正確性,對錯(cuò)誤運(yùn)動(dòng)副進(jìn)行修改,選定主動(dòng)件,設(shè)定驅(qū)動(dòng)信息。
步驟4:設(shè)置仿真運(yùn)行參數(shù)、設(shè)置仿真開始時(shí)間和結(jié)束時(shí)間、仿真步數(shù)或仿真步長。
步驟5:進(jìn)行機(jī)構(gòu)運(yùn)動(dòng)仿真,查看仿真結(jié)果。
利用Pro/E建模軟件建立同樣的曲柄搖桿與搖桿滑塊機(jī)構(gòu)并對其運(yùn)動(dòng)分析,將分析結(jié)果與創(chuàng)新機(jī)構(gòu)拼裝與運(yùn)動(dòng)仿真虛擬實(shí)驗(yàn)平臺的分析結(jié)果進(jìn)行了對比,兩者的分析結(jié)果一致(見圖8),由此驗(yàn)證了該實(shí)驗(yàn)平臺分析結(jié)果的正確性。
圖8 曲柄搖桿與搖桿滑塊機(jī)構(gòu)運(yùn)動(dòng)分析結(jié)果對比
為構(gòu)建創(chuàng)新的機(jī)構(gòu)拼裝與運(yùn)動(dòng)仿真虛擬實(shí)驗(yàn)系統(tǒng),對CAD軟件進(jìn)行了二次開發(fā),采用XML對虛擬構(gòu)件進(jìn)行組織與管理,利用擴(kuò)大OBB包圍盒進(jìn)行相交測試,實(shí)現(xiàn)約束動(dòng)態(tài)識別并建立虛擬構(gòu)件之間的約束,以Bullet實(shí)現(xiàn)機(jī)構(gòu)的運(yùn)動(dòng)學(xué)解算。這些方法的提出,解決了根據(jù)設(shè)計(jì)簡圖進(jìn)行自由拼裝后,系統(tǒng)能自動(dòng)進(jìn)行機(jī)構(gòu)運(yùn)動(dòng)學(xué)仿真的問題。虛擬實(shí)驗(yàn)平臺采用積木式組合裝配方案,支持3D立體顯示,操作過程簡單,更好地模擬了實(shí)物的拼裝實(shí)驗(yàn)。
References)
[1] 陳小紅.基于仿真軟件的虛擬實(shí)驗(yàn)設(shè)計(jì)與應(yīng)用[D].上海:上海師范大學(xué),2010.
[2] 楊潤黨,武殿梁,范秀敏,等.基于約束的虛擬裝配技術(shù)研究[J].計(jì)算機(jī)集成制造系統(tǒng),2006(3):413-419.
[3] 付順玲,王洪欣,李允旺.機(jī)械原理虛擬實(shí)驗(yàn)系統(tǒng)的開發(fā)與應(yīng)用[J].實(shí)驗(yàn)室研究與探索,2004,23(2):56-57,62.
[4] 姜淑敏,楊洋,馮巍.機(jī)械基礎(chǔ)網(wǎng)絡(luò)交互式虛擬實(shí)驗(yàn)室的研究與實(shí)現(xiàn)[J].實(shí)驗(yàn)室研究與探索,2005,24(9):17-19,47.
[5] 胡林嵐,包崢嶸.基于Cult 3D的機(jī)械創(chuàng)新虛擬實(shí)驗(yàn)項(xiàng)目研究[J].實(shí)驗(yàn)室研究與探索,2013,32(5):250-254.
[6] 張繼忠,隋博,秦世安,等.機(jī)構(gòu)運(yùn)動(dòng)方案仿真實(shí)驗(yàn)平臺研究[J].實(shí)驗(yàn)科學(xué)與技術(shù),2010(3):17-19.
[7] 許馮平,趙軍,李月滿.平面三自由度并聯(lián)機(jī)構(gòu)虛擬實(shí)驗(yàn)平臺的設(shè)計(jì)[J].實(shí)驗(yàn)技術(shù)與管理,2008,25(6):79-82.
[8] 楊文敏,朱山立,吳明亮.虛實(shí)結(jié)合開設(shè)機(jī)構(gòu)運(yùn)動(dòng)方案創(chuàng)新設(shè)計(jì)實(shí)驗(yàn)[J].實(shí)驗(yàn)技術(shù)與管理,2006,23(11):21-23.
[9] 馬彥軍,程奐翀,周鑫,等.機(jī)械原理虛擬實(shí)驗(yàn)構(gòu)件統(tǒng)一建模及應(yīng)用[J].實(shí)驗(yàn)室研究與探索,2010,29(10):266-269,287.
[10] Alvarez J C, Su H J. VRMDS: an intuitive virtual environment for supporting the conceptual design of mechanisms[J].Virtual Reality,2012,16(1):57-68.
[11] 劉芳,肖鐵軍.XML應(yīng)用的基石:XML解析技術(shù)[J].計(jì)算機(jī)工程與設(shè)計(jì),2005(10):2823-2824,2839.
[12] 朱洪敏,武殿梁,范秀敏.分布式虛擬裝配環(huán)境中碰撞檢測方法研究[J].系統(tǒng)仿真學(xué)報(bào),2009(22):7154-7159.
Research on experimental platform for innovative mechanism assembly and simulation
Tian Li1, Fan Xiumin1,2,Liu Zhenfeng1,Deng Yichen1
(1. School of Mechanical Engineering, Shanghai Jiao Tong University, Shanghai 200240, China; 2. Shanghai Key Lab of Advanced Manufacturing Environment, Shanghai 200230, China )
A complete virtual machinery experiment platform with mechanical innovation assembly and kinetic simulation modules are built to re-appear the real material experiments. The platform proposes several methods to realized mechanical system assembly according to innovation designing scheme and mechanical system kinetic simulation, including the modeling and management of virtual parts, detection and resolving of assembly constraints, as well as auto-modeling and calculation of kinetic parameters. The platform integrates the above methods and builds a virtual reality environment using OSG graphic render engine and Bullet physics engine. A case study is given under the platform by assembling a crank-rocker-slider mechanism and solving its kinetic parameters.
virtual experiment; virtual assembly; mechanism simulation; Bullet
2014- 07- 26
國家科技支撐計(jì)劃項(xiàng)目(2008BAH29B03);上海交通大學(xué)特色實(shí)驗(yàn)項(xiàng)目(CE204)
田力(1988—),男,江蘇金壇,碩士研究生,研究方向?yàn)樘摂M現(xiàn)實(shí)、虛擬裝配技術(shù)
E-mail:tiantangtl@sjtu.edu.cn
范秀敏(1971—),女,福建南平,博士,教授,博士生導(dǎo)師,研究方向?yàn)閿?shù)字化制造、虛擬現(xiàn)實(shí)、虛擬樣機(jī)技術(shù).
E-mail:xmfan@sjtu.edu.cn
TP391.9
A
1002-4956(2015)2- 0131- 05