国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于OpenGL的槍彈侵徹傷道可視化研究

2023-06-01 13:40:58劉榮華溫垚珂閆文敏劉蘇蘇
計算機(jī)仿真 2023年4期
關(guān)鍵詞:槍彈空腔明膠

劉榮華,溫垚珂,閆文敏,劉蘇蘇

(1. 南京理工大學(xué)機(jī)械工程學(xué)院,江蘇 南京 210094;2. 瞬態(tài)沖擊技術(shù)國防科技重點實驗室,北京 102202;3. 中國兵器工業(yè)第208研究所,北京 102202;4. 南通大學(xué)機(jī)械工程學(xué)院,江蘇 南通 226019)

1 引言

人體易損性評估軟件可以快速評估各類殺傷元對人體靶標(biāo)的殺傷效應(yīng),結(jié)合具體作戰(zhàn)任務(wù)還可評估人員的失能情況。為了在軟件界面快速直觀地再現(xiàn)槍彈侵徹過程及其在人體靶標(biāo)內(nèi)造成的瞬時空腔膨脹過程,就需要結(jié)合相應(yīng)終點彈道理論模型數(shù)據(jù),在軟件中虛擬再現(xiàn)侵徹過程。目前,對基于各類外彈道方程的槍彈和導(dǎo)彈飛行過程虛擬再現(xiàn)技術(shù)研究較多,對槍彈終點彈道的虛擬再現(xiàn)技術(shù)罕有文獻(xiàn)報道[1]。

張進(jìn)強(qiáng)等人[3]通過構(gòu)建OpenGL的三維視景仿真環(huán)境,實現(xiàn)了基于數(shù)值仿真實時驅(qū)動的彈道可視化仿真平臺,對炮彈的飛行軌跡、實時運(yùn)動姿態(tài)進(jìn)行了仿真和分析。吳楓等人[4]利用虛擬現(xiàn)實技術(shù)、數(shù)據(jù)可視化技術(shù)等,構(gòu)建了一個航天發(fā)射可視化仿真平臺,并開展了相應(yīng)可視化仿真應(yīng)用案例。薛志斌等人[5]為降低工作量,通過專業(yè)三位建模軟件3DS MAX建立模型,并用C++語言將3DS文件導(dǎo)入OpenGL中,實現(xiàn)可視化以及人機(jī)交互控制。程翔等人[6]對六自由度算法模型進(jìn)行了改進(jìn),實現(xiàn)了導(dǎo)彈六自由度彈道三維仿真,該仿真能夠真實可靠并且清晰直觀的反映導(dǎo)彈的六自由度彈道特性,其可視化效果良好。文雷[7]利用計算機(jī)圖形技術(shù),構(gòu)造導(dǎo)彈的三維模型并通過快速載入實體模型的方法載入OpenGL,最終實現(xiàn)了導(dǎo)彈飛行仿真,為導(dǎo)彈飛行軌跡研究提供了一種直觀、便捷的仿真分析方法。

目前,已有研究大都針對三維模型實時位移、旋轉(zhuǎn)實現(xiàn)了仿真[8],[9],但侵徹過程中的瞬時空腔是一個形狀實時變化的三維模型,動態(tài)變形特點給傷道仿真帶來困難。本文基于OpenGL設(shè)計了槍彈侵徹仿真程序,程序可以實現(xiàn)對槍彈侵徹全過程的三維可視化。通過引入阻力系數(shù)和升力系數(shù),建立槍彈運(yùn)動和瞬時空腔運(yùn)動模型。經(jīng)過與實驗對比發(fā)現(xiàn)模型具有良好的準(zhǔn)確性。依據(jù)模型,獲取侵徹過程槍彈運(yùn)動與空腔變形的實時數(shù)據(jù),設(shè)計算法實現(xiàn)對子彈運(yùn)動和空腔運(yùn)動的可視化仿真,為動態(tài)變形的三維模型仿真提供了一些參考。

2 槍彈侵徹明膠靶標(biāo)理論模型

在槍彈侵徹明膠過程中,槍彈的受力主要隨槍彈與明膠有效接觸面積變化,其中面積分離率和彈頭長徑比是描述有效接觸面積的重要因素。劉蘇蘇[8]通過分析侵徹過程中的不同方向受力,提出了阻力系數(shù)和升力系數(shù)與翻轉(zhuǎn)角的關(guān)系式,從而建立步槍彈在明膠中的運(yùn)動模型和瞬時空腔運(yùn)動模型。

2.1 槍彈運(yùn)動方程

當(dāng)槍彈以非零度攻角侵徹明膠時,槍彈在明膠中的運(yùn)動可以分為:質(zhì)點平動和繞質(zhì)心的轉(zhuǎn)動[11]-[13]。隨著槍彈翻轉(zhuǎn)角的增加,槍彈與明膠的有效接觸面積增大,因而槍彈不斷受到一個翻滾力矩的作用;與此同時,槍彈翻轉(zhuǎn)過程中,槍彈尾部會受到明膠的阻礙作用,從而形成一個阻尼力矩,始終阻礙槍彈的翻轉(zhuǎn)。結(jié)合這兩個在槍彈上作用相反的力矩,建立方程(1)。

質(zhì)點平動中受力分為水平方向的阻力和豎直方向的升力。關(guān)于阻力,通過引入空氣動力學(xué)中的阻力系數(shù),建立阻力模型。阻力的大小主要取決于有效接觸面積的大小。根據(jù)槍彈在明膠中翻轉(zhuǎn)的角度,可將翻轉(zhuǎn)分為三個階段即窄傷道段、快速翻轉(zhuǎn)階段、阻尼振蕩階段,并分別建立有效接觸面積與翻轉(zhuǎn)角的關(guān)系方程。結(jié)合升力的作用,引入升力系數(shù)最終建立方程(2)(3)(4)。

(1)

(2)

(3)

圖1圖2是以上理論模型與實驗結(jié)果的對比。從圖中可以看出,理論模型得到的數(shù)據(jù)與實驗結(jié)果重合度很好,這表明該理論模型能夠較為準(zhǔn)確的反映侵徹過程。

圖1 侵徹深度隨時間變化曲線

圖2 翻轉(zhuǎn)角度隨時間變化曲線

2.2 瞬時空腔運(yùn)動方程

取明膠深度S處,軸向厚度為ds的截面為研究對象,依據(jù)動能定理計算得到彈頭在該截面釋放的能量dEs。當(dāng)該截面空腔膨脹至最大時,認(rèn)為截面動能為0,變形能量最大,且該層明膠具有最大能量dEp??紤]到由于攻角的存在,彈頭會出現(xiàn)翻滾現(xiàn)象,明膠分層之間存在能量交換,分層能量不守恒,即dEs≠dEp。通過假設(shè)分層之間的能量交換與彈頭釋放能量和所有截面中彈頭最大釋放能量的差值正相關(guān),建立明膠截面的最大變形能與彈頭釋放能量的關(guān)系表達(dá)式。又考慮彈頭翻轉(zhuǎn)帶來的影響,引入彈頭有效接觸面積和明膠粘彈性的影響,表示截面變形能和動能之間的關(guān)系。最終瞬時空腔運(yùn)動模型如下

(4)

圖3是是以上理論模型與實驗結(jié)果的對比(某7.62mm槍彈,入靶速度701m/s)。從圖中可以看出,理論模型可以很好地模擬空腔從開始膨脹到閉合運(yùn)動過程的空腔輪廓。

圖3 理論模型結(jié)果與實驗結(jié)果典型時刻對比[8]

3 仿真實現(xiàn)

OpenGL庫一般包含兩個基本庫,一個用來實現(xiàn)開窗,另一個管理OpenGL函數(shù)指針[1][2]。實現(xiàn)這兩個功能的庫有很多。采用當(dāng)前成熟、穩(wěn)定的GLFW、GLEW庫?;经h(huán)境的搭建需要將這兩個庫加載、驅(qū)動,其中初始化的關(guān)鍵語句如下:

表1 OpenGL初始化關(guān)鍵語句

3.1 子彈

OpenGL渲染模型的過程,是由CPU對模型數(shù)據(jù)(頂點、法線、紋理)進(jìn)行讀取、處理,再將數(shù)據(jù)傳遞至GPU進(jìn)行渲染顯示。對于復(fù)雜的幾何模型,手動輸入模型的頂點、法線和紋理坐標(biāo)數(shù)據(jù)是極為困難的,其效率也較低。模型加載可以將建立好的幾何模型導(dǎo)入程序之中,極大提高了復(fù)雜場景可視化的效率。

在3dmax軟件中,畫出槍彈彈頭的幾何模型,保存為obj格式文件。利用ASSIMP模型加載庫將子彈模型加載到程序之中。在OpenGL中,模型的幾何數(shù)據(jù)以矩陣的形式進(jìn)行操作,模型的幾何變換是由矩陣乘以相應(yīng)的變換向量、矩陣實現(xiàn)的。GLM是一個專門為OpenGL量身定做的數(shù)學(xué)庫,該庫可以幫助得到幾何變換相應(yīng)的矩陣。

利用函數(shù)glm∷mat4建立一個單位矩陣,通過glm∷translate、glm∷scale、glm∷rotate函數(shù)對單位矩陣進(jìn)行變換,得到平移、縮放、旋轉(zhuǎn)的變換矩陣。其中g(shù)lm∷rotate()函數(shù)需要一個向量作為自變量,幾何模型會以該向量作為旋轉(zhuǎn)軸進(jìn)行旋轉(zhuǎn)。這個旋轉(zhuǎn)軸向量的起點為子彈質(zhì)心,方向與旋轉(zhuǎn)平面垂直。而子彈在做平移時,質(zhì)心會不斷變化,使該旋轉(zhuǎn)向量需要不斷隨之變化。為解決該問題,使用一個函數(shù),因變量是初始旋轉(zhuǎn)軸向量和質(zhì)心動態(tài)坐標(biāo),函數(shù)返回一個不斷隨著質(zhì)心平移的旋轉(zhuǎn)軸向量。

子彈的運(yùn)動分為質(zhì)心的平動和繞質(zhì)心的旋轉(zhuǎn),由運(yùn)動方程求解,得到子彈隨時間的位移和翻轉(zhuǎn)角度數(shù)據(jù)。將子彈的位移值和翻轉(zhuǎn)角度數(shù)據(jù),作為變換矩陣的變換量,隨時間不斷切換到對應(yīng)的值。最終實現(xiàn)子彈模型的運(yùn)動可視化效果。圖4是子彈典型時刻姿態(tài)與實驗對比圖,從圖中可以看出,通過程序?qū)崿F(xiàn)的子彈運(yùn)動可視化效果與實驗中較為符合。

圖4 子彈典型時刻姿態(tài)與實驗對比圖

圖4中,a:實驗高速攝影拍攝的子彈在明膠中運(yùn)動過程,b:槍彈侵徹過程可視化效果。

3.2 瞬時空腔

目前OpenGL渲染圖形,主要應(yīng)用于不變化模型的渲染,而對實時變換形狀的模型渲染少有應(yīng)用。瞬時空腔是一個典型的幾何形狀隨時間不斷變換的模型,傳統(tǒng)的方式難以處理。OpenGL渲染的基礎(chǔ)圖元是三角形,將瞬時空腔劃分為有限多個三角形,并實時變換三角形的數(shù)據(jù),最終實現(xiàn)瞬時空腔運(yùn)動的渲染動畫。算法原理如圖5所示。

圖5 依據(jù)數(shù)據(jù)渲染空腔原理圖

圖6是槍彈侵徹明膠數(shù)值計算結(jié)果中,垂直彈道一截面典型時刻的等效應(yīng)力圖[14]。從圖中可以看出,在垂直侵徹方向,瞬時空腔的形狀可以看作一個圓。為此,將瞬時空腔視作沿著侵徹深度排列的一系列圓組成,這些圓的位置和大小都會隨時間變化。將每一時刻的空腔分為一系列圓,通過方程求解,可以獲得這一系列圓的圓心位置和半徑。

圖6 空腔一截面等效應(yīng)力圖[14]

如圖7a所示,在一系列圓上取點,再從相鄰兩個圓上取四個點如圖7b所示,由這四個點分別組成兩個互補(bǔ)為矩形的三角形。沿著圓上對所有點進(jìn)行以上操作,即可將兩個圓之間,由三角形進(jìn)行縫補(bǔ),最終形成一個圓臺的形狀。對沿著侵徹深度的所有圓進(jìn)行以上操作,最終可以獲得空腔的形狀。依照以上原理,將空腔沿著侵徹深度方向劃分為50個圓,每個圓上取8個點。為確定每個點的頂點三維坐標(biāo),對一系列圓心位移、半徑數(shù)據(jù)進(jìn)行以下處理

圖7 圓上選取三角形頂點

Xi=X0;

(5)

Yi=Y0+R*sin(i*2pi/n);

(6)

Zi=R*cos(i*2pi/n);

(7)

X0、Y0、Z0=0是圓心的坐標(biāo),R是圓半徑,Xi、Yi、Zi是圓上第i個點的坐標(biāo),n是在圓上劃分點的個數(shù)。建立一個循環(huán)將沿著圓上各點坐標(biāo)求得,放入數(shù)組。(OpenGL坐標(biāo)系遵循右手定則,在屏幕上向右為X正方向,向上為Y正方向,垂直屏幕向里是Z正方向)

OpenGL中渲染三角形,頂點數(shù)據(jù)需要按照逆時針三角形的順序排列。按照如圖7b的順序?qū)⑺许旤c排序從新放入數(shù)組。根據(jù)理論模型求解每一時刻的空腔數(shù)據(jù)較為繁瑣,因此只選取10個時間間隔相同的典型空腔數(shù)據(jù),并通過對數(shù)據(jù)進(jìn)行插值計算,得到豐富的數(shù)據(jù),來驅(qū)動可視化仿真,以保證畫面的流暢性和變形過程清晰的展現(xiàn)。最后將該數(shù)組作為頂點數(shù)據(jù)傳遞至GPU進(jìn)行渲染。

經(jīng)過對算法的測試,結(jié)果表明,該算法可以很好的呈現(xiàn)空腔的動態(tài)變形過程。截取典型時刻的空腔形狀,如圖8。

圖8 典型時刻空腔形狀

3.3 應(yīng)用案例

依據(jù)上述子彈運(yùn)動模型和瞬時空腔運(yùn)動模型,以某7.62mm槍彈為例,使用Matlab對微分方程組求解獲取數(shù)據(jù)。結(jié)合C++語言編寫的侵徹過程可視化程序,實現(xiàn)槍彈侵徹明膠的可視化,從而更快速直觀的觀察侵徹發(fā)生過程中的現(xiàn)象。

初始條件為:X方向位移為0,Y方向位移為0,偏轉(zhuǎn)角為0,X方向速度為700m/s,Y方向速度為36.678 m/s,偏轉(zhuǎn)角速度為0。

圖9是通過可視化程序?qū)崿F(xiàn)的槍彈侵徹明膠場景,并和實驗照片進(jìn)行了對比。從圖中可以看出空腔的形狀與實驗高速攝影相似,可以較為真實地展示空腔的變形過程。經(jīng)過驗證,設(shè)計的算法可以將子彈侵徹明膠過程中空腔的動態(tài)變形完整的呈現(xiàn)。利用該程序可以進(jìn)行各種初始條件的仿真,形象地預(yù)測傷道的形狀,為后續(xù)將其投影到人體上進(jìn)行不同位置損傷評估有重要支撐作用。

圖9 可視化空腔與實驗典型時刻對比圖

4 結(jié)論

1)建立的槍彈侵徹明膠運(yùn)動方程可以較準(zhǔn)確的描述槍彈侵徹過程中槍彈在明膠內(nèi)的侵徹深度和翻滾角度變化歷程。

2)建立的明膠內(nèi)瞬時空腔運(yùn)動方程可以較準(zhǔn)確描述明膠內(nèi)瞬時空腔的形狀輪廓隨時間和空腔的演化過程。

3)基于OpenGL技術(shù)開發(fā)的傷道可視化軟件可以快速直觀的再現(xiàn)槍彈侵徹人體模擬靶標(biāo)過程中傷道的形成過程,為人體易損性評估軟件提供準(zhǔn)確的人體損傷數(shù)據(jù)。

猜你喜歡
槍彈空腔明膠
基于邊光滑有限元法的二維復(fù)合彈性空腔聲振特性分析
基于Unity3D的槍彈虛擬裝配實驗系統(tǒng)開發(fā)
電子測試(2018年6期)2018-05-09 07:31:36
美國陸軍測試中口徑槍彈
輕兵器(2017年19期)2017-10-23 12:43:42
空腔參數(shù)對重力壩穩(wěn)定的影響分析
俄羅斯完成3D打印槍彈的射擊試驗
輕兵器(2017年2期)2017-03-10 15:52:59
前置污水去油池
前置污水去油池
超高壓明膠理化性質(zhì)分析
復(fù)凝法制備明膠微球
河南科技(2014年22期)2014-02-27 14:18:07
宋海新:“問題”明膠生產(chǎn)者
法人(2014年2期)2014-02-27 10:42:17
辽阳市| 麦盖提县| 象山县| 中方县| 宁化县| 维西| 南京市| 绵竹市| 新沂市| 邵阳县| 会东县| 武安市| 扶余县| 德州市| 汝城县| 新和县| 满洲里市| 岱山县| 枝江市| 广宁县| 莱州市| 江津市| 博爱县| 通河县| 临西县| 合水县| 昂仁县| 左贡县| 通海县| 北碚区| 洪雅县| 福安市| 大竹县| 页游| 濮阳市| 措美县| 唐山市| 芜湖市| 祁东县| 英山县| 邵阳县|