數控程式設計例項迴圈銑沉孔,條件語句結合G02走圓

上一篇我們講解了條件語句用於迴圈開槽的程式設計,只用了G01直線命令,基本瞭解了條件語句的應用。下面我們開始深化應用,用圓弧指令結合條件語句來加工那些尺寸較大的沉孔。這類孔尺寸大,不能透過鑽孔的方式完成,我們需要採用銑削的方式透過多刀進給來完成加工。下面我會透過例項給大家分析講解。

數控程式設計例項迴圈銑沉孔,條件語句結合G02走圓

例項

:現有一100*100*50的鋼板,在板中央加工工一個直徑為80深度為30的沉孔。目前有刀具直徑20的銑刀,進行相應的程式設計加工。圖示如下。

數控程式設計例項迴圈銑沉孔,條件語句結合G02走圓

準備

:對刀設定座標原點為沉孔中心,將工件沉孔中心在機床的XY機械座標位置輸入到G54座標系的相應位置,Z軸檢查下設定為0。在刀補中設定銑刀長度補償作為Z軸的零點位置。這裡預設為G54座標系和01號刀具。銑刀每次走刀的背吃刀量為1mm。原點位置如下圖所示。

數控程式設計例項迴圈銑沉孔,條件語句結合G02走圓

程式如下:

G54G90G0X0Y0;(設定座標系移動到原點)

G43H1Z30;(設定Z軸刀補位置)

M03S1000;(主軸啟動)

M08;(切削液)

G0X-10;(移動X軸)

#1=0;(設定初始值)

#2=-1;(設定增量值)

N1IF[#1EQ-30]GOTO2;(設定條件語句滿足#1=30迴圈結束)

G01Z#1F80;(切深度)

G01X-10F80;(X走刀)

G02X-10Y0I10J0F80;(走小圓)

G01X-30F80;(X走刀)

G02Y0I30J0F80;(走大圓)

GOTO1;(迴圈回程序段N1)

N2G0Z30;(程式段N2抬刀)

M05M09M30;(停止)

注意程式走大圓後銑刀要先回到走小圓的起始位,不然程式會出錯。這裡增加一個知識點,在條件轉移語句命令中有多種格式:

1、IF [條件] GOTO n(如果指定條件表示式滿足時,轉移到標有順序號n的程式段;如果指定條件表示式不滿足,執行下個程式段);

2、IF [條件]THEN(如果指定條件表示式滿足時,執行設定的宏程式)注意這裡只執行一個宏程式語句,也是跟GOTO命令的區別。

3、WHILE[條件]DO m……END m(滿足指定條件表示式時,執行DO和END之間的程式,否則執行END後的語句)這裡要注意的是m的數值在DO和END和的數值只能是1、2、3超出範圍會報警。

數控程式設計例項迴圈銑沉孔,條件語句結合G02走圓

條件語句可以巢狀進行,但不要超過允許的程式數值。但有程式交叉重複迴圈即DO範圍重疊就會出錯報警。圖示如下。

數控程式設計例項迴圈銑沉孔,條件語句結合G02走圓

大家看到在WHILE語句和IF語句兩個命令都可以實現相同的切削迴圈,但還是有區別的如果應用到小於3的編號程式時WHILE條件語句會更合適,因為GOTO語句要進行程式段檢索,反向檢索時間要比正向檢索時間長,所以WHILE執行速度更快。當然用於多段程式時超過3後,就只能用IF語句了。