陳占營,鄭曉雯,張文磊,胡云龍,劉 逸
(中國礦業大學(北京)機電與信息工程學院,北京 100083)
液壓支架是綜合機械化采煤裝備的關鍵設備,其功用是有效地支撐和控制工作面頂板,保證工人操作和機器運轉所必須的安全工作空間;隨著工作面推進而實現推移工序的機械化,并提供足夠的通風斷面[1]。因此,無論是對液壓支架進行實時工作狀態的研究與監測,還是在研發設計階段對液壓支架工作狀態的研究均有及其重要的地位。但目前對液壓支架工作狀態的研究主要來自于監測得到的各項數據、二維圖表,很難對液壓支架整體工作狀態進行初步判斷,看不到液壓支架在真實環境中的具體工況。本文通過三維建模軟件對液壓支架進行三維建模,將建立的三維模型導入EON Studio軟件,對其進行模型顏色、環境、燈光渲染,利用Javascript腳本語言進行編程,使其具備參數驅動的能力,為研究人員提供一個良好的平臺,讓研究者能夠漫游于虛擬的環境中,對液壓支架的工作狀態進行全面深入的研究。
對實驗室中液壓支架物理樣機進行三維建模,支架型號為ZZ4400/17/35掩護式液壓支架。主要由頂梁、掩護梁、護幫板、護幫板千斤頂、前后連桿、立柱、底座等部件組成。建模軟件為SolidWorks2008,建立的三維模型如圖1所示。

圖1 ZZ4400/17/35液壓支架三維模型
由于要把模型導入EON Studio進行編程,使其具備參數驅動的能力,因此建模時各部件的原點選擇十分關鍵,為了避免后續編程時出現不必要的問題,應選擇各個部件與其他部件相連接的運動副的中心為各個部件的模型原點。
導入一個3D物體到EON模擬程式中時,必須進行文件格式的轉換[2]。EON軟件可直接讀取x、ppm、png、avi等格式的文件,而導入三維模型時,必須進行載入。導入文件時,EON會自動將文件轉換成與EON相容的格式。
由于三維模型是用SolidWorks制作的,因此導入時應在菜單欄中選擇SolidWorks一項。前期建模時最好使用英文版本的SolidWorks,而且對建好的模型文件命名時必須用英文字母或數字,否則導入的文件將不被EON內部格式轉換器識別。
導入方式有兩種:完全導入方式和優化導入方式。研究中主要是對模型整體形態進行研究,而不是對各個面進行單獨操作,因此選擇優化方式進行導入。
在EON中對模型進行顏色渲染,可以通過改變模型表面材質,環境燈光,模擬場景材質來實現。
模型表面材質的改變主要由EON中的材質節點Material Node來實現。在Frame框架下放入該節點,通過改變材質節點的屬性設置,即可達到所需的效果。
環境燈光是在Frame框架下放入燈光節點Light Node來實現的。選擇不同的燈光類型和燈光顏色可實現不同的燈光效果。燈光類型有Ambient、Directional、Parallel Point、Point、Spot。為了實現更加真實的視覺效果,選擇Point類型燈光節點,即點光源類型。點光源能均勻發散光線到各個方向。
模擬場景由全景節點Panorama Node來實現,它可以為模擬場景提供水平,天空,地面貼圖,通過對場景節點的屬性設置,可以獲得逼真的模擬環境,讓觀察者有漫游真實環境中的視覺效果。最終EON中的三維模型如圖2所示。
要使三維模型具有參數驅動的能力,應利用EON中的節點和Javascript腳本語言對建立的模型進行編程。

圖2 EON中的三維模型

圖3 節點的部分邏輯關系
用到的節點主要有EventIn節點,Script節點。在邏輯視窗中設定各節點的邏輯關系,部分邏輯關系如圖3所示。EventIn節點進行數據的采集,Script節點內的程序對采集來的數據進行處理,處理后可得到各個關鍵的位置,從而驅動模型的運動。所采集的數據來源于VB6.0,研究者可在VB6.0集成界面中輸入所需要的液壓支架狀態參數,這些參數將會驅動EON中的模型進行運動。利用Javascript腳本語言編程方法如下:

圖4 液壓支架的坐標系
(1)建立如圖4所示的液壓支架的坐標系。XOY為固定坐標系F,其余坐標系為移動坐標系M,坐標系之間的相互轉換可通過公式[P]F=T[P']M[3],T為4×4轉換矩陣。
(2)計算各個關鍵點的位置。在坐標系X1O1Y1中,當θ測出時,即可確定四桿機構ABCD的狀態,即前后連桿,掩護梁的位置可確定。應用方法為復數矢量法[4]。

改寫并表示為復數矢量形式:

應用歐拉公式eiθ=cosθ+isinθ將上式實部和虛部分離,得:

由以上方程組即可求得θ2、θ3。因此可以在坐標系X1O1Y1確定四桿機構各個關鍵點的位置。
在坐標系X2O2Y2中當α測出時,可以很容易的確定O3O4上各關鍵點的位置,即頂梁上各關鍵點的位置可確定。
在坐標系X4O4Y4中當HG測出時,根據余弦定理,可算出三角形HO4G的各個角,因此三角形HO4G上的三個關鍵點的位置可以確定,即護幫板和護幫板千斤頂的位置可以確定。

(3)把以上計算方法寫入Javascript腳本語言中,Script節點中部分程序如圖5所示。
EON可以與其他支持ActiveX控制的工具相結合,如Visual Basic, 因此,使用EONX控制接口,可使兩者進行數據通信。在VB中編寫數據采集程序,通過上述接口與EON相連接,因此VB中采集的數據即可驅動EON中的三維模型運動。
對液壓支架進行三維建模,將建立的模型導入到EON Studio中進行渲染,為研究人員呈現形象逼真的虛擬場景。利用EON中相關節點及Javascript腳本語言對模型編程,并集成于VB6.0中,設計出研究液壓支架工作狀態的平臺,通過手動輸入所需狀態參數,驅動液壓支架運動,無論是對于煤礦工人的培訓,還是對于研發人員測試支架性能,均提供了最有效的解決途徑。同時也可以通過傳感器采集井下液壓支架的形態參數,把采集來的數據進行處理,驅動模型運動,對井下液壓支架的工作狀態進行遠程監控,為設計研發出一套液壓支架三維監測軟件奠定基礎。
[1]曹連民,等基于Solidworks軟件的液壓支架設計[J].礦山機械,2008,7.
[2]于輝,趙經成,付戰平,歐海英.EON入門與高級應用技巧[M].北京:國防工業出版社,2008.
[3]S K SAHA.機器人導論(英文版)[M].北京:機械工業出版社,2009.
[4]孫恒,陳作模,葛文杰.機械原理[M].北京:高等教育出版社,2006.