tft每日頭條

 > 科技

 > 數控宏程序編程入門第一講

數控宏程序編程入門第一講

科技 更新时间:2024-07-31 11:16:52

随着現代制造技術的發展和數控機床的日益普及,數控加工在我國得到廣泛的應用,數控加工中很重要的一部分就是編程,從CAD/CAM軟件出現以後,人們過分依賴CAD/CAM軟件,使得無論程序大小,加工難易編程人員習慣使用各種CAD/CAM軟件,而把手工編程遺忘了,尤其是博大精深的宏程序。宏程序在數控編程中不應該被遺忘,而是應該很好的使用,它有着自動編程軟件不可取代的優勢。

一.引言

在CAD/CAM軟件普遍存在的今天,手工編程的應用空間日趨減小,數控世界有一種說法很流行“宏程序已經沒有什麼用”,其實任何數控系統都有很多指令在一般情況下用不着,那他們是否也沒有用呢?這顯然不對,對宏程序也是如此,原因隻是大家對宏程序不熟悉,往往誤以為宏程序深不可測而已,在實際工作中,宏程序确實也有廣泛的應用空間,并且能夠方便手工編程,鍛煉操作者的編程能力,幫助操作者更加深入的了解自動編程的本質。

二.認識宏程序

在一般的程序編制中程序字為常量,一個程序隻能描述一個幾何形狀,當工件形狀沒有發生改變但是尺寸發生改變時,就沒有辦法了,隻能重新進行編程,缺乏靈活性和适用性。當我們所要加工的零件如果形狀沒有發生變化隻是尺寸發生了一定的變化的情況時,我們隻需要在程序中給要發生變化的尺寸加上幾個變量再加上必要的計算公式就可以了,當尺寸發生變化時隻要改變這幾個變量的賦值參數就可以了。

它是利用對變量的賦值和表達式來進行對程序的編輯的,這種有變量的程序叫宏程序。

三.宏程序與自動編程的比較

自動編程有自動編程的好處,但是自動編程也有其不利于加工方面的問題,在加工不規律的曲面時利用自動編程确實是很好,但是在加工有規律的曲面時就不見得了,加工有規律的工件的時候用宏程序加工要比用自動編程軟件要強的多,而且宏程序比較精練,不象宏程序那麼煩瑣,而且比較長,看起來比較麻煩。下文将對CAD/CAM生成的程序與宏程序進行比較:

1.宏程序與普通程序的對比

普通編程是利用每個指令代碼的功能,按照規定進行編程即可,有的時候這些簡單的指令不能滿足加工要求,因此系統提供了用戶宏程序功能,使用戶可以對數控系統進行一定功能的擴展,普通程序隻能使用常量進行編程而且常量之間不可以進行計算,而宏程序則可以使用變量進行編程,并可以給變量進行賦值,變量之間可以根據程序中給出表達式進行計算。

當工件形狀沒有變化,但尺寸發生變化時,隻需改變變量中幾個與尺寸有關的值,其他的表達式無須改變。同時在控制工件尺寸時也很方便,隻要将跟刀具有關的變量改變其值就可以。

2.宏程序編程比較簡短

宏程序是程序編制的高級形式,程序編制的質量與編程人員的素質息息相關,宏程序裡應用了大量的編程技巧。它利用數學關系的表達,加工刀具的選擇,走刀方式的取舍等等,這些都使得宏程序的精度很高,特别是對于中等難度的零件,使用宏程序加工要比自動編程加工快的多。

另外很重要的一點,CAD/CAM所生成的程序很多,而且非常的煩瑣,有的時候自動編程的程序長度可能是宏程序長度幾十倍,甚至幾百倍,加工時間也會大大增加。

加工一個半徑為25的半球的程序同時采用自動編程和手工編程,采用同樣的刀具同樣的加工參數,宏程序隻有20幾行,而進行自動編程軟件編制的程序則多達2000多行,而且自動編程所生成的程序幾乎是G01,G02,G03等簡單的指令組成,但是後面的數字全部是小數,采用的直線逼近圓或直線逼近曲線組成的,修改很麻煩,有的時候可以說是無從下手。從此可以看出宏程序是很精練的程序。宏程序是手工編程,CAD/CAM是自動編程,手工編程是自動編程的基礎在任何時候手工編程都是必須掌握的。

3.影響自動編程的加工精度的因素

自動編程産生的加工程序的精度受多方面因素的影響,,首先它受CAD/CAM軟件建模時的計算精度,不同軟件之間CAD圖檔的轉換精度的影響,其次受自動編程軟件在生成NC刀具軌迹是的計算精度影響,再者就是後處理環節有時也會對其有影響。

上面說過,自動編程生成的程序多數采用的直線逼近曲線,表面看上去是圓或曲線,而實際上是很多的台階或者是N邊形,隻不過是這個台階很小或者N邊形的N很大而已。在加工圓時走的軌迹不是一個整圓,精度可想而知不如軌迹為整圓。如下圖示:

數控宏程序編程入門第一講(淺談數控編程中的宏程序)1

4.自動編程與宏程序的加工速度的區别

因為自動編程生成的程序比較煩瑣,可能加工一個簡單的東西,就會有幾千乃至上萬行的程序,而機床内部程序的存儲空間是有限的,FANUC 0I 系統的标準配置一般為128K或256K,這上千乃至上萬行的程序不止128K或256K,這就需要DNC方式在線加工,此時機床與電腦之間的傳輸速度成了影響加工速度的關鍵,目前的機床大多數采用的是R232口的串口通信來實現在線加工,大多數系統所支持的R232口最大的傳輸波特率為19200bit/s,即使是在最大的傳輸速度下,當計算精度較高,進給速度較快時,程序的傳輸速度就跟不上,出現進給運動有明顯的斷續的現象,采用其他方法也不會太大的改觀。

使用宏程序加工時由于計算的速度較快,不會出現加工中斷續的現象。

四.編制宏程序的步驟及宏程序常出現的問題

1.宏程序編程的步驟:

(1).确定走刀軌迹,确定加工工件時的走刀軌迹,刀具如何運動,确定程序中有幾個變量值。需要幾個變量号。

(2).由動作可知道有幾層變量,确定每層的計算表達式,一層變量為一個循環。确定這曾循環之間的關系及數學表達式。

(3).将變量的初始值放在此層循環的外邊,不可放在此層循環内,否則,沒有計算結果,永遠執行初始值。執行死循環。将計算表達式放在循環内,以便刀具按照計算的軌迹進行運動。

2.例:半球的加工

數控宏程序編程入門第一講(淺談數控編程中的宏程序)2

思路:從下往上進行加工,在當前角度時進行加工,銑一個整圓,之後改變上升的高度和加工當前角度的圓半徑。

首先按照上面的步驟進行分析,本例采用球刀從下往上進行加工。先在半球底部銑整圓,之後Z軸進行擡高并改變上升後整圓的半徑。半球的加工主要控制的是每次Z軸的上升的尺寸,這裡同過控制半球的角度來進行控制Z軸的變化,即每變化一個角度半徑的變化量(主要控制#4就可以了)。由此可見,我們加工半球的宏程序隻需要一層表達式,就是每次角度變化後的Z軸的高度,以及X方向的尺寸(半球的半徑從下往上逐漸減小),X為7号變量,Z為8号變量,7号8号變量都可以根據4号的變量值進行計算,因此隻要控制4号變量就可以了,控制每次的遞增量。

球加工的宏程序采用一層循環,控制角度的變化,角度從0度增加到90度一個半球即加工好,每次增加2度。每層上升的距離采用圓弧加工,較直線進刀準确一些。

半球加工的宏程序

O0001; 程序号

#1= 球半徑

#2= 刀具半徑

#12=#1 #2 刀具中心的走刀軌迹

#4=0 起始角度

#17=2 角度每次的變化量

#5=90 角度變化的終止值

G90G54G40G49; 對加工進行設置,絕對坐标編程,取消補償

G00X0Y0Z30; 主軸到達要求位置

S500M03; 主軸正轉,500r/min

X#12; X向到達加工位置

Z10; Z軸快速下刀

G01Z-#1F80; Z軸下到Z向加工開始位置

WHILE[#4LE#5]DO1; 判斷角度如果沒有達到90度,執行循環一

#6=#2*COS[#4]; 當前角度的X向尺寸,即該角度時的圓半徑

G90G17G03I-#6F150; 用該角度時的半徑進行加工圓

#7=#12*[COS[#4 #7]-COS[#4]; 計算增加角度後的X向增量

#8=#12*[SIN[#4 #7]-SIN[#4]; 計算增加角度後的Z向增量

G91G18G02X#7Y#8R#12; 用相對坐标移動刀具至增加後的坐标值

#4=#4 #17; 計算角度

END1; 循環結束

G00Z50; Z軸擡刀

M30; 程序結束

上述程序已經在FANUC 0I系統上驗證過,能夠正常運行。但是有的時候理論上沒有任何問題的宏程序到機床不一定能夠正常運行的。哪怕是有一點的小問題也是不行的。有的時候變量賦值錯了,不執行循環而是隻執行一個次。這些都是常見的問題。下面是在執行宏程序時常見的幾種報警信息以及解決方法:

3.宏程序常出現的問題及解決方法

(1). FORMAT ERROR IN MACRO

檢查:查看程序的格式,如:

#1=30*COS[#3] 輸成 #1=30*COS#3(錯誤)

(2). NC MACRO STATEMENT IN SAME BLOOK

檢查:①.#3=30*COS[#5] #3=30*COS[#5]

#4=30*SIN[#5] G41#4=30*SIN[#5]D01(錯誤,半徑補償不能在這建立)

G41 G01 X#3 Y#4D01 G01 X#3 Y#4

②.#1=10 #2=20 #1=10 #2=20

G01 X#1 Y#2 G01 #1 Y#2

(3). ADDRES NOT FOUND

檢查:(1).G01 X[#5-1] G01[#5-1]

(4). 走刀軌迹錯誤

檢查:各個變量的賦值有沒有錯誤

五:小結

宏程序在現在的加工中都能用到,而且在加工有規律的工件時無論是加工速度還是加工精度都比自動編程來得好,手工編程是基本工,任何時候都是必須掌握的。不能落在一邊,要利用起來,不能單純的依賴自動編程,現在的全國數控大賽隻允許手工編程,而且國外的一些數控相關的考試都是采用手工編程,不允許使用CAD/CAM軟件進行編程,可見宏程序是很重要的。在能用手工編程的工件盡量用手工編程,我們在平時就應該在能用宏程序加工時把宏程序用上,以鍛煉操作者的編程能力,經過一定的努力宏程序一定能應用得很夠熟練。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved