數控加工之宏程序編程[業(yè)界薈萃]
《數控加工之宏程序編程[業(yè)界薈萃]》由會員分享,可在線閱讀,更多相關《數控加工之宏程序編程[業(yè)界薈萃](40頁珍藏版)》請在裝配圖網上搜索。
1、單元宏單元宏 用戶宏程序編程 在數控編程中,宏程序編程靈活、高效、快捷,是加工編程的重要補充。宏程序不僅可以實現象子程序那樣,例如,型腔加工宏程序、固定加工循環(huán)宏程序、球面加工宏程序、錐面加工宏程序等。l華中數控宏程序華中數控宏程序lFANUC數控宏程序數控宏程序lSIEMENS數控參數編程數控參數編程單元宏單元宏 用戶宏程序編程 HNC-21/22T 、HNC-21M為用戶配備了強有力的類似于高級語言的宏程序功能,用戶可以使用變量進行算術運算、邏輯運算和函數的混合運算,此外宏程序還提供了循環(huán)語句、分支語句和子程序調用語句,利于編制各種復雜的零件加工程序,減少乃至免除手工編程時進行繁瑣的數值計
2、算,以及精簡程序量。1. 1. 宏變量及常量宏變量及常量(1) 宏變量宏變量HNC-21/22T華中世紀星數控系統(tǒng)變量表示形式為華中世紀星數控系統(tǒng)變量表示形式為# 后跟后跟14位數字,變量種類位數字,變量種類有三種:有三種:局部變量局部變量:#0#49是在宏程序中局部使用的變量,用于存放宏程序中的數據是在宏程序中局部使用的變量,用于存放宏程序中的數據,斷電時丟失為空。,斷電時丟失為空。單元宏單元宏 用戶宏程序編程全局變量全局變量:用戶可以自由使用:用戶可以自由使用#50#50#199#199,它對于由主程序調用的各子程序及,它對于由主程序調用的各子程序及各宏程序來說是可以公用的,可以人工賦值。
3、各宏程序來說是可以公用的,可以人工賦值。HNC-21/22THNC-21/22T子程序嵌套調用的深度子程序嵌套調用的深度最多可以有最多可以有8 8層,每一層子程序都有自己獨立的局部變量(變量個數為層,每一層子程序都有自己獨立的局部變量(變量個數為5050)。)。系統(tǒng)變量系統(tǒng)變量:系統(tǒng)變量為:系統(tǒng)變量為#1000#1000#1199#1199,它能獲取包含在機床處理器或,它能獲取包含在機床處理器或NCNC內存中內存中的只讀或讀的只讀或讀/ /寫信息,包括與機床處理器有關的交換參數、機床狀態(tài)獲取參數、加寫信息,包括與機床處理器有關的交換參數、機床狀態(tài)獲取參數、加工參數等系統(tǒng)信息。工參數等系統(tǒng)信息。
4、(2) (2) 常量常量PI:圓周率圓周率;TRUE:條件成立條件成立(真真);FALSE:條件不成立條件不成立(假假) 1 1、 宏變量及常量宏變量及常量單元宏單元宏 用戶宏程序編程2 2、 運算符與表達式運算符與表達式(1) 算術運算符:+,-,*,/(2) 條件運算符:EQ(=),NE(),GT(),GE(),LT(),LE()(3) 邏輯運算符:AND,OR,NOT(4) 函數:SIN,COS,TAN,ATAN,ATAN2,ABS,INT,SIGN,SQRT,EXP(5) 表達式:用運算符連接起來的常數,宏變量構成表達式。例如:175/SQRT2 * COS55 * PI/180 ;#
5、3*6 GT 14 單元宏單元宏 用戶宏程序編程3、賦值語句、賦值語句格式:宏變量=常數或表達式把常數或表達式的值送給一個宏變量稱為賦值。例如: #2 = 175/SQRT2 * COS55 * PI/180; #3 = 124.0 單元宏單元宏 用戶宏程序編程4、 條件判別語句條件判別語句IF, ELSE,ENDIF格式(i): 格式(ii) : IF IF 條件表達式條件表達式 IF IF 條件表達式條件表達式 ELSE ELSE ENDIF ENDIFENDIFENDIF單元宏單元宏 用戶宏程序編程5、 循環(huán)語句循環(huán)語句WHILE,ENDW格式:格式:WHILE WHILE 條件表達式條
6、件表達式 ENDW ENDW單元宏單元宏 用戶宏程序編程6、 宏程序宏程序/子程序調用的參數傳遞規(guī)則子程序調用的參數傳遞規(guī)則G 代碼在調用宏代碼在調用宏(子程序或固定循環(huán)子程序或固定循環(huán),下同,下同)時,系統(tǒng)會將當前程序段各時,系統(tǒng)會將當前程序段各字段字段(AZ共共26個字段,如果沒有定個字段,如果沒有定義則為零義則為零)的內容拷貝到宏執(zhí)行時的的內容拷貝到宏執(zhí)行時的局部變量局部變量#0 #25,同時拷貝調用宏,同時拷貝調用宏時當前通道九個軸(軸時當前通道九個軸(軸0軸軸8)的絕)的絕對位置對位置(機床絕對坐標機床絕對坐標)到宏執(zhí)行時的到宏執(zhí)行時的局部變量局部變量#30 #38。宏程序的調用格式
7、為:宏程序的調用格式為:M98 P(宏程序名)宏程序名)或或G65 P(宏程序名)宏程序名)。 #25 Z 單元宏單元宏 用戶宏程序編程%1000%1000;長半軸、短半軸分別為;長半軸、短半軸分別為4040、3030的橢圓的橢圓G54 G90 G00 Z30G54 G90 G00 Z30M03 S800M03 S800G00 X45 Y-15 G00 X45 Y-15 ;快速定位至下刀點快速定位至下刀點Z3Z3G01 Z-5 F100G01 Z-5 F100#0=0#0=0;給角度給角度 賦賦0 0初值初值WHILE WHILE #0#0 LE LE 360360;當角度當角度 360360
8、度時,執(zhí)行循環(huán)體內容度時,執(zhí)行循環(huán)體內容#1=40#1=40* *COS#0COS#0* *PI/180PI/180;用橢圓的標準參數方程求動點用橢圓的標準參數方程求動點M M的的X X坐標值坐標值#2=30#2=30* *SIN#0SIN#0* *PI/180PI/180;用橢圓的標準參數方程求動點用橢圓的標準參數方程求動點M M的的Y Y坐標值坐標值G01 X#1 Y#2 G01 X#1 Y#2 ;用直線插補指令加工至用直線插補指令加工至M M點,點,即用直線段逼近橢圓即用直線段逼近橢圓# #0=#0+10=#0+1;角度;角度 的遞增步長取的遞增步長取1 1度度 ENDWENDWX45
9、Y15X45 Y15;切出橢圓切出橢圓G00 Z30 M05G00 Z30 M05X0 Y0X0 Y0M30 M30 7、用戶宏程序編程思路、用戶宏程序編程思路單元宏單元宏 用戶宏程序編程%1000%1000;長半軸、短半軸分別為;長半軸、短半軸分別為4040、3030的橢圓的橢圓G92 X0 Y0 Z30G92 X0 Y0 Z30M03 S800M03 S800G00 X45 Y-15 M08G00 X45 Y-15 M08;快速定位至快速定位至A A點點Z3Z3G01 Z-5 F100G01 Z-5 F100#2=0#2=0;給角度給角度 賦賦0 0初值初值WHILE #2 LE 360W
10、HILE #2 LE 360;當角度當角度 360360度時,執(zhí)行循環(huán)體內容度時,執(zhí)行循環(huán)體內容#11=40#11=40* *COS#2COS#2* *PI/180PI/180;用橢圓的標準參數方程求動點用橢圓的標準參數方程求動點M M的的X X坐標值坐標值#12=30#12=30* *SIN#2SIN#2* *PI/180PI/180;用橢圓的標準參數方程求動點用橢圓的標準參數方程求動點M M的的Y Y坐標值坐標值G42 G64 G01 X#11 Y#12 D01G42 G64 G01 X#11 Y#12 D01;用直線插補指令加工至用直線插補指令加工至M M點,即用點,即用 直線段逼近橢圓
11、直線段逼近橢圓#2=#2+1#2=#2+1;角度;角度 的遞增步長取的遞增步長取1 1度度 ENDWENDWG40 G01 X45 Y15G40 G01 X45 Y15;切出橢圓至切出橢圓至C C點點Z3 M09Z3 M09G00 Z30 G00 Z30 X0 Y0 M05X0 Y0 M05M30 M30 單元宏單元宏 用戶宏程序編程單元宏單元宏 用戶宏程序編程單元宏單元宏 用戶宏程序編程 ZH7640ZH7640立式加工中心由北京第立式加工中心由北京第三機床廠產生三機床廠產生, ,采用華中銑床、加工采用華中銑床、加工中心數控系統(tǒng)。加工范圍中心數控系統(tǒng)。加工范圍600600mmmm400mm4
12、00mm500mm500mm。刀庫可容刀庫可容納納2020把刀??捎糜阽M、銑、鉆、鉸、把刀??捎糜阽M、銑、鉆、鉸、攻絲等各種加工。實例為在預先處攻絲等各種加工。實例為在預先處理好的理好的100100mmmm100mm100mm80mm80mm合金鋁合金鋁錠毛坯上加工如圖所示的零件,其錠毛坯上加工如圖所示的零件,其中正五邊形外接圓直徑為中正五邊形外接圓直徑為8080mmmm。 單元宏單元宏 用戶宏程序編程O50005000;FANUCG54 G90 G00 Z40G54 G90 G00 Z40X70 Y20 M08X70 Y20 M08M03 S600M03 S600G43 Z3 H01G43
13、Z3 H01G01 Z-5 F100G01 Z-5 F100#0=18#0=18N10N10 #1=80 #1=80* *COS#0COS#0#2=80#2=80* *SIN#0 SIN#0 G41 X#1 Y#2 D01G41 X#1 Y#2 D01#0=#0+72#0=#0+72IF #0 LT 360 GOTO 10IF #0 LT 360 GOTO 10G40 X70 Y70G40 X70 Y70Z40 M05Z40 M05M30M30O50005000;HNC-21M%1000%1000G54 G90 G00 Z40G54 G90 G00 Z40X70 Y20 M08X70 Y20
14、M08M03 S600M03 S600G43 Z3 H01G43 Z3 H01G01 Z-5 F100G01 Z-5 F100#0=18#0=18IF #0 LT 360 IF #0 LT 360 #1=80#1=80* *COS#0COS#0#2=80#2=80* *SIN#0 SIN#0 G41 X#1 Y#2 D01G41 X#1 Y#2 D01#0=#0+72#0=#0+72ENDIFENDIFG40 X70 Y70G40 X70 Y70Z40 M05Z40 M05M30M30單元宏單元宏 用戶宏程序編程%3015%3015#10=0 #10=0 ;X X坐標(直徑值)坐標(直徑值)#
15、11=0 #11=0 ;Z Z坐標坐標T0101T0101M03 S600M03 S600G00 X0 Z34G00 X0 Z34WHILEWHILE #10 LE #10 LE 3232G90 G64 G01 X#10 Z#11 F100G90 G64 G01 X#10 Z#11 F100#10= #10+0.32#10= #10+0.32#9= #10/2 #9= #10/2 ;求出求出X X坐標的半徑值,便于求解坐標的半徑值,便于求解#11#11#11= 32-#9#11= 32-#9* *#9/8#9/8ENDWENDWG00 X80 Z100 G00 X80 Z100 M05M05M
16、30 M30 用宏程序編制如圖所示拋物線的精加工程序。單元宏單元宏 用戶宏程序編程%3016%3016;精加工橢圓程序;精加工橢圓程序T0101T0101M03 S800M03 S800G00 X39 Z22G00 X39 Z22#1=60#1=60;A A點的角度點的角度#2=0#2=0;X X坐標坐標#3=0#3=0;Z Z坐標坐標WHILE #1 LE 120WHILE #1 LE 120;120120是通過計算得來的是通過計算得來的B B點角度點角度#2=2#2=2* *2323* *SIN#1SIN#1* *PI/180PI/180;直徑編程直徑編程#3=40#3=40* *COS#
17、1COS#1* *PI/180PI/180G64 G01 X#2 Z#3 F100G64 G01 X#2 Z#3 F100#1=#1+1#1=#1+1;步長取步長取1 1度度ENDWENDWG00 X100G00 X100Z100 M05Z100 M05M30 M30 單元宏單元宏 用戶宏程序編程單元宏單元宏 用戶宏程序編程單元宏單元宏 用戶宏程序編程單元宏單元宏 用戶宏程序編程1.包含變量2.包含算術或邏輯運算(=)的程序段3.包含控制語句(例如:GOTO,DO,END)的程序段4.包含宏程序調用指令(G65,G66,G67或其他G代碼,M代碼調用宏程序)的程序段單元宏單元宏 用戶宏程序編程
18、 FANUC數控系統(tǒng)變量表示形式為# 后跟14位數字,變量種類有四種:變量號變量類型功能單元宏單元宏 用戶宏程序編程變量號變量類型功能單元宏單元宏 用戶宏程序編程H代碼的幾何補償值G10L10P R ;D代碼的幾何補償值G10L12P R ;H代碼的磨損補償值G10L11P R ;D代碼的磨損補償值G10L13P R ;P:刀具補償號R:絕對值指令(G90)方式時的刀具補償值。增量值指令(G91)方式時的刀具補償值為該值與指定的刀具補償號的值相加。單元宏單元宏 用戶宏程序編程(n為順序號,199999)例:GOTO10為轉移到N10程序段。2. 條件轉移:(條件轉移:(IF語句)語句)1)IF
19、 條件表達式 GOTOn 當指定的條件表達式滿足時,轉移到標有順序號n的程序段,如果指定的條件表達式不滿足時,執(zhí)行下個程序段。單元宏單元宏 用戶宏程序編程2)IF 條件表達式 THEN當指定的條件表達式滿足時,執(zhí)行預先決定的宏程序語句。 例:IF #1EQ #2 THEN #3=0;3. WHILE 條件表達式 DO m; (m=1,2,3)條件滿足條件不滿足 ENDm注:循環(huán)允許嵌套,最多注:循環(huán)允許嵌套,最多3層,但不允許交叉層,但不允許交叉單元宏單元宏 用戶宏程序編程單元宏單元宏 用戶宏程序編程單元宏單元宏 用戶宏程序編程單元宏單元宏 用戶宏程序編程1. 非模態(tài)調用G65:格式: G65
20、 Pp Ll 其中 p:要調用的程序號 L:調用次數(默認為1) 自變量:數據傳遞到宏程序例:G65 P8000 L2 A10. B2.;調用2次程序號8000,經自變量A傳遞到宏程序#1=10;自變量B傳遞到宏程序#2=2。單元宏單元宏 用戶宏程序編程自變量指定自變量指定根據使用的字母,CNC系統(tǒng)自動地決定自變量指定的類型。地址不需要按字母順序指定。但應符合字地址的格式。但是,I,J 和K 需要按字母順序指定。單元宏單元宏 用戶宏程序編程自變量指定自變量指定根據使用的字母,系統(tǒng)自動決定自變量指定的類型。自變量指定用于傳遞諸如三維坐標值的變量。I,J,K 的下標用于確定自變量指定的順序,在實際
21、編程中不寫。單元宏單元宏 用戶宏程序編程如果自變量指定和自變量指定混合指定的話,后指定的自變量類型有效。單元宏單元宏 用戶宏程序編程2. 模態(tài)調用(G66):G66 Pp Ll ;程序點G67;(取消模態(tài))例:G66 P8000 L2 A10. B2.;G00 G90 Z-10.X-5.G67一旦發(fā)出G66 則指定模態(tài)調用,即指定沿移動軸移動的程序段后調用宏程序。移動到Z-10,調用2次程序號8000,移動到X-5,再調用2次程序號8000 。單元宏單元宏 用戶宏程序編程%1000%1000;長半軸;長半軸4040、短半軸、短半軸3030的橢圓的橢圓G54 G90 G00 Z30G54 G90
22、 G00 Z30M03 S800M03 S800G00 X45 Y-15 G00 X45 Y-15 ;Z3Z3G01 Z-5 F100G01 Z-5 F100#0=0#0=0;給角度給角度 賦賦0 0初值初值WHILE #0 LE 360WHILE #0 LE 360;#1=40#1=40* *COS#0COS#0* *PI/180PI/180;#2=30#2=30* *SIN#0SIN#0* *PI/180PI/180;G01 X#1 Y#2 G01 X#1 Y#2 ;# #0=#0+10=#0+1;ENDWENDWX45 Y15X45 Y15;G00 Z30G00 Z30X0 Y0 M05
23、X0 Y0 M05M30 M30 G54 G90 G00 Z30G54 G90 G00 Z30M03 S800M03 S800G00 X45 Y-15 G00 X45 Y-15 ;Z3Z3G01 Z-5 F100G01 Z-5 F100#10=0#10=0;給角度給角度 賦賦0 0初值初值WHILE #10 LE 360WHILE #10 LE 360 DO 1 DO 1;#1#11=401=40* *COS#10COS#10;# #12=3012=30* *SIN#10SIN#10;G01 X#11 Y#12 G01 X#11 Y#12 ;# #10=#10+110=#10+1;END 1E
24、ND 1X45 Y15X45 Y15;G00 Z30G00 Z30X0 Y0 M05X0 Y0 M05M30 M30 單元宏單元宏 用戶宏程序編程 與FANUC類似,但功能要弱一些。變量以“R”開始,如:R0、R1、R99。不包含系統(tǒng)變量,系統(tǒng)變量以 “$”開頭。一、格式:Rn (n的缺省取值范圍為0-99) 例如:R1 R2 R99二、運算符:單元宏單元宏 用戶宏程序編程單元宏單元宏 用戶宏程序編程1. 無條件跳轉GOTOB LABEL (向后跳轉,向程序頭跳轉)GOTOF LABEL (向前跳轉,向程序尾跳轉)2. 條件跳轉IF 表達式 GOTOB LABEL(向后跳轉,向程序頭跳轉)IF
25、 表達式 GOTOF LABEL(向前跳轉,向程序尾跳轉)LABEL 為程序段標示符單元宏單元宏 用戶宏程序編程IF R1R2 GOTOF MARKE1如果R1大于R2,那么跳躍到MARKE1 R7=(R8+R9)*743 GOTOB MARKE1作為條件的復合表達式IF R10 GOTOF MARK1允許確定一個變量(INT,REAL,BOOL或CHAR)。如果變量值為0(=FALSE),條件就不能滿足;對于所有其他值,條件為TRUE IF R1=0 GOTOF MARKE1 IF R1=1 GOTOF MARKE2 同一程序段中的幾個條件 單元宏單元宏 用戶宏程序編程單元宏單元宏 用戶宏程
26、序編程G54 G90 G00 Z30G54 G90 G00 Z30M03 S800M03 S800G00 X45 Y-15 G00 X45 Y-15 ;Z3Z3G01 Z-5 F100G01 Z-5 F100R10=0R10=0;給角度給角度 賦賦0 0初值初值AAAA:R11=40R11=40* *COS(R10)COS(R10);R12=30R12=30* *SIN(R10)SIN(R10);G01 X=R11 Y=R12 G01 X=R11 Y=R12 ;R10=R10+1R10=R10+1;IF R10= 360 GOTOB AAIF R10= 360 GOTOB AAX45 Y15X
27、45 Y15;G00 Z30G00 Z30X0 Y0 M05X0 Y0 M05M30 M30 長半軸長半軸4040、短半軸、短半軸3030的橢圓的橢圓G54 G90 G00 Z30G54 G90 G00 Z30M03 S800M03 S800G00 X45 Y-15 G00 X45 Y-15 ;Z3Z3G01 Z-5 F100G01 Z-5 F100#10=0#10=0;給角度給角度 賦賦0 0初值初值WHILE #10 LE 360WHILE #10 LE 360 DO 1 DO 1;#1#11=401=40* *COS#10COS#10;# #12=3012=30* *SIN#10SIN#10;G01 X#11 Y#12 G01 X#11 Y#12 ;# #10=#10+110=#10+1;END 1END 1X45 Y15X45 Y15;G00 Z30G00 Z30X0 Y0 M05X0 Y0 M05M30 M30
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
5. 裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。