履帶車輛六自由度仿真方法
【專利摘要】本發(fā)明公開了一種履帶車輛六自由度仿真方法。步驟為:首先通過三維建模軟件預(yù)先對三維地形網(wǎng)格及履帶車輛進行三維建模;然后將履帶車輛上部形狀簡化為一個BOX剛體對象,將車輛的履帶簡化為多個車輪;根據(jù)地形的三角面,車輪與地形接觸點的位置,實時確定每個車輪的高度;采用六球體碰撞檢測法,求得履帶車輛上部剛體平面的傾斜角;最后給出車輛上部剛體的位置、姿態(tài)公式,確定履帶車輛的位移、航向角。本發(fā)明可用于坦克、挖掘機、推土機等履帶車輛設(shè)備的六自由度仿真,具有運算量小、仿真方法簡單、仿真效果逼真等優(yōu)點,適用于工程機械、軍用裝甲車輛等模擬訓(xùn)練產(chǎn)品,以及產(chǎn)品演示驗證、宣傳推廣等領(lǐng)域,具有極大的應(yīng)用價值。
【專利說明】履帶車輛六自由度仿真方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計算機仿真【技術(shù)領(lǐng)域】,特別是一種履帶車輛六自由度仿真方法。
【背景技術(shù)】
[0002]履帶車輛,如坦克,履帶式挖掘機,履帶式推土機等設(shè)備可以在三維仿真系統(tǒng)中進行基本動作的重現(xiàn),但是對于履帶車輛而言,車輛的起伏狀態(tài)是完全由當前履帶所接觸到的地形所確定的,因此不能通過將履帶車輛當成輪式車輛來進行處理。
[0003]履帶車輛行走系統(tǒng)是由履帶和若干負重輪組成,地形的起伏導(dǎo)致履帶和負重輪的上下高地不相同,進而使得履帶車輛的起伏角度不同。在三維環(huán)境中,地面是由一些列的網(wǎng)格構(gòu)成,計算機通過點和點的索引來構(gòu)成三角面,進而構(gòu)成了 一個整體的網(wǎng)格。
[0004]對于大型的地面來說使用精細的地形來進行物理的碰撞檢測是一種通用可行的方法。但是在實際使用過程中,因為硬件運行效率的限制,均通過網(wǎng)格的三角面來進行碰撞檢測,從而完成碰撞響應(yīng)的操作,會導(dǎo)致系統(tǒng)整體的運行效果下降。網(wǎng)格變化之后,所有的網(wǎng)格均需要重新計算才能再次進行物理碰撞檢測操作。這種方法耗時較長、對硬件要求較高,對于實時性較強的應(yīng)用來說是不能滿足的。
【發(fā)明內(nèi)容】
[0005]本發(fā)明的目的是提供一種簡單、高效的履帶車輛六自由度仿真方法,以模擬履帶車輛在地形網(wǎng)格上的運動。
[0006]實現(xiàn)本發(fā)明目的的技術(shù)解決方案為:一種履帶車輛六自由度仿真方法,步驟如下:
[0007]第I步,地形三維建模:通過三維造型軟件對三維地形進行建模,設(shè)置地形網(wǎng)格之間的距離、以及地形材質(zhì)和顏色,同時為地形添加凸網(wǎng)格碰撞系統(tǒng);
[0008]第2步,履帶車輛三維建模:通過三維造型軟件對履帶車輛的履帶、車體的實際尺寸及形狀進行建模,同時為履帶車輛整體添加立方體剛體碰撞器;
[0009]第3步,履帶車輛簡化方法:將履帶車輛上部形狀簡化為一個BOX剛體對象,將履帶車輛的履帶簡化為多個車輪;
[0010]第4步,確定地形碰撞檢測點:根據(jù)地形的三角面,確定履帶車輪與地形接觸點的碰撞;
[0011]第5步,碰撞檢測點簡化方法:采用六個碰撞檢測點確定履帶車輛上部BOX剛體平面的傾斜角;
[0012]第6步,確定履帶車輛運動的位置、姿態(tài):根據(jù)履帶車輛的速度和時間確定履帶車輛的位移、航向角,根據(jù)第5步履帶車輛上部BOX剛體平面的傾斜角確定履帶車輛的俯仰角和滾轉(zhuǎn)角。
[0013]本發(fā)明與現(xiàn)有技術(shù)相比,其顯著優(yōu)點是:(1)采用六球體簡化履帶運動的仿真建模方法,解決了履帶車輛隨三維地形起伏運動的問題;(2)通過六球體高度變化建立履帶車輛上部傾斜角的模型,解決了履帶車輛的姿態(tài)建模問題;(3)為履帶車輛模擬訓(xùn)練產(chǎn)品中的車輛運動仿真提供了簡單、高效、逼真的仿真方法。
【專利附圖】
【附圖說明】
[0014]圖1是本發(fā)明地形網(wǎng)格的建模效果圖。
[0015]圖2是本發(fā)明方法中履帶車輛上部剛體對象的簡化示意圖,其中(a)為水平履帶車輛的簡化,(b)為傾斜履帶車輛的簡化。
[0016]圖3是本發(fā)明方法中(a)四個檢測點和(b)六個檢測點包圍球的示意圖。
[0017]圖4是本發(fā)明方法中履帶車輛前部設(shè)置采樣點的效果示意圖。
[0018]圖5是本發(fā)明方法中履帶車輛中部設(shè)置采樣點的效果示意圖。
[0019]圖6是本發(fā)明方法中履帶車輛后部設(shè)置采樣點的效果示意圖。
[0020]圖7是本發(fā)明方法中通過六球體采樣點模擬履帶車輛滾轉(zhuǎn)角的示意圖。
[0021]圖8是本發(fā)明方法中通過六球體采樣點模擬履帶車輛俯仰角的示意圖。
【具體實施方式】
[0022]下面結(jié)合附圖及具體實施例,對本發(fā)明作出進一步詳細說明。
[0023]結(jié)合附圖1?8,本發(fā)明的履帶車輛六自由度仿真方法,包括以下步驟:
[0024]第I步,地形三維建模:通過三維造型軟件例如3D Max對三維地形進行建模,設(shè)置地形網(wǎng)格之間的距離、以及地形材質(zhì)和顏色,同時為地形添加凸網(wǎng)格碰撞系統(tǒng),使地形能與履帶車輛進行碰撞檢測,避免車輛由于重力原因而穿透地形;
[0025]所述地形網(wǎng)格之間距離為50mm,網(wǎng)格過寬,容易造成仿真逼真度不夠;網(wǎng)格間距過小,則會增加仿真運算量,從而降低仿真刷新頻率,地形網(wǎng)格的效果如圖1。
[0026]第2步,履帶車輛三維建模:通過三維造型軟件3D Max對履帶車輛的履帶、車體(上部)的實際尺寸及形狀進行建模,同時為履帶車輛整體添加立方體剛體碰撞器,從而使車輛能與地形進行碰撞檢測。
[0027]第3步,履帶車輛簡化方法:將履帶車輛上部形狀簡化為一個BOX剛體對象,將履帶車輛的履帶簡化為多個車輪。所述履帶車輛簡化方法,具體包括以下步驟:
[0028](3.1)履帶車輛上部形狀簡化方法:履帶車輛的上部形狀不會影響到車輛的運動狀態(tài),因此履帶車輛的上部形狀在三維空間中簡化為一個BOX剛體對象,該BOX剛體對象使用預(yù)設(shè)值的包圍盒方式,包圍盒緊密包圍物體,履帶車輛上部剛體對象的簡化效果如圖2所示。
[0029](3.2)履帶車輛的履帶簡化方法:將車輛的每個履帶簡化為多個車輪,車輪半徑均相等,每個履帶至少簡化為3個車輪;
[0030](3.3)車輪的位置變化導(dǎo)致上部BOX剛體對象的位置發(fā)生相應(yīng)變化,因此上部BOX剛體對象表示整個履帶車輛的傾斜情況;
[0031](3.4)設(shè)置車輪和BOX剛體對象的接觸點,對于常規(guī)的車輛、汽車等輪式車輛,輪子和汽車接觸點只有4個,依據(jù)(3.2),履帶車輛的接觸點至少為6個。
[0032]第4步,確定地形碰撞檢測點:根據(jù)地形的三角面,僅需要計算當前車輪與地形接觸點的碰撞,并將此碰撞轉(zhuǎn)化為車輪的上下移動即可,確定履帶車輪與地形接觸點的碰撞具體包括以下步驟:
[0033](4.1)將車輪的位置轉(zhuǎn)化到地形網(wǎng)格的局部坐標系中,轉(zhuǎn)換公式為:
[0034]MPi=Pi^M
[0035]其中,Pi是第i個車輪的世界坐標點,MPi是第i個車輛在地形網(wǎng)格的局部坐標點,M是轉(zhuǎn)化矩陣;
[0036](4.2)根據(jù)地形網(wǎng)格局部坐標系中車輪周邊網(wǎng)格點的高度位置,確定車輪的接觸點位置,公式為:
[0037]Api= (pl+p2+…pn)/n
[0038]其中,pi是車輪周邊網(wǎng)格點的坐標值,滿足條件Ip1-MPi I <R,R是車輪的半徑值,表示在車輪半徑R范圍內(nèi)的所有點,Api為車輪半徑R范圍內(nèi)所有點的均值,即車輪接觸點的位置,Api的坐標為(xO, yO, zO);
[0039](4.3)根據(jù)車輪接觸點的坐標,確定車輪與上部BOX剛體對象接觸點的坐標為(xO, yO, zO+2R)。
[0040]第5步,碰撞檢測點簡化方法:采用六個碰撞檢測點確定履帶車輛上部BOX剛體平面的傾斜角;
[0041]對于履帶車輛,履帶和車輛的碰撞點有很多個,對所有碰撞點進行計算將耗費大量資源,因此需要對碰撞點進行簡化處理,對于一般輪式車輛使用4個碰撞點即可完成車輪與上部剛體運動的檢測實現(xiàn),而為了更好的處理履帶車輛在凹凸起伏的路面的行進狀態(tài),可以加入更多的碰撞點,在此我們采用6個點的處理方式,如圖3所示,具體包括以下步驟:
[0042](5.1)將每側(cè)履帶簡化為3個車輪,可以檢測到車體前部、中部、后部的起伏狀態(tài),從而引起上部BOX剛體對象的傾斜角度變化,如圖4、圖5、圖6所示;
[0043](5.2)根據(jù)第4步獲取的每個車輪與上部BOX剛體接觸點的坐標,從每側(cè)3個車輪接觸點中找出高度Z最大的兩個接觸點,再從這4個接觸點中找出高度Z最大的3個接觸
占.[0044](5.3)使用高度最大的 3 個接觸點坐標 A(xl, yl, zl)、B(x2, y2, z3)、C(x3, y3, z3)確定車體所在平面的法向量,方法如下:
【權(quán)利要求】
1.一種履帶車輛六自由度仿真方法,其特征在于,步驟如下: 第I步,地形三維建模:通過三維造型軟件對三維地形進行建模,設(shè)置地形網(wǎng)格之間的距離、以及地形材質(zhì)和顏色,同時為地形添加凸網(wǎng)格碰撞系統(tǒng); 第2步,履帶車輛三維建模:通過三維造型軟件對履帶車輛的履帶、車體的實際尺寸及形狀進行建模,同時為履帶車輛整體添加立方體剛體碰撞器; 第3步,履帶車輛簡化方法:將履帶車輛上部形狀簡化為一個BOX剛體對象,將履帶車輛的履帶簡化為多個車輪; 第4步,確定地形碰撞檢測點:根據(jù)地形的三角面,確定履帶車輪與地形接觸點的碰撞; 第5步,碰撞檢測點簡化方法:采用六個碰撞檢測點確定履帶車輛上部BOX剛體平面的傾斜角; 第6步,確定履帶車輛運動的位置、姿態(tài):根據(jù)履帶車輛的速度和時間確定履帶車輛的位移、航向角,根據(jù)第5步履帶車輛上部BOX剛體平面的傾斜角確定履帶車輛的俯仰角和滾轉(zhuǎn)角。
2.根據(jù)權(quán)利要求1所述的履帶車輛六自由度仿真方法,其特征在于,第I步所述地形網(wǎng)格之間距離為50mm。
3.根據(jù)權(quán)利要求1所述的履帶車輛六自由度仿真方法,其特征在于,第3步所述履帶車輛簡化方法,具體包括以下步驟: (3.1)履帶車輛上部形狀簡化方法:履帶車輛的上部形狀在三維空間中簡化為一個BOX剛體對象,該BOX剛體對象使用預(yù)設(shè)值的包圍盒方式,包圍盒緊密包圍物體; (3.2)履帶車輛的履帶簡化方法:將車輛的每個履帶簡化為多個車輪,車輪半徑均相等,每個履帶至少簡化為3個車輪; (3.3)車輪的位置變化導(dǎo)致上部BOX剛體對象的位置發(fā)生相應(yīng)變化,因此上部BOX剛體對象表示整個履帶車輛的傾斜情況; (3.4)設(shè)置車輪和BOX剛體對象的接觸點,依據(jù)(3.2),履帶車輛的接觸點至少為六個。
4.根據(jù)權(quán)利要求1所述的履帶車輛六自由度仿真方法,其特征在于,第4步所述確定地形碰撞檢測點,基于簡化的車輪模型,確定當前車輪與地形接觸點的碰撞,具體包括以下步驟: (4.1)將車輪的位置轉(zhuǎn)化到地形網(wǎng)格的局部坐標系中,轉(zhuǎn)換公式為:
MPi=Pi^M 其中,Pi是第i個車輪的世界坐標點,MPi是第i個車輛在地形網(wǎng)格的局部坐標點,M是轉(zhuǎn)化矩陣; (4.2)根據(jù)地形網(wǎng)格局部坐標系中車輪周邊網(wǎng)格點的高度位置,確定車輪的接觸點位置,公式為:
Api= (pl+p2+...pn) /n 其中,Pi是車輪周邊網(wǎng)格點的坐標值,滿足條件|pi_MPi|〈R,R是車輪的半徑值,表示在車輪半徑R范圍內(nèi)的所有點,Api為車輪半徑R范圍內(nèi)所有點的均值,即車輪接觸點的位置,Api的坐標為(x0, yO, z0); (4.3)根據(jù)車輪接觸點的坐標,確定車輪與上部BOX剛體對象接觸點的坐標為(xO, yO, zO+2R)。
5.根據(jù)權(quán)利要求1所述的履帶車輛六自由度仿真方法,其特征在于,第5步所述采用六個碰撞檢測點確定履帶車輛上部BOX剛體平面的傾斜角,具體包括以下步驟: (5.1)將每側(cè)履帶簡化為3個車輪,可以檢測到車體前部、中部、后部的起伏狀態(tài),從而引起上部BOX剛體對象的傾斜角度變化; (5.2)根據(jù)第4步獲取的每個車輪與上部BOX剛體接觸點的坐標,從每側(cè)3個車輪接觸點中找出高度Z最大的兩個接觸點,再從這4個接觸點中找出高度Z最大的3個接觸點;(5.3)使用高度最大的3個接觸點坐標A(xl,yl, zl)、B(x2,y2, z3)、C(x3,y3, z3)確定車體所在平面的法向量,方法如下:
6.根據(jù)權(quán)利要求1所述的履帶車輛六自由度仿真方法,其特征在于,第6步所述確定履帶車輛運動的位置、姿態(tài),具體包括以下步驟: (6.1)根據(jù)履帶車輛的運動速度、時間的乘積,確定履帶車輛在X、Y、Z三個方向的位移,公式為:
【文檔編號】G06F17/50GK103646139SQ201310642242
【公開日】2014年3月19日 申請日期:2013年12月3日 優(yōu)先權(quán)日:2013年12月3日
【發(fā)明者】翟永翠, 韓海良, 蔣充劍, 楊治鐸, 劉明皓 申請人:中國船舶重工集團公司第七一六研究所