宏程序在FANUC 0i系統(tǒng)的數(shù)控車加工特形件的探討


 數(shù)控車削中經(jīng)常會(huì)遇到一些形狀復(fù)雜但卻有一定規(guī)律的零件,如:橢圓、拋物線、雙曲線等異形曲面的加工,盡管使用各種C A D/C A M軟件來自動(dòng)編制數(shù)控加工程序已經(jīng)成為現(xiàn)實(shí),但自動(dòng)生成的程序不能直接應(yīng)用于生產(chǎn),所以各種“疑難雜癥”的解決往往還要依靠手動(dòng)編程。手動(dòng)編程可以使用變量編程即用戶宏程序,它是FANU C數(shù)控系統(tǒng)中的特殊編程功能,其實(shí)質(zhì)就是帶有變量的子程序,用戶宏程序本體中既可以使用變量進(jìn)行編程,還可以用宏指令對(duì)這些變量進(jìn)行賦值、運(yùn)算等處理,從而將有規(guī)律的形狀或尺寸用最短的程序段表示出來,編寫的程序清晰簡(jiǎn)潔、邏輯嚴(yán)密、通用性強(qiáng),在機(jī)械加工中得到了廣泛應(yīng)用。

一、宏指令的基本理論

FANUC系統(tǒng)提供兩類用戶宏指令,即A類宏指令和B類宏指令。早期的FANU C系統(tǒng)中曾廣泛使用A類宏指令,主要特征為使用G65代碼作為宏指令專用代碼,包括宏變量的賦值、運(yùn)算、條件調(diào)用等。FANUC  0i系統(tǒng)使用B類宏指令,其可以兼容A類宏指令,且功能更強(qiáng)大,編程更直觀。因此本文重點(diǎn)介紹B類宏指令的基本概念及其用法。

1.變量

普通加工程序直接用數(shù)值指定G代碼和移動(dòng)距離,例如:G01 X150.0;當(dāng)使用用戶宏程序時(shí),數(shù)值可以直接指定或用變量指定。當(dāng)用變量時(shí),變量值可用程序或由M D I方式設(shè)定、修改。例如:#1=#22=100G0l X#l F0.1;其與G01 X100 F0.1效果一樣。

(1)變量的表示

一般的編程中允許對(duì)變量命名,用戶宏程序不可以,一個(gè)變量需用“#”號(hào)和后面的變量號(hào)指定。變量號(hào)可以是數(shù)值或表達(dá)式,但必須注意此時(shí)表達(dá)式必須封閉在“[]”中。例如:#1(主要用于A類宏指令);#[#1+#3+5]#1=100#3=2,則該變量表示#107

(2)變量的類型

變量根據(jù)變量號(hào)可以分成4種類型(見表1)。


(3)變量值范圍

局部變量和公共變量可以是0值或以下范圍中的值:-1047-10-2910-291047,若計(jì)算結(jié)果超出該范圍,則發(fā)出報(bào)警NO.111。

(4)變量的引用

在程序中的地址后指定變量號(hào)即可引用其變量值。例如:G00 X#1 Z#2;當(dāng)用表達(dá)式指定變量時(shí),必須將表達(dá)式放在括號(hào)中,例如:G01X[#2+#5] F#1。被引用變量的值根據(jù)地址的最小設(shè)定單位自動(dòng)地舍入。

例如:當(dāng)C N C10.1428賦值給變量#102,且以1u m為單位執(zhí)行G00  X#102語句時(shí),實(shí)際指令值為10.143。改變引用變量的值的符號(hào),要把“—”號(hào)放在“#”的前面。即:G00 X #120。

(5)關(guān)于變量的其他說明

①表達(dá)式可以表示變量號(hào)和變量,且兩者并不相同。例如:X#[#1+#2]X [#1+#2]不相等。

②在程序中定義變量時(shí),小數(shù)點(diǎn)可以省略。例如:當(dāng)定義#1=108;變量#1的實(shí)際值是108.000

③若變量值未定義即為“空”變量。當(dāng)引用未定義的變量并執(zhí)行時(shí),變量及地址字都被忽略。例如:當(dāng)變量#130的值是0,變量#150的值為空時(shí),執(zhí)行G00 X#130 Z#150;程序的結(jié)果為G00 X0

④變量#0總是空變量。其不能寫,只能讀。

⑤程序號(hào)、順序號(hào)和任選程序跳轉(zhuǎn)號(hào)不能使用變量。例如:O#2,/#5G00X80;N#6Z100;等語句不能在程序中出現(xiàn)。

2.變量的算術(shù)和邏輯運(yùn)算

宏程序可以利用變量進(jìn)行算術(shù)和邏輯運(yùn)算,例如減法:#i=#j-#k;運(yùn)算符右邊的表達(dá)式可包含常量和“/”或由函數(shù)、運(yùn)算符組的變量。表達(dá)式中的變量#j#k可以用常數(shù)賦值,左邊的變量也可以用表達(dá)式賦值。

(1)運(yùn)算符的優(yōu)先級(jí)

按照優(yōu)先的先后順序依次是:函數(shù)→乘和除運(yùn)算(*/,AND,MOD)→加和減運(yùn)算(+,﹣,OR,X OR)。用“[]”可以改變運(yùn)算的優(yōu)先級(jí),最里層的“[]”優(yōu)先運(yùn)算,“[]”最多可以嵌套使用5級(jí)(包括函數(shù)內(nèi)部使用的括號(hào))當(dāng)超出5級(jí)時(shí),會(huì)出現(xiàn)NO.118報(bào)警。

(2)變量的賦值

①直接賦值

變量可以在操作面版上用M D I方式直接賦值,也可以在程序中以等式方式賦值,但等號(hào)左邊不能用表達(dá)式。

如:#110=60;

    #110=40+30;

②引用賦值

宏程序以子程序方式出現(xiàn),所用的變量可在宏調(diào)用時(shí)賦值。如:G65  P0060  X120  Z30  F100;此程序段中,X,Z不代表進(jìn)給字,而是對(duì)應(yīng)于宏程序中的變量號(hào),變量的具體數(shù)值由引數(shù)后的數(shù)值決定。

二、宏程序的功能語句

在程序中,使用G O T OI F語句可以起到改變和控制程序流向的作用。有4種轉(zhuǎn)移和循環(huán)操作可供使用:

1.無條件轉(zhuǎn)移語句(GOTO)

轉(zhuǎn)移到有順序號(hào)m的程序段,如:G O T O1;(轉(zhuǎn)移到第一行)。

2.條件轉(zhuǎn)移IF[表達(dá)式]GOTO m如果條件表達(dá)式滿足,轉(zhuǎn)移到標(biāo)有順序號(hào)m的程序段;如果條件不滿足,則執(zhí)行下一個(gè)程序段(如圖1所示)。


3.條件轉(zhuǎn)移IF[表達(dá)式]THEN

如果表達(dá)式滿足,執(zhí)行預(yù)先決定的宏程序語句,且只執(zhí)行一個(gè)宏程序語句。例如:I F[#1E Q#3]  T H E N #4=8;表示如果#1#3的值相同,將8賦給#4

4.循環(huán)功能(WHILE)語句

如果WHIL E后指定的表達(dá)式條件滿足,執(zhí)行D OE N D之間的程序;否則,轉(zhuǎn)到E N D后的程序(如圖2所示)。


三、宏程序的調(diào)用

宏程序的調(diào)用可以通過指令M98G65來實(shí)現(xiàn),使用M98方式調(diào)用和子程序調(diào)用格式一樣,但使用前必須了解宏程序使用了哪些變量,并對(duì)變量賦值。G65指令稱為宏程序非模態(tài)調(diào)用指令,其使用格式如:G65  P0040  L6自變量地址;P為宏程序號(hào)。L為調(diào)用次數(shù),缺省時(shí)為1次。自變量地址為用戶使用系統(tǒng)提供的自定義地址號(hào)表達(dá)的變量值。

四、宏程序在橢圓加工中的應(yīng)用實(shí)例

一帶有橢球面的工件(如圖3所示)。長(zhǎng)軸a=40㎜,短軸b=20㎜。


橢圓標(biāo)準(zhǔn)方程為:(X-m)2

/b2

+(Z-n)2

/a2

=1,mn

分別為X方向和Z方向中心坐標(biāo)。

參數(shù)方程:Z=20cosΦ   X=2×10sinΦ

橢球的中心為圖3中的(0,0)點(diǎn),但一般工件坐標(biāo)系建立在工件的右端面,為了讓橢球的中心與工件坐標(biāo)系重合,通過程序?qū)E球的中心向右移動(dòng)一個(gè)長(zhǎng)半軸即#103=20,這樣才能順利地完成工件的加工。手工編制加工程序:

O0005

N10 G98;

N20 T0202;

N30 M03 S800;

N40 G00 X100 Z100;

N50 G00 X30 Z10;

N60 G73 U2 W2 R5;

N70 G73 P80 Q140 U0.5 W0.1 F100;

N80 G01 X0 Z0 F50;

N90 M98 P0002;

N100 G01 X20 Z-50;

N110 Z-60;

N120 G01 X28;

N130 G00 X100;

N140 Z10;

N150 M00;

N160 G42 X25 Z2;

N170 M03 S1000;

N180 G70 P80 Q140 F60;

N190 G40 G00 X100;

N200 Z100

N210 M30;

子程序

N10 T0202;

N20 M03 S500;

N30 G01 X30 Z10 F50;

N40 #101=20;

N50 #102=10;

N60 #103=20;

N70 #104=SQRT[#101*#101-#103*#103];

N80 G01 X#104 Z[#103-20];

N90 #103=#103-0.5;

N100 IF [#103GT-15] GO TO 70;

N110 M99;(返回主程序)

工件三維圖如圖4所示。


本文由 伯特利數(shù)控文章 整理發(fā)表,文章來自網(wǎng)絡(luò)僅參考學(xué)習(xí),本站不承擔(dān)任何法律責(zé)任。

http://www.bethel-cnc.com/bethel/news/

標(biāo)簽: 系統(tǒng)  FANUC  編程  加工  
上一篇數(shù)控車床要怎樣一次裝夾多件加工
下一篇探討插補(bǔ)算法的數(shù)控技巧

系統(tǒng)  FANUC  編程  加工  相關(guān)內(nèi)容

——

11

2024-12

U600S五軸加工中心視頻

此視頻詳細(xì)介紹了U600S高性能五軸加工中心各種參數(shù)及說明!… [了解更多]

05

2024-11

六角亭五軸加工工藝

本文以組合式六角亭模型為實(shí)例,分析工藝難點(diǎn)與加工可行性,指出該模型的加工難點(diǎn)是模型形狀不規(guī)則和整體剛性差,并通過設(shè)計(jì)新的工藝方案解決加工難點(diǎn),完成了模型整體的加工。新的加工工藝有助于提高加工效率和精度,為五軸數(shù)控加工提供了一個(gè)典型案例,對(duì)于五軸加工中心數(shù)控加工也具有指導(dǎo)作用和重要… [了解更多]

05

2024-11

自適應(yīng)控制方法在混聯(lián)五軸加工中心中的應(yīng)用

宇匠數(shù)控 備注:為保證文章的完整度,本文核心內(nèi)容由PDF格式顯示,如未有顯示請(qǐng)刷新或轉(zhuǎn)換瀏覽器嘗試,手機(jī)瀏覽可能無法正常使用!本文摘要:通過對(duì)混聯(lián)五軸加工中心自適應(yīng)深度學(xué)習(xí)控制方法的 研 究,可 知 此 方 法 的 創(chuàng) 新 之 處 在 于:1)建 立 了 機(jī) 床 的 運(yùn) 動(dòng) 學(xué) … [了解更多]

05

2024-11

五軸線性刀路的局部能量光順和避免方法

宇匠數(shù)控 備注:為保證文章的完整度,本文核心內(nèi)容由PDF格式顯示,如未有顯示請(qǐng)刷新或轉(zhuǎn)換瀏覽器嘗試,手機(jī)瀏覽可能無法正常使用!本文摘要:1)本文建立了基于轉(zhuǎn)角向量和雙弦弓高的局部能量光順?biāo)惴?,該方法以刀心點(diǎn)光順前后最大許用偏移量作為約束,通過計(jì)算拐角處微小線段局部能量最優(yōu)解,可使… [了解更多]

05

2024-11

五軸加工中心和五軸鉆攻中心在機(jī)測(cè)量探頭補(bǔ)

在機(jī)測(cè)量技術(shù)由于其成本低、檢測(cè)效率高、無需二次裝夾等優(yōu)勢(shì)被廣泛用于零件加工測(cè)量當(dāng)中,使得五軸加工中心和五軸鉆攻中心,同時(shí)又兼具測(cè)量功能。在機(jī)測(cè)量系統(tǒng)的構(gòu)成如圖1所示,硬件部分主要是由高精度探頭、信號(hào)接收器、機(jī)床整個(gè)本體,軟件部分由機(jī)床控制系統(tǒng)、測(cè)量軟件等組成[8]。待零件加工完成… [了解更多]


產(chǎn)品中心

——