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