韓青江,呂亞軍 ,饒運(yùn)清
HAN Qing-jiang, LV Ya-jun, RAO Yun-qing
(華中科技大學(xué) 數(shù)字制造裝備與技術(shù)國(guó)家重點(diǎn)實(shí)驗(yàn)室,武漢 430074)
基于OpenGL的板材切割數(shù)控加工仿真系統(tǒng)
Plate cutting nc machining simulation system based on OpenGL
韓青江,呂亞軍 ,饒運(yùn)清
HAN Qing-jiang, LV Ya-jun, RAO Yun-qing
(華中科技大學(xué) 數(shù)字制造裝備與技術(shù)國(guó)家重點(diǎn)實(shí)驗(yàn)室,武漢 430074)
在板材切割數(shù)控加工領(lǐng)域,針對(duì)如何選擇加工方法、確定加工軌跡等問(wèn)題,提出了利用計(jì)算機(jī)模擬生產(chǎn)過(guò)程進(jìn)行輔助加工的方法,以實(shí)現(xiàn)在最短的時(shí)間內(nèi)找到最佳的加工路徑并完成NC代碼的校核。對(duì)這一問(wèn)題,通過(guò)建立基于OpenGL的三維仿真系統(tǒng),將NC圖形的仿真與NC代碼的校核集于一體,全面實(shí)現(xiàn)了板材的虛擬加工,大大提高了板材加工的效率。同時(shí)提出了建立板材加工中的溫度場(chǎng),通過(guò)熱力學(xué)計(jì)算為分析板材的受熱變形提供了直觀的依據(jù)。
OpenGL;數(shù)控加工;溫度場(chǎng);三維仿真
目前在板材加工生產(chǎn)領(lǐng)域,越來(lái)越多的企業(yè)選擇利用數(shù)控機(jī)床進(jìn)行板材切割加工。數(shù)控加工技術(shù)因其高效、高質(zhì)量的加工特點(diǎn)成為多數(shù)生產(chǎn)企業(yè)的首選。一般在進(jìn)行數(shù)控加工之前都需要選擇加工方法、確定最佳的加工軌跡,在加工開(kāi)始的時(shí)候需要進(jìn)行對(duì)刀、刀位檢測(cè)和NC代碼校驗(yàn)并判斷加工參數(shù)是否合適等。這些工作一般會(huì)浪費(fèi)大量的時(shí)間。傳統(tǒng)的生產(chǎn)企業(yè)一般選擇采用人工進(jìn)行試切和NC代碼校核,該方法對(duì)工作人員的技術(shù)水平要求較高,勞動(dòng)量大且一般檢錯(cuò)率較低,大大影響了企業(yè)的生產(chǎn)效率。如何快速的選擇最佳的加工方法、確定最佳的加工軌跡引起了人們廣泛的關(guān)注和研究。隨著計(jì)算機(jī)技術(shù)在工業(yè)生產(chǎn)中應(yīng)用的深入,利用計(jì)算機(jī)模擬實(shí)際的加工過(guò)程進(jìn)行輔助生產(chǎn)成為了解決上述問(wèn)題的首選。許多的加工企業(yè)根據(jù)自身需求的特點(diǎn)開(kāi)發(fā)了相關(guān)的仿真系統(tǒng)。仿真技術(shù)可以全面再現(xiàn)加工的整個(gè)過(guò)程,其高效直觀的特點(diǎn)大大節(jié)省了加工方法選擇和NC代碼校核的時(shí)間、提高了加工企業(yè)的生產(chǎn)效率。隨著生產(chǎn)水平的提高和精益化生產(chǎn)的要求,板材生產(chǎn)企業(yè)對(duì)板材切割加工的效率和質(zhì)量提出了更高的要求。比如在一些特殊應(yīng)用領(lǐng)域,需要板材的幾何尺寸有較高的加工精度,否則將無(wú)法使用。但是板材在加工過(guò)程中非常容易因受熱、受力而產(chǎn)生形變,導(dǎo)致其幾何尺寸發(fā)生變化而無(wú)法達(dá)到加工精度要求。為此就需要仿真系統(tǒng)在模擬實(shí)際加工過(guò)程的同時(shí)還可以模擬板材加工中的溫度場(chǎng)情況,并能分析板材的幾何變形。另外,目前的仿真系統(tǒng)多數(shù)功能比較單一,仿真的方法較為簡(jiǎn)單,隨著企業(yè)需求的復(fù)雜化和專(zhuān)業(yè)化,傳統(tǒng)的仿真系統(tǒng)已經(jīng)無(wú)法滿(mǎn)足現(xiàn)在生產(chǎn)企業(yè)的需求。
為此,針對(duì)目前多數(shù)板材加工企業(yè)的仿真需求,研究開(kāi)發(fā)了使用火焰切割、激光切割等加工手段進(jìn)行生產(chǎn)的三維仿真系統(tǒng)。該系統(tǒng)快速清晰的顯示了板材加工的動(dòng)態(tài)過(guò)程,順利的實(shí)現(xiàn)了加工方法的比較和NC代碼的校核,將NC圖形仿真與NC代碼校核集于一體,同時(shí)在一定程度上模擬了板材在火焰切割過(guò)程中的溫度場(chǎng)變化,為后續(xù)分析板材的幾何形體的變化提供了直觀的依據(jù)。
本系統(tǒng)圍繞著NC代碼的校核進(jìn)行構(gòu)建,從NC代碼的調(diào)用、校驗(yàn)、編輯到保存,順序?qū)崿F(xiàn)了板材加工過(guò)程模擬以及加工點(diǎn)的溫度場(chǎng)建模。系統(tǒng)通過(guò)簡(jiǎn)潔、友好的用戶(hù)界面引導(dǎo)用戶(hù)進(jìn)行操作,通過(guò)直觀逼真的效果圖展現(xiàn)仿真結(jié)果。系統(tǒng)的總體框架如下:
圖1 系統(tǒng)總體框架圖
如圖中所示,系統(tǒng)主要由三大模塊組成,各模塊的功能如下:
1.1.1 NC代碼控制模塊
NC代碼控制模塊表明了本系統(tǒng)的運(yùn)作邏輯,實(shí)現(xiàn)了從NC代碼調(diào)入、校核到編輯、保存等功能。其中NC代碼調(diào)入子模塊可以讀取磁盤(pán)上已有的NC程序,并能將其保存成新的程序,是數(shù)控文件輸人和輸出的接口。NC代碼校驗(yàn)子模塊用于實(shí)現(xiàn)對(duì)NC代碼的數(shù)據(jù)結(jié)構(gòu)和語(yǔ)法進(jìn)行檢查,其校驗(yàn)方法分為步進(jìn)校核與全局校核兩種,分別滿(mǎn)足了不同檢測(cè)環(huán)境下對(duì)檢測(cè)質(zhì)量和檢測(cè)效率的要求。NC代碼編輯模塊用于在NC程序產(chǎn)生錯(cuò)誤時(shí)對(duì)其進(jìn)行修改,同時(shí)通過(guò)NC代碼保存模塊將其保存為其他新的程序。
1.1.2 圖形控制模塊
改模塊用于調(diào)整仿真顯示區(qū)的圖形顯示效果。包括了畫(huà)面的平移、旋轉(zhuǎn)、縮放等操作,可以滿(mǎn)足用戶(hù)從任意角度查看圖形的效果從而使用戶(hù)的操作更加便捷。NC代碼控制模塊與圖形控制模塊配合操作,可以完整的顯示數(shù)控加工的過(guò)程并能根據(jù)用戶(hù)需求自由方便的進(jìn)行查看。
1.1.3 溫度場(chǎng)控制模塊
該模塊用于控制板材溫度場(chǎng)的顯示。用戶(hù)界面右邊區(qū)域的溫度條上用不同的顏色設(shè)定表示不同的溫度,加工過(guò)程中板材上不同區(qū)域的溫度就用相應(yīng)的顏色進(jìn)行表示,形成了板材的溫度場(chǎng)。該模塊通過(guò)與圖形控制模塊相互配合,顯示了板材在加工過(guò)程中溫度場(chǎng)的變化。目前本系統(tǒng)中僅在加工點(diǎn)顯示其溫度場(chǎng)。
1.1.4 數(shù)據(jù)顯示模塊
數(shù)據(jù)顯示模塊主要用于顯示當(dāng)前的主要參數(shù),如當(dāng)前讀取的文件名、刀具目前所在點(diǎn)的坐標(biāo)、NC程序中當(dāng)前被選中正在校核的代碼等。通過(guò)這些參數(shù)可以了解系統(tǒng)目前的運(yùn)行情況,并通過(guò)調(diào)整主要的技術(shù)參數(shù)可以實(shí)現(xiàn)仿真效果的優(yōu)化。
通過(guò)以上各模塊的配合運(yùn)作有條不紊的實(shí)現(xiàn)了程序的各項(xiàng)功能。為了減少內(nèi)存占用,系統(tǒng)在運(yùn)行過(guò)程中采用了讀入一個(gè)程序段、檢查與解釋程序段、執(zhí)行程序段,再讀人一個(gè)程序段、檢查與解釋程序段、執(zhí)行程序段,直到NC文件結(jié)束的循環(huán)方式[1]。程序讀取的過(guò)程中每次以行為單位進(jìn)行讀取,每一行程序?qū)崿F(xiàn)了一個(gè)刀具的動(dòng)作,在一行程序出現(xiàn)錯(cuò)誤時(shí)及時(shí)的進(jìn)行修改和調(diào)整,然后再進(jìn)行下一行程序的校核。整個(gè)程序驗(yàn)證完成之后系統(tǒng)停止,并由操作人員調(diào)整返回到初始狀態(tài),然后進(jìn)行下一個(gè)程序的讀取校驗(yàn)。程序的最終流程圖如下:
圖2 系統(tǒng)實(shí)現(xiàn)流程圖
系統(tǒng)的開(kāi)發(fā)是在Windows環(huán)境下,以Visual C++為開(kāi)發(fā)工具,采用OpenGL技術(shù)實(shí)現(xiàn)的。
OpenGL即Open Graphics Library的縮寫(xiě),是在SGI、SUN、Microsoft、DEC、IBM和Intel等多家世界著名計(jì)算機(jī)公司的倡導(dǎo)下,聯(lián)合推出的一種三維圖形標(biāo)準(zhǔn)。它由SGI的GL標(biāo)準(zhǔn)發(fā)展而來(lái),適用于多種操作系統(tǒng)。OpenGL獨(dú)立于硬件設(shè)備、窗口系統(tǒng)和操作系統(tǒng),包括120多個(gè)圖形函數(shù),可以利用這些函數(shù)建立三維模型和三維實(shí)時(shí)交互[7]。OpenGL實(shí)際上是一種圖形與硬件的接口,與其他圖形程序設(shè)計(jì)接口不同之處在于OpenGL提供了十分清晰明了的圖形函數(shù)。OpenGL強(qiáng)大的圖形函數(shù)不要求開(kāi)發(fā)者把三維物體模型寫(xiě)成固定的數(shù)據(jù)格式,開(kāi)發(fā)者不但可以直接使用自己的數(shù)據(jù),而且可以利用其他不同格式的數(shù)據(jù)源,如DXF、STL、OBJ、ASE、3DS等格式。OpenGL功能強(qiáng)大,可移植性強(qiáng),目前已經(jīng)在軍事、航天、醫(yī)學(xué)、仿真和虛擬現(xiàn)實(shí)等領(lǐng)域得到了廣泛的應(yīng)用,成為最優(yōu)秀的3D程序設(shè)計(jì)開(kāi)發(fā)工具[7]。
目前基于OpenGL的三維建模實(shí)現(xiàn)方法可分為兩種,一是直接運(yùn)用OpenGL程序建模,二是先用專(zhuān)業(yè)建模軟件進(jìn)行建模,再轉(zhuǎn)化為OpenGL程序[6]。直接運(yùn)用OpenGL程序進(jìn)行建模主要是通過(guò)簡(jiǎn)單的規(guī)則實(shí)體合成所需要的復(fù)雜模型,根據(jù)所需建立模型的不同又分為三種情況:一是在需要合成規(guī)則實(shí)體時(shí),可以利用OpenGL提供的簡(jiǎn)單空間幾何體如圓柱、椎體等進(jìn)行組合,通過(guò)改變相應(yīng)參數(shù)調(diào)節(jié)幾何體大小使其配合適當(dāng)來(lái)完成實(shí)體的建模。二是對(duì)大多數(shù)圖形通常采用三角形合成法。任何多邊形都可以用三角形拼成,通過(guò)不同的三角形組合完成不同規(guī)則實(shí)體的拼接,三角形合成法已經(jīng)成為程序員的首選。三是對(duì)含有曲面的實(shí)體,使用以上方法建模難免會(huì)比較粗陋,此時(shí)通常是利用OpenGL工具庫(kù)glu32.lib中的NURBS函數(shù)進(jìn)行繪制,通過(guò)繪制NURBS曲線、面進(jìn)行建模不僅便捷而且模型更加逼真。以上為直接使用OpenGL進(jìn)行建模的方法。此外使用專(zhuān)業(yè)建模軟件進(jìn)行建模主要是通過(guò)3DS MAX、AUTOCAD等建模軟件建立模型,然后轉(zhuǎn)換成OpenGL程序,最后再通過(guò)OpenGL命令進(jìn)行模型優(yōu)化和控制。因?yàn)镺penGL中并沒(méi)有提供高級(jí)命令,所以在建立三維模型特別是復(fù)雜的模型時(shí)工作量較大,任務(wù)繁重,而且建立的模型比較粗糙。在建立復(fù)雜模型時(shí),特別是對(duì)模型的外觀要求較高時(shí)一般采用利用專(zhuān)業(yè)建模軟件進(jìn)行建模的方法。在本文所介紹的仿真系統(tǒng)中,因?yàn)樗⒌哪P捅容^簡(jiǎn)單,對(duì)模型的外觀要求較低,并且考慮到該仿真系統(tǒng)與其他的工作平臺(tái)的兼容性,所以選擇采用直接運(yùn)用OpenGL進(jìn)行建模。
2.3.1 三維實(shí)體建模
因?yàn)楸鞠到y(tǒng)中需要建模的對(duì)象幾何形體比較簡(jiǎn)單,所以選擇利用OpenGL的建模函數(shù)直接進(jìn)行建模。這些待建模的幾何實(shí)體主要可以分為三個(gè)部分:平面的板材、圓柱體的火焰噴搶以及不規(guī)則球狀的火焰頭。系統(tǒng)中對(duì)這三部分幾何體的建模是分別自定義了三個(gè)繪圖函數(shù)DrawGround()、DrawGun()、ballon()進(jìn)行實(shí)現(xiàn)。首先需要繪制的是板材。板材的幾何形狀比較簡(jiǎn)單,而且為了方便起見(jiàn),系統(tǒng)中對(duì)板材不設(shè)定厚度,故直接通過(guò)OpenGL的glVertex3f(x,y,z)函數(shù)確定板材四角點(diǎn)的坐標(biāo)進(jìn)行繪制。板材的建模過(guò)程前后進(jìn)行了兩次繪圖。系統(tǒng)初始化時(shí)因?yàn)闆](méi)有板材的幾何參數(shù),所以人為設(shè)定一組坐標(biāo)進(jìn)行繪制,繪圖的函數(shù)如下:
在調(diào)入數(shù)控代碼之后再根據(jù)程序中的加工參數(shù)初步確定板材大小,進(jìn)行重新繪制。其間對(duì)繪制圖形的函數(shù)代碼參數(shù)進(jìn)行了修改,使板材大小符合需要。修改后的繪圖參數(shù)如下:
板材建模完成之后進(jìn)行噴槍的建模。噴槍幾何形狀為圓柱體,所以可以直接使用OpenGL中的gluCylinder()函數(shù)進(jìn)行建模。首先在繪制完成板材之后通過(guò)旋轉(zhuǎn)和平移等操作將畫(huà)筆移動(dòng)到恰當(dāng)?shù)奈恢茫缓笾苯诱{(diào)用gluCylinder()函數(shù)進(jìn)行繪制。DrawGun()中使用的主要的函數(shù)如下:
通過(guò)glTranslatef(0,100,0)、glRotatef(180,0,1,0)和glRotatef(-90,1,0,0)調(diào)整畫(huà)筆的位置,最后使用gluCylinder(m_pGlQuad, 10, 10, 200, 64, 64)繪制出噴槍的幾何輪廓。最后需要繪制的是火焰。因?yàn)榛鹧骖^的形狀為不規(guī)則的,所以首先需要通過(guò)計(jì)算確定火焰輪廓上若干不同點(diǎn)的坐標(biāo),確定之后用曲線將不同的坐標(biāo)點(diǎn)相連即形成了火焰的外形輪廓。其確定點(diǎn)的坐標(biāo)的函數(shù)大體如下:
上述的建模過(guò)程分別實(shí)現(xiàn)了平面板材、圓柱噴槍以及不規(guī)則火焰的造型建模。在建模的過(guò)程中都分別使用了矩形繪制函數(shù)glbegin()和glend()。在這兩個(gè)函數(shù)之前的部分分別是具體的繪圖函數(shù)。不同部分建模之前使用glPushMatrix()函數(shù)將當(dāng)前的繪圖矩陣壓入棧中以避免影響之前的操作,圖形繪制結(jié)束之后再通過(guò)glPopMatrix()函數(shù)恢復(fù)到畫(huà)圖之前的坐標(biāo)矩陣中。建模過(guò)程中使用glBindTexture()調(diào)用繪圖紋理,做好畫(huà)圖準(zhǔn)備。不同的圖形之前通過(guò)坐標(biāo)移動(dòng)、旋轉(zhuǎn)確定繪圖開(kāi)始的位置。不同的圖形之間的幾何形體需要考慮大小匹配,建模過(guò)程中通過(guò)改變繪圖函數(shù)參數(shù)的值調(diào)整模型的大小,最后達(dá)到最佳的配合效果。
2.3.2 真實(shí)感造型
完成三維實(shí)體的繪制之后只完成了三維造型的一半工作,要建造出完美的圖形還必須對(duì)實(shí)體的材質(zhì)、光照、顏色等進(jìn)行設(shè)置和處理,以使其充滿(mǎn)真實(shí)感,達(dá)到與周?chē)沫h(huán)境互相融合的效果。繪圖之前首先調(diào)用glBindTexture()函數(shù)對(duì)幾何模型進(jìn)行貼圖,通過(guò)在不同的幾何體上貼上預(yù)先選定的不同圖形表現(xiàn)出板材、噴槍真實(shí)的材質(zhì)效果。貼圖函數(shù)分別是glBindTexture(GL_TEXTURE_2D, m_iGround)、glBindTexture(GL_TEXTURE_2D, m_iGun),參數(shù)中iGround與iGun分別指向預(yù)先選定的紋理圖?;鹧骖^的顏色效果采用OpenGL直接著色。OpenGL中每個(gè)像素點(diǎn)的顏色都有紅(Red)、綠(Green)、藍(lán)(Blue)按照一定的比例混合而成,成為RGB值,并增設(shè)了第四個(gè)組建A(Alpha)表示像素點(diǎn)的不透明程度,由此四個(gè)分量表示不同的的色彩效果[2]。程序中通過(guò)函數(shù)glColor4f(a,b,c,0.3)將火焰的顏色設(shè)定為淡藍(lán)色,然后直接繪制火焰的圖形便顯示了火焰的顏色效果。最后對(duì)場(chǎng)景和模型進(jìn)行光照處理。OpenGL中的光照模型提供三種光,分別是環(huán)境光(Ambient Light)、漫射光(Diffuse Light)和鏡面光(Specular Light).允許場(chǎng)景中最多可以設(shè)置8個(gè)光源,并且對(duì)每一個(gè)光源都設(shè)置了開(kāi)關(guān)功能(glEnable(),glDisable()),這樣就可以對(duì)不同的實(shí)體使用不同的光源,使一些實(shí)體呈現(xiàn)別的實(shí)體沒(méi)有的光澤[4].一般一個(gè)系統(tǒng)設(shè)置兩種光源,一種是為整個(gè)場(chǎng)景設(shè)置的場(chǎng)景光,以模擬自然光效果.另一種是為特別實(shí)體設(shè)置的特別效果光照,使用這種光照時(shí)一般要關(guān)掉場(chǎng)景光,即glDisable(LIGHT0). 本系統(tǒng)中設(shè)置了一種場(chǎng)景光,以調(diào)整整個(gè)畫(huà)面的顯示效果。調(diào)用函數(shù)glLightfv(GL_LIGHT1, GL_AMBIENT, LightAmbient)設(shè)置環(huán)境光,通過(guò)函數(shù)glLightfv(GL_LIGHT1, GL_DIFFUSE, LightDiffuse)設(shè)置漫反射光,然后設(shè)置光源位置glLightfv(GL_LIGHT1, GL_POSITION,LightPosition),在繪圖結(jié)束后啟用光源glEnable(GL_LIGHT1),建立了對(duì)整個(gè)場(chǎng)景進(jìn)行調(diào)節(jié)的光照效果。
2.3.3 溫度場(chǎng)建模
溫度場(chǎng)建模在本系統(tǒng)中是一個(gè)創(chuàng)新點(diǎn)。系統(tǒng)中主要針對(duì)當(dāng)前的加工點(diǎn)進(jìn)行建模。在溫度場(chǎng)建模之前首先根據(jù)板材的材質(zhì)分析切割中所需要的火焰溫度,進(jìn)而確定加工點(diǎn)中心的溫度。然后根據(jù)熱力學(xué)原理計(jì)算出熱量的傳導(dǎo)情況,并確定加工點(diǎn)周?chē)煌嚯x處的溫度值,最后比較溫度條的溫度值顏色得到溫度場(chǎng)的顏色圖。溫度場(chǎng)的渲染主要通過(guò)貼圖的方式,將計(jì)算之后挑選的顏色圖貼到加工點(diǎn),表示出了加工點(diǎn)的溫度情況。
溫度場(chǎng)是指某一瞬時(shí)物體內(nèi)各點(diǎn)的溫度分布狀態(tài)。溫度是標(biāo)量,溫度場(chǎng)是時(shí)間和空間的函數(shù),也是標(biāo)量場(chǎng)。在直角坐標(biāo)系中可將溫度表示成一下函數(shù):
系統(tǒng)中為了簡(jiǎn)化計(jì)算,不設(shè)定板材的厚度。另外因?yàn)榘宀男巫冏畲蟮臅r(shí)候是在其溫度最高的時(shí)候,故不考慮其他時(shí)候溫度場(chǎng)的情況,因此溫度場(chǎng)函數(shù)可以簡(jiǎn)化如下:
由公式可見(jiàn)板材中任一點(diǎn)處的溫度只與其坐標(biāo)有關(guān)系。加工中以當(dāng)前加工點(diǎn)為坐標(biāo)原點(diǎn),那么任一點(diǎn)的溫度只與當(dāng)前點(diǎn)與原點(diǎn)的距離δ有關(guān):
設(shè)定加工點(diǎn)的溫度為T(mén),任一點(diǎn)的溫度與加工點(diǎn)的溫差為ΔT,則t=T-ΔT,t轉(zhuǎn)化為ΔT的函數(shù)。根據(jù)熱傳導(dǎo)的傅里葉公式:
其中T、δ、λ、A均為已知量,溫度t僅是傳熱量Q的函數(shù)。板材切割中傳導(dǎo)的熱量與加工點(diǎn)的切割溫度有關(guān)。熱量有三種傳導(dǎo)方式:傳導(dǎo)、對(duì)流和輻射,加工中因?yàn)榘宀谋磺写┑臅r(shí)間很短,熱量因輻射散失的較少,所以為簡(jiǎn)化起見(jiàn)只考慮熱量的傳導(dǎo)。這樣加工點(diǎn)在加工瞬間需要的熱量只與材質(zhì)有關(guān),根據(jù)相關(guān)的手冊(cè)和經(jīng)驗(yàn)可以得到加工瞬時(shí)的發(fā)熱量Q,這樣板材任一點(diǎn)的溫度就可由公式⑤計(jì)算得出。
完成加工點(diǎn)周?chē)煌c(diǎn)的溫度計(jì)算后再通過(guò)OpenGL的貼圖操作,將相應(yīng)的溫度顏色圖渲染到板材上,即完成了板材的溫度場(chǎng)建模。后續(xù)通過(guò)有限元分析或者由板材熱力學(xué)公式可以計(jì)算出板材受熱過(guò)程中的幾何變化情況。
系統(tǒng)主程序從友好的用戶(hù)界面開(kāi)始,圍繞NC代碼的調(diào)入、檢測(cè)、編輯和保存等功能擴(kuò)展實(shí)現(xiàn)了板材加工過(guò)程的動(dòng)畫(huà)。本系統(tǒng)從應(yīng)用對(duì)象的特殊要求出發(fā),加入了溫度場(chǎng)的顯示,并期望能初步表達(dá)了板材的物理變化情況。系統(tǒng)的用戶(hù)界面如下:
圖3 系統(tǒng)用戶(hù)界面
整個(gè)界面分為四個(gè)部分:左邊是NC代碼顯示區(qū),中間是仿真動(dòng)畫(huà)顯示區(qū),右邊是溫度列表,下面是數(shù)據(jù)顯示區(qū)。菜單欄中文件選項(xiàng)可以調(diào)入、編輯和保存數(shù)控代碼;校驗(yàn)欄中的選項(xiàng)分為步進(jìn)校驗(yàn)和全局校驗(yàn)。工具欄中以便捷方式顯示了打開(kāi)、保存、校驗(yàn)、放大、縮小等操作。整個(gè)用戶(hù)界面簡(jiǎn)潔、友好,實(shí)現(xiàn)了系統(tǒng)操作的全部功能。
系統(tǒng)在仿真過(guò)程中可以分別以步進(jìn)方式和全局方式進(jìn)行校核。仿真動(dòng)畫(huà)顯示截圖如4所示。
圖4 仿真動(dòng)畫(huà)顯示
以步進(jìn)校核方式為例,仿真過(guò)程中通過(guò)逐行控制數(shù)控代碼,顯示區(qū)逐步的顯示加工過(guò)程。同時(shí)可以選擇任意一行代碼,選中時(shí)火焰頭將會(huì)定位到相應(yīng)的位置,并將之前的軌跡用紅色線表示代表已經(jīng)加工完成?;鹧骖^部表示了當(dāng)前加工點(diǎn)的溫度場(chǎng)情況。這種校核方法方便了代碼的檢測(cè)、定位和修改。全局校核方式可以自動(dòng)完成整個(gè)加工過(guò)程的顯示,這種方式可以用于加工方法的預(yù)審核和NC代碼的快速檢測(cè)。通過(guò)以上兩種方式的混合使用,順利的實(shí)現(xiàn)了加工中對(duì)加工方法預(yù)審核與代碼校驗(yàn)的需求,滿(mǎn)足了工程應(yīng)用。
數(shù)控加工中,特別是在板材加工領(lǐng)域,通過(guò)計(jì)算機(jī)模擬虛擬加工過(guò)程為加工方法的選擇、路徑優(yōu)化以及NC代碼校核提供了有力的支持。本文中介紹的仿真系統(tǒng)針對(duì)目前板材加工企業(yè)的需求,將NC圖形仿真和NC代碼編輯集于一體,全方位再現(xiàn)了板材火焰切割的加工過(guò)程,滿(mǎn)足了加工企業(yè)的生產(chǎn)需求。隨著加工技巧的深入,目前許多生產(chǎn)企業(yè),特別是一些特殊的應(yīng)用場(chǎng)所比如高精度板材加工企業(yè),對(duì)板材的幾何尺寸精度要求較高。但是板材的尺寸在加工中一般會(huì)因受熱、受力等而發(fā)生變化,導(dǎo)致其在加工之后無(wú)法直接使用,增加企業(yè)的生產(chǎn)成本。這就要求有更完善的仿真系統(tǒng)在模擬板材加工過(guò)程的同時(shí)還要模擬板材在加工中的溫度場(chǎng)變化并分析板材的變形情況。目前多數(shù)的數(shù)控仿真只局限于數(shù)控加工過(guò)程的顯示,研究重點(diǎn)多偏向于幾何圖形信息的處理。隨著板材加工企業(yè)需求的提升,模擬數(shù)控加工中的溫度場(chǎng)變化并分析板材的受熱、受力變形必將成為研究重點(diǎn)。
[1] 余斌,劉榮忠.基于OpenGL的數(shù)控加工仿真系統(tǒng)研究[J].四川大學(xué)學(xué)報(bào),(工程科學(xué)版).2001,33(5):16-19.
[2] 趙 琳,賀 永,傅建中.基于OpenGL的數(shù)控加工三維仿真系統(tǒng)的研究與開(kāi)發(fā)[J].機(jī)電工程.2003,20(5):9-11.
[3] Span J.Mantyla.Advances in Feature Based Manufacturing.Holland,Elsevier North[J].1995:10-12.
[4] DeHaemer Jr M,Zyda M J.Simplification of objects rendered by polygonal approximations[J].Computer&Graphics,1991,15(2):175.
[5] 姚紅革,李瀚山.基于OpenGL的三維實(shí)體的開(kāi)發(fā)與控制[J].西安工業(yè)學(xué)院學(xué)報(bào).2005,23(4): 335-338.
[6] 石瓊,沈春林,譚皓.基于OpenGL的三維建模實(shí)現(xiàn)方法[J].計(jì)算機(jī)工程與應(yīng)用.2004(18):121-124.
[7] 陳其,劉國(guó)良,曾航.OpenGL三維圖形系統(tǒng)開(kāi)發(fā)與實(shí)用技術(shù)[M].北京:清華大學(xué)出版社.2003:2-12.
[8] Shukla,Chetan,Kimura F,etc.Virtual manufacturing:an over view.Computers & Industrial Engineering[J].1996,31(12):79-82.
[9] Rober.S,Shin.Y.C.Modeling and Control of CNC Mechatr onics[J].1995,Vo15,No4:401-420.
TH164
A
1009-0134(2010)11(上)-0057-06
10.3969/j.issn.1009-0134.2010.11(上).19
2010-04-08
國(guó)家“863”項(xiàng)目:“轎車(chē)發(fā)動(dòng)機(jī)協(xié)同制造技術(shù)及其軟硬件平臺(tái)研究與應(yīng)用”(2007AA04Z186);國(guó)家自然科學(xué)基金資助項(xiàng)目(50905065)
韓青江(1985 -),男,江蘇邳州人,在讀碩士研究生,研究方向?yàn)樘摂M制造系統(tǒng)建模仿真。