隨著國家經濟的持續(xù)高速增長,油氣資源供應不足將成為阻礙經濟發(fā)展的主要矛盾。海洋油氣開發(fā)裝備產業(yè)是直接關系到海洋油氣資源開發(fā)、影響國家能源穩(wěn)定和經濟安全的戰(zhàn)略產業(yè),因此必須對油氣開采設備的精度和設備制造的效率提出更高的要求。海洋石油鉆井平臺是海洋油氣開發(fā)的關鍵裝備,其主要構件是H型鋼,如何提高H型鋼的下料效率和精度,已成為企業(yè)面臨的重要課題。本文講述的H型鋼火焰切割機采用數(shù)控火焰切割,具有切割效率高的優(yōu)點;采用數(shù)控系統(tǒng)自動控制切割軌跡,保證了加工的精度要求。數(shù)控系統(tǒng)是H型鋼火焰切割機的核心,本文重點介紹數(shù)控系統(tǒng)的設計和開發(fā)。
1 VB設計語言的選擇
VB(Visual Basic)是Microsoft公司于1991年推出的一種Windows應用程序的開發(fā)工具。Visual意為/可視化的0,指的是一種開發(fā)圖形用戶界面的方法,所以VB是基于Basic的可視化的程序設計語言。經過多次的升級,Microsoft公司于1998年推出功能更強、更完善的VB6.0版本。它具有以下的特點[2]:(1)面向對象的可視化的程序設計方法;(2)事件驅動的程序設計機制;(3)結構化的高級程序設計語言;(4)支持大型數(shù)據(jù)庫的連接與存取操作;(5)功能更強的用戶開發(fā)工具。
基于以上優(yōu)點,故選擇VB為開發(fā)火焰切割機數(shù)控系統(tǒng)的圖形仿真工具。
2 火焰切割運動軌跡仿真的方法及原理
2.1 軌跡仿真實現(xiàn)的方法及選擇
依據(jù)笛卡爾坐標定理,火焰切割機的控制系統(tǒng)控制X, Y,Z坐標軸,H型鋼火焰切割機數(shù)控系統(tǒng)的軌跡仿真是分別在XY, YZ,XZ平面內進行軌跡仿真。在計算機圖形學中,常用的動畫技術主要有以下3種:多頁面切換技術、圖段變換技術和幀動畫技術。多頁面切換技術是在主顯示頁和工作頁(輪流放置要顯示的圖形)之間切換形成動態(tài)變化。圖段變換技術是通過變換不同的圖段在屏幕上的不同位置,產生圖段圖形的連續(xù)移動,形成圖段變換動畫。幀動畫技術是通過對欲顯示的幀緩沖區(qū)直接操作(逐幀切換)和再填寫(填寫圖像的顏色信息)來動態(tài)顯示相應的圖形和圖像。結合VB的定時器(Timer)功能,本文采用圖段變換技術來實現(xiàn)動畫顯示。通過對VB6. 0進行分析,在
VB6.0上實現(xiàn)軌跡有下列3種方法。
方法1:利用VB6.0自帶的繪圖功能。
VB6.0提供一些用于作圖的方法,可以根據(jù)需要,在程序運行時繪制所需圖形。
a.用Pset方法畫點。
Pset方法的一般格式為:
[對象名.]Pset(x,z)[,顏色]
功能說明:在(x,z)位置用[,顏色]畫一個點。
示例:
Picture1.Pset(2 600,3 500),(0,0,255)
表示在Picture1的(2 600,3 500)位置畫一個藍色的點。
b.用Line方法畫線和矩形。
Line方法的一般格式為:
[對象名.]Line[[Step](x1,z1)]-[Step](x2,z2)[,顏色],[B][F]
功能說明:在對象上由始點(x1,z1)到終點(x2,z2)用[,顏色]畫一條直線(當有[B]時為矩形,而[F]表示一個實心的矩形), [Step]表示其后的坐標值為相對當前點的坐標增量值。示例:Pictur1.Line(10,70)- (20,100),VbGreen表示在Pictur1上從(10,70)到(20,100)作一條直線,顏色為綠色(VbGreen)。
c.用Circle方法畫圓、橢圓和圓弧。
Circle方法的一般格式為:
[對象名.] Circle [Step](x,z),半徑,[,顏色][,起始角][,終止角][縱橫比]
功能說明:在對象上用[,顏色]以(x,z)為圓心,以/半徑0為半徑畫一個圓。如有[,起始角] [,終止角]則為圓弧。如有[縱橫比]則為橢圓。示例:
Pictur1.Circle(20,40),500,VbYellow表示在Pictur1上以(20,40)為圓心,以500為半徑畫一個圓,顏色為黃色(VbYellow)。
方法2:利用循環(huán)功能繪圖。
其基本原理是將一條曲線分解成足夠多的有限連續(xù)點,然后利用Pset方法通過循環(huán)來畫這些點。當點的數(shù)量足夠多時,相鄰兩點的間距就很小,這樣一條線就看成是有限點的排列。
方法3:利用時間針(Timer)的定時功能繪圖。這種方法與方法2的思想基本相同。其基本原理是將一條曲線分解成足夠多的有限微小曲線段近似于直線,然后利用Line方法通過時間針(Timer)的定時功能來連續(xù)地畫這些直線。當直線的數(shù)量足夠多時,所有直線的連接就形成曲線。這樣一條曲線就可看成是有限微小直線段的連續(xù)排列。
2.2 3種繪圖方法的比較
方法1是畫圖的最基本方法,其程序實現(xiàn)比較簡單,但點、線、圓是瞬間畫出的,不能產生線、圓的動畫效果,也沒有實時顯示效果。
方法2的程序實現(xiàn)也較簡單,對線、圓也能產生動畫效果,而且通過點的數(shù)量設置可以控制線的動態(tài)顯示速度,但這種方法的缺點是不能產生實時顯示效果。
方法3的程序實現(xiàn)相對較復雜一些,但可以實現(xiàn)動態(tài)顯示和實時顯示,而且只要知道軌跡的方程z = f(x),那么就可以將它畫出來。
針對上述分析過程,考慮到華中Ñ型數(shù)控車床軌跡仿真需要有軌跡動態(tài)顯示和當前點位置實時顯示,本文采用方法3來實現(xiàn)運動軌跡仿真。
3 直線、圓弧軌跡仿真實現(xiàn)的原理
3.1 直線軌跡仿真的實現(xiàn)原理
如圖1所示,令起點A(X0,Z0),終點B(X1,Z1),則直線方程為:
(X1-X0)( Y-Z0) = ( Y1-Z0)(X-X0)故tanA= (Z1-Z0)/(X1-X0)。
依據(jù)插補原理,將直線AB分解成足夠多的有限微小線段AiAi+1,因為Ai在直線AB上,則:Ai(Xi,Zi),A i+1(X i+1,Z i+1),X i+1= Xi+△X;Zi+1= Zi+△Z,且tanNAiOAi+1=△Z/△X。
如果將$X,$Z設置得很小(如0.020mm),直線AB分成足夠多的線段AA1,A1A2,A2A3,,,A(N-1)B。設置時鐘計時器(Timer)的間隔(Interval)為60ms(為盡量滿足坐標顯示的實時性,時間間隔不要小于55ms),利用計時器的定時功能,連續(xù)畫出系列直線AiAi+1。實現(xiàn)直線段AiAi+1的VB程序為:
Line(z+Z0,x+X0)-(Z+Z0+△Z,x+X0+△X)
其中z,x為時間鐘函數(shù)的靜態(tài)變量。由于上一線段的終點就是下一線段的始點,因此這些線段會首尾相連,動態(tài)地產生一條直線。同時為使直線能在終點準確到達B點,應使用判斷語句(IF語句)。
3.2 圓弧軌跡仿真的實現(xiàn)原理
圓弧軌跡的生成原理基本與直線的生成原理基本相同。如圖2所示,令圓弧起點A(X0, Y0),
終點B(X1, Y1),圓心在(0,0),半徑為R(圓弧方程為:X2+Z2= R2)。依據(jù)插補原理,將圓弧AB分成若干份直線段(或圓弧段)AA1,A1A2,A2A3,..A(N-1)B。若用直線段來逼近圓弧,則有:
X i-1 2+Z i-1 2= Xi 2+Z i 2= R 2 Xi= X i-1+△X Zi= Z i-1+△Z
由于上述計算很復雜,而且$X和$Z的取法不可能很精確,因此仿真產生的軌跡與真實的圓弧有一定的誤差。若用微圓弧段來組成圓弧,依據(jù)VB的Circle屬性,設定微圓弧對應的圓心角$A,而圓心和半徑均不變,這樣很容易實現(xiàn)。其過程為:令起點A對應的圓弧起始角為AA,終點B對應的圓弧起始角為AB,微小圓弧段Ai-1Ai的起始和終止圓心角分別為Ai-1,Ai,則:Ai=Ai-1+△A,Ai的坐標為(RcosAi,RsinAi)。
其VB的實現(xiàn)程序為:
Circle(0,0),R,α,α+△α
其中A是系統(tǒng)設置的靜態(tài)變量。再用IF判斷語句實現(xiàn)圓弧準確到達終點。
4 H型鋼火焰切割機數(shù)控系統(tǒng)
在基于VB H型鋼火焰切割機數(shù)控系統(tǒng)界面設計時,輸入典型接口的參數(shù)自動生成數(shù)控加工程序。首先自動檢查數(shù)控程序的正確性、準確性及工藝的可行性,其次在模擬界面上進行數(shù)控程序的動畫仿真,再次根據(jù)圖形對程序進行校驗,最后進行典型接口的加工。圖3~圖6是對一個典型接口過程的演示界面。
圖3 H型鋼火焰切割機的數(shù)控系統(tǒng)主界面
圖4 H型鋼火焰切割機的數(shù)控程序
圖5 H型鋼毛坯
圖6 火焰切割仿真
5 H型鋼火焰切割機數(shù)控系統(tǒng)VB程序
下面是H型鋼火焰切割機數(shù)控系統(tǒng)部分的VB源程序。
1. Private Declare Sub Sleep Lib/kernel320(ByValdwMilliseconds As Long) 2. Dim A, C, B, R, K, F, E, s, b1 As Integer 3. Private Sub Command1 Click() 4. Const PI=3.14 5. Dim i As Single 6. For i=0 To (F-K)/2 Step 10 7. Line(1000+s+b1,5000)-Step(0,i),RGB(200, 100, 50) 8. Line(6700+s+b1,800)-Step(0,i), RGB(200, 100, 50) 9. Sleep (5)
6 結束語
通過該系統(tǒng)的使用,企業(yè)爐溫管理水平大大提高。作為西安飛機工業(yè)(集團)公司熱處理設備溫度參數(shù)校準技術研究推廣課題,溫度均勻性數(shù)據(jù)處理系統(tǒng)已經通過了企業(yè)專家組的驗收。該軟件統(tǒng)一了數(shù)據(jù)處理過程,提高了數(shù)據(jù)處理效率,規(guī)范了人員操作程序;同時為了保證通用性,統(tǒng)一了航空企業(yè)溫度均勻性報表格式,又使其具有一定的靈活性。
(審核編輯: 智匯張瑜)
分享