周 帥,李娟莉,3,謝嘉成
(1.太原理工大學 機械工程學院,山西 太原 030024;2.山西焦煤集團有限責任公司博士后科研工作站,山西 太原 030024;3.煤礦綜采設備山西省重點實驗室,山西 太原 030024)
由于井下條件的限制,很難對工作面設備的運行情況、作用范圍和相互匹配情況進行細致的研究。利用虛擬現實技術生成綜采工作面,可以清楚地看到工作過程的過程和隱患。通過系統(tǒng)數據接口實現綜采面虛擬現實,讀出相應監(jiān)控系統(tǒng)提供的數據,并在虛擬礦山中顯示相應的現場操作,達到數據三維可視化的目的。近年來礦用虛擬現實技術發(fā)展迅猛,在綜合、培訓、可視化3個方向上都有快速大跨越式的發(fā)展[1-14]。基于此,采用虛擬現實(VR)場景構建技術、三維虛擬模型制作技術、多媒體技術和網絡技術,建立三維可視化操作和仿真平臺,實現綜采工作面的全景流程,提出優(yōu)化展現綜采工作面各設備的外觀及實際運行環(huán)境、事故故障渲染動態(tài)效果的方法。
系統(tǒng)體系結構如圖 1,系統(tǒng)架構包括2個主要部分:全景造型設計與故障渲染研究。
圖1 系統(tǒng)體系結構
實現功能的主要手段:①幾何建模:專注于事物中基元的形狀和輪廓,顏色基元間的連接性,包括人物、設備、巷道的建模渲染以及裝配;②物理建模:物理建模多考慮事物的物理屬性,典型的是分形技術和粒子系統(tǒng),如礦井中的石塊,煤渣,火焰,煙霧,水;③運動建模:在構建虛擬場景時,只有的靜態(tài)3D模型是不夠的,例如:碰撞檢測,剛體的置入以及第一第三操作視角的制作;④行為建模:涉及到事物的運動和行為特征,當事物交互時,不需要用戶控制就能體現事物之間的動態(tài)關系,例如設備的自行移動,礦工的巡視,刮板輸送機輸送煤塊等。
綜采工作面全景造型設計包括礦工人物建模,地形巷道建模、煤機設備建模、綜采工作面布置、第一第三人稱漫游設置,5個模塊讓使用者可以根據優(yōu)化的全景造型設計更加直觀全面的了解綜采工作面的各個方面。
1)礦工人物建模。礦工的角色建模使用3DSMAX軟件來建模,繪制和渲染角色。為了使建模出的人物更加逼真生動需要利用Lightmapping(光照貼圖)以增強場景光照貼圖效果,用較少的性能占用使場景更加真實豐富,而且更加立體,為了產生光滑,真實而不顯眼的質感光線效果。需要對其進行骨骼的綁定與蒙皮操作才能在Unity-3D時動畫效果逼真,在人物建模完成之后轉換為FBX格式同時保存animation文件導出,在導出時保持開始幀,結束幀,步幅值保持默認不變,選擇Embed Media連同貼圖一并導出。Unity-3D中的Mecanim為人形模型提供工作流與動畫創(chuàng)作的能力,從3DS-MAX中導入的模型會自動生成Avatar(人形骨架)但某些關鍵關節(jié)還需要進行手動調整配置,在配置Avatar(骨骼)、Mecanim(肌肉)、Body Mask(身體遮蓋)等基礎參數之后、可利用Animator Controller(動畫控制)控制角色動畫,與動畫重復時間。礦工在綜采工作面中的巡視等行為建模需要通過鋪設路點來實現,并利用C#編寫腳本核心代碼如下:
void Start()
{inst=this;}
void Update()
{RotateTo();
MoveTo();}
public void RotateTo()
{float current=transform.eulerAngles.y;
this.transform.LookAt(m_currentNode.transform);
Vector3 target=this.transform.eulerAngles;
float next=Mathf.MoveTowardsAngle(current,target.y,120*Time.deltaTime);
this.transform.eulerAngles=new Vector3(0,next,0);}
2)地形巷道建模。系統(tǒng)利用Unity-3d中的地形編輯器LOD功能,攝像機與地形之間的距離以及地形的起伏程度可調整貼片柵格的密度。使用疏密變化的網格,使場景更加真實,精細,再放入由3DSMAX建模生成的巷道模型,加以貼圖展現井下的仿真場景。
3)煤機設備建模與綜采工作面布置。設備造型采用UG10.0對綜采設備中的采煤機,刮板輸送機和液壓支架進行建模,使父子零部件之間的連接精確,以便于呈現單獨運動和設備之間的相互運動,以及后期置入骨骼,GUI操控。綜采工作面的主要設備由采煤機,液壓支架,刮板輸送機,液壓泵站,電源,控制系統(tǒng)、轉載機、輔助運輸設備等7大類設備所組成。將各設備參照真實礦下情況,布置到正確位置。
4)第一第三人稱視角漫游設置?;谡w漫游行為路徑的設計與設置理論,在以Unity-3D為平臺的第一人稱漫游的設計與實現已經非常成熟,在調節(jié)膠囊體底部略高于地面之后調整Character Controllers(角色控制器)、Rigibody(剛體)參數之后便可以順暢的使用。第三人稱漫游設置是為了讓用戶有更好的身臨其境的效果。在場景中的人物模型自身已經帶有動畫、Avatar(骨骼)、Animator(動畫)、需要再進行Mecanim狀態(tài)機設置使轉向,跳躍,跑,走等動作更加順暢。
綜采工作面故障渲染研究包括事故渲染與設備故障渲染2個部分,設備故障分類如圖2。
1)事故故障分類渲染。煤礦事故展示是一項系統(tǒng)工程,旨在提高礦工的逃生技能,減少意外傷亡。系統(tǒng)將井下事故分為:頂板災害,井下水災、火災,瓦斯煤塵爆炸。
圖2 設備故障分類
2)環(huán)境粒子系統(tǒng)與后期頻幕特效的設置。系統(tǒng)中為了更好的展現事故或者設備故障,必須研究如何渲染出更加逼真的效果。Unity-3D粒子系統(tǒng)的制作遵循三要素原則,發(fā)射(發(fā)射形狀、速度等),存在期間的動畫(存在時間、存在期間速度限制、存在期間受力、存在期間粒子半徑),粒子渲染(粒子顏色,粒子衰減、死亡、相互碰撞),通過調整一系列參數實現效果。在操作系統(tǒng)中,Shuriken粒子系統(tǒng)用于水,火,煙,霧,爆炸,的巖石和煤渣的效果渲染。設計師通過模塊化管理,個性化粒子模塊和粒子曲線編輯創(chuàng)建多彩且復雜的粒子效果。環(huán)境粒子系統(tǒng)設置完成后需要添加后期屏幕渲染特效(Image Effets)圖像特效,該設置主要應用于Unity-3D系統(tǒng)中的攝像機對象上,使用OnRenderimage函數,附加到相機對象的任何Image Effects腳本都可以通過編輯代碼來修改效果。二者的互相合作搭配會帶來更完美的效果。井下水災火災效果圖如圖3。
圖3 井下水災火災效果圖
3)設備故障展示。系統(tǒng)中采用SQL Server 2008后臺數據庫接入監(jiān)測設備故障,如某一零件已經發(fā)生故障,系統(tǒng)將發(fā)出警報,并將畫面自動切換到故障設備,并出現問題提示故障部位,故障零件將間歇性閃耀紅色光芒。井下設備故障效果圖如圖4。
圖4 井下設備故障效果圖
4)操作系統(tǒng)GUI設計?;诼芜^程中的人機交互理論,GUI在系統(tǒng)開發(fā)中有重要的地位,系統(tǒng)是否友好,使用是否方便,很大程度上決定用戶體驗。該模塊模擬液壓支架。鼠標右鍵拖拽可改變使用者的位置。點擊相應的控制按鈕完成相應的操作。包括升降柱,推滑框架,前梁伸縮,保護和延伸,蓋梁伸縮,調整和千斤頂升降,共6組作業(yè)。所有操作都以實時交互的形式體現,動作流暢自如,相互無干擾。本模塊中模擬液壓支架的機械臂動作是主要的難點,機械臂類似人的胳膊,各個關節(jié)支架相互約束匹配,在一定的角度數值范圍內做出動作,不能超出規(guī)定的范圍。液壓支架操控界面如圖5。
5)模擬液壓支架的操作核心代碼。模擬液壓支架的操作,例如提升立柱,移動汽車以及降低立柱,都需要碰撞檢測。各種動作的實現利用EventSystem系統(tǒng)實現,核心代碼如下:
圖5 液壓支架操控界面
public class EventSystemChecker:MonoBehaviour
{void Awake()
{if
(!FindObjectOfType<EventSystem>())
{GameObject obj=new GameObject("EventSystem");
obj.AddComponent<EventSystem>();
obj.AddComponent <StandaloneInputModule >().force-ModuleActive=true;}
6)鼠標操作按鈕模擬操作核心代碼。鼠標操作按鈕需要碰撞檢測,由輸入設備與三維場景物體的模型實現,系統(tǒng)通過鼠標模擬人手對NGUI制作的按鈕進行模擬操作,核心代碼如下:
public UIPanel parentPanel{get{return mParentPanel;}}
public int clipCount
{get
{int count=0;UIPanel p=this;while(p!=null)
{if(p.mClipping==UIDrawCall.Clipping.SoftClip||p.mClipping==UIDrawCall.Clipping.TextureMask)++count;
p=p.mParentPanel;}
return count;}
從虛擬現實的角度對綜采工作面全景造型設計、故障渲染系統(tǒng)的關鍵技術進行研究:實現優(yōu)化綜采工作面造型設計,完善工作環(huán)境的構造,并加入人物漫游功能,使綜采工作面更加生動;實現井下各種事故的呈現與設備的故障預警監(jiān)測,將更逼真的可視化系統(tǒng)呈現在使用者面前。