黄色三级片无码高清-一级国产黄色片传媒-下载日韩一级黄色片-国产黄片卡片一级-看三四级黄色毛片-国产一级爱做c片免费-欧美一级电影播放观看-日韩一级视频在线看-成人簧片一级AAA片

【請登錄】【免費注冊】

首頁新聞技術產品供應二手培訓展會物流維修求購招商招標招聘企業

技術

搜索
技術文章機械知識技術技巧論文試題維修知識招投標知識
您的位置:盤古機械網>技術文章>機械知識>詳情

數控編程系統——后置處理程序設計(2)

時間:2008年11月03日瀏覽:833次收藏分享:

㈣運動指令處理部分的程序設計 
    運動指令的處理主要是指3000類與5000類記錄的處理,后置處理程序每處理完一條5000類記錄,即完成了一條數控加工程序段中所有指令的處理,然后需按數控系統指令格式的要求進行排序,從而生成一條數控加工程序,處理流程如圖3-56所示。
1. 3000類記錄(圓弧參數)的處理 
    在5000類加工圓弧記錄前,均有一條3000類記錄,記錄了圓心坐標、半徑值及圓弧的順、逆方向信息。后置處理時(見圖3-56),先根據數控系統的脈沖當量,將圓心坐標及半徑值進行數據圓整化,然后記下該圓弧的所有參數,為處理下一條5000類走圓記錄服務。
有關程序:
Dim CS As Integer‘存放圓弧順逆信息
Dim U As Single, V As Single, R As Single‘存放圓弧圓心坐標及半徑
CS = 0: U = 0: V = 0: R = 0
Case3000
For j = 4 To 6‘圓弧參數圓整化及傳遞參數
W(j) = Int(Abs(W(j) * 1000 + 0.5) * Sgn(W(j))) ‘對W(j)中的小數部分四舍五入
Next j
CS = W(3): U = W(4): V = W(5): R = W(6)
2. 5000類記錄的處理 
    由于MPAPT系統主要是解決平面類零件的數控加工的自動編程,5000 類記錄中所包含的子類型包括起刀點指定、Z方向走一增量、點位控制、直線加工和圓弧加工語句的記錄,根據FANUC-6M數控系統程編要求,各子類型的處理流程見圖3-56。 
    (1) FROM語句記錄的處理 
    FANUC-6M系統數控加工程序一開始就要求設定被加工工件坐標系,并作為第一段程序。這可根據起刀點位置,即取出“FROM”語句后面的坐標,選用G92(或G54)指令進行設定;然后分別排序該程序段序號,并連接已處理的指令字,以形成一條數控加工程序;最后為處理下一程序段傳遞起點坐標值。
有關程序:
Dim OX As Single, OY As Single‘存放終點坐標
OX = 0: OY = 0
Public Sub ProcFRM(OX, OY)
Dim XX As Single, YY As Single
Dim X$, Y$, G$, N$
XX = W(4): YY = W(5): G$ = "G92"
N$ = FunN()‘N指令排序
If XX >= 0 Then X$ = "X" + LTrim(Str$(XX)) Else X$ = "X" + Str$(XX)
If YY >= 0 Then Y$ = "Y" + LTrim(Str$(YY)) Else Y$ = "Y" + Str$(YY)
NC$(NI) = N$ + G$ + X$ + Y$ + "Z0" + "CR"
OX = XX: OY = YY
End Sub 
    (2) GODLTA語句記錄的處理 
    該語句記錄反應了機床Z方向抬刀或下刀一段距離(增量坐標)。機床抬刀或下刀可看作刀具沿ZOX平面內運動,即平面選擇指令為G18。刀具運動速度若超過500mm/分時,則約定為快速(G00)定位,否則作為直線插補(G01)運動,刀具具體運動速度由前面已處理的F指令決定,處理流程見圖3-56。


有關程序:
Public Sub ProcGD(F$, M$, FG$())
Dim FF As Single, ZZ As Single
Dim GG$(4), G$, N$, Z$
GG$(1) = "G91": GG$(3) = "G18": GG$(4) = ""
FF = Val(Mid$(F$, 2, Len(F$) - 1))
If FF > 0 And FF <= 500 Then GG$(2) = "G01" Else GG$(2) = "G00": F$ = ""
N$ = FunN()‘N指令排序
G$ = FunG(GG$(), FG$())‘G指令排序(見后)
ZZ = W(4)
If ZZ >= 0 Then Z$ = "Z" + LTrim(Str$(ZZ)) Else Z$ = "Z" + Str$(ZZ)
NC$(NI) = N$ + G$ + Z$ + F$ + M$ + "CR"
F$ = "": M$ = ""‘賦空字符
End Sub
說明:(1)程序中的F$、M$為存放前面已處理的F、M指令,其初值均為空字符,待程序段中的序號、指令字和運動字等被連接成一條加工程序后,由于F、M指令均為模態指令(有續效),所以賦空字符。 
    (2)對于G指令的排序,除坐標系統設定(或選擇)指令外還剩四組,它們在程序段中的排列順序一般為:
G00
G90G01G17G40
G91G02G18G41
G03G19G42 
    由于這四組G指令均是模態的,因此本程序段中每組G指令,若與前一程序段中的同組G指令相同,則在程序段中該相同的G指令可省略,具體處理過程如圖3-57所示。
有關程序:
Dim FG$(4)‘存放上段程序的G指令組
Dim GG$(4)‘存放本段程序的G指令組
FOR I=1 T 4:FG$(I)=BB$: NEXT I
Public Function FunG(GG$(), FG$()) ‘G指令排序
Dim G$
G$ = ""
For I = 1 To 4
If GG$(I) <> FG$(I) Then FG$(I) = GG$(I): G$ = G$ + GG$(I)
Next I
FunG = G$
End Function

    (3) 其他運動語句記錄的處理 
    GOTO語句(點位運動)、初始切入語句和連續運動語句(直線或圓弧加工)記錄的處理方法均大同小異,如圖3-56所示。除有關G指令處理和X、Y 值的排序等內容外,其他問題的處理與前面所介紹的二種運動語句記錄的處理方法基本相同。 
    對于G指令的處理,若為點位運動,即刀具快速定位,則對應的G指令為G00,若前一程序段中含有刀具補償指令,則應取消刀具補償,否則因G 指令的模態性,影響刀具正確定位;若為初始切入運動或直線運動,對應的G指令為G01,而刀具偏置G指令可由前面2000類已處理的刀偏信息(TS)確定,其后的D代碼已由前面已處理的6000類確定(一般在初始切入程序段中才含有D代碼);若為圓弧運動,順、逆圓G指令可由前面3000類已處理的順、逆信息(CS)確定,其他G指令的處理同直線運動。 
    另外,圓弧加工時,需求圓弧圓心相對圓弧起點(即前一程序段的終點)的增量坐標(II,JJ)值。
有關程序:
Public Sub ProcGT(F$, M$, OX, OY, FG$())‘GOTO語句記錄的處理
Dim XX As Single, YY As Single
Dim GG$(4), N$, G$, X$, Y$
GG$(1) = "G90": GG$(2) = "G00": GG$(3) = "G17"
If FG$(4) = "G41" Or FG$(4) = "G42" Then GG$(4) = "G40"
N$ = FunN()‘N指令排序
G$ = FunG(GG$(), FG$())‘G指令排序
XX = W(4): YY = W(5)
X$ = PaixuX(XX, OX): Y$ = PaixuY(YY, OY)‘X和Y指令排序
NC$(NI) = N$ + G$ + X$ + Y$ + M$ + "CR"
M$ = "": OX = XX: OY = YY‘為下一程序段傳遞起點坐標
End Sub
Public Sub ProcGOL(F$, M$, D$, OX, OY, TS, CR, FEED$, FG$())   ‘初始運動語句和連續運動語句(走直線)記錄的處理
Dim XX As Single, YY As Single
Dim GG$(4), N$, G$, X$, Y$
If TS = 0 And CR = 0 Then ER = 999 : MsgBox ("CUTTER語句或刀偏{TLLFT,TLRGT,TLONN}語句沒有按規定書寫!"): Exit Sub‘轉文本編輯
If FG$(2) = "G00" Then F$ = FEED$‘確定是否需要F指令
If FG$(4) = "G41" Or FG$(4) = "G42" And FD$ = D$ Then D $ = "" Else FD$ = D$‘確定是否需要源代碼
GG$(1) = "G90": GG$(2) = "G01": GG$(3) = "G17"
Select Case TS
Case 0
GG$(4) = "G40"
Case 1
GG$(4) = "G42"
Case -1
GG$(4) = "G41"
End Select
N$ = FunN()                 ‘N指令排序
G$ = FunG(GG$(), FG$())                 ‘G指令排序
XX = W(4): YY = W(5)
X$ = PaixuX(XX, OX): Y$ = PaixuY(YY, OY)          ‘X和Y指令排序
NC$(NI) = N$ + G$ + X$ + Y$ + D$ + F$ + M$ + "CR"
M$ = "": F$ = "": OX = XX: OY = YY
End Sub
Public Sub ProcGOC(F$, M$, OX, OY, TS, CS, U, V, FG$())              ‘連續運動語句(走圓弧)記錄的處理
Dim XX As Single, YY As Single, II As Single, JJ As Single
Dim GG$(4), N$, G$, X$, Y$
GG$(1) = "G90": GG$(3) = "G17"
If CS = 1 Then GG$(2) = "G03" Else GG$(2) = "G02"
If TS = 0 Then
GG$(4) = "G40"
Else
If TS = -1 Then GG$(4) = "G41" Else GG$(4) = "G42"
End If
N$ = FunN()‘N指令排序
G$ = FunG(GG$(), FG$())‘G指令排序
XX = W(4): YX = W(5)
X$ = PaixuX(XX, OX): Y$ = PaixuY(YY, OY)‘X和Y指令排序
II = U - OX: JJ = V - OY
I$ = PaixuI(II): j$ = PaixuJ(JJ)‘I和J指令排序
NC$(NI) = N$ + G$ + X$ + Y$ + I$ +J$ + F$ + M$ + "CR"
M$ = "": F$ = "": OX = XX: OY = YY
End Sub 
    對于X、Y值的排序,由FANUC-6M系統絕對坐標編程方法可知,當本程序段中的X(或Y)值與前一程序段中的X(或Y)值相等時,說明該方向的工作臺沒有位移量,則本程序段中的X(或Y)運動字可省略,故運動字的排序為空字符。
X,Y值排序程序:
Public Function PaixuX(XX, OX)‘X指令排序
Dim X$
If XX = OX Then
X$ = ""
Else
If XX >= 0 Then X$ = "X" + LTrim(Str$(XX)) Else X$ = "X" + Str$(XX)
End If
PaixuX = X$
End Function
Public Function PaixuY(YY, OY)‘Y指令排序
Dim Y$
If YY = OY Then
Y$ = ""
Else
If YY >= 0 Then Y$ = "Y" + LTrim(Str$(YY)) Else Y$ = "Y" + Str$(YY)
End If
PaixuY = Y$
End Function 
    ㈤輸出部分的程序設計 
    后置處理程序通過對CLDATA記錄一條條地進行處理,形成了一條條的數控加工程序。當處理到14000類記錄時,表示記錄已處理完畢,這時應置數控加工程序的結束指令(M02或M30),如圖3-56所示。后置處理完畢,可進行數控加工程序仿真加工、顯示、打印、存盤、穿孔制帶和通信(將數控加工程序直接傳送到數控系統)等操作。
1. 數控加工程序的顯示、打印或存盤 
    因數控加工程序已存于字符串數組(NC$(N))中,故可通過窗體中文件菜單將其顯示、打印或存盤。
2.仿真加工 
    根據數控加工程序中刀具位移坐標,利用計算機的繪圖功能及動畫技術,借助于圖形顯示器可形象地模仿數控機床加工。首先根據加工要求,選擇所需要的刀具,仿真加工從確定刀具的起始位置開始,然后沿著所定義零件幾何形狀表面按運動語句指定的運動方向移動。仿真加工時可采用彩色圖形顯示,即零件外形(含加工余量)用一種顏色顯示,刀具軌跡或刀具中心軌跡用另一種顏色顯示,因此能方便、直觀地鑒別刀具軌跡是否正確。在屏幕中模擬動態刀具運動時,刀具運動的速度可忽快忽慢甚至停止,以便檢查刀具與工件是否產生干涉。 
    仿真加工的刀具中心軌跡圖形可通過繪圖機繪制,并可整體或局部放大與縮小。
    仿真加工程序的設計方法與前置處理程序中的圖形顯示程序類同,只不過繪圖輸入數據不同,前者為CLDATA,而后者為數控加工程序。對于刀具運動速度的忽快忽慢及停止顯示的處理,可參照有關動畫程序的設計。
3. 數控加工程序的穿孔制帶 
    早期的數控機床有的是通過紙帶將數控加工程序輸入數控系統,故需將數控加工程序按一定的代碼及格式穿孔制帶。由于穿孔機對通用計算機而言,屬于專用外部設備,故一般需設計專用接口電路,因此, 穿孔制帶程序的設計與專用接口電路有關。
4. 數控加工程序的通信
    數控加工程序的通信通常是雙向的,即從編程機傳送到數控系統或從數控系統傳遞到編程機中。其程序設計往往與通信口有關,即分通用接口和專用接口,且通用接口又分并行口和串行口。

熱門文章

業務咨詢:932174181   媒體合作:2279387437    24小時服務熱線:15136468001 盤古機械網 - 全面、科學的機械行業免費發布信息網站 Copyright 2017 PGJXO.COM 豫ICP備12019803號