數(shù)控加工中宏程序的編制方法_第1頁
數(shù)控加工中宏程序的編制方法_第2頁
數(shù)控加工中宏程序的編制方法_第3頁
數(shù)控加工中宏程序的編制方法_第4頁
數(shù)控加工中宏程序的編制方法_第5頁
已閱讀5頁,還剩61頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、數(shù)控加工中宏程序的編制方法首都航天機械公司商學(xué)謙FANUC宏程序簡介 在數(shù)控編程中,宏程序編程靈活、高效、快捷。宏程序不僅可以實現(xiàn)象子程序那樣,對編制相同加工操作的程序非常有用,還可以完成子程序無法實現(xiàn)的特殊功能,例如,型腔加工宏程序、固定加工循環(huán)宏程序、球面加工宏程序、錐面加工宏程序等。 FANUC宏程序特殊用法 宏程序還可以實現(xiàn)系統(tǒng)參數(shù)的控制,如,坐標系的讀寫、刀具偏置的讀寫、時間信息的讀寫、倍率開關(guān)的控制等。 SIEMENS參數(shù)編程 與FANUC類似,但功能要弱一些。變量以“R”開始,如:R0、R1、R99。不包含系統(tǒng)變量,系統(tǒng)變量以 “$”開頭。FANUC宏程序的構(gòu)成 1) 包含變量2

2、) 包含算術(shù)或邏輯運算(=)的程序段3) 包含控制語句(例如:GOTO,DO ,END)的程序段4) 包含宏程序調(diào)用指令(G65,G66, G67或其他G代碼,M代碼調(diào)用宏程 序)的程序段FANUC宏程序的變量 FANUC數(shù)控系統(tǒng)變量表示形式為# 后跟14位數(shù)字,變量種類有四種:變量號變量類型功能#0空變量該變量總是空,沒有任何值能賦給該變量FANUC宏程序的變量 變量號變量類型 功能#1#33局部變量 局部變量只能用在宏程序中存儲數(shù)據(jù),例如運算結(jié)果。當斷電時局部變量被初始化為空,調(diào)用宏程序時自變量對局部變量賦值。FANUC宏程序的變量 變量號變量類型功能#100#199#500#999公共變

3、量 公共變量在不同的宏程序中的意義相同當斷電時變量#100 #199初始化為空變量 #500 #999 的數(shù)據(jù)保存即使斷電也不丟失FANUC宏程序的變量 變量號變量類型功能#1000系統(tǒng)變量 系統(tǒng)變量用于讀和寫CNC 運行時各種數(shù)據(jù)的變化例如刀具的當前位置和補償值等刀具補償存儲器C的系統(tǒng)變量當偏置組數(shù)小于等于200時,也可以用#2001#2400補償號 刀具長度補償(H) 刀具半徑補償(D) 幾何補償磨損補償幾何補償磨損補償123:200:400 #11001(#2201)#11002(#2202)#11003(#2203):#11200(#2400):#11400 #10001(#2001)

4、#10002(#2002)#10003(#2003):#10200(#2200):#11400#13001#13002#13003:#13200:#13400#12001#12002#12003:#12200:#12400刀具補償存儲器C用G10指令進行設(shè)定P:刀具補償號R:絕對值指令(G90)方式時的刀具補償值。增量值指令(G91)方式時的刀具補償值為該值與指定的刀具補償號的值相加。H代碼的幾何補償值G10L10P R ;D代碼的幾何補償值G10L12P R ;H代碼的磨損補償值G10L11P R ;D代碼的磨損補償值G10L13P R ;自動運行控制的系統(tǒng)變量#3003單程序段輔助功能的完

5、成0有效等待1無效等待2有效不等待3無效不等待自動運行控制的系統(tǒng)變量#3004進給暫停進給速度倍率準確停止0有效有效有效1無效有效有效2有效無效有效3無效無效有效4有效有效無效5無效有效無效6有效無效無效7無效無效無效攻絲加工循環(huán)工件原點偏移值的系統(tǒng)變量#5201:#5204第1軸外部工件零點偏移值:第4軸外部工件零點偏移值 #5221 :#5224第1軸G54工件零點偏移值:第4軸G54工件零點偏移值 #5241 :#5244第1軸G55工件零點偏移值:第4軸G55工件零點偏移值 工件原點偏移值的系統(tǒng)變量#5261:#5264 第1軸G56工件零點偏移值:第4軸G56工件零點偏移值#5281

6、 :#5284第1軸G57工件零點偏移值:第4軸G57工件零點偏移值 #5301 :#5304第1軸G58工件零點偏移值:第4軸G58工件零點偏移值 工件原點偏移值的系統(tǒng)變量#5321:#5324 第1軸G59工件零點偏移值:第4軸G59工件零點偏移值#7001 :#7004第1軸工件零點偏移值(G54.1P1):第4軸工件零點偏移值(G54.1P1) #7021 :#7024第1軸工件零點偏移值(G54.1P2):第4軸工件零點偏移值(G54.1P2) 工件原點偏移值的系統(tǒng)變量#7041 :#7044第1軸工件零點偏移值(G54.1P3):第4軸工件零點偏移值(G54.1P3) #7061

7、:#7064第1軸工件零點偏移值(G54.1P4):第4軸工件零點偏移值(G54.1P4) #7941 :#7944第1軸工件零點偏移值(G54.1P48):第4軸工件零點偏移值(G54.1P48) 工件原點偏移值的系統(tǒng)變量軸功能變量號第一軸 外部工件零點偏移#2500#5201G54工件零點偏移#2501#5221G55工件零點偏移#2502#5241G56工件零點偏移#2503#5261G57工件零點偏移#2504#5281G58工件零點偏移#2505#5301G59工件零點偏移 #2506#5321 工件原點偏移值的系統(tǒng)變量軸功能變量號第二軸 外部工件零點偏移#2600#5202G54工

8、件零點偏移#2601#5222G55工件零點偏移#2602#5242G56工件零點偏移#2603#5262G57工件零點偏移#2604#5282G58工件零點偏移#2605#5302G59工件零點偏移 #2606#5322 工件原點偏移值的系統(tǒng)變量軸功能變量號第三軸 外部工件零點偏移#2700#5203G54工件零點偏移#2701#5223G55工件零點偏移#2702#5243G56工件零點偏移#2703#5263G57工件零點偏移#2704#5283G58工件零點偏移#2705#5303G59工件零點偏移 #2706#5323 工件原點偏移值的系統(tǒng)變量軸功能變量號第四軸 外部工件零點偏移#2

9、800#5204G54工件零點偏移#2801#5224G55工件零點偏移#2802#5244G56工件零點偏移#2803#5264G57工件零點偏移#2804#5284G58工件零點偏移#2805#5304G59工件零點偏移 #2806#5324 用G10改變工件坐標系零點偏移值 格式:G10L2PpIP ;P=0:外部工件零點偏移值P=1:工件坐標系G54的零點偏移值P=2:工件坐標系G55的零點偏移值P=3:工件坐標系G56的零點偏移值P=4:工件坐標系G57的零點偏移值P=5:工件坐標系G58的零點偏移值P=6:工件坐標系G59的零點偏移值IP: 對于絕對值指令(G90),為每個軸的工件

10、零點偏移值。對于增量值指令(G91),為每個軸加到設(shè)定的工件零點偏移值。FANUC宏程序運算符功能格式備注定義#i=#j加法#i=#j+#k減法#i =#j- #k乘法#i =#j*#k除法#i=#j/#kFANUC宏程序運算符功能格式備注正弦#i=SIN#j角度以度指定,如9030表示為90.5度 反正弦#i=ASIN#j余弦#i=COS#j反余弦#i=ACOS#j正切#i=TAN#j反正切 #i=ATAN#j FANUC宏程序運算符功能格式備注平方根#i=SQRT#j絕對值#i=ABS#j舍入#i=ROUND#j上取整#i=FIX#j下取整#i=FUP#j自然對數(shù)#i=LN#j指數(shù)函數(shù) #

11、i=EXP#j FANUC宏程序運算符功能格式備注或#i=#j OR #k邏輯運算一位一位的按二進制數(shù)執(zhí)行 異或#i=#j XOR #k與 #i=#j AND #k 從BCD轉(zhuǎn)為BIN #i=BIN#j用于與PMC的信號交換 從BIN轉(zhuǎn)為BCD #i=BCD#j FANUC宏程序的轉(zhuǎn)移和循環(huán) 無條件轉(zhuǎn)移:GOTOn (n為順序號,199999)例:GOTO10為轉(zhuǎn)移到N10程序段 FANUC宏程序的轉(zhuǎn)移和循環(huán) 條件轉(zhuǎn)移:(IF語句)IF 條件表達式 GOTOn 當指定的條件表達式滿足時,轉(zhuǎn)移到標有順序號n的程序段,如果指定的條件表達式不滿足時,執(zhí)行下個程序段FANUC宏程序的轉(zhuǎn)移和循環(huán) 條件轉(zhuǎn)

12、移:(IF語句)IF 條件表達式 GOTOn FANUC宏程序的轉(zhuǎn)移和循環(huán) IF 條件表達式 THEN當指定的條件表達式滿足時,執(zhí)行預(yù)先決定的宏程序語句。例:IF #1EQ #2 THEN #3=0;FANUC宏程序循環(huán)WHILE 條件表達式 Dom; (m=1,2,3) 注:循環(huán)允許嵌套,最多3層,但不允許交叉;條件不滿足條件滿足 ENDmFANUC宏程序循環(huán) FANUC宏程序循環(huán) FANUC宏程序循環(huán) FANUC宏程序的條件表達式運算符 運算符含義EQ等于NE不等于GT大于GE大于或等于LT小于LE小于或等于FANUC宏程序的調(diào)用非模態(tài)調(diào)用G65:格式: G65PpLl其中 p:要調(diào)用的程

13、序號 L:調(diào)用次數(shù)(默認為1) 自變量:數(shù)據(jù)傳遞到宏程序FANUC宏程序的調(diào)用模態(tài)調(diào)用(G66):G66PpLl;程序點G67;(取消模態(tài))其中 p:要調(diào)用的程序號 L:調(diào)用次數(shù)(默認為1) 自變量:數(shù)據(jù)傳遞到宏程序FANUC宏程序的調(diào)用FANUC宏程序的調(diào)用自變量指定FANUC宏程序的G代碼調(diào)用程序號參數(shù)號O90106050O90116051O90126052O90136053O90146054O90156055O90166056O90176057O90186058O90196059FANUC宏程序的G代碼調(diào)用FANUC宏程序的M代碼調(diào)用程序號參數(shù)號O90206080O90216081O90

14、226082O90236083O90246084O90256085O90266086O90276087O90286088O90296089FANUC宏程序中刀具半徑補償 SIEMENS參數(shù)編程 格式:Rn (n的缺省取值范圍為0-99)例如:R1 R2 R99SIEMENS參數(shù)編程中的數(shù)學(xué)運算符 SIEMENS參數(shù)編程中的數(shù)學(xué)運算符 SIEMENS參數(shù)編程中的比較或邏輯運算符 SIEMENS參數(shù)編程示例 SIEMENS參數(shù)編程程序跳轉(zhuǎn) 無條件跳轉(zhuǎn)GOTOB LABEL (向后跳轉(zhuǎn),向程序頭跳轉(zhuǎn))GOTOF LABEL (向前跳轉(zhuǎn),向程序尾跳轉(zhuǎn))LABEL 為程序段標示SIEMENS參數(shù)編程程序

15、跳轉(zhuǎn) 條件跳轉(zhuǎn) IF 表達式 GOTOB LABEL (向后跳轉(zhuǎn),向程序頭跳轉(zhuǎn)) IF 表達式 GOTOF LABEL(向前跳轉(zhuǎn),向程序尾跳轉(zhuǎn))LABEL 為程序段標示SIEMENS參數(shù)編程程序跳轉(zhuǎn) IF R1R2 GOTOF MARKE1如果R1大于R2,那么跳躍到MARKE1 R7=(R8+R9)*743 GOTOB MARKE1 作為條件的復(fù)合表達式IF R10 GOTOF MARK1允許確定一個變量(INT,REAL,BOOL或CHAR)。如果變量值為0(=FALSE),條件就不能滿足;對于所有其他值,條件為TRUE IF R1=0 GOTOF MARKE1 IF R1=1 GOTOF

16、 MARKE2 同一程序段中的幾個條件 宏程序示例 采用20R4銑刀加工SR30的球,已知球心坐標為(X0Y0Z-5.)宏程序示例 宏程序示例 分析:銑球程序一般采用自動編程來實現(xiàn),但是,利用宏程序強大的功能同樣也可以實現(xiàn),而且程序更加簡潔。編程思路:銑球可以認為是多個銑圓的組合。排刀分布:有兩種方案,一是按Z向分布,二是按圓心角分布。從保證表面質(zhì)量來看,最佳方案為按圓心角分布。宏程序示例 圓弧起點計算,從X正向開始起刀。刀具根部R4的圓心在XZ平面的運動軌跡為與R30等距的圓R34(見圖示中紅色軌跡),刀尖點上4mm處的軌跡(即褐色軌跡)為紅色軌跡沿X正向平移6毫米,刀尖點坐標為褐色軌跡沿Z

17、軸向下平移4mm(即綠色軌跡)。起始角度=ARCSIN(5+4)/34)=15.349起始位置X值=34*COS(15.349)+6=38.787起始位置Z值=0 (通用表達式=34*sin(15.349)-5-4)宏程序示例 變量定義: #1為圓心角,范圍由(15.349,90) #2為刀尖中心X值,=34*COS#1+6 #3為刀尖中心Z值,=34*SIN#1-5-4宏程序示例 FANUCSIEMENSM03S3000;G00G90G54Z100.;#1=15.349X50.Y0;Z10.;WHILE#1 LE 90 DO1;#2=34*COS#1+6;#3=34*SIN#1-5-4;G0

18、1Z#3F900;X#2;G02X#2Y0I-#2J0;#1=#1+1;END1;G00Z100.;M30;M03S3000;G00G90G54Z100.;R1=15.349X50.Y0;Z10.;LABEL:R2=34*COS(R1)+6;R3=34*SIN(R1)-5-4;G01Z=R3F900;X=R2;G02X=R2Y0I=-R2J0;R1=R1+1;IF R1=90 GOTOB LABELG00Z100.;M30;宏程序示例 用20R10銑刀加工輪廓處R5圓角 宏程序示例 G00X2.5Y26.664G01G41D01X-8.991Y2.023G03X2.5Y-3.336I11.49

19、1J9.641X32.969Y-.208I0.J150.G02X44.955Y-10.952I2.031J-9.792G03Y-49.048I199.09J-19.048G02X33.452Y-59.88I-9.955J-.952G03X-28.452I-30.952J-197.59G02X-39.922Y-48.75I-1.548J9.88G03Y-11.25I-148.823J18.75G02X-27.969Y-.208I9.922J1.25G03X2.5Y-3.336I30.469J146.872X13.991Y2.023I0.J15.G40G01X2.5Y26.664下面為銑外形的一段

20、程序,采用刀具半徑補償宏程序示例 編程思路:利用G10指令修改刀具半徑偏置值來實現(xiàn)倒圓角。G10格式為G10L12P1R ,其中,P1表示修改D01,R后為刀具半徑偏置值。設(shè)定倒角的圓心角為變量#1,取值范圍為0-90設(shè)定#2為刀具半徑偏置值,取值=COS#1*15-5設(shè)定#3為Z值,取值=SIN#1*5+10-5-10宏程序示例 M03S3000G00G90G54Z100.#1=0X2.5Y26.64Z5.WHILE #1 LE 90 DO1#2= COS#1*15-5#3= SIN#1*5+10-5-10G10L12P1R#2G01Z#3F900G00X2.5Y26.664G01G41D0

21、1X-8.991Y2.023G03X2.5Y-3.336I11.491J9.641X32.969Y-.208I0.J150.G02X44.955Y-10.952I2.031J-9.792G03Y-49.048I199.09J-19.048G02X33.452Y-59.88I-9.955J-.952G03X-28.452I-30.952J-197.59G02X-39.922Y-48.75I-1.548J9.88G03Y-11.25I-148.823J18.75G02X-27.969Y-.208I9.922J1.25G03X2.5Y-3.336I30.469J146.872X13.991Y2.023I0.J15.G40G01X2.5Y26.664#1=#1+5END1G00Z100.M30宏程序示例(銑圓) #1=圓心坐標X值#2=圓心坐標Y值#3=園孔

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論