翟永翠
(江蘇自動化研究所,江蘇 連云港 222061)
?
一種履帶式車輛運(yùn)動的六自由度仿真方法
翟永翠
(江蘇自動化研究所,江蘇 連云港 222061)
提出了一種基于三維地形碰撞檢測的履帶式車輛六自由度運(yùn)動仿真方法,詳細(xì)闡述了采用六球體簡化履帶運(yùn)動的仿真建模過程,具有運(yùn)算量小、仿真方法簡單、仿真效果逼真等特點(diǎn); 解決了履帶車輛隨三維地形起伏運(yùn)動的問題,為履帶車輛模擬訓(xùn)練產(chǎn)品中的車輛六自由度運(yùn)動仿真提供了簡單、高效、逼真的仿真方法.
履帶車輛; 六自由度; 仿真建模; 碰撞檢測
在三維虛擬現(xiàn)實(shí)仿真過程中,為逼真展現(xiàn)履帶式車輛隨地形變化而產(chǎn)生的起伏、顛簸運(yùn)動,就必須依據(jù)地形信息、車輛運(yùn)動性能等,實(shí)時模擬仿真車輛的位置、姿態(tài)等六自由度運(yùn)動信息,展現(xiàn)履帶車輛(如坦克,履帶式挖掘機(jī),履帶式推土機(jī)等設(shè)備)在三維地形中上的運(yùn)動過程.因此對于履帶車輛而言,其起伏狀態(tài)完全由當(dāng)前履帶所接觸到的地形所確定的,既不能簡單將履帶車輛簡化為一個剛體來處理,也不能將其當(dāng)作輪式車輛進(jìn)行處理[1-3].
對于大型的地面來說,使用精細(xì)的地形來進(jìn)行物理的碰撞檢測是一種通用可行的方法.但在實(shí)際使用過程中,因?yàn)橛布\(yùn)行效率的限制,均通過網(wǎng)格的三角面來進(jìn)行碰撞檢測,從而完成碰撞檢測的操作,會導(dǎo)致系統(tǒng)整體的運(yùn)行效果下降.網(wǎng)格變化之后,所有的網(wǎng)格均需要重新計算才能再次進(jìn)行物理碰撞檢測操作[4-6].這種方法耗時較長、對硬件要求較高,對于實(shí)時性較強(qiáng)的應(yīng)用來說是不能接受的,因此需要研究一種簡化、高效的物理算法,來模擬履帶車輛在地形網(wǎng)格上的運(yùn)動.
本文以建立三維仿真中履帶式車輛行走系統(tǒng)的六自由度模型為目標(biāo),首先介紹了履帶式車輛行走系統(tǒng)的基本建模方法,詳細(xì)闡述本文提出的一種基于地形碰撞檢測的履帶車輛建模方法的簡化方法,并簡要描述了該建模方法在某推土機(jī)虛擬訓(xùn)練仿真項(xiàng)目中的應(yīng)用效果,為三維虛擬仿真中坦克、推土機(jī)、挖掘機(jī)等履帶車輛的運(yùn)動仿真,提供了簡單、高效、逼真的仿真建模方法.
履帶車輛行走系統(tǒng)是由履帶和若干負(fù)重輪組成的,地形的起伏導(dǎo)致履帶和負(fù)重輪的上下高底不相同,進(jìn)而使得坦克的角度不同.現(xiàn)實(shí)中,履帶車的承重輪是由多個不同的剛體構(gòu)成的,如圖1所示.
圖1 履帶車輛承重輪的變化
根據(jù)履帶車輛的動力學(xué)方程,作用在履帶上的張緊力可以分為3個部分:
① 驅(qū)動輪與相鄰輪之間的履帶張緊力Ts2為
(1)
式中:Ms為驅(qū)動力矩;rs為驅(qū)動輪半徑.
② 張緊輪與其相鄰支重輪之間的張緊力Ti2.不考慮履帶質(zhì)量并忽略履帶與張緊輪之間的摩擦?xí)r,履帶張緊力等于張緊裝置的張緊力.
③ 支重輪之間履帶的張力,由于相鄰支重輪的垂向位移不同,其位移差造成支重輪之間的履帶張力,支重輪左、右兩側(cè)履帶張力為
(2)
式中:Tz,Ty表示支重輪左、右兩側(cè)履帶張力;ywi為緊張輪和張緊輪之間的摩擦系數(shù);μi(i+1)(i=1,2…5)為輪子彈簧的剛度.
當(dāng)輪子發(fā)生相對運(yùn)動時,履帶會對它產(chǎn)生約束作用:
(3)
式中:Fsi為懸架作用在輪上的合力;γi(i+1)為相鄰輪之間的相對距離;mwi為輪子質(zhì)量;g為重力加速度.
在三維環(huán)境中,地面是由一系的網(wǎng)格構(gòu)成,計算機(jī)通過點(diǎn)和點(diǎn)的索引來構(gòu)成三角面,進(jìn)而構(gòu)成了一個整體的網(wǎng)格.對于大型的地面來說使用精細(xì)的地形來進(jìn)行物理的碰撞檢測在理論上是可行的,但是在實(shí)際使用過程中因?yàn)橛布\(yùn)行效率的限制,會導(dǎo)致系統(tǒng)整體的運(yùn)行效果下降.因?yàn)閷τ诂F(xiàn)有的物理系統(tǒng)來說,均是通過網(wǎng)格的三角面來進(jìn)行碰撞檢測從而完成碰撞相應(yīng)的操作的.
現(xiàn)有的物理系統(tǒng)首先將所有多于三條邊的多邊形分割成三角片,即把物體表面三角化.然后采用一階和二階方法對構(gòu)成物體的所有三角形的所有三角片的頂點(diǎn)進(jìn)行統(tǒng)計,分別求得均值U、協(xié)方差矩陣C.設(shè)第i個三角片的頂點(diǎn)是pi,qi,ri,則有
(4)
圖2 地形的網(wǎng)格
網(wǎng)格變化之后,所有的網(wǎng)格均需要重新計算才能再次進(jìn)行物理碰撞檢測操作.常用的算法為:構(gòu)造Voronoi圖,利用凸性建立用于驗(yàn)證最近特征的局部適用準(zhǔn)則,確定最近特征對,然后計算兩個最近特征間的距離以判斷兩個凸多面體是否相交.該算法利用了運(yùn)動的空間及時間的連貫性,假定新的最近特征對是上一時刻最近特征對鄰近的特征,因而下一時刻最近特征對的確認(rèn)不再需要全局搜索,見圖3.
圖3 基于Voronoi圖的特征對搜索方法
面1和頂點(diǎn)Vb分別為物體 A,B上的候選特征,先測試看點(diǎn)Vb是否在面1的Voronoi域(單元 1)里.由于Vb在約束面Cp外,故下一步測試Vb是否在Cp指向的鄰近域(單元 2)中,如此測試下去直到兩特征都分別位于對方的Voronoi域中,這樣的特征對即為最近特征對.一般情況下,物體在相鄰兩時刻位移不大,故相鄰兩時刻的最近特征對相隔也不會很遠(yuǎn),最近特征對的更新花費(fèi)時間很少,從而使得該算法具有實(shí)時性.
但是該算法耗時較長,對于實(shí)時性較強(qiáng)的應(yīng)用來說這是不能接受的.因此需要一種簡化而高效的物理算法來完成履帶車輛在網(wǎng)格地形上的運(yùn)動情況.
2.1 履帶車輛簡化
履帶車輛的上部形狀不會影響到車輛的運(yùn)動狀態(tài),因此在三維空間中可以簡化為一個BOX剛體對象,而這個BOX對象使用預(yù)設(shè)值的包圍盒方式,包圍盒應(yīng)能緊密包圍物體,同時又便于高效地對一條光線和包圍盒做求交測試.對于碰撞檢測算法,可借助一個函數(shù)來分析:
T=NvCv+NpCp+NuCu
(5)
式中:T是碰撞檢測的總耗費(fèi);Nv是參與重疊測試的包圍盒的對數(shù);Cv是一對包圍盒做重疊測試的耗費(fèi);Np是參與求交測試的幾何元的對數(shù);Cp是一對幾何元做求交測試的耗費(fèi);Nu是物體運(yùn)動后包圍盒層次需要修改的結(jié)點(diǎn)個數(shù);Cu是修改一個結(jié)點(diǎn)的耗費(fèi).
根據(jù)T這一耗費(fèi)函數(shù),可以推測理想的包圍盒應(yīng)滿足如下要求:①在各層次上緊湊地逼近輸入模型及其子部分,以減少Nv,Np; ②支持快速為一對包圍盒做重疊測試,以減少Cv; ③當(dāng)物體旋轉(zhuǎn)或平移時,支持對其包圍盒層次中結(jié)點(diǎn)的快速修改,以減少Cu.
根據(jù)上述算法,可以直接將車輛的上體簡化為一個BOX包圍盒,簡化后的剛體對象就能夠表示整個履帶車輛的傾斜情況,由于上體下方輪子的位置變化導(dǎo)致上部剛體位置也發(fā)生相應(yīng)變化,見圖4.
對于常規(guī)的車輛,如汽車,它們與的接觸點(diǎn)只有4點(diǎn),因此能夠在很短時間內(nèi)就對地形和車輛的傾斜角度進(jìn)行計算和相關(guān)的仿真.在這個簡化的過程中,我們可以建立上部剛體的位置和角度的相關(guān)性方程:
圖4 車輪位置變化導(dǎo)致車體發(fā)生變化
(6)
式中:FC是上部剛體的旋轉(zhuǎn)角度;Wi是車輪i的相關(guān)度; 而k是當(dāng)前車輛偏移中心的距離.
2.2 地形碰撞檢測
常規(guī)的基于網(wǎng)格的碰撞檢測是基于網(wǎng)格點(diǎn)構(gòu)成的三角面進(jìn)行的,在大規(guī)模的處理過程中會導(dǎo)致系統(tǒng)的效率嚴(yán)重下降.而基于簡化的車輪模型中,只要確定當(dāng)前車輪的位置即可.因此無需計算整個網(wǎng)格的碰撞過程而僅需要計算當(dāng)前接觸點(diǎn)的碰撞,并將此碰撞轉(zhuǎn)化為車輪的上下移動即可.如圖5中的頂部區(qū)域,僅需要計算車輪周邊的區(qū)域即可.
圖5 網(wǎng)格的局部區(qū)域
通過將車輪的位置轉(zhuǎn)化為網(wǎng)格對象的局部坐標(biāo)系統(tǒng),可以在網(wǎng)格的局部坐標(biāo)中計算當(dāng)前車輪周邊的點(diǎn),并將這些點(diǎn)的位置近似計算為車輪的接觸點(diǎn),即
(7)
式中,MPi是當(dāng)前點(diǎn)在網(wǎng)格局部的坐標(biāo)點(diǎn);pi是第i個車輪的坐標(biāo)點(diǎn);M′是轉(zhuǎn)化矩陣.
因此在三維空間中,可以直接計算當(dāng)前車輪所在周邊網(wǎng)格點(diǎn)的高度位置,從而確定當(dāng)前車輪的位置:
(8)
式中:pi是車輪周邊的點(diǎn)的坐標(biāo)值,滿足條件(pi-MPi) 2.3 碰撞檢測點(diǎn)的簡化 對于履帶車輛,履帶和車輛的碰撞點(diǎn)有很多個,在一定程度上計算大量的碰撞點(diǎn)在實(shí)際操作中是不可行的.因此需要對碰撞點(diǎn)進(jìn)行簡化處理.對于一般的車輛,使用4個點(diǎn)的碰撞即可完成車輪與地面碰撞的檢測,而為了更好地處理履帶車輛在凹凸起伏的路面的行進(jìn)狀態(tài),可以加入更多的點(diǎn)進(jìn)行處理.在這里我們使用6個點(diǎn)的處理方式來進(jìn)行,使用6個檢測點(diǎn)后,可以檢測到車體中間的起伏狀態(tài),從而將車體的中部抬起,見圖6. 圖6 4個檢測點(diǎn)與6個檢測點(diǎn)包圍球 使用6個碰撞點(diǎn)避免了車體中間陷入地形面的情況,可以看出在圖6中,中間輪子的突起導(dǎo)致了上部剛體角度的變化,在系統(tǒng)中,我們只需要獲得上部剛體的傾斜角度即可,而對于未發(fā)生變化的前后輪子并不考慮他們的變化. 簡化后的數(shù)學(xué)模型實(shí)際上為包圍盒的碰撞檢測算法,而對于包圍球間的相交測試也相對比較簡單.c1,r1分別是包圍球1的球心和半徑,c2,r2分別是包圍球2的球心和半徑,如果球心距離小于半徑之和,即|c1-c2| <(r1+r2),則兩包圍球相交,可進(jìn)一步簡化為判斷(c1-c2)(c1-c2) <2(r1+r2).故包圍球間的相交測試需要4次加減運(yùn)算、4次乘法運(yùn)算和1次比較運(yùn)算. 雖然包圍球的緊密性在所有包圍盒類型中是比較差的,它除了對在3個坐標(biāo)軸上分布的比較均勻的幾何體外,幾乎都會留下很大的空隙,在大多數(shù)情況下包圍球無論是緊密性還是簡單性都有所不如,因此,它是使用得比較少的一種包圍盒.當(dāng)對象發(fā)生旋轉(zhuǎn)運(yùn)動時,包圍球不需要做任何更新,這是包圍球比較優(yōu)秀的一個特性,當(dāng)幾何對象進(jìn)行頻繁的旋轉(zhuǎn)運(yùn)動時,采用包圍球可能得到較好的結(jié)果.當(dāng)對象發(fā)生變形時,很難從子結(jié)點(diǎn)的包圍球合成父結(jié)點(diǎn)的包圍球,只能重新計算.但對于一般的仿真來說,這種包圍球和包圍盒方式已經(jīng)能夠完全滿足要求,并且由于它的執(zhí)行效率比較高,因此被廣泛應(yīng)用. 使用Unity3d作為試驗(yàn)平臺,我們繪制了一個網(wǎng)格,使用的履帶車輛為SD52型推土機(jī),在履帶車的底部我們使用了6個檢測點(diǎn)來檢測網(wǎng)格的起伏情況,如圖7,分別試驗(yàn)不同的起伏狀態(tài)對車輛的影響.試驗(yàn)中,車輛的履帶和地面接觸部分有部分相交,在當(dāng)前模型下由于采樣點(diǎn)使用的是均值采樣,因此在一定程度上車輪和地面會有不同程度的交疊,但是在實(shí)際情況下,這種交疊是存在的. 圖7 地形起伏引起的車輛姿態(tài)變化 履帶車輛的行走運(yùn)動是三維虛擬仿真中的重點(diǎn),本文提出采用六球體簡化履帶運(yùn)動的仿真建模方法,通過六球體的高度變化建立履帶車輛上部傾斜角的模型算法,解決了履帶車輛隨三維地形起伏運(yùn)動的問題.本方法可用于坦克、挖掘機(jī)、推土機(jī)等履帶車輛設(shè)備的六自由度仿真建模,解決了傳統(tǒng)算法的計算量大、對硬件要求較高、實(shí)時性不強(qiáng)等問題,具有運(yùn)算量小、仿真方法簡單、仿真效果逼真等特點(diǎn). [1] 孫冬,魏勇.視景仿真中履帶車輛模擬[J].科學(xué)技術(shù)與工程,2013,13(32):9565-9568. SUN Dong,WEI Yong.Simulation of tracked vehicle in visual simulation[J].science technology and engineering,2013,13(32):9565-9568. [2] 成凱,徐曉龍.履帶式濕地系列推土機(jī)行走機(jī)構(gòu)的仿真[J].中國工程機(jī)械學(xué)報,2013,11(4):331-336. CHENG Kai,XU Xiaolong.Simulation of the running mechanism of the crawler type wetland bulldozer[J].Chinese Journal of construetion Machinery,2013,11(4):331-336. [3] 張琦,孫劭文.履帶式工程車輛訓(xùn)練模擬器動力學(xué)建模與實(shí)現(xiàn)[J].中國工程機(jī)械學(xué)報,2006,17(增刊):392-394. ZHANG Qi,SUN Shaowen.Tracked engineering vehicle training simulator dynamic modeling and implementation of[J].Chinese Journal of construetion Machinery,2006,17(Suppl):392-394. [4] 賈小平,樊石光.不同路面下的履帶運(yùn)輸車動力學(xué)仿真[J].機(jī)械研究與應(yīng)用,2014,27(1):36-38. JIA Xiaoping,FAN Shiguang.Under different pavement tracked vehicle dynamics simulation[J].Mechanical Research and Application,2014,27(1):36-38. [5] 翟永翠,韓海良.履帶車輛六自由度仿真方法:中國,CN201310642242.6[P].2013-12-10. ZHAI Yongcui,HAN Hailiang.Six degrees of freedom simulation method of tracked vehicle:China,CN201310642242.6[P].2013-12-10. [6] 張濤,郭志強(qiáng),周志立.橡膠履帶車輛行走系統(tǒng)的動力模型及脫輪問題仿真分析[J].河南科技大學(xué)學(xué)報:自然科學(xué)版,2006,27(6):12-15. ZHANG Tao,GUO Zhiqgang,ZHOU Zhili.Simulation of off-wheel problem of high speed tracked vehicle′s running system[J].Journal of Henan University:Sience and Technology:2006,27(6):12-15. Six degrees of freedom simulation on tracked vehicle movement ZHAI Yong-cui (Jiangsu Automation Research Institute,Lianyungang 222061,China) Firstly, the kinematic simulation method for tracked vehicles is proposed based on six degrees of freedom for 3D terrain collision detection.Then, the six sphere predigest is described for modeling process.Next, this method possesses easy computation, simple simulation and distinct effect to resolve the terrain rolling problem.Finally, the simple, efficient and distinct properties of the proposed approach are proven among training products. tracked vehicle; six degrees of freedom; simulation; collision detection 翟永翠(1978-),女,研究員.E-mail:846586867@qq.com TP391.9 A 1672-5581(2016)03-0211-053 試驗(yàn)結(jié)果
4 結(jié)語