每天資訊FANUC G程式碼

菜單

FANUC G程式碼

參考資料:FANUC O 系列操作程式設計說明書 1 參考資料:FANUC O系

FANUC G程式碼

列操作程式設計說明書

第一篇:程式設計 5

1。

綜述 5

1。1

可程式設計功能 5

1。2

準備功能 5

1。3

輔助功能 7

2。

插補功能 8

2。1

快速定位(G00

) 8

2。2

直線插補(G01

) 8

2。3

圓弧插補(G02/G03

) 9

3。

進給功能 11

3。1

進給速度 11

3。2

自動加減速控制 11

3。3

切削方式(G64

) 11

3。4

精確停止(G09)

及精確停止方式(G61) 12

3。5

暫停(

G04

) 12

4。

參考點和座標系 13

4。1

機床座標系 13

4。2

關於參考點的指令(

G27

、G28

、G29

及G30

) 13

4。2。1

自動返回參考點(G28

) 13

4。2。2

從參考點自動返回(G29

) 13

4。2。3

參考點返回檢查(G27

) 14

4。2。4

返回第二參考點(G30

) 14

4。3

工件座標系 15

4。3。1

選用機床座標系(G53

) 15

4。3。2

使用預置的工件座標系(G54~G59

) 15

4。3。3

可程式設計工件座標系(G92

) 16

4。3。4

區域性座標系(G52) 16

4。4

平面選擇 17

5。

座標值和尺寸單位 18

5。1

絕對值和增量值程式設計(G90

和G91

) 18

6。

輔助功能 19

6。1

M

程式碼 19

6。1。1

程式控制用M

程式碼 19

6。1。2

其它M

程式碼 19

6。2

T

程式碼 19

6。3

主軸轉速指令(S

程式碼) 20

6。4

剛性攻絲指令(M29

) 20

7。

程式結構 21

7。1

程式結構 21

7。1。1

紙帶程式起始符(Tape Start) 21

7。1。2

前導(Leader Section) 21

7。1。3

程式起始符(Program Start) 21

參考資料:FANUC O 系列操作程式設計說明書 2 7。1。4

程式正文(Program Section) 21

7。1。5

註釋(Comment Section) 21

7。1。6

程式結束符(Program End) 21

7。1。7

紙帶程式結束符(Tape End) 22

7。2

程式正文結構 22

7。2。1

地址和詞 22

7。2。2

程式段結構 22

7。2。3

主程式和子程式 23

8。

簡化程式設計功能 25

8。1

孔加工固定迴圈(G73,G74,G76,G80~G89) 25

8。1。1 G73

(高速深孔鑽削迴圈) 28

8。1。2 G74

(左螺紋攻絲迴圈) 29

8。1。3 G76(

精鏜迴圈) 29

8。1。4 G80(

取消固定迴圈) 30

8。1。5 G81(

鑽削迴圈) 30

8。1。6 G82(

鑽削迴圈,粗鏜削迴圈) 31

8。1。7 G83(

深孔鑽削迴圈) 31

8。1。8 G84(

攻絲迴圈) 32

8。1。9 G85(

鏜削迴圈) 32

8。1。10 G86(

鏜削迴圈) 32

8。1。11 G87(

反鏜削迴圈) 33

8。1。12 G88(

鏜削迴圈) 33

8。1。13 G89(

鏜削迴圈) 34

8。1。14

剛性攻絲方式 34

8。1。15

使用孔加工固定迴圈的注意事項 35

9。

刀具補償功能 36

9。1

刀具長度補償(G43

,G44

,G49) 36

9。2

刀具半徑補償 36

9。2。1 補償向量 36

9。2。2 補償值 36

9。2。3 平面選擇 36

9。2。4 G40、G41和G42 36

9。2。5 使用刀具半徑補償的注意事項 37

第二篇:NC操作 38

1。

自動執行程式的操作 38

1。1

CRT/MDI

操作面板 38

1。1。1

軟體鍵 38

1。1。2

系統操作鍵 38

1。1。3

資料輸入鍵 38

1。1。4

游標移動鍵 38

1。1。5

編輯鍵和輸入鍵 38

1。1。6 NC

功能鍵 38

1。1。6

電源開關按鈕 39

1。2

MDI

方式下執行可程式設計指令 39

1。3

自動執行方式下執行加工程式 39

1。3。1 啟動執行程式 39

參考資料:FANUC O 系列操作程式設計說明書 3 1。3。2 停止執行程式 39

2。

程式驗證和安全功能 40

2。1

程式驗證功能 40

2。1。1

機床閉鎖 40

2。1。2 Z軸閉鎖 40

2。1。3 自動進給的倍率 40

2。1。4 快速進給的倍率 40

2。1。5 試執行 40

2。1。6 單程式段執行 40

2。2

安全功能 40

2。2。1 緊急停止 40

2。2。2 超程檢查 40

3。

零件程式的輸入、編輯和儲存 41

3。1

新程式的註冊 41

3。2

搜尋並調出程式 41

3。3

插入一段程式 41

3。4

刪除一段程式 41

3。5

修改一個詞 42

3。6

搜尋一個詞 42

4。

資料的顯示和設定 43

4。1

刀具偏置值的顯示和輸入 43

4。2

G54~G59

工件座標系的顯示和輸入 43

4。3

NC

引數的顯示和設定 43

4。4

刀具表的修改 44

5。

顯示功能 45

5。1

程式顯示 45

5。2

當前位置顯示 45

6。線上加工功能 46

6。1

有關引數的修改: 46

6。2

有關線上加工的操作。 46

7。機床引數的輸入

﹑輸出 47

8。使用者宏B功能 49

8。1變數 49

8。1。1

變數概述 49

8。1。2系統變數 50

8。2算術和邏輯操作 55

8。3分支和迴圈語句 56

8。3。1無條件分支(GOTO語句) 56

8。3。2條件分支(IF

語句) 57

8。3。3迴圈(WHILE語句) 57

8。3。4

注意 58

8。4宏呼叫 58

8。4。1

簡單呼叫(G65) 58

8。4。2、模呼叫(G66、G67) 60

8。4。3

G碼呼叫宏 61

8。4。4、M碼呼叫宏 61

參考資料:FANUC O 系列操作程式設計說明書 4 8。4。5

M碼呼叫子程式 62

8。4。6

T碼呼叫子程式 62

8。5附加說明 62

附錄1:報警程式碼表 64

1。

程式報警(P/S報警) 64

2。

伺服報警 65

3。

超程報警 66

4。

過熱報警及系統報警 66

參考資料:FANUC O 系列操作程式設計說明書 5 第一篇:程式設計

1。 綜述

1。1

可程式設計功能

透過程式設計並執行這些程式而使數控機床能夠實現的功能我們稱之為可程式設計功能。一

般可程式設計功能分為兩類:一類用來實現刀具軌跡控制即各進給軸的運動,如直線/圓弧

插補、進給控制、座標系原點偏置及變換、尺寸單位設定、刀具偏置及補償等,這一類

功能被稱為準備功能,以字母G以及兩位數字 組成,也被稱為G程式碼。另一類功能被

稱為輔助功能,用來完成程式的執行控制、主軸控制、刀具控制、輔助裝置控制等功能。

在這些輔助功能中,Tx x用於選刀,Sx x x x用於控制主軸轉速。其它功能由以字母M

與兩位數字組成的M程式碼來實現。

1。2

準備功能

本機床使用的所有準備功能見表1。1:

表1。1

G程式碼 分組 功能 *G00 01

定位(快速移動) *G01 01

直線插補(進給速度) G02 01

順時針圓弧插補 G03 01

逆時針圓弧插補 G04 00

暫停,精確停止 G09 00

精確停止 *G17 02

選擇X Y平面 G18 02

選擇Z X平面 G19 02

選擇Y Z平面 G27 00

返回並檢查參考點 G28 00

返回參考點 G29 00

從參考點返回 G30 00

返回第二參考點 *G40 07

取消刀具半徑補償 G41 07

左側刀具半徑補償 G42 07

右側刀具半徑補償 G43 08

刀具長度補償+ G44 08

刀具長度補償- *G49 08

取消刀具長度補償 G52 00

設定區域性座標系 G53 00

選擇機床座標系 *G54 14

選用1號工件座標系

參考資料:FANUC O 系列操作程式設計說明書 6 G55 14

選用2號工件座標系 G56 14

選用3號工件座標系 G57 14

選用4號工件座標系 G58 14

選用5號工件座標系 G59 14

選用6號工件座標系 G60 00

單一方向定位 G61 15

精確停止方式 *G64 15

切削方式 G65 00

宏程式呼叫 G66 12

模態宏程式呼叫 *G67 12

模態宏程式呼叫取消 G73 09

深孔鑽削固定迴圈 G74 09

反螺紋攻絲固定迴圈 G76 09

精鏜固定迴圈 *G80 09

取消固定迴圈 G81 09

鑽削固定迴圈 G82 09

鑽削固定迴圈 G83 09

深孔鑽削固定迴圈 G84 09

攻絲固定迴圈 G85 09

鏜削固定迴圈 G86 09

鏜削固定迴圈 G87 09

反鏜固定迴圈 G88 09

鏜削固定迴圈 G89 09

鏜削固定迴圈 *G90 03

絕對值指令方式 *G91 03

增量值指令方式 G92 00

工件零點設定 *G98 10

固定迴圈返回初始點 G99 10

固定迴圈返回R點 從表1。1中我們可以看到,G程式碼被分為了不同的組,這是由於大多數的G程式碼是

模態的,所謂模態G程式碼,是指這些G程式碼不只在當前的程式段中起作用,而且在以後

的程式段中一直起作用,直到程式中出現另一個同組的G程式碼為止,同組的模態G程式碼

控制同一個目標但起不同的作用,它們之間是不相容的。00組的G程式碼是非模態的,這

些G程式碼只在它們所在的程式段中起作用。標有*號的G程式碼是上電時的初始狀態。對

於G01和G00、G90和G91上電時的初始狀態由引數決定。

如果程式中出現了未列在上表中的G程式碼,CNC會顯示10號報警。

同一程式段中可以有幾個G程式碼出現,但當兩個或兩個以上的同組G程式碼出現時,

最後出現的一個(同組的)G程式碼有效。

在固定迴圈模態下,任何一個01組的G程式碼都將使固定迴圈模態自動取消,成為

G80模態。

參考資料:FANUC O 系列操作程式設計說明書 7 1。3

輔助功能

本機床用S程式碼來對主軸轉速進行程式設計,用T程式碼來進行選刀程式設計,其它可程式設計輔

助功能由M程式碼來實現,本機床可供使用者使用的M程式碼列表如下(表1。2):

表1。2

M程式碼 功 能 M00

程式停止 M01

條件程式停止 M02

程式結束 M03

主軸正轉 M04

主軸反轉 M05

主軸停止 M06

刀具交換 M08

冷卻開 M09

冷卻關 M18

主軸定向解除 M19

主軸定向 M29

剛性攻絲 M30

程式結束並返回程式頭 M98

呼叫子程式 M99

子程式結束返回/重複執行

一般地,一個程式段中,M程式碼最多可以有一個。

參考資料:FANUC O 系列操作程式設計說明書 8

2。 插補功能

2。1

快速定位(G00

G00給定一個位置。

格式:G00 IP

_;

IP

_在本說明書中代表任意不超過三個進給軸地址的組合,當然,每個地址後

面都會有一個數字作為賦給該地址的值,一般機床有三個或四個進給軸即X,Y,Z ,

A所以IP

_可以代表如 X12。 Y119。 Z-37。 或 X287。3 Z73。5 A45。 等等內容。

G00這條指令所作的就是使刀具以快速的速率移動到IP

_指定的位置,被指令的各

軸之間的運動是互不相關的,也就是說刀具移動的軌跡不一定是一條直線。G00指令下,

快速倍率為100%時,各軸運動的速度:X、Y、Z軸均為15m/min,該速度不受當前F

值的控制。當各運動軸到達運動終點併發出位置到達訊號後,CNC認為該程式段已經結

束,並轉向執行下一程式段。

位置到達訊號:當運動軸到達的位置與指令位置之間的距離小於引數指定的到

位寬度時,CNC認為該軸已到達指令位置,併發出一個相應訊號即該軸的位置到達

訊號。

G00程式設計舉例:

起始點位置為X-50,Y-75。 ;指令G00 X150。 Y25。;將使刀具走出下圖所示軌跡

(圖2。1)。

圖 2。1

2。2

直線插補(G01

格式:G01 IP-F-;

G01指令使當前的插補模態成為直線插補模態,刀具從當前位置移動到 IP指定的

位置,其軌跡是一條直線,F-指定了刀具沿直線運動的速度,單位為mm/min(X、Y、Z

軸)。

該指令是我們最常用的指令之一。

假設當前刀具所在點為X-50。 Y-75。,則如下程式段

N1 G01 X150。 Y25。 F100 ;

參考資料:FANUC O 系列操作程式設計說明書 9 N2 X50。 Y75。;

將使刀具走出如下圖(圖2。2)所示軌跡。

大家可以看到,程式段N2並沒有指令G01,由於G01指令為模態指令,所以N1程

序段中所指令的G01在N2程式段中繼續有效,同樣地,指令F100在 N2段也繼續有效,

即刀具沿兩段直線的運動速度都是100mm/min。

2。3

圓弧插補(G02/G03

下面所列的指令可以使刀具沿圓弧軌跡運動:

在X——Y平面

G17 { G02 / G03 } X__ Y__ { ( I__ J__ ) / R__ } F__ ;

在 X——Z平面

G18 { G02 / G03 } X__ Z__ { ( I__ K__ ) / R__ } F__ ;

在 Y——Z平面

G19 { G02 / G03 } Y__ Z__ { ( J__ K__ ) / R__ } F__ ;

序號 資料內容 指 令 含 義 G17

指定X——Y平面上的圓弧插補 G18

指定X——Z平面上的圓弧插補

1

平面選擇

G19

指定Y——Z平面上的圓弧插補 2 G02

順時針方向的圓弧插補 圓弧方向

G03

逆時針方向的圓弧插補 G90 模態 X、Y、Z中的兩軸指令 當前工件座標系中終點位置的坐

標值

3

終點

位置

G91 模態 X、Y、Z中的兩軸指令 從起點到終點的距離

(有方向的

) 4

起點到圓心的距離 I、J、K中的兩 軸指令 從起點到圓心的距離

(有方向的

圓弧半徑 R

圓弧半徑 5

進給率 F

沿圓弧運動的速度 在這裡,我們所講的圓弧的方向,對於X——Y平面來說,是由Z軸的正向往Z軸的

負向看X——Y平面所看到的圓弧方向,同樣,對於X——Z平面或Y——Z平面來說,觀測的

參考資料:FANUC O 系列操作程式設計說明書 10 方向則應該是從Y軸或X軸的正向到Y軸或X軸的負向(適用於右手座標系如下圖所示)。

圓弧的終點由地址X、Y和Z來確定。在G90模態,即絕對值模態下,地址X、Y、Z

給出了圓弧終點在當前座標系中的座標值;在G91模態,即增量值模態下,地址X、Y、

Z給出的則是在各座標軸方向上當前刀具所在點到終點的距離。

在X方向,地址I給定了當前刀具所在點到圓心的距離,在Y和Z方向,當前刀具

所在點到圓心的距離分別由地址J和K來給定,I、J、K的值的符號由它們的方向來確

定。

對一段圓弧進行程式設計,除了用給定終點位置和圓心位置的方法外,我們還可以用給

定半徑和終點位置的方法對一段圓弧進行程式設計,用地址R來給定半徑值,替代給定圓心

位置的地址。R的值有正負之分,一個正的R值用來程式設計一段小於180度的圓弧,一個

負的R值程式設計的則是一段大於180度的圓弧。程式設計一個整圓只能使用給定圓心的方法。

參考資料:FANUC O 系列操作程式設計說明書 11

3。 進給功能

3。1

進給速度

上一章,我們講述了基本插補命令的用法以及一些相關指令,同時,也涉及到了

一些與進給速度有關的一些知識,在本節中,我們將歸納性地討論這些問題。

數控機床的進給一般地可以分為兩類:快速定位進給及切削進給。

快速定位進給在指令G00、手動快速移動以及固定迴圈時的快速進給和點位之間的

運動時出現。快速定位進給的速度是由機床引數給定的,並可由快速倍率開關加上100

%、50%、25%及F0的倍率。快速倍率開關在100%的位置時,快速定位進給的速度

對於X、Y、Z三軸來說,都是15000mm/min。快速倍率開關在F0的位置時,X、Y、Z三

軸快速定位進給速度是2000mm/min。快速定位進給時,參與進給的各軸之間的運動是

互不相關的,分別以自己給定的速度運動,一般來說,刀具的軌跡是一條折線。

切削進給出現在G01、G02/03以及固定迴圈中的加工進給的情況下,切削進給的速

度由地址F給定。在加工程式中,F是一個模態的值,即在給定一個新的F值之前,原

來程式設計的F值一直有效。CNC系統剛剛通電時,F的值由549號引數給定,該引數在機

床出廠時被設為100mm/min。切削進給的速度是一個有方向的量,它的方向是刀具運動

的方向,模(即速度的大小)為F的值。參與進給的各軸之間是插補的關係,它們的運

動的合成即是切削進給運動。

F的最大值由527號引數控制,該引數在機床出廠時被設為4000mm/min,如果程式設計

的F值大於此值,實際的進給切削速度也將保持為4000mm/min。

切削進給的速度還可以由操作面板上的進給倍率開關來控制,實際的切削進給速

度應該為F的給定值與倍率開關給定倍率的乘積。

3。2

自動加減速控制

自動加減速控制作用於各軸運動的起動和停止的過程中,以減小衝擊並使得起動

和停止的過程平穩,為了同樣的目的自動加減速控制也作用於進給速度變換的過程中。

對於不同的進給方式,NC使用了不同的加減速控制方式:

快速定位進給:使用線性加減速控制,各軸的加減速時間常數由引數控制

(522~525

號引數

)。

切削進給:用指數加減速控制,加減速時間常數由530號引數控制。

手動進給:使用指數加減速控制,各軸的加減速時間常數也由引數控制,引數號

為601~604。

3。3

切削方式(G64

一般地,為了有一個好的切削條件,我們希望刀具在加工工件時要保持線速度的恆

定,但我們知道自動加減速控制作用於每一段切削進給過程的開始和結束,那麼在兩個

程式段之間的銜接處如何使刀具保持恆定的線速度呢?在切削方式G64模態下,兩個切

削進給程式段之間的過渡是這樣的:在前一個運動接近指令位置並開始減速時,後一個

運動開始加速,這樣就可以在兩個插補程式段之間保持恆定的線速度。可以看出在G64

模態下,切削進給時,NC並不檢查每個程式段執行時各軸的位置到達訊號,並且在兩個

切削進給程式段的銜接處使刀具走出一個小小的圓角。

參考資料:FANUC O 系列操作程式設計說明書 12 3。4

精確停止(G09)

及精確停止方式(G61)

如果在一個切削進給的程式段中有G09指令給出,則刀具接近指令位置 時會減速,

NC檢測到位置到達訊號後才會繼續執行下一程式段。這樣,在兩個程式段之間的銜接處

刀具將走出一個非常尖銳的角,所以需要加工非常尖銳的角時可以使用這條指令。使用

G61可以實現同樣的功能,G61與G09的區別就是G09是一條非模態的指令,而G61是

模態的指令,即G09只能在它所在的程式段中起作用,不影響模態的變化,而G61可以

在它以後的程式段中一直起作用,直到程式中出現G64或G63為止。

3。5

暫停( G04 )

作用:在兩個程式段之間產生一段時間的暫停。

格式:G04 P-;或G04 X-;

地址P或X給定暫停的時間,以秒為單位,範圍是0。001~9999。999秒。如果沒有P

或X,G04在程式中的作用與G09相同。

參考資料:FANUC O 系列操作程式設計說明書 13

4。 參考點和座標系

4。1

機床座標系

本機床的座標系是右手座標系。主軸箱的上下運動為Z軸運動,主軸箱向上的運動

為Z軸正向運動,主軸箱向下的運動為Z軸負向運動;滑座的前後運動為Y軸運動,滑

座遠離立柱的運動為Y軸的正向運動,滑座趨向立柱的運動為Y軸的負向運動;工作臺

的左右運動為X軸運動,面對機床,工作臺向左運動為X軸的正向運動,工作臺向右運

動為X軸的負向運動。

可以看到,只有Z軸的運動是刀具本身的運動,X、Y軸則是靠工作臺帶動工

件運動來完成加工過程的。為了方便起見,在本說明書中對於X、Y軸運動的描述

是刀具相對於工件的運動。

相對位置固定的機床座標系的建立,是靠每次NC上電後的返回參考點的操作來完

成的。參考點是機床上的一個固定的點,它的位置由各軸的參考點開關和撞塊位置以及

各軸伺服電機的零點位置來確定。本機床返回參考點後,參考點在機床座標系中的座標

值為X0,Y0,Z0。X軸行程為0~-600毫米,Y軸行程為0~-400毫米,Z軸行程為0~-510

毫米。

4。2

關於參考點的指令( G27

、G28

、G29

及G30 )

4。2。1 自動返回參考點(

G28)

格式:G28IP-;

該指令使指令軸以快速定位進給速度經由IP指定的中間點返回機床參考點,中間

點的指定既可以是絕對值方式的也可以是增量值方式的,這取決於當前的模態。一般地,

該指令用於整個加工程式結束後使工件移出加工區,以便卸下加工完畢的零件和裝夾待

加工的零件。

執行手動返回參考點以前執行G28指令時,各軸從中間點開始的運動與手動返回參

考點的運動一樣,從中間點開始的運動方向為正向。

G28指令中的座標值將被NC作為中間點儲存,另一方面,如果一個軸沒有被包含

在G28指令中,NC儲存的該軸的中間點座標值將使用以前的G28指令中所給定的值。例

如:

N1 X20。0 Y54。0;

N2 G28 X-40。0 Y-25。0; 中間點座標值(-40。0,-25。0)

N3 G28 Z31。0; 中間點座標值(-40。0,-25。0,31。0)

該中間點的座標值主要由G29指令使用。

4。2。2 從參考點自動返回(

G29)

格式:G29 IP-; F

注意:

為了安全起見,在執行該命令以前應該取消刀具半徑

補償和

長度補償。

參考資料:FANUC O 系列操作程式設計說明書 14 該命令使被指令軸以快速定位進給速度從參考點經由中間點運動到指令位置,中間

點的位置由以前的G28或G30(參考4。2。4)指令確定。一般地,該指令用在G28或G30

之後,被指令軸位於參考點或第二參考點的時候。

在增量值方式模態下,指令值為中間點到終點(指令位置)的距離。

4。2。3 參考點返回檢查(

G27)

格式:G27 IP-;

該命令使被指令軸以快速定位進給速度運動到IP指令的位置,然後檢查該點是否

為參考點,如果是,則發出該軸參考點返回的完成訊號(點亮該軸的參考點到達指示燈);

如果不是,則發出一個報警,並中斷程式執行。

在刀具偏置的模態下,刀具偏置對G27指令同樣有效,所以一般來說執 行G27指

令以前應該取消刀具偏置(半徑偏置和長度偏置)。

在機床閉鎖開關置上位時,NC不執行G27指令。

4。2。4 返回第二參考點(

G30)

格式:G30 IP-;

該指令的使用和執行都和G28非常相似,唯一不同的就是G28使指令軸返回機床參

考點,而G30使指令軸返回第二參考點。G30指令後,和G28指令相似,可以使用G29

指令使指令軸從第二參考點自動返回。

第二參考點也是機床上的固定點,它和機床參考點之間的距離由引數給定,第二參

考點指令一般在機床中主要用於刀具交換,因為機床的Z軸換刀點為Z軸的第二參考點

(引數#737),也就是說,刀具交換之前必須先執行G30指令。使用者的零件加工程式中,

在自動換刀之前必須編寫G30,否則執行M06指令時會產生報警。第二參考點的返回,

關於M06請參閱機床說明書部分:輔助功能。被指令軸返回第二參考點完成後,該軸的

參考點指示燈將閃爍,以指示返回第二參考點的完成。機床X和Y軸的第二參考點出廠

時的設定值與機床參考點重合,如有特殊需要可以設定735、736號引數。

參考資料:FANUC O 系列操作程式設計說明書 15

4。3

工件座標系

通常程式設計人員開始程式設計時,他並不知道被加工零件在機床上的位置,他所編制的零

件程式通常是以工件上的某個點作為零件程式的座標系原點來編寫加工程式,當被加工

零件被夾壓在機床工作臺上以後再將NC所使用的座標系的原點偏移到與程式設計使用的原

點重合的位置進行加工。所以座標系原點偏移功能對於數控機床來說是非常重要的。

在本機床上可以使用下列三種座標系:

(1)機床座標系。

(2)工件座標系。

(3)區域性座標系。

4。3。1 選用機床座標系(

G53)

格式:(G90)G53 IP

_;

該指令使刀具以快速進給速度運動到機床座標系中IP

_指定的座標值位置,一般地,

該指令在G90模態下執行。G53指令是一條非模態的指令,也就是說它只在當前程式段

中起作用。

機床座標系零點與機床參考點之間的距離由引數設定,無特殊說明,各軸參考點與

機床座標系零點重合。

4。3。2 使用預置的工件座標系(

G54~G59)

在機床中,我們可以預置六個工件座標系,透過在CRT-MDI面板上的操作,設定每

一個工件座標系原點相對於機床座標系原點的偏移量,然後使用G54~G59指令來選用它

們,G54~G59都是模態指令,分別對應1#~6#預置工件座標系,如下例:

預置1#工件座標系偏移量:X-150。000 Y-210。000 Z-90。000。

預置4#工件座標系偏移量:X-430。000 Y-330。000 Z-120。000。

程式段內容 終點在機床座標系

中的座標值

注 釋 N1 G90 G54 G00 X50。 Y50。; X-100, Y-160

選擇1#座標系,快速定位。 N2 Z-70。; Z-160 N3 G01 Z-72。5 F100; Z-160。5

直線插補,F值為100。 N4 X37。4; X-112。6

(直線插補) N5 G00 Z0; Z-90

快速定位 N6 X0 Y0 A0; X-150, Y-210 L警告:

737

號引數用於設定

Z

軸換刀點,正常情況下不得改動,

否則可能損壞

ATC

(自動刀具交換)裝置。

F

注意 :

G28

一樣,為了安全起見,在執行該命令以前應該取消刀

具半徑補償和長度補償。

參考資料:FANUC O 系列操作程式設計說明書 16 N7 G53 X0 Y0 Z0; X0, Y0, Z0

選擇使用機床座標系。 N8 G57 X50。 Y50。 ; X-380, Y-280

選擇4#座標系 N9 Z-70。; Z-190 N10 G01 Z-72。5; Z-192。5

直線插補,F值為100 (模態值) N11 X37。4; X392。6 N12 G00 Z0; Z-120 N13 G00 X0 Y0 ; X-430, Y-330

從以上舉例可以看出,G54~G59指令的作用就是將NC所使用的座標系的原點移動

到機床座標系中座標值為預置值的點,預置方法請查閱本手冊的操作部分。

在機床的數控程式設計中,插補指令和其它與座標值有關的指令中的IP- 除非有

特指外,都是指在當前座標系中(指令被執行時所使用的座標系)的座標位置。大多

數情況下,當前座標系是G54~G59中之一(G54為上電時的初始模態),直接使用機

床座標系的情況不多。

4。3。3 可程式設計工件座標系(

G92)

格式:(G90)G92 IP-;

該指令建立一個新的工件座標系,使得在這個工件座標系中,當前刀具所在點的坐

標值為IP-

指令的值。G92指令是一條非模態指令,但由該指令建立的工件座標系卻是

模態的。實際上,該指令也是給出了一個偏移量,這個偏移量是間接給出的,它是新工

件座標系原點在原來的工件座標系中的座標值,從G92的功能可以看出,這個偏移量也

就是刀具在原工件座標系中的座標值與 IP

-

指令值之差。如果多次使用G92指令,則每

次使用G92指令給出的偏移量將會疊加。對於每一個預置的工件座標系(G54~G59),

這個疊加的偏移量都是有效的。舉例如下:

預置1#工件座標系偏移量:X-150。000 Y-210。000 Z-90。000。

預置4#工件座標系偏移量:X-430。000 Y-330。000 Z-120。000。

程式段內容 終點在機床座標系

中的座標值

注 釋 N1 G90 G54 G00 X0 Y0 Z0; X-150, Y-210, Z-90

選擇1#座標系,快速定位到 坐

標系原點。 N2 G92 X70。 Y100。 Z50。; X-150, Y-210, Z-90

刀具不運動,建立新座標系,

新座標系中當前點座標值為

X70, Y100, Z50 N3 G00 X0 Y0 Z0; X-220, Y-310, Z-140

快速定位到新座標系原點。 N4 G57 X0 Y0 Z0; X-500, Y-430, Z-170

選擇4#座標系,快速定位到 坐

標系原點(已被偏移)。 N5 X70。 Y100。 Z50。; X-430, Y-330, Z-120

快速定位到原座標系原點。 4。3。4 區域性座標系(

G52)

G52可以建立一個區域性座標系,區域性座標系相當於G54~G59座標系的子座標系。

格式:G52 IP_;

參考資料:FANUC O 系列操作程式設計說明書 17 該指令中,IP_給出了一個相對於當前G54~G59座標系的偏移量,也就是說,IP_

給定了區域性座標系原點在當前G54~G59座標系中的位置座標,即使該G52指令執行前

已經由一個G52指令建立了一個區域性座標系。取消區域性座標系的方法也非常簡單,使用G52 IP0 ;

即可。

4。4

平面選擇

這一組指令用於選擇進行圓弧插補以及刀具半徑補償所在的平面。

使用方法:

G17………選擇XY平面

G18………選擇ZX平面

G19………選擇YZ平面

關於平面選擇的相關指令可以參考圓弧插補及刀具補償等指令的相關內容。

參考資料:FANUC O 系列操作程式設計說明書 18

5。 座標值和尺寸單位

5。1

絕對值和增量值程式設計(G90

和G91

有兩種指令刀具運動的方法 :絕對值指令和增量值指令。在絕對值指令模態下,

我們指定的是運動終點在當前座標系中的座標值;而在增量值指令模態下,我們指定的

則是各軸運動的距離。G90和G91這對指令被用來選擇使用絕對值模態或增量值模態。

G90………絕對值指令

G91………增量值指令 40。0120。020。090。0Y

X終點起點絕對值指令程式設計:

G90 X20。 Y120。;

增量值指令程式設計:

G91 X-70。 Y80。;

透過上例,我們可以更好地理解絕對值方式和增量值方式的程式設計。

參考資料:FANUC O 系列操作程式設計說明書 19

6。 輔助功能

6。1 M

程式碼

在機床中,M程式碼分為兩類:一類由NC直接執行,用來控制程式的執行;另一類

由PMC來執行,控制主軸、ATC裝置、冷卻系統。M程式碼表見表1。2。

6。1。1 程式控制用

M程式碼

用於程式控制的M程式碼有M00、M01、M02、M30、M98、M99,其功能分別講解如下:

M00………程式停止。NC執行到M00時,中斷程式的執行,按迴圈起動按鈕可以繼

續執行程式。

M01………條件程式停止。NC執行到M01時,若M01有效開關置為上位,則M01與

M00指令有同樣效果,如果M01有效開關置下位,則M01指令不起任何作用。

M02………程式結束。遇到M02指令時,NC認為該程式已經結束,停止程式的執行

併發出一個復位訊號。

M30………程式結束,並返回程式頭。在程式中,M30除了起到與M02 同樣的作用

外,還使程式返回程式頭。

M98………呼叫子程式。

M99………子程式結束,返回主程式。

6。1。2 其它

M程式碼

M03………主軸正轉。使用該指令使主軸以當前指定的主軸轉速逆時針(CCW)旋轉。

M04………主軸反轉。 使用該指令使主軸以當前指定的主軸轉速順時針(CW)旋轉。

M05………主軸停止。

M06………自動刀具交換(參閱機床操作說明書)。

M08………冷卻開。

M09………冷卻關。

M18………主軸定向解除。

M19………主軸定向。

M29………剛性攻絲(參考“6。4 剛性攻絲指令(M29)”)。

其他M程式碼請參閱機床使用說明書。

6。2

T

程式碼

機床刀具庫使用任意選刀方式,即由兩位的T程式碼T××指定刀具號而不必管這把

刀在哪一個刀套中,地址T的取值範圍可以是1~99之間的任意整數,

在M06之前必須有一個T碼,如果T指令和M06出現在同一程式段中,則T碼也要

寫在M06之前。

詳細說明請參閱機床使用說明書 M警告:

刀具表一定要設定正確,如果與實際不符,將會嚴重損

壞機床,並造成不可預計的後果。

參考資料:FANUC O 系列操作程式設計說明書 20 6。3

主軸轉速指令(S

程式碼)

一般機床主軸轉速範圍是20~6000r/min(轉每分)。主軸的轉速指令由S程式碼給

出,S程式碼是模態的,即轉速值給定後始終有效,直到另一個S程式碼改變模態值。主軸

的旋轉指令則由M03或M04實現。

6。4

剛性攻絲指令(M29

指令M29Sx x x x;機床進入剛性攻絲模態,在剛性攻絲模態下,Z軸的進給和主

軸的轉速建立起嚴格的位置關係,這樣,使螺紋孔的加工可以非常方便地進行。M29指

令的具體使用方法可參見“8。1。14 剛性攻絲方式”的說明。

參考資料:FANUC O 系列操作程式設計說明書 21

7。 程式結構

7。1

程式結構

早期的NC加工程式,是以紙帶為介質儲存的,為了保持與以前系統的相容性,我

們所用的NC系統也可以使用紙帶作為儲存的介質,所以一個完整的程式還應包括由紙

帶輸入輸出程式所必須的一些資訊,這樣,一個完整的程式應由下列幾部分構成:

1、紙帶程式起始符。

2、前導。

3、程式起始符。

4、程式正文。

5、註釋。

6、程式結束符。

7、紙帶程式結束符。

7。1。1 紙帶程式起始符

(Tape Start)

該部分在紙帶上用來標識一個程式的開始,符號是“%”。在機床操作面板上直接

輸入程式時,該符號由NC自動產生。

7。1。2 前導

(Leader Section)

第一個換行(LF)(ISO程式碼的情況下)或回車(CR)(EIA程式碼的情況下)前的

內容被稱為前導部分。該部分與程式執行無關。

7。1。3 程式起始符

(Program Start)

該符號標識程式正文部分的開始,ISO程式碼為LF,EIA程式碼為CR。在機床操作面板

上直接輸入程式時,該符號由NC自動產生。

7。1。4 程式正文

(Program Section)

位於程式起始符和程式結束符之間的部分為程式正文部分,在機床操作面板上直接

輸入程式時,輸入和編輯的就是這一部分。程式正文的結構請參考下一節的內容。

7。1。5 註釋

(Comment Section)

在任何地方,一對圓括號之間的內容為註釋部分,NC對這部分內容只顯示,在執

行時不予理會。

7。1。6 程式結束符

(Program End)

用來標識程式正文的結束,所用符號如下:

ISO程式碼 EIA程式碼 含義 M02LF M02CR

程式結束。 M30LF M30CR

程式結束,返回程式頭。 M99LF M99CR

子程式結束。

ISO程式碼的LF和EIA程式碼的CR,在操作面板的螢幕上均顯示為“;”。

參考資料:FANUC O 系列操作程式設計說明書 22 7。1。7 紙帶程式結束符

(Tape End)

用來標識紙帶程式的結束,符號為“%”。在機床操作面板上直接輸入程式時,該

符號由NC自動產生。

7。2

程式正文結構

7。2。1 地址和詞

在加工程式正文中,一個英 文字母被稱為一個地址,一個地址後面跟 著一個數字

就組成了一個詞。每個地址有不同的意義,它們後面所跟的數字也因此具有不同的格式

和取值範圍,參見下表:

表7。1

功能 地址 取值範圍 含義 程式號 O 1~9999

程式號 順序號 N 1~9999

順序號 準備功能 G 00~99

指定數控功能 尺寸定義 X,Y,Z ±99999。999毫米 座標位置值 R

圓弧半徑,圓角半徑

I,J,K ±9999。9999毫米 圓心座標位置值 進給速率 F

1~100,000毫米每分 進給速率 主軸轉速 S

1~4000轉每分 主軸轉速值 選刀 T 0~99

刀具號 輔助功能 M 0~99

輔助功能M程式碼號 刀具偏置號 H,D 1~200

指定刀具偏置號 暫停時間 P,X 0~99999。999秒 暫停時間(毫秒) 指定子程式號 P 1~9999

呼叫子程式用 重複次數 P,L 1~999

呼叫子程式用 引數 P,Q P為0~99999。999

Q為±99999。999毫米 固定迴圈引數 7。2。2 程式段結構

一個加工程式由許多程式段構成,程式段是構成加工程式的基本單位。程式段由一

個或更多的詞構成並以程式段結束符(EOB,ISO程式碼為LF,EIA程式碼為CR,螢幕顯示

為“;”)作為結尾。另外,一個程式段的開頭可以有一個可選的順序號N××××用

來標識該程式段,一般來說,順序號有兩個作用:一是執行程式時便於監控程式的執行

情況,因為在任何時候,程式號和順序號總是顯示在CRT的右上角;二是在分段跳轉時,

必須使用順序號來標識呼叫或跳轉位置。必須注意,程式段執行的順序只和它們在程式

儲存器中所處的位置有關,而與它們的順序號無關,也就是說,如果順序號為N20的程

序段出現在順序號為N10的程式段前面,也一樣先執行順序號為N20的程式段。如果某

一程式段的第一個字元為“/”,則表示該程式段為條件程式段,即可選跳段開關 在上

位時,不執行該程式段,而可選跳段開關在下位時,該程式段才能被執行。

參考資料:FANUC O 系列操作程式設計說明書 23 7。2。3 主程式和子程式

加工程式分為主程式和子程式,一般地,NC執行主程式的指令,但當執行到一條

子程式呼叫指令時,NC轉向執行子程式,在子程式中執行到返回指令時,再回到主程式。

當我們的加工程式需要多次執行一段同樣的軌跡時,可以將這段軌跡編成子程式存

儲在機床的程式儲存器中,每次在程式中需要執行這段軌跡時便可以呼叫該子程式。

當一個主程式呼叫一個子程式時,該子程式可以呼叫另一個子程式,這樣的情況,

我們稱之為子程式的兩重巢狀。一般機床可以允許最多達四重的子程式巢狀。在呼叫子

程式指令中,可以指令重複執行所呼叫的子程式,可以指令重複最多達999次。

一個子程式應該具有如下格式:

O××××; 子程式號

…………;

…………;

…………; 子程式內容

…………;

M99; 返回主程式

在程式的開始,應該有一個由地址O指定的子程式號,在程式的結尾,返回主程式

的指令M99是必不可少的。M99可以不必出現在一個單獨的程式段中,作為子程式的結

尾,這樣的程式段也是可以的:

G90 G00 X0 Y100。 M99;

在主程式中,呼叫子程式的程式段應包含如下內容:

M98 P×××××××;

在這裡,地址P後面所跟的數字中,後面的四位用於指定被呼叫的子程式的程式號,

前面的三位用於指定呼叫的重複次數。

M98 P51002;呼叫1002號子程式,重複5次。

M98 P1002; 呼叫1002號子程式,重複1次。

M98 P50004;呼叫4號子程式,重複5次。

子程式呼叫指令可以和運動指令出現在同一程式段中:

G90 G00 X

-75。 Y50。 Z53。 M98 P40035;

該程式段指令X、Y、Z三軸以快速定位進給速度運動到指令位置,然後呼叫執行4

次35號子程式。

包含子程式呼叫的主程式 ,程式執行順序如下例:

主程式 1 2 3 子程式

N10 ……………; O1010 ;

N20 ……………; N1020 …………;

N30 M98P21010;

N1030 ……… N40 ……………; N1040 …………;

N50 M98P1010;

N1050 …………;

N60 ……………; N1060 ……M99;

和其它M程式碼不同,M98和M99執行時,不向機床側傳送訊號。

當NC找不到地址P指定的程式號時,發出PS078報警。

參考資料:FANUC O 系列操作程式設計說明書 24 可選

跳開關置

於上位時 子程式呼叫指令M98不能在MDI方式下執行,如果需要單獨執行一個子程式,可以

在程式編輯方式下編輯如下程式,並在自動執行方式下執行。

× ×××;

M98 P××××;

M02(或M30);

在M99返回主程式指令中,我們可以用地址P來指定一個順序號,當這樣的一個

M99指令在子程式中被執行時,返回主程式後並不是執行緊接著呼叫子程式的程式段後

的那個程式段,而是轉向執行具有地址P指定的順序號的那個程式段。如下例:

主程式 子程式

N10 …………; O1010;

N20 …………; N1020 …………;

N30 M98P1010; N1030 …………;

N40 …………; N1040 …………;

N50 …………; N1050 …………;

N60 …………; N1060 …………;

N70 …………; N1070 M99 P60;

這種主-子程式的執行方式只有在程式儲存器中的程式能夠使用。

如果M99指令出現在主程式中,執行到M99指令時,將返回程式頭,重複執行該程

序。這種情況下,如果M99指令中出現地址P,則執行該指令時, 跳轉到順序號為地址

P指定的順序號的程式段。大部分情況下,我們將該功能與可選跳段功能聯合使用。如

下例:

N10…………;

N20…………;

N30…………;

/N40 M99 P20;

N50…………;

N60…………;

N70 M02;

當可選跳段開關置於下位時,跳段識別符號不起作用,M99P20被執行,跳轉到N20程

序段,重複執行N20及N30(如果M99指令中沒有P20,則跳轉到程式頭,即N10程式

段),當可選跳段開關置於上位時,跳段識別符號起作用,該程式段被跳過,N30程式段

執行完畢後執行N50程式段,直到N70M02;結束程式的執行。值得注意的一點是如果包

含M02、M30或M99的程式段前面有跳段 識別符號“/ ”,則該程式段不被認為是程式的

結束。

可選

跳開關置

於下位時

參考資料:FANUC O 系列操作程式設計說明書 25

8。 簡化程式設計功能

8。1

孔加工固定迴圈(G73,G74,G76,G80~G89)

應 用孔加工固定迴圈功能,使得其它方法需要幾個程式段完成的功能 在一個程式

段內完成。表8。1列出了所有的孔加工固定迴圈。一般地,一個孔加工固定迴圈完成以

下6步操作(見圖8。1):

1、X、Y 軸快速定位。

2、Z軸快速定位到R點。

3、孔加工

4、孔底動作。

5、Z軸返回R點。

6、Z軸快速返回初始點。

表8。1 孔加工固定迴圈

G程式碼 加工運動

(Z軸負向) 孔底動作 返回運動

(Z軸正向) 應用 G73

分次,切削進給 - 快速定位進給 高速深孔鑽削 G74

切削進給 暫停-主軸正轉 切削進給 左螺紋攻絲 G76

切削進給 主軸定向,讓刀 快速定位進給 精鏜迴圈 G80

- - - 取消固定迴圈 G81

切削進給 - 快速定位進給 普通鑽削迴圈 G82

切削進給 暫停 快速定位進給 鑽削或粗鏜削 G83

分次,切削進給 - 快速定位進給 深孔鑽削迴圈 G84

切削進給 暫停-主軸反轉 切削進給 右螺紋攻絲 G85

切削進給 - 切削進給 鏜削迴圈 G86

切削進給 主軸停 快速定位進給 鏜削迴圈 G87

切削進給 主軸正轉 快速定位進給 反鏜削迴圈 G88

切削進給 暫停-主軸停 手動 鏜削迴圈 G89

切削進給 暫停 切削進給 鏜削迴圈

參考資料:FANUC O 系列操作程式設計說明書 26 對孔加工固定迴圈指令的執行有影響的指令主要有G90/G91及G98/G99指令。圖

8。2(a)及圖8。2(b)示意了G90/G91對孔加工固定迴圈指令的影響。

G98/G99決定固定迴圈在孔加工完成後返回R點還是起始點,G98模態下,孔加工

完成後Z軸返回起始點;在G99模態下則返回R點。

一般地,如果被加工的孔在一個平整的平面上,我們可以使用G99指令,因為G99

模態下返回R點進行下一個孔的定位,而一般程式設計中R點非常靠近工件表面,這樣可以

縮短零件加工時間,但如果工件表面有高於被加工孔的凸臺或筋時,使用G99時非常有

可能使刀具和工件發生碰撞,這時,就應該 使用G98,使Z軸返回初始點後再進行下一

個孔的定位,這樣就比較安全。參見圖8。3(a)、圖8。3(b)。

G99(返回R點) G98(返回初始點)

圖8。3(a) 圖8。3(b) 下個孔定位

初始點 初始點

下個孔定位

R點 R點

在G73/G74/G76/G81~G89後面,給出孔加工引數,格式 如下:

G××X___ Y___ Z___ R___ Q___ P___ F___ K___;

重複次數

孔的加工引數

被加工孔的位置引數

孔加工方法

下面的表8。2則說明了各地址指定的加工引數的含義。

參考資料:FANUC O 系列操作程式設計說明書 27 孔加工方式 G 見表8。1 被加工孔位置引數X、Y 以增量值方式或絕對值方式指定被加工孔的位置,刀具向

被加 工 孔運動的軌跡和速度與G00 的相同。 孔加工引數Z 在絕對值方式下指定沿Z軸方向孔底的位置,增量值方式

下指 定從R點到孔底的距離。 孔加工引數R 在絕對值方式下指定沿Z軸方向R點的位置,增量值方式

下指定從初始點到R點的距離。 孔加工引數Q 用於指定深孔鑽迴圈G73和G83中的每次進刀量,精鏜循

環G76和反鏜迴圈G87中的偏移量(無論G90或G91模態,

總是增量值指令) 孔加工引數 P 用於孔底動作有暫停的固定迴圈中指定暫停時間,單位為

秒。 孔加工引數F 用於指定固定迴圈中的切削進給速率,在固定迴圈中,從

初始點到R點及從R點到初始點的運動以快速進給的速

度進行,從R點到Z點的運動以F指定的切削進給速度進

行,而從Z點返回R點的運動則根據固定迴圈的不同可能

以F指定的速率或快速進給 速率進行。 重複次數K 指定固定迴圈在當前定位點的重複次數,如果不指令K,

NC認為K=1,如果指令K0,則固定迴圈在當前點不執行。 由G××指定的孔加工方式是模態的,如果不改變當前的孔加工方式模 態或取消

固定迴圈的話,孔加工模態會一直保持下去。使用G80或01組的G指令(參見表1。1)

可以取消固定迴圈。孔加工引數也是模態的,在被改變或固定迴圈被取消之前也會一直

保持,即使孔加工模態被改變。我們可以在指令一個固定迴圈時或執行固定迴圈中的任

何時候指定或改變任何一個孔加工引數。

重複次數K不是一個模態的值,它只在需要重複的時候給出。進給速率F則是一個

模態的值,即使固定迴圈取消後它仍然會保持。

如果正在執行固定迴圈的過程中NC系統被複位,則孔加工模態、孔加工引數及重

複次數K均被取消。

下面的例子可以讓大家更好地理解以上所講的內容:

序號 程式內容 注 釋 1

S____ M03; 給出轉速,並指令主軸正向旋轉。 2

G81X__Y__Z__R__F__K__; 快速定位到X、Y指定點,以Z、R、F給定的孔加工

引數,使用G81給定的孔加工方式進行加工,並重復

K次,在固定迴圈執行的開始,Z、R、F是必要的孔

加工引數。 3

Y__; X軸不動,Y軸快速定位到指令點進行孔的加工,孔

加工引數及孔加工方式保持2中的模態值。2中的K

值在此不起作用。 4

G82X__P__K__; 孔加工方式被改變,孔加工引數Z、R、F保持模 態

值,給定孔加工引數P的值,並指定重複K次。 5

G80X__Y__; 固定迴圈被取消,除F以外的所有孔加工引數被取消。

參考資料:FANUC O 系列操作程式設計說明書 28 6

G85X__Y__Z__R__P__; 由於執行5時固定迴圈已被取消,所以必要的孔加工

引數除F之外必須重新給定,即使這些引數和原值相

比沒有變化。 7

X__Z__; X軸定位到指令點進行孔的加工,孔加工引數Z在此

程式段中被改變。 8

G89X__Y__; 定位到XY指令點進行孔加工,孔加工方式被改變為

G98。R、P由6指定,Z由7指定。 9

G01X__Y__; 固定迴圈模態被取消,除F外所有的孔加工引數都被

取消。 當加工在同一條 直線上的等分孔時,可以在G91 模態下使用K參 數,K 的最大

取值為9999。

G91 G81 X__ Y__ Z__ R__ F__ K5;

以上程式段中,X、Y給定了第一個被加工孔和當前刀具所在點的距離,各被加工

孔的位置如下圖所示:

下面我們將依次圖示並講解每個固定迴圈的執行過程。

8。1。1 G73(高速深孔鑽削迴圈)

當前刀具 所在位置 第一個被加工孔的位置 最後一個被加

工孔的位置

參考資料:FANUC O 系列操作程式設計說明書 29 在高速深孔鑽削迴圈中,從R點到Z點的進給是分段完成的,每段切削進給完成後

Z軸向上抬起一段距離,然後再進行下一段的切削進給,Z軸每次向上抬起的距離為d,

由531#引數給定,每次進給的深度由孔加工引數Q給定。該固定迴圈主要用於徑深比

小的孔(如Φ5,深70)的加工,每段切削進給完畢後Z軸抬起的動作起到了斷屑的作

用。

8。1。2 G74(左螺紋攻絲迴圈)

在使用左螺紋攻絲迴圈時,迴圈開始以前必須給M04指令使主軸反轉,並且使F與

S的比值等於螺距。另外,在G74或G84迴圈進行中,進給倍率開關和進給保持開關的

作用將被忽略,即進給倍率被保持在100%,而且在一個固定迴圈執行完畢之前不能中

途停止。

8。1。3 G76(精鏜迴圈

參考資料:FANUC O 系列操作程式設計說明書 30 主軸定向 刀具

X、Y軸定位後,Z軸快速運動到R點,

再以F給定的速度進給到Z點,然後主軸定向

並向給定的方向移動一段距離,再快速返回

初始點或R點,返回後,主軸再以原來的轉速

和方向旋轉。在這裡,孔底的移動距離由孔

加工引數Q給定,Q始終應為正值,移動的方

向由2#機床引數的4、5兩位給定。

在使用該固定迴圈時,應注意孔底移

動的方向是使主軸定向後,刀尖離開工件表

面的方向,這樣退刀時便不會劃傷已加工好

的工件表面,可以得到較好的精度和光潔度。 偏移量Q

8。1。4 G80(取消固定迴圈

G80指令被執行以後,固定迴圈(G73、G74、G76、G81~G89)被該指令取消,R點

和Z點的引數以及除F外的所有孔加工引數均被取消。另外01組的G程式碼也會起到同

樣的作用。

8。1。5 G81(鑽削迴圈

G81是最簡單的固定迴圈,它的執行過程為:X、Y定位,Z軸快進到R點,以F速

度進給到Z點,快速返回初始點(G98)或R點(G99),沒有孔底動作。 L警告:

每次使用該固定迴圈或者更換使用該固定迴圈的刀具時,應

注意檢查主軸定向後刀尖的方向與要求是否相符。如果加工過程中

出現刀尖方向不正確的情況,將會損壞工件、刀具甚至機床!

參考資料:FANUC O 系列操作程式設計說明書 31 8。1。6 G82(鑽削迴圈,粗鏜削迴圈

G82固定迴圈在孔底有一個暫停的動作,除此之外和G81完全相同。孔底的暫停可

以提高孔深的精度。

8。1。7 G83(深孔鑽削迴圈

和G73指令相似,G83指令下從R點到Z點的進給也分段完成,和G73指令不同的

是,每段進給完成後,Z軸返回的是R點,然後以快速進給速率運動到距離下一段進給

起點上方d的位置開始下一段進給運動。

每段進給的距離由孔加工引數Q給定,Q始終為正值,d的值由532#機床引數給

定。見圖8。9。

參考資料:FANUC O 系列操作程式設計說明書 32 8。1。8 G84(攻絲迴圈

G84固定迴圈除主軸旋轉的方向完全相反外,其它與左螺紋攻絲迴圈G74完全一樣,

請參考8。1。2的內容。注意在迴圈開始以前指令主軸正轉。

8。1。9 G85(鏜削迴圈

該固定迴圈非常簡單,執行過程如下:X、Y定位,Z軸快速到R點,以F給定的速度

進給到Z點,以F給定速度返回R點,如果在G98模態下,返回R點後再快速返回初始點。

8。1。10 G86(鏜削迴圈

該固定迴圈的執行過程和G81相似,不同之處是G86中刀具進給到孔底時使主軸停

止,快速返回到R點或初始點時再使主軸以原方向、原轉速旋轉。

參考資料:FANUC O 系列操作程式設計說明書 33

8。1。11 G87(反鏜削迴圈

G87迴圈中,X、Y軸定位後,主軸定向,X、Y軸向指定方向移動由加工引數Q給

定的距離,以快速進給速度運動到孔底(R點),X、Y軸恢復原來的位置,主軸以給定

的速度和方向旋轉,Z軸以F給定的速度進給到Z點,然後主軸再次定向,X、Y軸向指

定方向移動Q指定的距離,以快速進給速度返回初始點,X、Y軸恢復定位位置,主軸開

始旋轉。

該固定迴圈用於圖8。13(a)所示的孔的加工。該指令不能使用G99,注意事項同G76。

8。1。12 G88(鏜削迴圈

固定迴圈G88是帶有手動返回功能的用於鏜削的固定迴圈,參見圖8。14。

參考資料:FANUC O 系列操作程式設計說明書 34

8。1。13 G89(鏜削迴圈

該固定迴圈在G85的基礎上增加了孔底的暫停,參見圖8。15。

在以上各圖示中我們採用以下方式表示各段的進給:

表示以快速進給速率運動。

表示以切削進給速率運動。

表示手動進給。

8。1。14 剛性攻絲方式

在攻絲迴圈G84或反攻絲迴圈G74的前一程式段指令M29Sx x x x;則機床進入剛

性攻絲模態。NC執行到該指令時,主軸停止,然後主軸正轉指示燈亮,表示進入剛性攻

絲模態,其後的G74或G84迴圈被稱為剛性攻絲迴圈,由於剛性攻絲迴圈中,主軸轉速

和Z軸的進給嚴格成比例同步,因此可以使用剛性夾持的絲錐進行螺紋孔的加工,並且

還可以提高螺紋孔的加工速度,提高加工效率。

使用G80和01組G程式碼都可以解除剛性攻絲模態,另外復位操作也可以解除剛性

攻絲模態。

使用剛性攻絲迴圈需注意以下事項:

1) G74或G84中指令的F值與M29程式段中指令的S值的比

值(F/S)即為螺紋孔的螺距值。

參考資料:FANUC O 系列操作程式設計說明書 35 2) Sx x x x必須小於0617號引數指定的值,否則執行固定

迴圈指令時出現程式設計報警。

3) F值必須小於切削進給的上限值4000mm/min即引數0527

的規定值,否則出現程式設計報警。

4) 在M29指令和固定迴圈的G指令之間不能有S指令或任何

座標運動指令。

5) 不能在攻絲迴圈模態下指令M29。

6) 不能在取消剛性攻絲模態後的第一個程式段中執行S指

令。

7) 不要在試執行狀態下執行剛性攻絲指令。

8。1。15 使用孔加工固定迴圈的注意事項

1。程式設計時需注意在固定迴圈指令之前,必須先使用S和M程式碼指令主軸旋轉。

2。在固定迴圈模態下,包含X、Y、Z、A、R的程式段將執行固定迴圈,如果一個程

序段不包含上列的任何一個地址,則在該程式段中將不執行固定迴圈,G04中的地址X

除外。另外,G04中的地址P不會改變孔加工引數中的P值。

3。孔加工引數Q、P必須在固定迴圈被執行的程式段中被指定,否則指令的Q、P值

無效。

4。在執行含有主軸控制的固定迴圈(如G74、G76、G84等)過程中,刀具開始切削

進給時,主軸有可能還沒有達到指令轉速。這種情況下,需要在孔加工操作之間加入G04

暫停指令。

5。我們已經講述過,01組的G程式碼也起到取消固定迴圈的作用,所以請不要將固

定迴圈指令和01組的G程式碼寫在同一程式段中。

6。如果執行固定迴圈的程式段中指令了一個M程式碼,M程式碼將在固定迴圈執行定位

時被同時執行,M指令執行完畢的訊號在Z軸返回R點或初始點後被髮出。使用K引數

指令重複執行固定迴圈時,同一程式段中的M程式碼在首次執行固定迴圈時被執行。

7。在固定迴圈模態下,刀具偏置指令G45~G48將被忽略(不執行)。

8。單程式段開關置上位時,固定迴圈執行完X、Y軸定位、快速進給到R點及從孔

底返回(到R點或到初始點)後,都會停止。也就是說需要按迴圈起動按鈕3次才能完

成一個孔的加工。3次停止中,前面的兩次是處於進給保持狀態,後面的一次是處於停

止狀態。

9。執行G74和G84迴圈時,Z軸從R點到Z點和Z點到R點兩步操作之間如果按進

給保持按鈕的話,進給保持指示燈立即會亮,但機床的動作卻不會立即停止,直到Z軸

返回R點後才進入進給保持狀態。另外G74和G84迴圈中,進給倍率開關無效,進給倍

率被固定在100%。

參考資料:FANUC O 系列操作程式設計說明書 36

9。 刀具補償功能

9。1

刀具長度補償(G43

,G44

,G49)

使用G43(G44)H__;指令可以將Z軸運動的終點向正或負向偏移一段距離,這段

距離等於H指令的補償號中儲存的補償值。G43或G44是模態指令,H__指定的補償號也

是模態的使用這條指令,程式設計人員在編寫加工程式時就可以不必考慮刀具的長度而只需

考慮刀尖的位置即可。刀具磨損或損壞後更換新的刀具時也不需要更改加工程式,可以

直接修改刀具補償值。

G43指令為刀具長度補償+,也就是說Z軸到達的實際位置為指令值與補償值相加

的位置;G44指令為刀具長度補償-,也就是說Z軸到達的實際位置為指令值減去補償

值的位置。H的取值範圍為00~200。H00意味著取消刀具長度補償值。取消刀具長度補

償的另一種方法是使用指令G49。NC執行到G49指令或H00時,立即取消刀具長度補償,

並使Z軸運動到不加補償值的指令位置。

補償值的取值範圍是

-999。999~999。999毫米或

-99。9999~99。9999英寸。

9。2 刀具半徑補償

當使用加工中心機床進行內、外輪廓的銑削時,我們希望能夠以輪廓的形狀作為我

們的程式設計軌跡,這時,刀具中心的軌跡應該是這樣的:能夠使刀具中心在程式設計軌跡的法

線方向上距離程式設計軌跡的距離始終等於刀具的半徑。在本機床上,這樣的功能可以由G41

或G42指令來實現。

格式:G41(G42)H__;

9。2。1 補償向量

補償向量是一個二維的向量,由它來確定進行刀具半徑補償時,實際位置和程式設計位

置之間的偏移距離和方向。補償向量的模即實際位置和補償位置之間的距離始終等於指

定補償號中儲存的補償值,補償向量的方向始終為程式設計軌跡的法線方向。該程式設計向量由

NC系統根據程式設計軌跡和補償值計算得出,並由此控制刀具(X、Y軸)的運動完成補償

過程。

9。2。2 補償值

在G41或G42指令中,地址H指定了一個補償號,每個補償號對應一個補償值。補

償號的取值範圍為0~200,這些補償號由長度補償和半徑補償共用。和長度補償一樣,

H00意味著取消半徑補償。補償值的取值範圍和長度補償相同。

9。2。3 平面選擇

刀具半徑補償只能在被G17、G18或G19選擇的平面上進行,在刀具半徑補償的模

態下,不能改變平面的選擇,否則出現P/S37報警。

9。2。4 G40、G41和G42

G40用於取消刀具半徑補償模態,G41為左向刀具半徑補償,G42為右向刀具半徑

補償。在這裡所說的左和右是指沿刀具運動方向而言的。G41和G42的區別請參考圖9。1。

參考資料:FANUC O 系列操作程式設計說明書 37

9。2。5 使用刀具半徑補償的注意事項

在指令了刀具半徑補償模態及非零的補償值後,第一個在補償平面中產生運動的程

序段為刀具半徑補償開始的程式段,在該程式段中,不允許出現圓弧插補指令,否則NC

會給出P/S34號報警。在刀具半徑補償開始的程式段中,補償值從零均勻變化到給定的

值,同樣的情況出現在刀具半徑補償被取消的程式段中,即補償值從給定值均勻變化到

零,所以在這兩個程式段中,刀具不應接觸到工件。

參考資料:FANUC O 系列操作程式設計說明書 38 第二篇:NC

操作

1。 自動執行程式的操作

1。1 CRT/MDI

操作面板

操作面板由NC系統生產廠商FANUC公司提供,其中CRT是陰極射線管顯示器的英

文縮寫(Cathode Radiation Tube),而MDI是手動資料輸入的英文縮寫(Manual Date

Input)。 我們選用的是9″單色CRT全鍵式的操作面板(見附頁1 插圖)或標準鍵盤

的操作面板(見附頁2 插圖),我們可以將面板的鍵盤分為五個部分:

1。1。1 軟體鍵

該部分位於CRT顯示屏的下方,除了左右兩個箭頭鍵外來鍵面上沒有任何標識。這是

因為各鍵的功能都被顯示在CRT顯示屏的下方的對應位置,並隨著CRT顯示的頁面不同

而有著不同的功能,這就是該部分被稱為軟體鍵的原因。

1。1。2 系統操作鍵

這一組有三個鍵,分別為右上角RESET鍵,左下角的OUTPUT/START和INPUT鍵,

其中的RESET為復位鍵,OUTPUT/START為向外設輸出的指令鍵或執行MDI指令的指令鍵,

INPUT為輸入鍵。

1。1。3 資料輸入鍵

該部分包括了機床能夠使用的所有字元和數字。我們可以看到,除了“4TH”鍵外,

其餘的字元鍵都具有兩個功能,較大的字元為該鍵的第一功能,即按下該鍵可以直接輸

入該字元,較小的字元為該鍵的第二功能,要輸入該字元須先按“SHIFT”鍵(按“SHIFT”

鍵後,螢幕上相應位置會出現一個“^”符號)然後再按該鍵。例外的是“F/No。”鍵,

該鍵的第二功能“No。”在檢查各類引數、資料時使用,用於輸入資料的資料號或引數

的引數號等。另外來鍵“B/SP”中“SP”是“空格”的英文縮寫(Space),也就是說,該

鍵的第二功能是空格。

1。1。4 游標移動鍵

在MDI面板的左方,標有“CURSOR”的上下箭頭鍵(“↑”和“↓”)為游標前後

移動鍵,標有“PAGE”的上下箭頭鍵為換頁鍵。

1。1。5 編輯鍵和輸入鍵

這一組有三個鍵:ALTER、INSERT和DELETE,位於MDI面板的右上方,這三個鍵為

編輯鍵,用於編輯加工程式。

1。1。6 NC功能鍵

該組的六個鍵(標準鍵盤)或八個鍵(全鍵式)用於切換NC顯示的頁面以實現不同的

功能。

參考資料:FANUC O 系列操作程式設計說明書 39 1。1。6 電源開關按鈕

機床的電源開關按鈕位於CRT/MDI面板左側,紅色標有“OFF”(全鍵式)或標有 “斷”

(標準鍵盤)的按鈕為NC電源關斷,綠色標有“ON”(全鍵式)或標有“通”(標準鍵盤)

的按鈕為NC電源接通。

1。2 MDI

方式下執行可程式設計指令

MDI方式下可以從CRT/MDI面板上直接輸入並執行單個程式段,被輸入並執行的程

序段不被存入程式儲存器。例如我們要在MDI方式下輸入並執行程式段X-17。5 Y26。7;

操作方法如下:

1) 將方式選擇開關置為MDI。

2) 按PROGRAM鍵使CRT顯示屏顯示程式頁面。

3) 依次按X、-、1、7、。、5鍵。

4) 按INPUT鍵輸入。

5) 按Y、2、6、。、7。

6) 按INPUT鍵輸入。

7) 按迴圈起動按鈕使該指令執行。

在MDI方式下輸入指令只能一個詞一個詞地輸入。如果需要刪除一個地址後面的數

據,只需鍵入該地址,然後按CAN鍵,再按INPUT鍵即可。

1。3

自動執行方式下執行加工程式

1。3。1 啟動執行程式

首先將方式選擇開關置“自動執行”位,然後選擇需要執行的加工程式(方法見本

篇“3。2節搜尋並調出程式”),完成上述操作後按迴圈起動按鈕。

1。3。2 停止執行程式

當NC執行完一個M00指令時,會立即停止,但所有的模態資訊都保持不變,並點

亮主操作面板上的M00/M01指示燈,此時按迴圈起動按鈕可以使程式繼續執行。當M01

開關置有效位時,M01會起到同M00一樣的作用。

M02和M30是程式結束指令,NC執行到該指令時,停止程式的執行併發出復位訊號。

如果是M30,則程式還會返回程式頭。

按進給保持按鈕也可以停止程式的執行,在程式執行中,按下進給保持按鈕使迴圈

起動燈滅,進給保持的紅色指示燈點亮,各軸進給運動立即減速停止,如果正在執行可

程式設計暫停,則暫停計時也停止,如果有輔助功能正在執行的話,輔助功能將繼續執行完

畢。此時按迴圈起動按鈕可使程式繼續執行。

按RESET鍵可以使程式執行停止並使NC復位。

參考資料:FANUC O 系列操作程式設計說明書 40

2。 程式驗證和安全功能

2。1

程式驗證功能

2。1。1 機床閉鎖

關於機床閉鎖功能的說明請參考機床“機床使用說明書”中有關機床閉鎖開關的說

明。在機床閉鎖功能有效的情況下,M、S、T指令仍然能夠執行,但由於G指令不被真

的 執行,所以程式執行到M06換刀指令時會停止並等待Z軸的零點或第二參考點到達

訊號 , 使程式不能夠繼續執行。

使用該功能可以根據座標位置的顯示驗證程式的正確性。

2。1。2 Z軸閉鎖

請參考“機床使用說明書”中關於Z軸閉鎖開關的說明。

2。1。3 自動進給的倍率

在使用新程式加工零件時,您可能會發現有些地方的進給速度不合適,那麼,使用

該功能可以立即改變進給的速度,實際的進給速度是程式設計進給率與倍率的乘積,倍率值

可以是0%~150%,變化間隔為10%。

2。1。4 快速進給的倍率

參考“機床使用說明書”中關於快速倍率開關的內容。

2。1。5 試執行

參考“機床使用說明書”中關於試執行開關的說明。使用該功能,可以在 刀具

和不夾工件的情況下直觀地看到機床的執行情況。

2。1。6 單程式段執行

參考“機床使用說明書”中關於單程式段開關的內容。

2。2

安全功能

2。2。1 緊急停止

參考“機床使用說明書”中關於急停開關的內容。建議除非發生緊急情況,一般不

要 使用該按鈕。

2。2。2 超程檢查

在X、Y、Z三軸返回參考點後,機床座標系被建立,同時引數給定的各軸行程極限

變為有效,如果執行試圖超出行程極限的操作,則運動軸到達極限位置時減速停止,並

給出軟極限報警。需手動使該軸離開極限位置並按復位鍵後,報警才能解除。該極限由

NC直接監控各軸位置來實現,稱為軟極限。

在各軸的正負向行程軟極限外側,由行程極限開關和撞塊構成的超程保護系統被稱

為硬極限,當撞塊壓上硬極限開關時,機床各軸迅速停止,伺服系統斷開,NC給出硬極

限報警。此時需在手動方式下按住超程解除按鈕,使伺服系統通電,然後繼續按住超程

解除按鈕並手動使超程軸離開極限位置。

參考資料:FANUC O 系列操作程式設計說明書 41

3。 零件程式的輸入、編輯和儲存

3。1

新程式的註冊

向NC的程式儲存器中加入一個新的程式號的操作稱為程式註冊,操作方法如下:

1) 方式選擇開關置“程式編輯”位。

2) 程 序 保 護 鑰 匙開關置“解除”位。

3) 按PROGRAM鍵。

4) 鍵入地址O(按O鍵)。

5) 鍵入程式號(數字)。

6) 按INSERT鍵。

3。2

搜尋並調出程式

有兩種方法。第一種:

1) 方式選擇開關置“程式編輯”或“自動執行” 位。

2) 按PROGRAM鍵。

3) 鍵入地址O(按O鍵)。

4) 鍵入程式號(數字)。

5) 按向下游標鍵(標有CURSOR的↓鍵)

6) 搜尋完畢後,被搜尋程式的程式號會出現在螢幕的右上

角。如果沒有找到指定的程式號,會出現報警。

第二種方法:

1) 方式選擇開關置“程式編輯”位。

2) 按PROGRAM鍵。

3) 鍵入地址O(按O鍵)。

按向下游標鍵(標有CURSOR的↓鍵),所有註冊的程式會依次被顯示在螢幕上。

3。3

插入一段程式

該功能用於輸入或編輯程式,方法如下:

1) 用6。2節所述方法調出需要編輯或輸入的程式。

2) 使用翻頁鍵(標有PAGE的↑↓鍵)和上下游標 鍵(標有

CURSOR的↑↓鍵)將游標移動到插入位置的前一個詞下。

3) 鍵入需要插入的內容。此時鍵入的內容會出現在螢幕下

方,該位置被稱為輸入快取區。

4) 按INSERT鍵,輸入快取區的內容被插入到游標 所在的詞

的後面,游標則移動到被插入的詞下。

當輸入內容在輸入快取區時,使用CAN鍵可以從游標所在位置起一個一個地向前刪

除字元。程式段結束符“;”使用EOB鍵輸入。

3。4

刪除一段程式

1) 用6。2節所述方法調出需要編輯或輸入的程式。

參考資料:FANUC O 系列操作程式設計說明書 42 2) 使用翻頁鍵(標有PAGE的↑↓鍵)和上下游標 鍵(標有

CURSOR的↑↓鍵)將游標移動到需要刪除內容的第一個

詞下。

3) 鍵入需要刪除內容的最後一個詞。

4) 按DELETE鍵,從游標所在位置開始到被鍵入的詞為止的

內容全部被刪除。

不鍵入任何內容直接按DELETE鍵將刪除游標所在位置的內容。如果被鍵入的詞在

程式中不只一個,被刪除的內容到距離游標最近的一個詞為止。如果鍵入的是一個順序

號,則從當前游標所在位置開始到指定順序號的程式段都被刪除。鍵入一個程式號後按

DELETE鍵的話,指定程式號的程式將被刪除。

3。5

修改一個詞

1) 用6。2節所述方法調出需要編輯或輸入的程式。

2) 使用翻頁鍵(標有PAGE的↑↓鍵)和上下游標 鍵(標有

CURSOR的↑↓鍵)將游標移動到需要被修改的詞下。

3) 鍵入替換該詞的內容,可以是一個詞,也可以是幾個詞甚

至幾個程式段(只要輸入快取區容納得下的話)。

4) 按ALTER鍵,游標所在 位 置的詞將被輸入快取 區的內

容替代。

3。6

搜尋一個詞

1) 方式選擇開關置“ 程 序 編 輯”或“ 自 動 運 行”位。

2) 調出需要搜尋的程式。

3) 鍵入需要搜尋的詞。

4) 按向下游標鍵(標有CURSOR的↓鍵)向後搜尋或按向上

游標鍵(標有CURSOR的↑鍵)向前搜尋。遇到第一個與

搜尋內容完全相同的詞後,停止搜尋並使游標停在該詞下

方。

參考資料:FANUC O 系列操作程式設計說明書 43

4。 資料的顯示和設定

4。1

刀具偏置值的顯示和輸入

1) 按OFFSET鍵,顯示出刀具偏置頁面(如果顯示的不是刀

具偏置可以再按軟體鍵 “補 償”)

2) 使用翻頁鍵(標有PAGE的↑↓鍵)和上下游標 鍵(標有

CURSOR的↑↓鍵)將游標移動到需要修改或需要輸入的

刀具偏置號前面。

3) 鍵入刀具偏置值。

4) 按INPUT鍵,偏置值被輸入。

按F/NO。鍵後鍵入刀具偏置號,再按INPUT鍵,可以直接將游標移動到指定的刀具

偏置號前。( 注 意NO。 鍵 和 字 符L、Q、P 是 復 用 的)。

4。2 G54~G59

工件座標系的顯示和輸入

1) 按OFFSET鍵,顯示出工件座標系頁面(如果顯示的不是

工件座標系可以再按軟體鍵 “坐 標”)

2) 使用翻頁鍵(標有PAGE的↑↓鍵)和上下游標 鍵(標有

CURSOR的↑↓鍵)將游標移動到需要修改或需要輸入的

位置。

3) 鍵入設定值。

4) 按INPUT鍵,設定值被輸入。

4。3 NC

引數的顯示和設定

NC引數的第一、二頁為設定引數,沒有引數號。其內容如下:

REVX、REVY:分別設定X、Y軸的映象狀態。設0為映象OFF,設1為ON。

TVON:設定程式和引數輸入或輸出是否進行TV校驗。1為校驗,0為不校驗。

ISO:設定程式和引數輸入/輸出採用的編碼。0為EIA碼,1為ISO碼。

INCH:設定單位制。設1使用英制,設0使用公制。(不用)。

ABS:設定MDI方式下所使用的指令方式。0為增量值指令,1為絕對值指令。

SEQ:設定程式編輯狀態下是否自動插入順序號。0為不插入,1為插入。

顯示和設定引數的方法如下:

1) 方式選擇開關置MDI位。

2) 按PARAM鍵。此時如果顯示的不是引數頁,可 以按軟體

鍵“引數”,顯示屏上將顯示第一頁設定引數。

3) 將游標移動到需要修改的引數號前。

4) 鍵入設定值,按INPUT鍵。

對於第一、二頁的設定引數,可以使用游標上下鍵選擇需要修改的引數然後直接輸

入設定值即可。而對於其它引數來說,必須首先將設定引數PWE改為1,PWE改為1後

NC會給出P/S100號報警,提示引數被修改。PWE置1後,使用PARAM鍵翻回引數頁面,

按NO。鍵並鍵入引數號再按INPUT鍵可將游標移 動到需要修改的引數號前,這時就可以

鍵入引數值再按INPUT鍵將引數修改完畢,對於有些引數來說,修改後還會出現P/S000

參考資料:FANUC O 系列操作程式設計說明書 44 號報警,這說明必須斷電後 重新上電才能使引數生效。將所有需要修改的引數修改完

畢後按軟體鍵“引數”使頁面回到設定引數的第一頁,將PWE改回0,再按RESET鍵可

以使P/S100號報 警消除,如果還有P/S000號報警的話,則必須斷電後再重新上電才

能夠解除 報警。

4。4

刀具表的修改

1) 方式選擇開關置MDI位。

2) 按PARAM鍵。再按軟體鍵“診斷”,顯示屏上將顯 示PMC

狀態/引數頁。

3) 按NO。鍵,然後鍵入刀具所在引數號如420(依據機床型號

不同而定),再按INPUT鍵,這時就可以看到PMC引數中的

刀具表部分。如果此時已經將PWE置為1的話,就可以直

接修改刀具表了。

刀具表引數的詳細說明請參考機床使用說明書”。

M警告:

刀具表一定要設定正確,如果與實際不符,將可能嚴重

損壞機床、刀具、夾具或工件,並造成不可預計的後果。

參考資料:FANUC O 系列操作程式設計說明書 45

5。 顯示功能

5。1

程式顯示

當前的程式號和順序號始終被顯示在顯示屏的右上角,除了MDI以外的其它方式

下,按PROGRAM鍵都可以看到當前程式的顯示。

在程式編輯方式下,按PROGRAM鍵選擇程式顯示功能。這時按“LIB”軟體鍵可以

看到程式目錄的顯示,在程式目錄顯示的時候按“程式”軟體鍵可以顯示程式文字。

顯示程式目錄時,我們同時可以看到程式儲存器的使用情況:

PROGRAM NO。 USED:已被使用的程式號。

FREE:剩餘的可用的程式號的數量。

MEMORY ARER USED:被使用的儲存器空間。

FREE:剩餘可用的儲存器空間的數量。

5。2

當前位置顯示

位置的顯示有三種方式,分別為絕對位置顯示、相對位置顯示和機床座標系位置顯

示。

絕對位置顯示給出了刀具在工件座標系中的位置。

相對位置值可以由操作復位為零,這樣可以方便地建立一個觀測用的座標系。復位

方法是:按X、Y、Z鍵,螢幕上相應的地址會閃爍,再按CAN鍵,閃爍的地址後面的坐

標值就會變為零。

機床座標系位置顯示給出了刀具在機床座標系中的位置。

在有位置顯示的頁面下,按“絕對”軟體鍵,將以大字顯示絕對位置;按“相對”

軟體鍵,將以大字顯示相對位置;按“ALL”軟體鍵可以使三種位置方式同時在螢幕上

以小字顯示。在MDI或自動執行方式下,我們會看到螢幕上還有另外一種位置顯示,該

欄顯示的是各軸的剩餘運動量,即當前位置到指令位置的距離。

按“POS”鍵會使位置顯示變為全螢幕方式。

參考資料:FANUC O 系列操作程式設計說明書 46

6。線上加工功能

6。1

有關引數的修改:

(一般出廠前已設定)

在使用線上加工功能之前,首先對下列引數進行檢查:

A:NO2。7予置為”1”

B:NO12。7予置為”1”

C:NO552予置為”10”

D:NO553予置為”10”

由於使用了軟體操作面板上的開關,因此對有關引數進行檢查:

A:NO140予置為”79”

B:NO141予置為”78”

C:NO142予置為”32”

D:NO143予置為”76”

E:NO144予置為”73”

F:NO145予置為”78”

G:NO146予置為”69”

6。2

有關線上加工的操作。

(1)在軟體操作面板上設定線上加工有效。

按NC功能鍵OPR/ALARM然後在按軟體鍵OPR會在CRT顯示屏上右下方的位置看到

以 下內容:

在此操作面板上設定了線上加工的選擇開關,游標所在的位置可以看作是該開關的

狀 態,當使用此功能時,開關的狀態在ON的位置。

(2)線上加工的操作。

首先透過操作面板送入一個空程式號,將方式選擇開關置為AUTO自動方式,開啟

程式保護鎖,當加工程式透過RS232口準備傳送時,按下機床主操作面板上的迴圈啟動

按鈕,確定所要加工的程式,加工程式則邊傳送邊加工。在這種功能方式下加工程式不

佔儲存器記憶體,如再次加工時,需重新操作。

注:若線上加工程式中含子程式,則子程式必須預先寫入機床儲存器中。

OPERATOR’S PANEL

ON LINE : OFF ON

參考資料:FANUC O 系列操作程式設計說明書 47

7。機床引數的輸入 ﹑輸出

機床側設定為:I/O=0 ISO=1 引數 002BIT0=1 552=10

計算機側設定為:波特率(Baud Rate)為4800,資料位(Data bits)為7位,停止

位(Stop Bits)為2位,流程控制(Flow Control)為Xon/Xoff,奇偶校驗(Parity)為偶

校驗(Even)。

將機床操作方式轉換為EDIT 方式,在機床MDI鍵盤上按PRGRM鍵轉到程式頁面。

按MDI鍵盤上的INPUT鍵,此時CRT右下角顯示閃爍的“標頭SKP”字樣,說明NC

已經準備好接收。

啟動計算機的Windows3。x或Window95

l

開啟Windows3。x中的“附件”(Accessories)組,啟動其中的“終

端模擬”(Terminal)。選擇“傳輸”選單中“傳送文字檔案”啟動傳

輸程式,開始傳輸。

l

開啟WIN95,用工具欄中的"查詢"查找出Terminal。exe檔案並打

開此檔案。選擇“傳輸”選單中“傳送文字檔案”啟動傳輸程式,

開始傳輸。

傳輸電纜的接線圖如下:

9針側 25針側

為防止在意外情況下的引數丟失,建議使用者在機床安裝除錯完畢後及時使用計算機

對NC引數進行備份。進行該工作可以使用任何一種序列通訊軟體,最常見的是

MS-Windows3。x中的標準附件“終端模擬”(Terminal)。具體作法如下:

將標準9針-25針序列電纜聯接在NC和計算機之間。

將計算機(最好是筆記本式)開啟並啟動Windows3。x或Window95。

機床上電。

l

開啟Windows3。x中的“附件”(Accessories)組,啟動其中的“終端模擬”

(Terminal)。

l

開啟WIN95,用工具欄中的"查詢"查找出Terminal。exe檔案

並開啟此檔案。

選“設定”(Settings)選單,“通訊”(Communications)子選單,設定波特率

(Baud Rate)為4800,資料位(Data bits)為7位,停止位(Stop Bits)為2位,流程控

制(Flow Control)為Xon/Xoff,奇偶校驗(Parity)為偶校驗(Even)。設定完畢後按OK

結束設定。

參考資料:FANUC O 系列操作程式設計說明書 48 選“傳送”(Transfers)選單,“接收文字檔案”(Receive Text File),在文

件名(File Name)一欄中指定檔名,並按OK。此時計算機已經準備好接收。

在機床MDI鍵盤上按PARAM鍵轉到引數頁面,並將方式選擇開關置於“程式編輯”

位。

按機床MDI鍵盤上的OUTPUT/START鍵,此時CRT右下角顯示閃爍的OUTPUT字樣。

計算機“終端模擬”(Terminal)的視窗下方Bytes:一欄中顯示已經接收到的資料的字

節數,表明傳送過程正在順利進行。

機床CRT右下角閃爍顯示的OUTPUT字樣消失後說明傳送完畢,按計算機“終端仿

真”(Terminal)的視窗左下方的“停止”(Stop),整個傳送過程結束。

如果是希望將計算機內的引數傳送至NC,則按上述方法進行到第5步,然後按以

下方法進行。

在機床MDI鍵盤上按PARAM鍵轉到引數頁面,在MDI方式下將引數PWE置“1”,

然後將方式選擇開關置於“程式編輯”位,重新將CRT畫面轉到引數頁面。

按MDI鍵盤上的INPUT鍵,此時CRT右下角顯示閃爍的“標頭SKP”字樣,說明NC

已經準備好接收。

選“傳送”(Transfers)選單,“傳送文字檔案”(Send Text File),在檔案

名(File Name)一欄中指定引數檔案的檔名,注意將選擇視窗右下角的兩個選擇框

清除(變成空白),按OK。

此時計算機“終端模擬”(Terminal)的視窗下方顯示的標尺指示已傳送的資料量。

機床NC的CRT右下角閃爍顯示的“標頭SKP”字樣變為“INPUT”,表明傳送過程正在

順利進行。

計算機“終端模擬”(Terminal)的視窗下方顯示的標尺填滿整個標尺框,並最終

消失後,說明引數傳送完畢。

在計算機記憶體儲的檔案為文字格式的檔案,但包含一些其他字元,該檔案經編輯加

工後就成為我們所看到的引數表。

電纜焊接圖如下:

9針側 25針側

參考資料:FANUC O 系列操作程式設計說明書 49 8。

使用者宏B

功能

使用子程式程式設計可以重複同樣的操作,簡化程式的書寫工作,但是使用者宏B提供了

更豐富的程式設計功能,它允許使用變數、算術和邏輯操作及條件分支,使得使用者可以自行

編輯軟體包、固定迴圈程式。

8。1變數

8。1。1

變數概述

一個普通的零件加工程式指定G碼並直接用數字值表示移動的距離,例:G100

X100。0。而利用使用者宏,既可以直接使用數字值也可以使用變數號。當使用變數號時,

變數值既可以由程式改變,也可以用MDI面板改變。

#1=#2+100

G01 X#1 F300 變數書寫規格:

當指定一個變數時,在#後指定變數號。個人計算機允許賦名給變數,宏沒有此功

能。

例:#1

也可以用表示式指定變數號,這時表示式要用方括號括起來。例:#[#1+#2—12]

變數值的範圍:

地方變數和公共變數可以有值0和在下述範圍內的值:

-1047

~-10—19

;10—29

~1047

,如果計算結果無效,發出111號報警。

忽略小數點:

在程式中定義變數時,可以忽略小數點。例:當#1=123被定義時,變數#1的實際

值為123。000。

未定義的變數:

當變數的值未定義時,這樣的一個變數被看作“空”變數,變數#0總是“空”變

量,是一個只讀變數。

變數的型別:

根據變數號將變數分為四類,見下表:

變數號 變數型別 功能 #0 “空” 這個變數總是空的,不能賦值。 #1~#33 地方變數 地方變數只能在宏中使用,以保持操作的結果,關閉電

源時,地方變數被初始化成“空”。宏呼叫時,自變數分

配給地方變數。 #100~#149 (#199 )

#500~#531 (#999 ) 公共變數 公共變數可在不同的宏程式間共享。關閉電源時變數

#100~#149被初始化成“空”,而變數#500~#531保持數

參考資料:FANUC O 系列操作程式設計說明書 50 據。公共變數#150~#199和#532~#999可以選用,但是當

這些變數被使用時,紙帶長度減少了8。5米。 #1000~ 系統變數 系 統變 量用於 讀寫各種 NC 資料項, 如 當前 位置、 刀具 補 償 值 。 引用變數:

為了在程式中引用變數,指定一個字地址其後跟一個變數號。當用表示式指定一個

變數時,須用方括號括起來。例:G01 X[#1+#2] F#3。引用的變數值根據地址的最小輸

入增量自動進行四捨五入。例:G00 X#1;其中#1值為12。3456,CNC最小輸入增量

1/1000mm,則實際命令為G00 X12。346。為了將引用的變數值的符號取反,在#號前加“—”

號。 例:G00 X—#1;當引用一個未定義的變數時,忽略變數及引用變數的地址。

例:#1=0 ,#2=“空”, 則G00 X#1 Y#2;的執行結果是G00 X0;

顯示變數值:

1)按鍵 MENU

OFFSET 顯示刀具補償頁面

2)按軟鍵[MACRO]顯示宏變數頁面

3)按NO。鍵後,輸入一個變數號,然後按INPUT鍵,將游標移到輸入的變數號的位置。

☆當變數值空白時,變數為空。

☆********表示溢位(即變數的絕對值大於99999999或小於0。0000001)。

注意:

程式號、順序號、任選段跳躍號不能使用變數。例:變數不能用於下列方法

O#1;

/#2G00 X100。0;

N#3 Y200。0;

8。1。2系統變數

系統變數能用來讀寫內部NC資料,如刀具補償值和當前位置資料。然而,注意:

有些系統變數是隻讀變數。對於擴充套件自動化操作和一般的程式,系統變數是必須的。

刀具補償值:

使用這類系統變數可以讀寫刀具補償值。可用的變數數取決於能使用的補償對數,

當補償對數不大於200時,可以用變數#2001~#2400。

用於刀具補償記憶體A的系統變數

補償號 系統變數 1

200 #10001(#2001)

#10200(#2200) 用於刀具補償記憶體B的系統變數

補償號 幾何補償 磨損補償 1 #11001(#2201) #10001(#2001)

參考資料:FANUC O 系列操作程式設計說明書 51 :

200 :

#11200(#2400) :

#10200(#2200) 宏報警:

用於宏報警的系統變數:

變數號 功能 #3000 當#3000中有0~99間的某一值時,NC停止並顯示報

警資訊。報警資訊不超過26個字元, 例:#3000=1(TOOL NOT FOUND);

報警螢幕顯示“3001 TOOL NOT FOUND。”

時間資訊:

時間資訊可以讀寫。

用於時間資訊的系統變數:

變數號 功能 #3001 這個變數是一個以1毫秒為增量一直記數的記時器,上電或達到

65535毫秒時復值為0。 #3002 這個變數是一個以1小時為增量、當迴圈啟動燈亮時記數的記時

器,電源關閉後記時器值依然保持,達到1145324。612小時時復

值為0。 #3011 這個變數用於讀當前年/月/日資料,該資料以十進位制數顯示。例:

March 28,1993表示成19930328。 #3012 這個變數用於讀當前時/分/秒資料,該資料以十進位制數顯示。例:

下午3點34分56秒錶示成153456。

自動操作控制:

自動操作的控制狀態可以改變。

自動操作控制的系統變數#3003

#3003

單段 輔助功能的完成 0

使能 要等待 1

無效 要等待 2

使能 不要等待 3

無效 不要等待 ☆上電時該變數值為0。

☆當不能執行單段停止時,單段停止操作不能執行,即使單段開關有效。

☆當沒有指定是否等待輔助功能(M、S、T)完成時,在輔助功能完成之前,程式

執行到下一段,定位完成訊號DEN不發出。

自動操作控制的系統變數#3004

參考資料:FANUC O 系列操作程式設計說明書 52 #3004

進給保持 進給倍率 精確停止 0

使能 使能 使能 1

無效 使能 使能 2

使能 無效 使能 3

無效 無效 使能 4

使能 使能 無效 5

無效 使能 無效 6

使能 無效 無效 7

無效 無效 無效

☆上電時該變數值為0。

☆當不能執行進給保持時:

進給保持按鈕按下並保持時,機床以單段停止方式停止,但單段方式若因變

量#3003而無效時,不執行單段停止操作。

進給保持按鈕按下又釋放時,進給保持燈亮,但機床不停止;程式繼續進行,

機床停在最先含有進給保持使能的段。

☆當進給倍率無效時,倍率定在100%,忽略機床操作面板上的倍率開關。

☆當精確停止無效時不執行精確停止檢查(定位檢查),即使是包含有不執行切削

的段。

參考資料:FANUC O 系列操作程式設計說明書 53 設定:

設定變數#3005可以讀寫,並且二進位制值轉換成十進位制。

#3005 #15 #14 #13 #12 #11 #10 #9 #8 設定 TAPE REV4

#7 #6 #5 #4 #3 #2 #1 #0 設定

SEQ ABS

INCH ISO TVON REVY REVX

REVX:X—軸鏡象on/off

REVY:Y—軸鏡象 on/off

TVON:TV 檢查 on/off

ISO: 輸出碼EIA/ISO

INCH: 公制/英制輸入

ABS: 相對值/絕對值程式設計

SEQ: 順序號自動插入on/off

REV4: 第四軸鏡象on/off

TAPE: F10/11 紙帶格式 on/off 零件數:

需要加工的零件數變數#3902和已加工的零件數變數#3901可以被讀寫。見下表:

變數號 功能 #3901

已加工的零件數 #3902

需要加工的零件數 注:不能使用負數。

模資訊:

段中指定的模資訊可以讀出。見下表:

變數號 功能 #4001

G00,G01,G02,G03,G33 (01組) #4002

G17,G18,G19 (02組) #4003

G90,G91 (03組) #4004

(04組) #4005

G94,G95 (05組) #4006

G20,G21 (06組) #4007

G40,G41,G42 (07組) #4008

G43,G44,G49 (08組) #4009

G73,G74,G76,G80~G89 (09組) #4010

G98,G99 (10組) #4011

G50,G51 (11組) #4012

G65,G66,G67 (12組) #4014 G54~G59

(14組) #4015 G61~G64

(15組)

參考資料:FANUC O 系列操作程式設計說明書 54 #4016

G68,G69 (16組) : : #4022

(22組) #4102

B碼 #4107

D碼 #4109

F碼 #4111

H碼 #4113

M碼 #4114

順序號 #4115

程式號 #4119

S碼 #4120

T碼 例:當執行#1=#4001時,#1=0,1,2,3或33

當前位置:

位置資訊變數不能寫只能讀。見下表:

變數號 位置資訊 座標系 刀具 補償值 移動期間的讀操作 #5001~#5004 段結束點

工件座標系

不包括 使能 #5021~#5024 當前位置

機床座標系

#5041~#5044 當前位置 無效 #5061~#5064 跳段訊號位置 工件座標

系 包括

使能 #5081~#5084 刀偏值 #5101~#5104 偏差的伺服位置 無效 ☆首位數(從1~ 4)分別代表軸號,數1代表X軸,數2代表Y軸,數3代表Z

軸,數4代表第四軸。

☆執行當前的刀偏值,而不是立即執行保持在變數#5081~#5088裡的值。

☆在含有G31(跳段)的段中發出跳段訊號時,刀具的位置保持在變數#5061~#5068

裡,如果不發出跳段訊號,指定段的結束點位置保持在這些變數中。

☆移動期間讀變數無效時,表示由於緩衝(準備)區忙,所希望的值不能讀。

工件座標系補償值(工件零點偏置值):

工件零點偏置值變數可以讀寫,見下表:

變數號 功能 #5201~#5204

第一軸外部工件零點偏置值~第四軸外部工件零點偏置值 #5221~#5224

第一軸G54工件零點偏置值~第四軸G54工件零點偏置值 #5241~#5244

第一軸G55工件零點偏置值~第四軸G55工件零點偏置值 #5261~#5264

第一軸G56工件零點偏置值~第四軸G56工件零點偏置值 #5281~#5284

第一軸G57工件零點偏置值~第四軸G57工件零點偏置值 #5301~#5304

第一軸G58工件零點偏置值~第四軸G58工件零點偏置值 #5321~#5324

第一軸G59工件零點偏置值~第四軸G59工件零點偏置值 #7001~#7004

第一軸工件零點偏置值(G54P1)~第四軸工件零點偏置值 #7021~#7024

第一軸工件零點偏置值(G54P2)~第四軸工件零點偏置值

參考資料:FANUC O 系列操作程式設計說明書 55 : #7941~#7944

第一軸工件零點偏置值(G54P48)~第四軸工件零點偏置值 注:對於工件座標系,變數#5201~#5328是可選變數。

對於附加的48工件座標系,變數#7001~#7948(G54P1~G54P48) 是可選變數。

8。2算術和邏輯操作

在下表中列出的操作可以用變數進行。運算子右邊的表示式,可以含有常數和(/

或)由一個功能塊或運算子組成的變數。表示式中的變數#J和#K可以用常數替換。左

邊的變數也可以用表示式替換。見下表:

功能 格式 註釋 賦值 #i=#j 加 #i=#j+#k 減 #i=#j—#k 乘 #i=#j*#k 除 #i=#j/#k 正弦 #i=SIN[#j] 餘弦 #i=COS[#j] 正切 #i=TAN[#j] 反正切 #i=ATAN[#j] 角度以度為單位,如:90度30分

表示成90。5度 平方根 #i=SQRT[#j] 絕對值 #i=ABS[#j] 進位 #i=ROUND[#j] 下進位 #i=FIX[#j] 上進位 #i=FUP[#j] OR(或) #i=#jOR#k XOR(異或) #i=#jXOR#k AND(與) #i=#jAND#k 用二進位制數按位進行邏輯操作。 將BCD碼轉換成BIN碼 #i=BIN[#j] 將BIN碼轉換成BCD碼 #i=BCD[#j] 用於與PMC間訊號的交換。 角單位:

在SIN,COS,TAN,ATAN中所用的角度單位是度。

ATAN功能:

在ATANT之後的兩個變數用“/”分開,結果在0°和360°之間。

例:當#1=ATANT[1]/[—1]時,#1=135。0

ROUND功能:

☆當ROUND功能包含在算術或邏輯操作、IF語句、WHILE語句中時,將保留小數點

後一位,其餘位進行四捨五入。

例:#1=ROUND[#2];其中#2=1。2345,則#1=1。0

☆當ROUND出現在NC語句地址中時,進位功能根據地址的最小輸入增量四捨五入

指定的值。

參考資料:FANUC O 系列操作程式設計說明書 56 例:編一個程式,根據變數#1、#2的值進行切削,然後返回到初始點。假定增量

系統是1/1000mm,#1=1。2345,#2=2。3456

則 G00 G91 X—#1; 移動1。235mm

G01 X—#2 F300; 移動2。346mm

G00 X[#1+#2]; 因為1。2345+2。3456=3。5801移動3。580mm,不能返回

到初始位置。而換成G00X[ROUND[#1]+ROUND[#2]]能返回到初始點。

上進位和下進位成整數:

例:#1=1。2、#2=—1。2

則:#3=FUP[#1],結果#3=2。0

#3=FIX[#1],結果#3=1。0

#3=FUP[#2],結果#3=—2。0

#3=FIX[#2],結果#3= —1。0

算術和邏輯操作的縮寫方式:

取功能塊名的前兩個字元,例:ROUNDà

RO。

操作的優先權:

①功能塊。

如乘除(*,/,AND,MOD)這樣的操作。

如加減(+,—,OR,XOR)這樣的操作。

方括號巢狀:

方括號用於改變操作的順序。最多可用五層,超出五層,出現118號報警。

注意:

方括號用於封閉表示式,圓括號用於註釋。

除數:

如果除數是零或TAN[90],則會產生112號報警。

8。3分支和迴圈語句

在一個程式中,控制流程可以用GOTO、IF語句改變。有三種分支迴圈語句如下:

☆ GOTO語句(無條件分支);

☆ IF語句(條件分支:if…,then…);

☆ WHILE語句(迴圈語句while…)。

8。3。1無條件分支(GOTO語句)

功能 轉向程式的第N句。當指定的順序號大於1~9999時,出現128號報警,順

序號可以用表示式。

格式 GOTO n; n是順序號(1~9999)

參考資料:FANUC O 系列操作程式設計說明書 57 8。3。2條件分支(IF 語句)

功能 在IF後面指定一個條件表示式,如果條件滿足,轉向第N句,否則執行

下一段。

格式 IF [條件表示式] GOTO n;

其中:

條件表示式 一個條件表示式一定要有一個運算子,這個運算子插在兩個變數或一個

變數和一個常數之間,並且要用方括號括起來,既[表示式 運算子 表

達式]。

運算子見下表:

運算子 意義 EQ = NE ≠ GT > GE ≥ LT < LE ≤ 8。3。3迴圈(WHILE語句)

功能 在WHILE 後指定一個條件表示式,條件滿足時,執行DO到END之間的語句,

否則執行END後的語句。

格式 WHILE [條件表示式] DO m;(m=1,2,3)

END m;

m只能在1、2、3中取值,否則出現126號報警。

巢狀 ①數1~3可以多次使用。

②不能交叉執行DO語句,如下的書寫格式是錯誤的:

WHILE […] DO 1;

過程 WHILE […] DO 2;

: 過程 :

END 1;

END 2;

③巢狀層數最多3級。

參考資料:FANUC O 系列操作程式設計說明書 58 ④如下的書寫格式是正確的:

WHILE […] DO 1;

IF […] GOTO n;

END 1;

N n…;

⑤如下的書寫格式是錯誤的:

IF […] GOTO n;

WHILE […] DO 1;

N n…;

END 1;

8。3。4 注意

無限迴圈 指定了DO m而沒有WHILE語句,迴圈將在DO和END之間無限期執行下去。

執行時間 程式執行GOTO分支語句時,要進行順序號的搜尋,所以反向執行的時間

比正向執行的時間長。可以用WHILE

語句減少處理時間。

未定義的變數 在使用EQ或NE的條件表示式中,空值和零的使用結果不同。而含

其它運算子的條件表示式將空值看作零。

8。4宏呼叫

可以用下列方式呼叫宏程式:

簡單呼叫 G65

模呼叫 G66、G67

G碼宏呼叫

M碼宏呼叫

G碼子程式呼叫

M碼子程式呼叫 宏呼叫和子程式呼叫之間的區別:

☆ 用G65,可以指定一個自變數(傳遞給宏的資料),而M98沒有這個功能。

☆ 當M98段含有另一個NC語句時(如:G01 X100。0M98Pp),則執行命令之後調

用子程式,而G65無條件呼叫一個宏。

☆ 當M98段含有另一個NC語句時(如:G01 X100。0M98Pp),在單段方式下機床

停止,而使用G65時機床不停止。

☆ 用G65地方變數的級要改變,而M98不改變。

8。4。1 簡單呼叫(G65)

功能 G65被指定時,地址P所指定的使用者宏被呼叫,資料(自變數)能傳遞到用

戶宏程式中。

參考資料:FANUC O 系列操作程式設計說明書 59 格式 G65 Pp L

l

參考資料:FANUC O 系列操作程式設計說明書 60 I

2 #7 K

5 #18 J

9 #29 J

2 #8 I

6 #19 K

9 #30 K

2 #9 J

6 #20 I

10 #31 I

3 #10 K

6 #21 J

10 #32 J

3 #11 I

7 #22 K

10 #33 ☆ 在實際的程式中,I、J、K的下標不用寫出來。

注意:

☆ 在自變數之前一定要指定G65。

☆ 如果將兩類自變數混合使用, NC自己會辨別屬於哪類,最後指定的那一類優

先。

☆ 傳 遞 的 不 帶 小 數 點 的自變數的單 位與 每 個 地址 的 最小 輸入 增 量一 致 ,其 值 與 機床的系統 結

構 非 常 一 致 。為 了 程式的 兼 容 性 , 建 議 使用 帶 小 數 點 的自變數。

☆ 最多可以巢狀含有簡單呼叫(G65)和模呼叫(G66)的程式4級。不包括子程

序呼叫(M98)。地方變數可以巢狀0~4級。主程式的級數是0。用G65和G66每調

用一次宏,地方變數的級數增加一次。上一級地方變數的值儲存在NC 中。宏程式

執行到M99時,控制返回到呼叫的程式。這時地方變數的級數減1,恢復宏呼叫時

儲存的地方變數值。

8。4。2、模呼叫(G66、G67)

功能 一旦指定了G66,那麼在以後的含有軸移動命令的段執行之後,地址P所指

定的宏被呼叫,直到發出G67命令,該方式被取消。

格式 G66 Pp L

l

參考資料:FANUC O 系列操作程式設計說明書 61 ☆ 最多可以巢狀含有簡單呼叫(G65)和模呼叫(G66)的程式4級。不包括子程

序呼叫(M98)。模呼叫期間可重複巢狀G66。

☆ 在G66段,不能呼叫宏。

☆ 在自變數前一定要指定G66。

☆ 在含有象M碼這樣與軸移動無關的段中不能呼叫宏。

☆ 地方變數(自變數)只能在G66段設定,每次模呼叫執行時不能設定。

8。4。3 G碼呼叫宏

透過在下表所列出的引數中設定呼叫宏程式的G碼號,就可以象用G65一樣呼叫相

應的宏程式。G碼號設定範圍是1~255。重複次數l和自變數使用方法與G65一樣。

程式號 引數號 O9010 220 O9011 221 O9012 222 O9013 223 O9014 224 O9015 225 O9016 226 O9017 227 O9018 228 O9019 229 注意:

在用G碼呼叫的程式中,不能再用G碼呼叫宏程式,在這樣的程式中G碼被看作是

普通G碼,在用M碼和T碼呼叫的子程式中也一樣。

8。4。4、M碼呼叫宏

透過在下表所列出的引數中設定呼叫宏程式的M碼號,就可以象用G65一樣呼叫相

應的宏程式。M碼號設定範圍是1~255。重複次數l和自變數使用方法與G65一樣。

程式號 引數號 O9020 230 O9021 231 O9022 232 O9023 233 O9024 234 O9025 235 O9026 236 O9027 237

參考資料:FANUC O 系列操作程式設計說明書 62 O9028 238 O9029 239 注意:

☆ 呼叫宏程式的M碼一定要在段首指定。

☆ 在用G碼呼叫的宏或用M碼和T碼呼叫的子程式中,不能再用M碼呼叫宏程式,

在這樣的宏或程式中M碼被看作是普通M碼。

8。4。5 M碼呼叫子程式

透過在下表所列出的引數中設定呼叫宏程式的M碼號,就可以象用M98呼叫子程式

一樣呼叫相應的宏程式。M碼號設定範圍是1~255。重複次數l使用方法與M98一樣。

不允許使用自變數。

程式號 引數號 O9001 240 O9002 241 O9003 242 注意:

宏程式中,已用來呼叫宏程式的 M碼被看作是普通M碼。在用G碼呼叫的宏和用M

碼或T碼呼叫的程式中,不能再用M碼呼叫子程式,在這樣的程式中M碼被看作是普通

M碼。

8。4。6 T碼呼叫子程式

將引數040的第5位置1,當在加工程式中指定一個T碼時,宏程式O9000就被調

用。在加工程式中指定的T碼儲存在公共變數#149中。

在用G碼呼叫的宏和用M碼或T碼呼叫的程式中,不能再用T碼呼叫子程式,在這

樣的程式中T碼被看作是普通T碼。

8。5附加說明

① 使用者宏程式與子程式相似,也能寄存和編輯。

② 可以在自動操作方式下指定宏呼叫。但在自動操作期間不能轉換到MDI方式。

也能在MDI操作B方式下應用宏呼叫。

③ 不能用順序號搜尋使用者宏程式。

④ 即使當宏程式正在執行,也能以單段方式停止(除了含有宏呼叫命令、算術操

作命令、控制命令的段外)。含有宏呼叫命令(G65、G66、G67)的段,在單段方式下

不能停止。而將引數011的第5位置1,含有算術操作命令、控制命令的段能停止。單

段停止方式常用於測試使用者宏程式。注意,在切削補償方式C下,如果在宏語句處執行

了單段停止,該語句被看作是與移動命令無關的段,這時補償可能不正確。(嚴格地講,

這句被看作是移動命令為0的段)。

⑤“/”如果出現在算術表示式的中間,則被認為是除號。

⑥ 將引數010的第4位置1,可禁止對程式號為9000~9999的程式進行編輯和刪除。

同時按住RESET 和DELET鍵重新啟動電源時,整個記憶體將被刪除,包括宏程式。

參考資料:FANUC O 系列操作程式設計說明書 63 ⑦ 復位操作可使地方變數和公共變數#100~#199清成空值。但是,透過設定引數

040的第6第7位,可以避免這些引數的復位。系統變數#1000~#1133不受復位影響。

⑧ 象M98一樣,不顯示用作子程式呼叫的M碼和T碼。

⑨ 在表示式中使用的常數取值範圍是+0。0000001~+99999999和-

99999999~

-

0。0000001,如果超出此範圍,將發出003號報警。

參考資料:FANUC O 系列操作程式設計說明書 64 附錄1

:報警程式碼表

1。 程式報警(P/S報警) 報警號

000

修改後須斷電才能生效的引數,引數修改完畢後應該斷電。 001

TH報警,外設輸入的程式格式錯誤。 002

TV報警,外設輸入的程式格式錯誤。 003

輸入的資料超過了最大允許輸入的值。參考程式設計部分的有關內容。 004

程式段的第一個字元不是地址,而是一個數字或“-”。 005

一個地址後面跟著的不是數字,而是另外一個地址或程式段結束符。 006

符號“-”使用錯誤(“-”出現在一個不允許有負值的地址後面,

或連續出現了兩個“-”)。 007

小數點“。 ”使用錯誤。 009

一個字元出現在不能夠使用該字元的位置。 010

指令了一個不能用的G程式碼。 011

一個切削進給沒有被給出進給率。 014

程式中出現了同步進給指令(本機床沒有該功能)。 015

企圖使四個軸同時運動。 020

圓弧插補中,起始點和終點到圓心的距離的差大於876號引數指定的

數值。 021

圓弧插補中,指令了不在圓弧插補平面內的軸的運動。 029

H指定的偏置號中的刀具補償值太大。 030

使用刀具長度補償或半徑補償時,H指定的刀具補償號中的刀具補償

值太大。 033

程式設計了一個刀具半徑補償中不能出現的交點。 034

圓弧插補出現在刀具半徑補償的起始或取消的程式段。 037

企圖在刀具半徑補償模態下使用G17、G18或G19改變平面選擇。 038

由於在刀具半徑補償模態下,圓弧的起點或終點和圓心重合,因此

將產生過切削的情況。 041

刀具半徑補償時將產生過切削的情況。 043

指令了一個無效的T程式碼。 044

固定迴圈模態下使用G27、G28或G30指令。 046

G30指令中P地址被賦與了一個無效的值(對於本機床只能是2)。 051

自動切角或自動圓角程式段後出現了不可能實現的運動。 052

自動切角或自動圓角程式段後的程式段不是G01指令。 053

自動切角或自動圓角程式段中,符號“,”後面的地址不是C或R。 055

自動切角或自動圓角程式段中,運動距離小於C或R的值。 060

在順序號搜尋時,指令的順序號沒有找到。 070

程式儲存器滿。 071

被搜尋的地址沒有找到,或程式搜尋時,沒有找到指定的程式號。

參考資料:FANUC O 系列操作程式設計說明書 65 072

程式儲存器中程式的數量滿。 073

輸入新程式時企圖使用已經存在的程式號。 074

程式號不是1~9999之間的整數。 076

子程式呼叫指令M98中沒有地址P。 077

子程式巢狀超過三重。 078

M98或M99中指令的程式號或順序號不存在。 085

由外設輸入程式時,輸入的格式或波特率不正確。 086

使用讀帶機/穿孔機介面進行程式輸入時,外設的準備訊號被關斷。 087

使用讀帶機/穿孔機介面進行程式輸入時,雖然指定了讀入停止, 但

讀過了10個字元後,輸入不能停止。 090

由於距離參考點太近或速度太低而不能正常執行恢復參考點的操

作。 091

自動運轉暫停時(有剩餘移動量或執行輔助功能時)進行了手動返

回參考點。 092

G27指令中,指令位置到達後發現不是參考點。 100

PWE=1,提示引數修改完畢後將PWE置零,並按RESET鍵。 101

在編輯或輸入程式過程中,NC重新整理儲存器內容時電源被關斷。當該

報警出現時,應將PWE置1,關斷電源,再次開啟電源時按住DELETE 鍵以清除儲存器中的內容。 131

PMC報警資訊超過5條。 179

597號引數設定的可控軸數超出了最大值。 224

第一次返回參考點前企圖執行可程式設計的軸運動指令。

2。 伺服報警

報警號

400

伺服放大器或電機過載。 401

速度控制器準備號訊號(VRDY)被關斷。 404

VRDY訊號沒有被關斷,但位置控制器準備好訊號(PRDY)被關 斷。

正常情況下,VRDY和PRDY訊號應同時存在。 405

位置控制系統錯誤,由於NC或伺服系統的問題使返回參考點的操 作

失敗。重新進行返回參考點的操作。 410

X軸停止時,位置誤差超出設定值。 411

X軸運動時,位置誤差超出設定值。 413

X軸誤差暫存器中的資料超出極限值,或D/A轉換器接受的速度指 令

超出極限值(可能是引數設定的錯誤)。 414

X軸數字伺服系統錯誤,檢查720號診斷引數並參考伺服系統手冊。 415

X軸指令速度超出511875檢測單位/秒,檢查引數CMR。 416

X軸編碼器故障。 417

X軸電機引數錯誤,檢查8120、8122、8123、8124號引數。 420

Y軸停止時,位置誤差超出設定值。 421

Y軸運動時,位置誤差超出設定值。

參考資料:FANUC O 系列操作程式設計說明書 66 423

Y軸誤差暫存器中的資料超出極限值,或D/A轉換器接受的速度指 令

超出極限值(可能是引數設定的錯誤)。 424

Y軸數字伺服系統錯誤,檢查721號診斷引數並參考伺服系統手冊。 425

Y軸指令速度超出511875檢測單位/秒,檢查引數CMR。 426

Y軸編碼器故障。 427

Y軸電機引數錯誤,檢查8220、8222、8223、8224號引數。 430

Z軸停止時,位置誤差超出設定值。 431

Z軸運動時,位置誤差超出設定值。 433

Z軸誤差暫存器中的資料超出極限值,或D/A轉換器接受的速度指 令

超出極限值(可能是引數設定的錯誤)。 434

Z軸數字伺服系統錯誤,檢查722號診斷引數並參考伺服系統手冊。 435

Z軸指令速度超出511875檢測單位/秒,檢查引數CMR。 436

Z軸編碼器故障。 437

Z軸電機引數錯誤,檢查8320、8322、8323、8324號引數。

3。 超程報警

報警號

510

X軸正向軟極限超程。 511

X軸負向軟極限超程。 520

Y軸正向軟極限超程。 521

Y軸負向軟極限超程。 530

Z軸正向軟極限超程。 531

Z軸負向軟極限超程。

4。 過熱報警及系統報警

700號報警為NC主印刷線路板過熱報警,704號報警為主軸過熱報警。

其它的6××為PMC系統報警,9××為NC系統報警。使用者如發現以上兩種報警,

請及時通知我們或直接向FANUC公司諮詢,以便聯絡維修。

2×××為機床報警,詳見以下說明。