鄒軍:螺旋插補銑錐螺紋和錐孔,沒有接刀痕(附宏程序編程方法)


鄒軍:螺旋插補銑錐螺紋和錐孔,沒有接刀痕(附宏程序編程方法)

今天給大家分享一篇純乾貨的文章,以一個案例:螺旋插補銑錐孔的例子,來教大家一個編寫宏程序的關鍵點:邏輯推理

宏程序編程的邏輯推理關鍵點在於:推導出變量之間的關係式。

鄒軍:螺旋插補銑錐螺紋和錐孔,沒有接刀痕(附宏程序編程方法)

舉個例子,前段時間有師傅在數控銑床上面加工孔口倒角,雖然是孔口倒角,但他乾的是航天產品,質量要求比較高。他用的是倒角刀具,直接紮下去。


鄒軍:螺旋插補銑錐螺紋和錐孔,沒有接刀痕(附宏程序編程方法)

這麼做的結果:

1, 孔口產生了毛刺,影響產品質量

2, 刀具費用有點高,因為用的是專用倒角刀具

鄒軍:螺旋插補銑錐螺紋和錐孔,沒有接刀痕(附宏程序編程方法)

那麼,提高產品質量的改進的方法有哪些呢?

其中從編程角度來講,其中有一種方法那就是: 螺旋插補銑走刀

1, 孔和倒角可以用一把標準刀具,都採用螺旋插補銑的方式,一次銑出來,避免倒角和孔有接刀痕以及毛刺等的產生。

2, 要求程序通用性好,一個程序要滿足不同尺寸的倒角。後面再次加工不同大小的孔,不同角度的錐面,刀具直徑如果變化等都可以用此程序搞定。


這兩點,如何通過數控編程宏程序來實現呢?

這是我今天分享的重點:邏輯推理

以螺旋插補銑錐孔為例(螺旋插補銑孔以及孔口倒圓弧以前分享過不再贅述,如需要聯繫,我把50頁的PPT送給你)。


邏輯推理關鍵點在於:推導出變量之間的數學關係式

讓數學關係式來參與運算,從而完成程序的編輯!

這麼講空泛,具體看下面簡圖,思考一個問題:

鄒軍:螺旋插補銑錐螺紋和錐孔,沒有接刀痕(附宏程序編程方法)

假如設置點P 是圓弧上面的任一點,它的X,Y,Z座標我們用機床識別的宏變量:#24 ,#25,#3分別表示。

你如何計算出#24 ,#25,#3的數學關係式呢?也就是圓錐上面任一點的點位座標呢?


在一個直角三角形中,根據三角函數,夾角#1和邊的關係,可以推出以下關係:

#24=#18*COS[#1]

#25= #18*SIN[#1]

因為由夾角#1的轉動,就會繪製出一個半徑為#18的圓弧

這就是簡單的邏輯關係, 由夾角#1的取值範圍不同,那麼就會有對應的圓弧

比如:

讓#1從0 ~180 自增運算,執行下面程序就是半圓了。

鄒軍:螺旋插補銑錐螺紋和錐孔,沒有接刀痕(附宏程序編程方法)

比如:

#1取值的範圍從從0 ~270 ,執行下面程序就就走出一個3/4的圓了。


鄒軍:螺旋插補銑錐螺紋和錐孔,沒有接刀痕(附宏程序編程方法)

比如:

#1 從0 ~360 ,就是一個整圓了。


鄒軍:螺旋插補銑錐螺紋和錐孔,沒有接刀痕(附宏程序編程方法)

好,我們要X,Y,Z三軸聯動螺旋插補銑錐,而不是在一個平面上走圓弧

試想2個問題:

第1個:關於變量#3(Z方向)關係式的推算 (隨著#1的變化而變化)

#1自增 ,範圍0~360將會是一個整圓,那麼#1自增的過程 同時讓Z方向的數值也逐漸變化 。如果我把#1的數值 直接賦值給#3 ,即:#3=#1

上面程序中的G01X#24Y#25 添加一個Z-#3 ,不就完成了一個圓的螺旋線了嗎!

那麼,我們看#1的數值 直接賦值給#3,(Z方向)會是什麼情況?

當#1=0的時候 #3 也就等於0

當#1=1的時候 #3 也就等於1

當#1自增到360的時候, #3的數值也就等於了360

G01X#24Y#25Z-#3

也就是走一整圓的同時#3(Z方向)下降了-360

每走一圈我想讓Z方向下降1mm,怎麼辦呢?

如下關係式:

#3=#1/360

很容易推算出來,即給#1除了一個係數360

#3=#1/360 當#1自增到360時候, #1/360運算的數值也就賦值給了#3

比如,我們看下面程序段:

#1自增,範圍0~360,也就是一圈圓,Z下降了1mm。

#1自增,範圍為0~720,也就是2圈圓,Z下降了2mm。


2、關於圓錐上面任一 P點 X Y算數式的推算

#24=#18*COS[#1]

#25= #18*SIN[#1]

這是銑圓,但是三軸聯動螺旋插補銑錐孔,

隨著Z的下降,半徑(#18)也會變化


鄒軍:螺旋插補銑錐螺紋和錐孔,沒有接刀痕(附宏程序編程方法)

AN[#6]=#2/#3 可以計算出

#2= TAN[#6]* #3


好,這個#2就是變化量,因#3(Z方向的下刀深度)變化而變化

關係式為:#2= TAN[#6]* #3 (備註:#6代表錐度變量)

那麼圓錐上面任一 P點 X Y算數式為:

#24=[#18-#2]*COS[#1]

#25=[#18-#2]*SIN[#1]

這才是圓錐上任一點P的X, Y座標 。


推算出了圓錐上任一點P的X、 Y還有Z座標算數式:

#3=#1/360 (每走一圈,Z的下降的深度)

那麼,很快就可以完成零件的編程。

比如

#1自增的範圍圍0~3600,也就是10圈圓,Z下降了10mm

備註:

變量#18代表圓弧的半徑值,

並沒有把刀具計算在內

給#18賦值的時候需要計算即:#18=(倒角直徑-刀具直徑為)/2

我可以單獨設置兩個變量,分別代表倒角直徑,刀具直徑,比如下圖:


鄒軍:螺旋插補銑錐螺紋和錐孔,沒有接刀痕(附宏程序編程方法)

#7 代表 倒角大端直徑

#20 代表刀具直徑


鄒軍:螺旋插補銑錐螺紋和錐孔,沒有接刀痕(附宏程序編程方法)

根據倒角的大小,刀具的直徑,要加工的錐度大小,分別給#7,#20,#6賦值即可。


好,你有沒有發現,上面程序中

1, 設置的變量#3=#1/360 每圈下降的深度是固定的,即1mm

2, 零件Z方向的總深度,是由#1來決定的

1圈圓弧,#1的範圍是0-360

2圈圓弧,#1的範圍是0-720

……

10圈圓弧,#1的範圍是0-3600

由上面兩點,每圈切深和總圈數決定了要加工的倒角總深度

實際上,我們希望直接給變量賦值,來決定我們要加工的總深度,而不是什麼圈數。比如在程序中設置一個變量#26代表零件Z方向的總深度。

鄒軍:螺旋插補銑錐螺紋和錐孔,沒有接刀痕(附宏程序編程方法)

設置一個變量#4代表每圈下刀深度

那麼#26/#4 就代表要走的圈數

#5=FUP[#26/#4] 圈數取整

備註:

FUP是宏程序中的一個取整函數,什麼意思?

運算式計算的結果如果有小數,把小數部分變為整數1,並加到整數部分

比如,

#26=16(零件深度)

#4=2.2 (每圈切深)

16/2.2=7.272

那麼#5=FUP[#26/#4]

#5的結果為8(#26/#4運算的數值,小數部分變為整數1,並加到整數部分 )

好,變量之間的推理就分享到這兒,直接上部分程序:


鄒軍:螺旋插補銑錐螺紋和錐孔,沒有接刀痕(附宏程序編程方法)

我是鄒軍,長期分享數控編程,加工小技巧!關注鄒軍愛數控,拿福利,再學乾貨!


分享到:


相關文章: