羅蓋仙 发表于 2013-2-28 18:32:12

夾杂兩種孔,當共同位置時,不會重複钻會跳

本帖最后由 羅蓋仙 于 2013-2-28 20:30 编辑

共同位置孔(不重複钻)會跳

最近小弟我在研究钻孔,假設在水平上每50mm钻一孔共钻4孔
;夾杂了每40mm钻一孔共钻5孔,
但是你會發現最後一孔重疊孔,不钻它.因為有钻過了

一般人會先钻50mmX4孔之後再钻40mmX4孔....或者先钻40mmX5孔
再去钻50mmX3孔
我有個怪胎的想法,先到先钻....有重複它會判斷去钻下一孔
無論要钻幾孔兩者相遇幾次不會1孔钻2次


O1234
G81 K0(FANUC)L0(三菱)
G65P1A0.B0.I50.J40.K8.H10.Y10.
G80

A.B起始點(起角.X分為兩個)
I.J(孔距增量)
K.H(孔數)
Y(高度)

#13=#6(孔轉移)
#23=#11
#31=#1(起點轉移)
#32=#2

IF[#1GT#2]GO20(如果A的起點(角)大於B.先做小B)

N10 WH[[#13GE1.]AND[#31LE#32]]DO1(A孔數 AND #1小於或等於#2在此層次循環)
G90 X#31 Y#25
#13=#13-1.
#31=#1+#4*[#6-#13] (A+I起角更新)
IF[#32NE#31-#4]GO15 (如果B等下要钻的點.與當前A钻的同點.B演算下面.A判斷是否繼續钻)
#23=#23-1. (B孔數-1.孔)
#32=#32+#5 (B距離更新一個J增量)
N15 END1

N20 WH[[#23GE1.]AND[#32LE#31]]DO2(B孔數 AND #2小於或等於#1在此層次循環)
G90 X#32 Y#25
#23=#23-1.
#32=#2+#5*[#11-#23] (B+J起角更新)
IF[#31NE#32-#5]GO25 (如果A等下要钻的點.與當前B钻的同點.A演算下面.B判斷是否繼續钻)
#13=#13-1. (A孔數-1.孔)
#31=#31+#4 (A距離更新一個I增量)
N25 END2
IF[#13GE1.]GO10(A孔數未到跳回去N10)
IF[#23GE1.]GO20(B孔數未到跳回去N20)
M0

適用於
夾杂兩種角度的圓周孔(在同一半徑上)或
夾杂兩種孔距的直排孔(在同一水平線上)皆可參考

有沒有懂,懂之後有更好的方式,請您指點:)

xinsuixue521 发表于 2013-3-1 11:53:18

LZ脑子真好使,研究宏程序研究的不错。

羅蓋仙 发表于 2013-3-2 10:20:12

回复 2# xinsuixue521


謝謝啦!小弟不敢當...不敢當:loveliness:

vinney777 发表于 2013-3-2 15:41:19

不错,学习,不过此种想法很难在软件上自动实现

1426437527 发表于 2021-8-23 12:43:22

不错,学习一下啊

744439842 发表于 2021-10-18 00:40:19


LZ脑子真好使,研究宏程序研究的不错。
页: [1]
查看完整版本: 夾杂兩種孔,當共同位置時,不會重複钻會跳