|
經(jīng)常有朋友問我,如何學(xué)數(shù)控宏編程? 復(fù)雜的事情簡單化,簡單的事情流程化 比如面對一張產(chǎn)品圖,尤其是復(fù)雜的,一看都懵 其實(shí)世上無難事,只要肯分解。 工藝員主要就是干這事情的,把產(chǎn)品圖分解成工序圖,在細(xì)分每序如何裝夾,用什么刀具,量具等等都會確定下來,從而形成工藝文件。 有了這個工藝文件,組織生產(chǎn)加工零件就容易多了,照著流程做就行了。 這個流程可以大幅度減少我犯錯的概率,讓我把做事情的難度降低好多倍。 知道流程化的威力后,回到數(shù)控編程上面來,清風(fēng)傳授大家一個兩步編寫宏程序的流程。 兩步教你編寫宏程序 第一步:設(shè)定確定變量關(guān)系 在編寫宏程序前,不知道從哪兒下手,先別管其它的,復(fù)雜的事情簡單化,先從清風(fēng)告訴的第一步開始,拿出筆和紙,設(shè)定變量,并找出各變量之間的關(guān)系,列出變量之間的數(shù)學(xué)算式。 第二步:套用宏案例 能不能編寫出宏程序,就看你心中有沒有學(xué)到手的宏案例,然后套用案例即可。采用變量來控制銑削的深度,編程時只需要編寫一層的程序,從而加工出需要的深度。如下圖: 掌握了分層銑的這個案例,現(xiàn)在要編寫一個類似程序,設(shè)置變量等然后套用鄒軍給你提供的案例即可。 比如上圖分層銑的例子 第一步:設(shè)定確定變量關(guān)系 銑一圈,刀具Z向下降一定深度,然后在銑一圈,Z向下降再下降一定深度, 依次類推至到銑到加工深度為止。 如果我用一個變量來代替銑削深度,比如#1,設(shè)置每層下1mm,那么#1=#1-1(讓變量#1自運(yùn)算,每運(yùn)算一次#1的數(shù)值減少1),開始執(zhí)行的時候給#1賦值為0,作為運(yùn)算起點(diǎn)。 第一步設(shè)定確定的變量關(guān)系如下: #1=0 #1=#1-1 第二步:套用宏案例 如下是分層銑的主要結(jié)構(gòu) WHILE [ ]DO1 #1=#1-1 …… …… 加工程序 …… …… END1 第一步,設(shè)置了#1代表銑削深度,假如零件總深-10,(總深也可以設(shè)置個變量)讓#1與總深做比較,即#1LE-10 當(dāng)中括號中的表達(dá)式成立,就依次執(zhí)行WHILE到END1之間的程序段。也就實(shí)現(xiàn)了分層加工。 在比如下面這個案例:在數(shù)銑上加工半徑為SR10的球面。選取D12的銑刀 第一步:設(shè)定確定變量關(guān)系 采用G02順銑每銑一圈,刀具下降一定深度再銑一圈,依次類推至到銑到加工深度為止(也就是軟件編程中的等高環(huán)繞加工方法) 如果我用一個變量來代替銑削深度,比如#1,設(shè)置每層下0.1mm,那么#1=#1+0.1(讓變量#1自運(yùn)算,每運(yùn)算一次#1的數(shù)值增加0.1) #1=_____初始變量賦值 #1=#1+0.1 每層切0.1深 有了我設(shè)定的初始下刀深度#1,可以推算出Z方向的遞減數(shù)值,設(shè)為#3,可以推算出#3=10-#1(如下圖)比如初始下刀深度為1mm即 #1=1 ,那么#3的值9。 知道了#3,那么球面Z坐標(biāo)對應(yīng)的X坐標(biāo)滿足#22+#32=102這個數(shù)學(xué)關(guān)系式 可以推算出: FANUC系統(tǒng)開平方根為SQRT 所以: 第二步:套用宏案例 如套用你掌握的分層銑案例 WHILE [ ]DO1 #1=#1-1 …… …… 加工程序 …… …… END1 開始編程 O0001 G40G49G80G90 G0X-18Y0(下刀點(diǎn)) Z5M08 #1=0(刀具Z向初始下刀0.5mm) WHILE[#1LE10]DO1(當(dāng)下刀深度小于等于10時,執(zhí)行DO到END之間的程序 #3=10-#1(給#3賦值,Z方向遞減) #2=SQRT[100-#3*#3](計算X方向數(shù)值) #1=#1+0.1(每層切0.1深) G1Z-#1F100(Z方向的進(jìn)刀) G41G1X-#2F120D1(X方向定位加工采用左刀補(bǔ)) G2I#2(順時針銑削) G1G40X-18Y0(取消刀補(bǔ)) END1 G1Z5. M30 程序仿真: |
|
|