數(shù)控加工程序仿真圖形的生成
精工加工代碼的識別為了完成精工加工程序仿真圖形的生成,要求VB程序能識別精工代碼,比如G01直線插補、G03圓弧插補等,然后將程序轉(zhuǎn)入相應(yīng)的指令模塊中,進行插補運算及顯示[36]。精工加工中心中使用的典型語句模式為[36]:N□□□G□□G□□G□□X±□□□Y±□□□Z±□□□I□□□J□□□K□□□F□□S□□T□□M□□M□□其中□代表一位十進制數(shù)字?;赑MAC加工中心精工系統(tǒng)采取直接從能顯示精工代碼的文本框中讀取精工代碼,再進一步分析的方法。精工代碼的識別過程是:直接將文本框中的精工代碼讀入到字符竄變量中,然后根據(jù)精工加工代碼的每一行的結(jié)束標(biāo)志”;”,來將其分割成一行一行的代碼,放入字符竄數(shù)組,再分析字符竄數(shù)組的每一個元素即每一行精工代碼[36]。在精工代碼的分析過程中,考慮到精工系統(tǒng)只是進行圖形仿真,所以在對代碼進行識別的時候,關(guān)鍵就是識別出G代碼、X代碼、R代碼等[36]。程序識別的關(guān)鍵語句如下:t1=Split(stra1,";")'以符號“;”進行分行i=1Fori=1ToUBound(t1)-1Fornextchar=8ToLen(t1(i))SelectCaseMid(t1(i),nextchar,1)Case"G"'提取字母Glg=InStr(nextchar,t1(i),"G",1)num=Mid(t1(i),lg+1,2)SelectCasenumCase"02"Text2.Text="G02"n=2Case"01"n=1……EndSelectCase"X"'提取字母Xj=InStr(t1(i),"X")x(i)=Val(Mid(t1(i),j+1,3))'提取XY后面的數(shù)值,放到數(shù)組X(i),Y(i)里面……EndSelectNextnextcharDimyanseIfn=""ThenElseIfn=1Orn=0ThenIfn=0Thenyanse=vbGreenElseyanse=vbBlackEndIfCall直線(dqdx,dqdy,CDbl(x(i)),CDbl(y(i)),yanse)'調(diào)用直線插補子程序dqdx=CDbl(x(i))dqdy=CDbl(y(i))ElseIfn=2ThenCall圓弧(dqdx,dqdy,CDbl(x(i)),CDbl(y(i)),dRadius)'調(diào)用圓弧插補子程序dqdx=CDbl(x(i))dqdy=CDbl(y(i))EndIfNexti2.圓弧插補R編程在精工零件加工圖紙上,一般都用半徑R來表示圓弧,故R編程格式對于精工程序員來說是非常便利的[37]。但是,在精工系統(tǒng)內(nèi)部必須知道圓心的坐標(biāo),才能進行圓弧插補[37]。因此,在R編程方式下,精工系統(tǒng)需要解決已知兩點的坐標(biāo)和圓弧半徑,求解圓心坐標(biāo)的問題[37]。影響圓心坐標(biāo)的因素很多,如圓弧的長短、順時針走刀、逆時針走刀以及起止點的相對位置等,如圖3-8所示,假設(shè)已知圓弧半徑R、起點A(Xl,yi)和終點B(x2,y2),滿足條件的圓心有兩個OKXi,Y2),連接AB和ChCb,其交點坐標(biāo)為M(xm,ym)。利用矢量算法簡單快捷的求出圓心坐標(biāo),其計算圓心的關(guān)鍵公式為:如果弧AB是G02的劣弧,如圖3-8(a)所示,其圓心為02,此圓心02的坐標(biāo)是:如果弧AB是G02的優(yōu)弧如圖3-8(b)所示,其圓心為,此圓心Ch的坐標(biāo)是:本文采摘自“基于PMAC的加工中心開放式精工系統(tǒng)研究”,因為編輯困難導(dǎo)致有些函數(shù)、表格、圖片、內(nèi)容無法顯示,有需要者可以在網(wǎng)絡(luò)中查找相關(guān)文章!本文由海天精工整理發(fā)表文章均來自網(wǎng)絡(luò)僅供學(xué)習(xí)參考,轉(zhuǎn)載請注明! 相關(guān)產(chǎn)品可查閱:介紹頁(線軌加工中心)、介紹頁(龍門加工中心)、介紹頁(臥式加工中心)