專利名稱:基于產(chǎn)品全語義模型的自然交互式虛擬裝配系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種制造業(yè)領(lǐng)域的仿真系統(tǒng),具體是一種基于產(chǎn)品全語義模型的自 然交互式虛擬裝配系統(tǒng)。
背景技術(shù):
裝配是產(chǎn)品的設(shè)計實現(xiàn)過程中關(guān)鍵的一步?;谔摂M現(xiàn)實技術(shù)的交互式虛擬裝 配能夠在虛擬環(huán)境中實現(xiàn)接近真實的產(chǎn)品裝配,并可以在此基礎(chǔ)上進行可裝配驗 證、裝配效率計算,裝配工藝規(guī)劃、裝配線設(shè)計以及人機工效評價等。在產(chǎn)品開發(fā) 過程中使用交互式虛擬裝配系統(tǒng),對減少重復(fù)勞動、降低開發(fā)成本、縮短開發(fā)周期 等具有重要意義。在交互式虛擬裝配系統(tǒng)中,交互操作越自然、越接近實際操作, 則虛擬裝配越接近于真實裝配,由此得到的分析結(jié)果越可靠。
經(jīng)對現(xiàn)有技術(shù)文獻的檢索發(fā)現(xiàn),Antonino Gomes等在《Computer and Graphics》 (計算機與圖形學(xué))(1999年)389 403頁上發(fā)表的"Virtual reality as a tool for verification of assembly and maintenance processes"(面向裝配檢查禾口 維修過程的虛擬現(xiàn)實工具)中提出了基于"碰撞檢測"和"位姿近似捕捉"的虛擬 裝配定位,該技術(shù)中待裝配零件在裝配體中的最終位姿是已知的。在虛擬裝配中, 實時地檢測零件的位姿和定位點位姿的偏差,當偏差達到給定的誤差范圍內(nèi)時,系 統(tǒng)自動將零件的位姿調(diào)整到最終的裝配位姿。但該方法與CAD軟件中的裝配類似, 都無法體現(xiàn)零件的裝配過程。
經(jīng)檢索還發(fā)現(xiàn),楊潤黨等人在《計算機集成制造系統(tǒng)》(2006) 413 419頁上 發(fā)表的"基于約束的虛擬裝配技術(shù)研究"中提出了基于約束處理的交互式虛擬裝配, 首先在裝配過程中自動識別約束,并對識別的約束進行求解,以最小的位姿調(diào)整量 滿足新約束,然后對已經(jīng)確認約束進行運動自由度的規(guī)約,采用基于廣義坐標系的 運動導(dǎo)航方法進行交互式裝配。該方法在實際操作過程中容易發(fā)生誤操作,且需要經(jīng)常發(fā)信號進行約束確認,操作比較繁瑣。
發(fā)明內(nèi)容
本發(fā)明的目的在于針對上述現(xiàn)有技術(shù)中的不足,提出了一種基于產(chǎn)品全語義模 型的自然交互式虛擬裝配系統(tǒng),將徒手操作和用工具的交互式虛擬裝配相結(jié)合,增 加了虛擬裝配的真實性與沉浸感,為裝配工藝規(guī)劃與分析提供有力支持。
本發(fā)明是通過以下技術(shù)方案實現(xiàn)的,本發(fā)明包括產(chǎn)品全語義模型交互式生成 模塊、裝配數(shù)據(jù)預(yù)處理模塊、虛擬裝配仿真模塊、產(chǎn)品全語義模型處理模塊、裝配 工具管理模塊、虛擬裝配數(shù)據(jù)管理模塊、虛擬裝配數(shù)據(jù)庫,其中-
產(chǎn)品全語義模型交互式生成模塊從產(chǎn)品CAD (計算機輔助設(shè)計)裝配模型中提 取產(chǎn)品信息,交互式生成產(chǎn)品全語義模型,對生成的模型進行檢測、修改、輸入輸 出操作,并將生成的產(chǎn)品全語義模型存入虛擬裝配數(shù)據(jù)庫;
裝配數(shù)據(jù)預(yù)處理模塊負責(zé)處理產(chǎn)品零件的碰撞模型以及査找模型信息,從虛擬 裝配數(shù)據(jù)庫中提取產(chǎn)品零件信息,在用戶指定的目錄下查找零件顯示模型、碰撞模 型,建立顯示模型、產(chǎn)品全語義模型之間的對應(yīng)關(guān)系,將顯示模型、碰撞模型存入 與產(chǎn)品全語義模型對應(yīng)的虛擬裝配數(shù)據(jù)庫中;
虛擬裝配仿真模塊從虛擬裝配數(shù)據(jù)庫中提取虛擬裝配所需的數(shù)據(jù),包括產(chǎn)品全 語義模型、顯示模型、碰撞模型,建立虛擬裝配仿真場景,利用VR (虛擬現(xiàn)實)交 互外設(shè)驅(qū)動虛擬環(huán)境中的虛擬手,并調(diào)用裝配工具管理模塊以及產(chǎn)品全語義模型處 理模塊,實現(xiàn)雙手與利用工具的交互式虛擬裝配;
產(chǎn)品全語義模型處理模塊負責(zé)產(chǎn)品全語義模型各模型的檢測,將語義映射為其 包含的基本約束,按照約束進行語義識別、確認、導(dǎo)航與解算處理,輔助虛擬裝配 仿真模塊進行虛擬裝配,并從虛擬裝配仿真模塊獲取抓取對象信息,處理結(jié)束后獲 得抓取對象的位姿矩陣,并將結(jié)果返回給虛擬裝配仿真模塊,以用于移動虛擬對象;
裝配工具管理模塊從虛擬裝配數(shù)據(jù)庫中提取工具信息供用戶選擇,用戶選擇工 具后將工具模型、工具部件模型、工具約束模型等導(dǎo)入虛擬裝配仿真模塊的虛擬環(huán) 境,并隨時為工具的驅(qū)動進行處理,供用戶在裝配操作過程中使用;
虛擬裝配數(shù)據(jù)管理模塊執(zhí)行數(shù)據(jù)維護任務(wù),負責(zé)管理各模塊與虛擬裝配數(shù)據(jù)庫 之間的通信,以及對數(shù)據(jù)進行添加、插入、刪除、檢測操作;
虛擬裝配數(shù)據(jù)庫負責(zé)儲存上述模塊的中間數(shù)據(jù)信息,包括零件碰撞模型信息、零件顯示模型信息、產(chǎn)品全語義模型信息、工具模型信息等。
所述虛擬裝配數(shù)據(jù)庫,其通過ODBC (開放式數(shù)據(jù)接口)標準接口與產(chǎn)品全語義 模型交互式生成模塊、裝配數(shù)據(jù)預(yù)處理模塊、虛擬裝配仿真模塊、裝配工具管理模 塊、虛擬裝配數(shù)據(jù)管理模塊相連。
所述產(chǎn)品全語義模型交互式生成模塊,在三維建模軟件環(huán)境下打開已完成的產(chǎn) 品裝配模型,并據(jù)此生成產(chǎn)品的零件模型、裝配體模型、約束模型,在生成這些模 型的基礎(chǔ)上,用戶進行交互式的產(chǎn)品裝配語義定義,生成產(chǎn)品語義模型,產(chǎn)品的全 語義模型包括產(chǎn)品的零件模型、裝配體模型、約束模型、語義模型,并將最終生 成的產(chǎn)品全語義模型存入虛擬裝配數(shù)據(jù)庫,以由虛擬裝配仿真模塊調(diào)用。
所述產(chǎn)品全語義模型交互式生成模塊,其建立的產(chǎn)品裝配語義,是對裝配零部 件間裝配關(guān)系的抽象表達,包括了裝配零部件間的約束個數(shù)和類型、約束順序、以 及工程約束和兩個裝配對象(零件或部件),根據(jù)功能特征將裝配語義從頂層劃分 為螺紋聯(lián)接語義、軸孔配合語義、傳動語義、鍵槽配合語義、平面定位語義和特殊 裝配語義等,而每一個頂層語義根據(jù)約束特性和工程約束還可細分,其中螺紋聯(lián) 接語義包括螺釘聯(lián)接、螺柱聯(lián)接、螺母聯(lián)接以及本身螺紋聯(lián)接;軸孔配合語義包括 直軸裝配、曲軸裝配、周向?qū)蛎娑ㄎ?、軸向?qū)蛎娑ㄎ唬粋鲃诱Z義包括帶傳動、 鏈轉(zhuǎn)動、齒輪傳動和凸輪傳動等;特殊裝配語義由用戶根據(jù)具體應(yīng)用,進行定義和 擴充,以自定義語義的形式進行表達,如應(yīng)用在發(fā)動機裝配的活塞連桿總成裝配語 義和中心裝配語義。
所述裝配數(shù)據(jù)預(yù)處理模塊,利用BVCD (基于層次包圍盒的碰撞檢測開發(fā)包)的 碰撞模型生成工具,根據(jù)產(chǎn)品各零件的面片模型生成對應(yīng)的碰撞模型,并保存入用 戶指定的模型目錄,從虛擬裝配數(shù)據(jù)庫中讀取產(chǎn)品的零件名稱信息,在用戶指定的 模型目錄下查找對應(yīng)的顯示模型、碰撞模型,并將查找結(jié)果存入與產(chǎn)品全語義模型 對應(yīng)的虛擬裝配數(shù)據(jù)庫中。
所述虛擬裝配仿真模塊,根據(jù)用戶指定的產(chǎn)品從虛擬裝配數(shù)據(jù)庫中提取所需要 的產(chǎn)品信息,應(yīng)用圖形系統(tǒng)建立虛擬裝配場景,通過鼠標、鍵盤、數(shù)據(jù)手套和位姿 跟蹤器等控制虛擬手對零部件進行抓取、移動、釋放等操作,在操作過程中,利用 碰撞檢測來避免穿透,調(diào)用產(chǎn)品全語義模型處理模塊完成語義處理進行裝配計算, 調(diào)用裝配工具管理模塊進行工具的選擇、定位計算與使用,處理在雙手操作情況下的沖突,實現(xiàn)雙手以及使用工具的交互式虛擬裝配仿真。
所述產(chǎn)品全語義模型處理模塊,包括識別模塊、確認和導(dǎo)航模塊、解算模塊, 其中,
識別模塊負責(zé)將語義映射為基本約束,并對約束進行識別, 一個語義包含多個 約束,將第一個約束的識別作為語義識別的基本條件,將第二個約束的識別作為語 義識別的校核條件,語義只有同時滿足識別的基本條件和校核條件后,語義才算識 別成功,將語義的所有約束都高亮顯示;
確認和導(dǎo)航負責(zé)在語義識別成功后對語義的第一個約束進行解算,并根據(jù)解算 矩陣獲取操作對象的位姿矩陣,語義確認后,根據(jù)語義的己確認約束控制操作對象 在虛擬環(huán)境中的運動;
解算模塊是指在語義確認后根據(jù)語義導(dǎo)航過程,依次對語義中可解算而未解算 的約束進行自動解算。
所述裝配工具管理模塊,根據(jù)用戶需求從裝配工具數(shù)據(jù)庫中提取工具信息,將 工具添加虛擬裝配場景中虛擬手所在的位置,通過BVCD碰撞檢測包進行工具與場景 中其他對象之間的碰撞檢測,沿場景的垂直方向移動工具,直到工具與場景中的任 何對象都不發(fā)生碰撞為止,在操作過程中,處理工具操作對象的動態(tài)交互式選擇、 工具與操作對象的導(dǎo)航式固聯(lián)、工具部件及操作對象的驅(qū)動等計算,將計算結(jié)果返
回虛擬裝配仿真模塊,協(xié)助其完成利用工具的交互式虛擬裝配。
本發(fā)明工作時,各模塊存在一定的依賴關(guān)系虛擬裝配數(shù)據(jù)管理模塊在最頂層, 管理、維護各模塊產(chǎn)生的數(shù)據(jù);產(chǎn)品全語義模型交互式生成模塊通過虛擬裝配數(shù)據(jù) 管理模塊對產(chǎn)品全語義模型在虛擬裝配數(shù)據(jù)庫進行檢測、讀取、寫入操作;裝配數(shù)
據(jù)預(yù)處理模型通過虛擬裝配數(shù)據(jù)管理模塊在虛擬裝配數(shù)據(jù)庫中提取產(chǎn)品信息,并將 預(yù)處理結(jié)束后的結(jié)果通過虛擬裝配數(shù)據(jù)管理模塊存入虛擬裝配數(shù)據(jù)庫;虛擬裝配仿 真模塊通過虛擬裝配數(shù)據(jù)管理模塊從虛擬裝配數(shù)據(jù)庫中提取產(chǎn)品模型信息以及產(chǎn) 品全語義模型進行場景初始化,然后才能進行交互式的虛擬裝配;產(chǎn)品全語義模型 處理模塊是被虛擬裝配仿真模塊調(diào)用的,將語義的處理結(jié)果返回給虛擬裝配仿真模 塊,并輔助其進行交互式裝配操作;裝配工具管理模塊也是被虛擬裝配仿真模塊調(diào) 用的,通過虛擬裝配數(shù)據(jù)管理模塊從虛擬裝配數(shù)據(jù)庫中提取工具信息,并將對工具 的處理結(jié)果返回虛擬裝配仿真模塊,輔助其進行基于工具的交互式虛擬裝配。與現(xiàn)有技術(shù)相比,本發(fā)明具有以下有益效果-(1)本發(fā)明采用全語義模型對產(chǎn)品進行描述,在交互操作中能夠更好的捕捉 用戶的交互意圖;(2)本發(fā)明采用基于裝配語義處理的交互裝配操作,使得虛擬裝 配過程變得更簡單,操作更方便;(3)本發(fā)明實現(xiàn)了雙手裝配和利用工具的裝配, 使得虛擬裝配操作更貼近于現(xiàn)實;(4)本發(fā)明建立了產(chǎn)品面向裝配的全語義模型, 使得對產(chǎn)品的描述更完整,為以后的裝配效率計算、裝配工藝規(guī)劃、人機功效評價 等提供了方便。
圖l為本發(fā)明的系統(tǒng)結(jié)構(gòu)框圖2為本發(fā)明中產(chǎn)品全語義模型信息示意圖3為本發(fā)明中工具查找條件示意圖4為本發(fā)明整體工作流程圖。
具體實施例方式
下面結(jié)合附圖對本發(fā)明的實施例作詳細說明本實施例在以本發(fā)明技術(shù)方案為 前提下進行實施,給出了詳細的實施方式和具體的操作過程,但本發(fā)明的保護范圍 不限于下述的實施例。
如圖1所示,本實施例包括產(chǎn)品全語義模型交互式生成模塊、裝配數(shù)據(jù)預(yù)處 理模塊、虛擬裝配仿真模塊、產(chǎn)品全語義模型處理模塊、裝配工具管理模塊、虛擬 裝配數(shù)據(jù)管理模塊、虛擬裝配數(shù)據(jù)庫,其中
產(chǎn)品全語義模型交互式生成模塊從產(chǎn)品CAD裝配模型中提取產(chǎn)品信息,交互式 生成產(chǎn)品全語義模型,對生成的模型進行檢測、修改、輸入輸出操作,并將生成的 產(chǎn)品全語義模型存入虛擬裝配數(shù)據(jù)庫。
裝配數(shù)據(jù)預(yù)處理模塊負責(zé)處理產(chǎn)品零件的碰撞模型以及査找模型信息,從虛擬 裝配數(shù)據(jù)庫中提取產(chǎn)品零件信息,在用戶指定的目錄下查找零件顯示模型、碰撞模 型,建立顯示模型、碰撞模型、產(chǎn)品全語義模型之間的對應(yīng)關(guān)系,將顯示模型、碰 撞模型存入與產(chǎn)品全語義模型對應(yīng)的虛擬裝配數(shù)據(jù)庫中;
虛擬裝配仿真模塊從虛擬裝配數(shù)據(jù)庫中提取虛擬裝配所需的數(shù)據(jù),包括產(chǎn)品全 語義模型、顯示模型、碰撞模型,建立虛擬裝配仿真場景,利用VR交互外設(shè)驅(qū)動虛 擬環(huán)境中的虛擬手,并調(diào)用裝配工具管理模塊以及產(chǎn)品全語義模型處理模塊,實現(xiàn)雙手與利用工具的交互式虛擬裝配;
產(chǎn)品全語義模型處理模塊負責(zé)產(chǎn)品全語義模型各模型的檢測,將語義映射為其 包含的基本約束,按照約束進行語義識別、確認、導(dǎo)航與解算處理,輔助虛擬裝配 仿真模塊進行虛擬裝配,并從虛擬裝配仿真模塊獲取抓取對象信息,處理結(jié)束后獲 得抓取對象的位姿矩陣,并將結(jié)果返回給虛擬裝配仿真模塊,以用于移動虛擬對象;
裝配工具管理模塊從虛擬裝配數(shù)據(jù)庫中提取工具信息供用戶選擇,用戶選擇工 具后將工具模型、工具部件模型、工具約束模型等導(dǎo)入虛擬裝配仿真模塊的虛擬環(huán) 境,并隨時為工具的驅(qū)動提供計算,供用戶在裝配操作過程中使用;
虛擬裝配數(shù)據(jù)管理模塊執(zhí)行數(shù)據(jù)維護任務(wù),管理各模塊與虛擬裝配數(shù)據(jù)庫之間 的通信,以及對數(shù)據(jù)進行添加、插入、刪除、檢測操作;
虛擬裝配數(shù)據(jù)庫負責(zé)儲存上述模塊的中間數(shù)據(jù)信息,包括零件碰撞模型信息、 零件顯示模型信息、產(chǎn)品全語義模型信息、工具模型信息等。
所述虛擬裝配數(shù)據(jù)庫,其通過ODBC (開放式數(shù)據(jù)接口)標準接口與產(chǎn)品全語義 模型交互式生成模塊、裝配數(shù)據(jù)預(yù)處理模塊、虛擬裝配仿真模塊、裝配工具管理模 塊、虛擬裝配數(shù)據(jù)管理模塊相連。
所述的產(chǎn)品全語義模型交互式生成模塊,通過圖形化界面與用戶交互,在三維 建模軟件Pro/Engineer環(huán)境下打開己完成的產(chǎn)品裝配模型,在此環(huán)境下本模塊通過 交互式選擇裝配對象來定義對象之間的裝配語義,并輸入對應(yīng)的參數(shù)信息,生成完 整的產(chǎn)品信息,并輸出模型文件,具體為
在Pro/Engineer環(huán)境下打開已經(jīng)裝配好的產(chǎn)品裝配模型;用戶可以讀入已定義 好的產(chǎn)品全語義模型,或者根據(jù)打開的產(chǎn)品生成產(chǎn)品的零件信息、裝配體信息、約 束信息等;在Pro/Engineer裝配樹上選擇互相有裝配關(guān)系的兩個對象,根據(jù)對象之 間的約束情況在虛擬裝配數(shù)據(jù)庫中自動?xùn)苏矣锌赡芷ヅ涞恼Z義,并提示用戶確認語 義類型;用戶確認后,提示輸入語義工程參數(shù)信息,如幾何特征的直徑、長度等, 并最終生成一個完整的裝配語義模型;用戶定義完所有的裝配語義后,本模塊將生 成完整的產(chǎn)品全語義信息,并輸出為產(chǎn)品信息文件;用戶也可以對已定義的語義信 息進行査詢與修改等操作。如圖2所示,產(chǎn)品全語義模型信息包括零件模型、裝配 樹模型、約束模型、語義模型,零件模型包括名稱、位姿、裝配層次、約束元素、 幾何信息等信息,裝配樹模型包括名稱、位姿、裝配層次、下屬部件信息、約束信息等信息,約束模型包括類型、狀態(tài)、約束部件、約束元素信息、約束參數(shù)等 信息,語義模型包括類型、狀態(tài)、約束信息、關(guān)聯(lián)部件、裝配層次、工程參數(shù)等信 息。
所述裝配數(shù)據(jù)預(yù)處理模塊,由用戶輸入碰撞檢測包圍盒直徑,并導(dǎo)入零件幾何 模型進行計算,獲取零件碰撞模型。本實施例中采用現(xiàn)有技術(shù)進行碰撞模型生成, 并根據(jù)實際需要調(diào)整碰撞模型精度。
所述裝配數(shù)據(jù)預(yù)處理模塊,其生成產(chǎn)品的顯示模型、碰撞模型、產(chǎn)品全語義信 息的對應(yīng)關(guān)系,并存入虛擬裝配數(shù)據(jù)庫,具體為首先根據(jù)產(chǎn)品全語義信息中的零 件模型信息獲取所有零件的名稱;然后,由用戶指定模型路徑,在指定的路徑下查 找與零件模型相同的顯示模型與碰撞模型,并建立對應(yīng)關(guān)系;最后,按照對應(yīng)關(guān)系, 將顯示模型、碰撞模型、產(chǎn)品全語義信息存入虛擬裝配數(shù)據(jù)庫。
所述虛擬裝配仿真模塊,通過圖形化界面與用戶交互,用戶選擇產(chǎn)品以及產(chǎn)品 模型放置方式、環(huán)境模型等,產(chǎn)品模型放置方式為默認位姿、自動擺放、手動添 加,從虛擬裝配數(shù)據(jù)庫中根據(jù)用戶選擇結(jié)果提取產(chǎn)品的顯示模型、碰撞模型以及全 語義模型,并初始化虛擬裝配場景,用戶通過鼠標、鍵盤、數(shù)據(jù)手套、FOB等外設(shè) 控制虛擬場景中的虛擬手進行抓取、移動、釋放等操作。在移動過程中,調(diào)用全語 義模型處理模塊進行語義的識別、確認、導(dǎo)航、解算等計算,并根據(jù)計算結(jié)果移動 虛擬場景中的虛擬手與抓取對象,從而完成虛擬裝配。在雙手交互裝配過程中,根 據(jù)沖突處理原則對雙手虛擬裝配過程中出現(xiàn)的沖突進行處理,實現(xiàn)雙手交互式裝配 操作。在裝配過程中,用戶可以調(diào)用裝配工具管理模塊彈出工具選擇界面,用戶選 擇工具并將工具導(dǎo)入虛擬場景,通過虛擬手對工具進行抓取,通過調(diào)用裝配工具管
理模塊進行工具操作對象選擇、工具與操作對象固聯(lián)以及工具的操作,從而實現(xiàn)利 用工具的交互式虛擬裝配。
所述虛擬裝配仿真模塊,其對于雙手交互操作進行沖突處理,具體為 一個對 象只能被一只手抓?。蝗魏我粋€語義、約束的確認意圖只能由一只手來表征;右手 優(yōu)先準則,即優(yōu)先處理右手的操作,并根據(jù)右手的處理結(jié)果更新左手以及抓取對象 的狀態(tài),然后再處理左手動作。在具體實現(xiàn)中,采用優(yōu)先處理右手操作,再處理左 手操作的方法。
所述產(chǎn)品全語義模型處理模塊,包括識別模塊、確認和導(dǎo)航模塊、解算模塊,g巾,
語義識別模塊對互相靠近的兩個對象之間的裝配語義進行匹配檢測,然后對滿 足匹配檢測的對象進行識別校驗檢測,只有通過上述兩個檢測的對象才能進行裝 配。匹配檢測是指搜索兩個對象所包含的語義,査找其中互相匹配的語義。這里 互相匹配的語義是指語義關(guān)聯(lián)對象、約束數(shù)目、約束類型、約束順序、約束參數(shù)完 全一致,工程約束參數(shù)互相匹配的語義。只要至少査找到一個互相匹配的語義,這 兩個對象就可以相互裝配。識別校驗是指在語義完全匹配后對裝配元件的姿態(tài)進 行校驗。具體實現(xiàn)中,只需檢測語義的所有約束是否都滿足識別條件(約束元素距 離較近,且方向一致)即可;
確認和導(dǎo)航模塊負責(zé)檢測己識別的語義的第一個約束是否滿足解算條件,對滿 足解算條件的語義進行解算,獲取抓取對象位姿矩陣;將約束狀態(tài)設(shè)置為已解算, 語義狀態(tài)設(shè)置為己確認,并向虛擬裝配仿真模塊返回位姿矩陣;進行語義導(dǎo)航時, 獲取語義下屬全部已解算約束,并用自由度表示,對自由度進行規(guī)約,獲取總的自 由度;將抓取對象的位姿增量向自由度方向上投影,根據(jù)投影計算自由度方向上的 位姿增量,并獲得操作對象位姿矩陣,將矩陣返回給虛擬裝配仿真模塊。具體實現(xiàn) 上,約束的自由度表示方法以及自由度規(guī)約均采用現(xiàn)有技術(shù)進行。
解算模塊按照語義所包含的約束順序依次進行約束的解算,直到所有約束解算 完為止。具體為獲取語義中的第一個未解算約束;檢測該約束元素的距離是否小 于設(shè)定的較小距離,是則進行約束解算;獲取解算矩陣,并獲取抓取對象的位姿矩 陣,將該矩陣返回給虛擬裝配仿真模塊。重復(fù)上述過程直到語義的所有約束都解算 完為止。
所述裝配工具管理模塊,用戶在虛擬裝配仿真模塊的仿真環(huán)境中調(diào)用裝配工具 管理模塊,采用圖形化界面與虛擬裝配數(shù)據(jù)庫進行交互。如圖3所示,為工具在數(shù) 據(jù)庫中的査找條件,査找條件包括功用類型、自動類型、工作頭類型、工作頭尺 寸、工作頭數(shù)目、工具工作空間,用戶可以通過圖形化界面設(shè)置這些條件,在虛擬 裝配數(shù)據(jù)庫中査找工具。本模塊查找到工具信息,將工具導(dǎo)入虛擬環(huán)境,并通過一 定的擺放規(guī)則將工具擺放到虛擬環(huán)境中。在具體實現(xiàn)上,擺放規(guī)則為將工具初始 位置設(shè)置為虛擬手所在位置,工具與場景中的對象進行碰撞檢測,并將工具沿場景 +2方向進行平移,直到工具不發(fā)生碰撞為止。在虛擬裝配操作模塊的操作過程中,虛擬手抓取工具對象,并調(diào)用裝配工具管理模塊對工具操作對象交互式動態(tài)選擇、 工具與操作對象交互式固聯(lián)、工具驅(qū)動與操作對象驅(qū)動進行處理,輔助虛擬裝配仿 真模塊進行使用工具的虛擬裝配。
所述的裝配工具管理模塊中工具操作對象交互式動態(tài)選擇,具體為首先,進 行工具碰撞檢測,將與工具發(fā)生碰撞的對象作為用戶選擇意圖;然后,對工具對象 進行檢測,只有未裝配完,且有一個裝配約束未解算的對象才可以作為工具操作對 象;將工具對象添加到工具中。
所述的裝配工具管理模塊中工具與操作對象交互式固聯(lián),具體為根據(jù)工具信 息的約束信息,在操作對象的幾何信息中査找對應(yīng)的約束元素;將工具與操作對象 作為互相裝配的兩個元件進行處理,將工具與操作對象之間的約束看作一個語義內(nèi) 部的約束,借用語義的確認、導(dǎo)航、解算等方法實現(xiàn)工具與操作對象之間的固聯(lián)。
所述的裝配工具管理模塊中工具部件驅(qū)動,具體為在工具信息中添加工具部 件信息以及部件的運動信息,如運動類型(平移、旋轉(zhuǎn)、邊旋轉(zhuǎn)邊平移)、運動方 向、運動參數(shù)(速度、角速度等),工具驅(qū)動時利用各個部件的運動信息對各部件 驅(qū)動。
所述的裝配工具管理模塊中工具操作對象驅(qū)動,具體為在工具信息中還包含 工作部件信息,在工具部件驅(qū)動時獲取工作部件的運動增量,同時獲取操作對象的 運動自由度,將運動增量向自由度方向上投影,獲取自由度方向上的運動增量,根 據(jù)這個運動增量驅(qū)動操作對象以及工具整體運動。
如圖4所示,本實施例工作過程如下本實施例各模塊的執(zhí)行存在一定的順序 關(guān)系,虛擬裝配數(shù)據(jù)管理模塊在最頂層,管理、維護各模塊產(chǎn)生的數(shù)據(jù);產(chǎn)品全語 義模型交互式生成模塊通過虛擬裝配數(shù)據(jù)管理模塊對產(chǎn)品全語義模型在虛擬裝配 數(shù)據(jù)庫進行檢測、讀取、寫入操作;裝配數(shù)據(jù)預(yù)處理模型通過虛擬裝配數(shù)據(jù)管理模 塊在虛擬裝配數(shù)據(jù)庫中提取產(chǎn)品信息,并將預(yù)處理結(jié)束后的結(jié)果通過虛擬裝配數(shù)據(jù) 管理模塊存入虛擬裝配數(shù)據(jù)庫;虛擬裝配仿真模塊通過虛擬裝配數(shù)據(jù)管理模塊從虛
擬裝配數(shù)據(jù)庫中提取產(chǎn)品模型信息以及產(chǎn)品全語義模型進行場景初始化,然后才能 進行交互式的虛擬裝配;產(chǎn)品全語義模型處理模塊是被虛擬裝配仿真模塊調(diào)用的, 將語義的處理結(jié)果返回給虛擬裝配仿真模塊,并輔助其進行交互式裝配操作;裝配 工具管理模塊也是被虛擬裝配仿真模塊調(diào)用的,通過虛擬裝配數(shù)據(jù)管理模塊從虛擬裝配數(shù)據(jù)庫中提取工具信息,并將對工具的處理結(jié)果返回虛擬裝配仿真模塊,輔助 其進行基于工具的交互式虛擬裝配。 實施例效果說明
本實施例構(gòu)造了產(chǎn)品的全語義模型,借助鼠標、鍵盤、數(shù)據(jù)手套、位姿跟蹤器 等硬件設(shè)備與虛擬環(huán)境中的虛擬手進行交互,通過對全語義模型中產(chǎn)品語義的識 別、確認、導(dǎo)航、解算等的處理以及建立雙手操作沖突處理方法,實現(xiàn)了雙手徒手 的自然交互式虛擬裝配。本實施例建立了裝配中常用的工具庫,并借助語義的處理 方法處理工具與操作對象之間的約束識別與固聯(lián),采用參數(shù)化方法對工具進行驅(qū) 動,實現(xiàn)了利用工具的自然交互式虛擬裝配。
本實施例在實現(xiàn)過程中采用良好的windows界面,實現(xiàn)了0++、 MFC、 Pro/Engineer、 0penGL Performer圖形系統(tǒng)的集成,完成了本系統(tǒng)各功能模塊,實 現(xiàn)了基于語義的交互式虛擬裝配,為在虛擬環(huán)境中進行工藝規(guī)劃、路徑與序列規(guī)劃 等提供了良好的工具,對知道實際裝配生產(chǎn)線的設(shè)計有重要意義。
權(quán)利要求
1、一種基于產(chǎn)品全語義模型的自然交互式虛擬裝配系統(tǒng),其特征在于,包括產(chǎn)品全語義模型交互式生成模塊、裝配數(shù)據(jù)預(yù)處理模塊、虛擬裝配仿真模塊、產(chǎn)品全語義模型處理模塊、裝配工具管理模塊、虛擬裝配數(shù)據(jù)管理模塊、虛擬裝配數(shù)據(jù)庫,其中產(chǎn)品全語義模型交互式生成模塊從產(chǎn)品CAD裝配模型中提取產(chǎn)品信息,交互式生成產(chǎn)品全語義模型,對生成的模型進行檢測、修改、輸入輸出操作,并將生成的產(chǎn)品全語義模型存入虛擬裝配數(shù)據(jù)庫;裝配數(shù)據(jù)預(yù)處理模塊負責(zé)處理產(chǎn)品零件的碰撞模型以及查找模型信息,從虛擬裝配數(shù)據(jù)庫中提取產(chǎn)品零件信息,在用戶指定的目錄下查找零件顯示模型、碰撞模型,建立顯示模型、產(chǎn)品全語義模型之間的對應(yīng)關(guān)系,將顯示模型、碰撞模型存入與產(chǎn)品全語義模型對應(yīng)的虛擬裝配數(shù)據(jù)庫中;虛擬裝配仿真模塊從虛擬裝配數(shù)據(jù)庫中提取虛擬裝配所需的數(shù)據(jù),包括產(chǎn)品全語義模型、顯示模型、碰撞模型,建立虛擬裝配仿真場景,利用VR交互外設(shè)驅(qū)動虛擬環(huán)境中的虛擬手,并調(diào)用裝配工具管理模塊以及產(chǎn)品全語義模型處理模塊,實現(xiàn)雙手與利用工具的交互式虛擬裝配;產(chǎn)品全語義模型處理模塊負責(zé)產(chǎn)品全語義模型各模型的檢測,將語義映射為其包含的基本約束,按照約束進行語義識別、確認、導(dǎo)航與解算處理,輔助虛擬裝配仿真模塊進行虛擬裝配,并從虛擬裝配仿真模塊獲取抓取對象信息,處理結(jié)束后獲得抓取對象的位姿矩陣,并將結(jié)果返回給虛擬裝配仿真模塊,以用于移動虛擬對象;裝配工具管理模塊從虛擬裝配數(shù)據(jù)庫中提取工具信息供用戶選擇,用戶選擇工具后將工具模型、工具部件模型、工具約束模型導(dǎo)入虛擬裝配仿真模塊的虛擬環(huán)境,并隨時為工具的驅(qū)動進行處理,供用戶在裝配操作過程中使用;虛擬裝配數(shù)據(jù)管理模塊執(zhí)行數(shù)據(jù)維護任務(wù),負責(zé)管理各模塊與虛擬裝配數(shù)據(jù)庫之間的通信,以及對數(shù)據(jù)進行添加、插入、刪除、檢測操作;虛擬裝配數(shù)據(jù)庫負責(zé)儲存上述模塊的中間數(shù)據(jù)信息,包括零件碰撞模型信息、零件顯示模型信息、產(chǎn)品全語義模型信息、工具模型信息。
2、 根據(jù)權(quán)利要求l所述的基于產(chǎn)品全語義模型的自然交互式虛擬裝配系統(tǒng), 其特征是,所述虛擬裝配數(shù)據(jù)庫,其通過ODBC標準接口與產(chǎn)品全語義模型交互 式生成模塊、裝配數(shù)據(jù)預(yù)處理模塊、虛擬裝配仿真模塊、裝配工具管理模塊、 虛擬裝配數(shù)據(jù)管理模塊相連。
3、 根據(jù)權(quán)利要求l所述的基于產(chǎn)品全語義模型的自然交互式虛擬裝配系統(tǒng), 其特征是,所述產(chǎn)品全語義模型交互式生成模塊,在三維建模軟件環(huán)境下打開 己完成的產(chǎn)品裝配模型,并據(jù)此生成產(chǎn)品的零件模型、裝配體模型、約束模型, 在生成這些模型的基礎(chǔ)上,用戶進行交互式的產(chǎn)品裝配語義定義,生成產(chǎn)品語 義模型,產(chǎn)品的全語義模型包括產(chǎn)品的零件模型、裝配體模型、約束模型、 語義模型,并將最終生成的產(chǎn)品全語義模型存入虛擬裝配數(shù)據(jù)庫,以由虛擬裝 配仿真模塊調(diào)用。
4、 根據(jù)權(quán)利要求l所述的基于產(chǎn)品全語義模型的自然交互式虛擬裝配系統(tǒng), 其特征是,所述裝配數(shù)據(jù)預(yù)處理模塊,利用BVCD的碰撞模型生成工具,根據(jù)產(chǎn) 品各零件的面片模型生成對應(yīng)的碰撞模型,并保存入用戶指定的模型目錄,從 虛擬裝配數(shù)據(jù)庫中讀取產(chǎn)品的零件名稱信息,在用戶指定的模型目錄下査找對 應(yīng)的顯示模型、碰撞模型,并將查找結(jié)果存入與產(chǎn)品全語義模型對應(yīng)的虛擬裝 配數(shù)據(jù)庫中。
5、 根據(jù)權(quán)利要求l所述的基于產(chǎn)品全語義模型的自然交互式虛擬裝配系統(tǒng), 其特征是,所述虛擬裝配仿真模塊,根據(jù)用戶指定的產(chǎn)品從虛擬裝配數(shù)據(jù)庫中 提取所需要的產(chǎn)品信息,應(yīng)用圖形系統(tǒng)建立虛擬裝配場景,通過鼠標、鍵盤、 數(shù)據(jù)手套和位姿跟蹤器控制虛擬手對零部件進行抓取、移動、釋放操作,在操 作過程中,利用碰撞檢測來避免穿透,調(diào)用產(chǎn)品全語義模型處理模塊完成語義 處理進行裝配計算,調(diào)用裝配工具管理模塊進行工具的選擇、定位計算與使用, 處理在雙手操作情況下的沖突,實現(xiàn)雙手以及使用工具的交互式虛擬裝配仿真。
6、 根據(jù)權(quán)利要求l所述的基于產(chǎn)品全語義模型的自然交互式虛擬裝配系統(tǒng), 其特征是,所述產(chǎn)品全語義模型處理模塊,包括識別模塊、確認和導(dǎo)航模塊、 解算模塊,其中,識別模塊負責(zé)將語義映射為基本約束,并對約束進行識別, 一個語義包含 多個約束,將第一個約束的識別作為語義識別的基本條件,將第二個約束的識 別作為語義識別的校核條件,語義只有同時滿足識別的基本條件和校核條件后, 語義才算識別成功,將語義的所有約束都高亮顯示;確認和導(dǎo)航負責(zé)在語義識別成功后對語義的第一個約束進行解算,并根據(jù) 解算矩陣獲取操作對象的位姿矩陣,語義確認后,根據(jù)語義的已確認約束控制 操作對象在虛擬環(huán)境中的運動,這一部分實質(zhì)都是約束的確認與導(dǎo)航;解算模塊是指在語義確認后根據(jù)語義導(dǎo)航過程,依次對語義中可解算而未 解算的約束進行自動解算。
7、根據(jù)權(quán)利要求l所述的基于產(chǎn)品全語義模型的自然交互式虛擬裝配系統(tǒng), 其特征是,所述裝配工具管理模塊,根據(jù)用戶需求從裝配工具數(shù)據(jù)庫中提取工 具信息,將工具添加虛擬裝配場景中虛擬手所在的位置,通過BVCD碰撞檢測包 進行工具與場景中其他對象之間的碰撞檢測,沿場景的垂直方向移動工具,直 到工具與場景中的任何對象都不發(fā)生碰撞為止,在操作過程中,處理工具操作 對象的動態(tài)交互式選擇、工具與操作對象的導(dǎo)航式固聯(lián)、工具部件及操作對象 的驅(qū)動計算,將處理結(jié)果返回虛擬裝配仿真模塊,協(xié)助其完成利用工具的交互 式虛擬裝配。
全文摘要
一種制造業(yè)領(lǐng)域的基于產(chǎn)品全語義模型的自然交互式虛擬裝配系統(tǒng),本發(fā)明中,產(chǎn)品全語義模型交互式生成模塊執(zhí)行從產(chǎn)品CAD裝配模型中提取產(chǎn)品信息,交互式生成產(chǎn)品全語義模型;裝配數(shù)據(jù)預(yù)處理模塊,處理產(chǎn)品零件的碰撞模型建立顯示模型、碰撞模型、產(chǎn)品全語義模型之間的對應(yīng)關(guān)系;虛擬裝配仿真模塊利用VR交互外設(shè)驅(qū)動虛擬環(huán)境中的虛擬手,實現(xiàn)雙手與利用工具的交互式虛擬裝配;產(chǎn)品全語義模型處理模塊主要負責(zé)產(chǎn)品全語義模型各模型的檢測,約束的識別、解算;裝配工具管理模塊將用戶選擇的工具導(dǎo)入虛擬裝配仿真模塊的虛擬環(huán)境,并隨時處理工具的驅(qū)動。本發(fā)明增加了虛擬裝配的真實性與沉浸感,能夠為裝配工藝規(guī)劃與分析提供有力支持。
文檔編號G06F17/50GK101441677SQ20081020777
公開日2009年5月27日 申請日期2008年12月25日 優(yōu)先權(quán)日2008年12月25日
發(fā)明者朱洪敏, 武殿梁, 范秀敏 申請人:上海交通大學(xué)