數(shù)控加工中宏程序的編制方法業(yè)界薈萃_第1頁(yè)
數(shù)控加工中宏程序的編制方法業(yè)界薈萃_第2頁(yè)
數(shù)控加工中宏程序的編制方法業(yè)界薈萃_第3頁(yè)
數(shù)控加工中宏程序的編制方法業(yè)界薈萃_第4頁(yè)
數(shù)控加工中宏程序的編制方法業(yè)界薈萃_第5頁(yè)
已閱讀5頁(yè),還剩59頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、數(shù)控加工中宏程序的編制方法1行業(yè)知識(shí)fanuc宏程序簡(jiǎn)介 在數(shù)控編程中,宏程序編程靈活、高效、快捷。宏程序不僅可以實(shí)現(xiàn)象子程序那樣,對(duì)編制相同加工操作的程序非常有用,還可以完成子程序無(wú)法實(shí)現(xiàn)的特殊功能,例如,型腔加工宏程序、固定加工循環(huán)宏程序、球面加工宏程序、錐面加工宏程序等。 2行業(yè)知識(shí)fanuc宏程序特殊用法 宏程序還可以實(shí)現(xiàn)系統(tǒng)參數(shù)的控制,如,坐標(biāo)系的讀寫(xiě)、刀具偏置的讀寫(xiě)、時(shí)間信息的讀寫(xiě)、倍率開(kāi)關(guān)的控制等。 3行業(yè)知識(shí)siemens參數(shù)編程 與fanuc類似,但功能要弱一些。變量以“r”開(kāi)始,如:r0、r1、r99。不包含系統(tǒng)變量,系統(tǒng)變量以 “$”開(kāi)頭。4行業(yè)知識(shí)fanuc宏程序的構(gòu)成

2、 1) 包含變量2) 包含算術(shù)或邏輯運(yùn)算(=)的程序段3) 包含控制語(yǔ)句(例如:goto,do ,end)的程序段4) 包含宏程序調(diào)用指令(g65,g66, g67或其他g代碼,m代碼調(diào)用宏程 序)的程序段5行業(yè)知識(shí)fanuc宏程序的變量 fanuc數(shù)控系統(tǒng)變量表示形式為# 后跟14位數(shù)字,變量種類有四種:變量號(hào)變量類型功能#0空變量該變量總是空,沒(méi)有任何值能賦給該變量6行業(yè)知識(shí)fanuc宏程序的變量 變量號(hào)變量類型 功能#1#33局部變量 局部變量只能用在宏程序中存儲(chǔ)數(shù)據(jù),例如運(yùn)算結(jié)果。當(dāng)斷電時(shí)局部變量被初始化為空,調(diào)用宏程序時(shí)自變量對(duì)局部變量賦值。7行業(yè)知識(shí)fanuc宏程序的變量 變量號(hào)變

3、量類型功能#100#199#500#999公共變量 公共變量在不同的宏程序中的意義相同當(dāng)斷電時(shí)變量#100 #199初始化為空變量 #500 #999 的數(shù)據(jù)保存即使斷電也不丟失8行業(yè)知識(shí)fanuc宏程序的變量 變量號(hào)變量類型功能#1000系統(tǒng)變量 系統(tǒng)變量用于讀和寫(xiě)cnc 運(yùn)行時(shí)各種數(shù)據(jù)的變化例如刀具的當(dāng)前位置和補(bǔ)償值等9行業(yè)知識(shí)刀具補(bǔ)償存儲(chǔ)器c的系統(tǒng)變量當(dāng)偏置組數(shù)小于等于200時(shí),也可以用#2001#2400補(bǔ)償號(hào) 刀具長(zhǎng)度補(bǔ)償(h) 刀具半徑補(bǔ)償(d) 幾何補(bǔ)償磨損補(bǔ)償幾何補(bǔ)償磨損補(bǔ)償123:200:400 #11001(#2201)#11002(#2202)#11003(#2203):

4、#11200(#2400):#11400 #10001(#2001)#10002(#2002)#10003(#2003):#10200(#2200):#11400#13001#13002#13003:#13200:#13400#12001#12002#12003:#12200:#1240010行業(yè)知識(shí)刀具補(bǔ)償存儲(chǔ)器c用g10指令進(jìn)行設(shè)定p:刀具補(bǔ)償號(hào)r:絕對(duì)值指令(g90)方式時(shí)的刀具補(bǔ)償值。增量值指令(g91)方式時(shí)的刀具補(bǔ)償值為該值與指定的刀具補(bǔ)償號(hào)的值相加。h代碼的幾何補(bǔ)償值g10l10p r ;d代碼的幾何補(bǔ)償值g10l12p r ;h代碼的磨損補(bǔ)償值g10l11p r ;d代碼的磨損

5、補(bǔ)償值g10l13p r ;11行業(yè)知識(shí)自動(dòng)運(yùn)行控制的系統(tǒng)變量#3003單程序段輔助功能的完成0有效等待1無(wú)效等待2有效不等待3無(wú)效不等待12行業(yè)知識(shí)自動(dòng)運(yùn)行控制的系統(tǒng)變量#3004進(jìn)給暫停進(jìn)給速度倍率準(zhǔn)確停止0有效有效有效1無(wú)效有效有效2有效無(wú)效有效3無(wú)效無(wú)效有效4有效有效無(wú)效5無(wú)效有效無(wú)效6有效無(wú)效無(wú)效7無(wú)效無(wú)效無(wú)效13行業(yè)知識(shí)攻絲加工循環(huán)14行業(yè)知識(shí)工件原點(diǎn)偏移值的系統(tǒng)變量#5201:#5204第1軸外部工件零點(diǎn)偏移值:第4軸外部工件零點(diǎn)偏移值 #5221 :#5224第1軸g54工件零點(diǎn)偏移值:第4軸g54工件零點(diǎn)偏移值 #5241 :#5244第1軸g55工件零點(diǎn)偏移值:第4軸g55

6、工件零點(diǎn)偏移值 15行業(yè)知識(shí)工件原點(diǎn)偏移值的系統(tǒng)變量#5261:#5264 第1軸g56工件零點(diǎn)偏移值:第4軸g56工件零點(diǎn)偏移值#5281 :#5284第1軸g57工件零點(diǎn)偏移值:第4軸g57工件零點(diǎn)偏移值 #5301 :#5304第1軸g58工件零點(diǎn)偏移值:第4軸g58工件零點(diǎn)偏移值 16行業(yè)知識(shí)工件原點(diǎn)偏移值的系統(tǒng)變量#5321:#5324 第1軸g59工件零點(diǎn)偏移值:第4軸g59工件零點(diǎn)偏移值#7001 :#7004第1軸工件零點(diǎn)偏移值(g54.1p1):第4軸工件零點(diǎn)偏移值(g54.1p1) #7021 :#7024第1軸工件零點(diǎn)偏移值(g54.1p2):第4軸工件零點(diǎn)偏移值(g54

7、.1p2) 17行業(yè)知識(shí)工件原點(diǎn)偏移值的系統(tǒng)變量#7041 :#7044第1軸工件零點(diǎn)偏移值(g54.1p3):第4軸工件零點(diǎn)偏移值(g54.1p3) #7061 :#7064第1軸工件零點(diǎn)偏移值(g54.1p4):第4軸工件零點(diǎn)偏移值(g54.1p4) #7941 :#7944第1軸工件零點(diǎn)偏移值(g54.1p48):第4軸工件零點(diǎn)偏移值(g54.1p48) 18行業(yè)知識(shí)工件原點(diǎn)偏移值的系統(tǒng)變量軸功能變量號(hào)第一軸 外部工件零點(diǎn)偏移#2500#5201g54工件零點(diǎn)偏移#2501#5221g55工件零點(diǎn)偏移#2502#5241g56工件零點(diǎn)偏移#2503#5261g57工件零點(diǎn)偏移#2504#

8、5281g58工件零點(diǎn)偏移#2505#5301g59工件零點(diǎn)偏移 #2506#5321 19行業(yè)知識(shí)工件原點(diǎn)偏移值的系統(tǒng)變量軸功能變量號(hào)第二軸 外部工件零點(diǎn)偏移#2600#5202g54工件零點(diǎn)偏移#2601#5222g55工件零點(diǎn)偏移#2602#5242g56工件零點(diǎn)偏移#2603#5262g57工件零點(diǎn)偏移#2604#5282g58工件零點(diǎn)偏移#2605#5302g59工件零點(diǎn)偏移 #2606#5322 20行業(yè)知識(shí)工件原點(diǎn)偏移值的系統(tǒng)變量軸功能變量號(hào)第三軸 外部工件零點(diǎn)偏移#2700#5203g54工件零點(diǎn)偏移#2701#5223g55工件零點(diǎn)偏移#2702#5243g56工件零點(diǎn)偏移#

9、2703#5263g57工件零點(diǎn)偏移#2704#5283g58工件零點(diǎn)偏移#2705#5303g59工件零點(diǎn)偏移 #2706#5323 21行業(yè)知識(shí)工件原點(diǎn)偏移值的系統(tǒng)變量軸功能變量號(hào)第四軸 外部工件零點(diǎn)偏移#2800#5204g54工件零點(diǎn)偏移#2801#5224g55工件零點(diǎn)偏移#2802#5244g56工件零點(diǎn)偏移#2803#5264g57工件零點(diǎn)偏移#2804#5284g58工件零點(diǎn)偏移#2805#5304g59工件零點(diǎn)偏移 #2806#5324 22行業(yè)知識(shí)用g10改變工件坐標(biāo)系零點(diǎn)偏移值 格式:g10l2ppip ;p=0:外部工件零點(diǎn)偏移值p=1:工件坐標(biāo)系g54的零點(diǎn)偏移值p=

10、2:工件坐標(biāo)系g55的零點(diǎn)偏移值p=3:工件坐標(biāo)系g56的零點(diǎn)偏移值p=4:工件坐標(biāo)系g57的零點(diǎn)偏移值p=5:工件坐標(biāo)系g58的零點(diǎn)偏移值p=6:工件坐標(biāo)系g59的零點(diǎn)偏移值ip: 對(duì)于絕對(duì)值指令(g90),為每個(gè)軸的工件零點(diǎn)偏移值。對(duì)于增量值指令(g91),為每個(gè)軸加到設(shè)定的工件零點(diǎn)偏移值。23行業(yè)知識(shí)fanuc宏程序運(yùn)算符功能格式備注定義#i=#j加法#i=#j+#k減法#i =#j- #k乘法#i =#j*#k除法#i=#j/#k24行業(yè)知識(shí)fanuc宏程序運(yùn)算符功能格式備注正弦#i=sin#j角度以度指定,如9030表示為90.5度 反正弦#i=asin#j余弦#i=cos#j反余弦

11、#i=acos#j正切#i=tan#j反正切 #i=atan#j 25行業(yè)知識(shí)fanuc宏程序運(yùn)算符功能格式備注平方根#i=sqrt#j絕對(duì)值#i=abs#j舍入#i=round#j上取整#i=fix#j下取整#i=fup#j自然對(duì)數(shù)#i=ln#j指數(shù)函數(shù) #i=exp#j 26行業(yè)知識(shí)fanuc宏程序運(yùn)算符功能格式備注或#i=#j or #k邏輯運(yùn)算一位一位的按二進(jìn)制數(shù)執(zhí)行 異或#i=#j xor #k與 #i=#j and #k 從bcd轉(zhuǎn)為bin #i=bin#j用于與pmc的信號(hào)交換 從bin轉(zhuǎn)為bcd #i=bcd#j 27行業(yè)知識(shí)fanuc宏程序的轉(zhuǎn)移和循環(huán) 無(wú)條件轉(zhuǎn)移:goton

12、 (n為順序號(hào),199999)例:goto10為轉(zhuǎn)移到n10程序段 28行業(yè)知識(shí)fanuc宏程序的轉(zhuǎn)移和循環(huán) 條件轉(zhuǎn)移:(if語(yǔ)句)if 條件表達(dá)式 goton 當(dāng)指定的條件表達(dá)式滿足時(shí),轉(zhuǎn)移到標(biāo)有順序號(hào)n的程序段,如果指定的條件表達(dá)式不滿足時(shí),執(zhí)行下個(gè)程序段29行業(yè)知識(shí)fanuc宏程序的轉(zhuǎn)移和循環(huán) 條件轉(zhuǎn)移:(if語(yǔ)句)if 條件表達(dá)式 goton 30行業(yè)知識(shí)fanuc宏程序的轉(zhuǎn)移和循環(huán) if 條件表達(dá)式 then當(dāng)指定的條件表達(dá)式滿足時(shí),執(zhí)行預(yù)先決定的宏程序語(yǔ)句。例:if #1eq #2 then #3=0;31行業(yè)知識(shí)fanuc宏程序循環(huán)while 條件表達(dá)式 dom; (m=1,2,

13、3) 注:循環(huán)允許嵌套,最多3層,但不允許交叉;條件不滿足條件滿足 endm32行業(yè)知識(shí)fanuc宏程序循環(huán) 33行業(yè)知識(shí)fanuc宏程序循環(huán) 34行業(yè)知識(shí)fanuc宏程序循環(huán) 35行業(yè)知識(shí)fanuc宏程序的條件表達(dá)式運(yùn)算符 運(yùn)算符含義eq等于ne不等于gt大于ge大于或等于lt小于le小于或等于36行業(yè)知識(shí)fanuc宏程序的調(diào)用非模態(tài)調(diào)用g65:格式: g65ppll其中 p:要調(diào)用的程序號(hào) l:調(diào)用次數(shù)(默認(rèn)為1) 自變量:數(shù)據(jù)傳遞到宏程序37行業(yè)知識(shí)fanuc宏程序的調(diào)用模態(tài)調(diào)用(g66):g66ppll;程序點(diǎn)g67;(取消模態(tài))其中 p:要調(diào)用的程序號(hào) l:調(diào)用次數(shù)(默認(rèn)為1) 自變

14、量:數(shù)據(jù)傳遞到宏程序38行業(yè)知識(shí)fanuc宏程序的調(diào)用39行業(yè)知識(shí)fanuc宏程序的調(diào)用自變量指定40行業(yè)知識(shí)fanuc宏程序的g代碼調(diào)用程序號(hào)參數(shù)號(hào)o90106050o90116051o90126052o90136053o90146054o90156055o90166056o90176057o90186058o9019605941行業(yè)知識(shí)fanuc宏程序的g代碼調(diào)用42行業(yè)知識(shí)fanuc宏程序的m代碼調(diào)用程序號(hào)參數(shù)號(hào)o90206080o90216081o90226082o90236083o90246084o90256085o90266086o90276087o90286088o9029608

15、943行業(yè)知識(shí)fanuc宏程序中刀具半徑補(bǔ)償 44行業(yè)知識(shí)siemens參數(shù)編程 格式:rn (n的缺省取值范圍為0-99)例如:r1 r2 r9945行業(yè)知識(shí)siemens參數(shù)編程中的數(shù)學(xué)運(yùn)算符 46行業(yè)知識(shí)siemens參數(shù)編程中的數(shù)學(xué)運(yùn)算符 47行業(yè)知識(shí)siemens參數(shù)編程中的比較或邏輯運(yùn)算符 48行業(yè)知識(shí)siemens參數(shù)編程示例 49行業(yè)知識(shí)siemens參數(shù)編程程序跳轉(zhuǎn) 無(wú)條件跳轉(zhuǎn)gotob label (向后跳轉(zhuǎn),向程序頭跳轉(zhuǎn))gotof label (向前跳轉(zhuǎn),向程序尾跳轉(zhuǎn))label 為程序段標(biāo)示50行業(yè)知識(shí)siemens參數(shù)編程程序跳轉(zhuǎn) 條件跳轉(zhuǎn) if 表達(dá)式 gotob

16、 label (向后跳轉(zhuǎn),向程序頭跳轉(zhuǎn)) if 表達(dá)式 gotof label(向前跳轉(zhuǎn),向程序尾跳轉(zhuǎn))label 為程序段標(biāo)示51行業(yè)知識(shí)siemens參數(shù)編程程序跳轉(zhuǎn) if r1r2 gotof marke1如果r1大于r2,那么跳躍到marke1 r7=(r8+r9)*743 gotob marke1 作為條件的復(fù)合表達(dá)式if r10 gotof mark1允許確定一個(gè)變量(int,real,bool或char)。如果變量值為0(=false),條件就不能滿足;對(duì)于所有其他值,條件為true if r1=0 gotof marke1 if r1=1 gotof marke2 同一程序段中

17、的幾個(gè)條件 52行業(yè)知識(shí)宏程序示例 采用20r4銑刀加工sr30的球,已知球心坐標(biāo)為(x0y0z-5.)53行業(yè)知識(shí)宏程序示例 54行業(yè)知識(shí)宏程序示例 分析:銑球程序一般采用自動(dòng)編程來(lái)實(shí)現(xiàn),但是,利用宏程序強(qiáng)大的功能同樣也可以實(shí)現(xiàn),而且程序更加簡(jiǎn)潔。編程思路:銑球可以認(rèn)為是多個(gè)銑圓的組合。排刀分布:有兩種方案,一是按z向分布,二是按圓心角分布。從保證表面質(zhì)量來(lái)看,最佳方案為按圓心角分布。55行業(yè)知識(shí)宏程序示例 圓弧起點(diǎn)計(jì)算,從x正向開(kāi)始起刀。刀具根部r4的圓心在xz平面的運(yùn)動(dòng)軌跡為與r30等距的圓r34(見(jiàn)圖示中紅色軌跡),刀尖點(diǎn)上4mm處的軌跡(即褐色軌跡)為紅色軌跡沿x正向平移6毫米,刀尖

18、點(diǎn)坐標(biāo)為褐色軌跡沿z軸向下平移4mm(即綠色軌跡)。起始角度=arcsin(5+4)/34)=15.349起始位置x值=34*cos(15.349)+6=38.787起始位置z值=0 (通用表達(dá)式=34*sin(15.349)-5-4)56行業(yè)知識(shí)宏程序示例 變量定義: #1為圓心角,范圍由(15.349,90) #2為刀尖中心x值,=34*cos#1+6 #3為刀尖中心z值,=34*sin#1-5-457行業(yè)知識(shí)宏程序示例 fanucsiemensm03s3000;g00g90g54z100.;#1=15.349x50.y0;z10.;while#1 le 90 do1;#2=34*cos#

19、1+6;#3=34*sin#1-5-4;g01z#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;58行業(yè)知識(shí)宏程序示例 用20r10銑刀加工輪廓處r5圓角 59行業(yè)知識(shí)宏程序示例 g00x2.5y26.664g01g41d0

20、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.02

21、3i0.j15.g40g01x2.5y26.664下面為銑外形的一段程序,采用刀具半徑補(bǔ)償60行業(yè)知識(shí)宏程序示例 編程思路:利用g10指令修改刀具半徑偏置值來(lái)實(shí)現(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-1061行業(yè)知識(shí)宏程序示例 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.664g01g41d01x-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-1

溫馨提示

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

評(píng)論

0/150

提交評(píng)論