找回密码
 立即注册

QQ登录

只需一步,快速开始

微信扫码登录

搜索
查看: 16012|回复: 150

[原创] 螺旋铣削宏优化(第五版,最终版!)

 火.. [复制链接]

15

主题

390

回帖

3001

积分

中尉

积分
3001

灌水王

发表于 2017-12-24 14:16:16 | 显示全部楼层 |阅读模式
本帖最后由 tstec* 于 2017-12-24 14:18 编辑

螺旋铣削宏优化(第五版,最终版!)本版本之后若无重要错误则不再更新了。

本次更新修正了多处错误,功能上不变。
历史版本此次就不再添加传送链接了。毕竟历史版本有错误。使用以本次版本为最好。

使用格式:G133X_Y_Z_R_Q_C_D_K_F_
使用说明:
1. 支持Z值与R值,高低位置不限定。均从R值起始螺旋。
2. Q值为固定螺距,不必区分螺距整除。
3. K值有四种状态可选:K02,K03,K12,K13
十位为0表示螺纹末尾添加清理刀路为1表示不添加
个位为2表示顺时针螺旋,为3表示逆时针螺旋
当K值缺省时,则默认K03即逆时针螺旋带清理刀路
4.F值可以指定也可以继承模态

调用示例:
G54G43 G90G0Z50
M3S1000F2000
G133 X100 Y0 Z-20 R3 C20 D30 Q1 (D20的铣刀做30的圆20个深)
G133X0(X0Y0位置做50的圆)
G133D50(X0Y0位置做50的圆)
M5
M30

G133自定义指令设定方法:
确认参数#3202的NE9为0,(为1,则隐藏并保护O9000~O9999,不能修改或者添加9000号开始的程序。若不能修改为0,提示写保护。则需要在#3211里输入机床密码,若需要解密码可以留言,探讨)
在参数#6050~6059设置G代码调用宏程序的数字,6050~6059分别对应程序号O9010~O9019。
导入该宏程序到机器内改名为O9010~O9019。
例如:在参数#6054里面输入133(0~255之间的数字),则调用O9014程序。 把宏程序改名为O9014即可。

注意:
G133这样的自定义指令,不能像G81等循环指令一样。需要每行首加G133
欢迎不吝测试指正,补全完善。本人期待能与G81等循环一样调用。


附:
宏变量说明:
#24 X                  #25Y                    #26 Z
#3 C                   #7 D                   #6 K
#9 F                    #17Q                  #18R

%
O9014( G133 XYZRCDQKF )
#102=60*FIX[#3012/10000]+FIX[#3012/100]-100*FIX[FIX[#3012/100]/100]

#100=0
IF[#510EQ#0]THEN#510=#102
IF[[#102-#510]LT0]THEN#100=1
IF[[#102-#510]GE60]THEN#100=1
G04
IF[#100EQ1]THEN#500=#0
IF[#100EQ1]THEN#501=#0
IF[#100EQ1]THEN#502=#0
IF[#100EQ1]THEN#503=#0
IF[#100EQ1]THEN#504=#0
IF[#100EQ1]THEN#505=#0
IF[#100EQ1]THEN#506=#0
IF[#100EQ1]THEN#507=#0
IF[#100EQ1]THEN#508=#0( TEMP CLEAN )
#510=#102( SET CLEAN LABEL )

#500=#5003(START POIT Z )
IF[#24EQ#0]THEN#24=#501
IF[#24EQ#0]THEN#24=#5001( GET X )
IF[#24NE#0]THEN#501=#24( SET TEMP X )
G04
IF[#25EQ#0]THEN#25=#502
IF[#25EQ#0]THEN#25=#5002( GET Y )
IF[#25NE#0]THEN#502=#25( SET TEMP Y )
G04
IF[#26EQ#0]THEN#26=#503
IF[#26EQ#0]THEN#26=#5003( GET Z )
IF[#26NE#0]THEN#503=#26( SET TEMP Z )
G04
IF[#18EQ#0]THEN#18=#504
IF[#18EQ#0]THEN#18=#5003( GET R )
IF[#18NE#0]THEN#504=#18( SET TEMP R )
G04
IF[#3EQ#0]THEN#3=#505
IF[#3EQ#0]THEN#3000=133( NEED SET C)
IF[#3NE#0]THEN#505=#3( SET TEMP C )
G04
IF[#7EQ#0]THEN#7=#506
IF[#7EQ#0]THEN#3000=133( NEED SET D)
IF[#7NE#0]THEN#506=#7( SET TEMP D )
G04
IF[#6EQ#0]THEN#6=#507
IF[#6EQ#0]THEN#6=03( CUSTOM SET K=13 )
IF[#6NE#0]THEN#507=#6( SET TEMP K )
G04
IF[#17EQ#0]THEN#17=#508
IF[#17EQ#0]THEN#3000=133( NEED SET Q)
IF[#17NE#0]THEN#508=#17( SET TEMP F )
G04
IF[#9EQ#0]THEN#9=#4109( GET F )

#101=15
IF[#4017EQ16]THEN#101=16( CHECK G15/G16 )

G#101
G90G00X#24Y#25
G15
#24=#5001
#25=#5002

IF[#18LT#26]THEN#17=-#17
#31=ABS[FIX[[#18-#26]/#17]]
#32=ABS[#18-#26]-#31*#17
#33=[#7-#3]/2

#27=360*ABS[#32/#17]
IF[#31EQ0]THEN#27=360*ABS[[#18-#26]/#17]
IF[[#6-10*FIX[#6/10]]EQ3]THEN#28=#24-#33*SIN[#27]
IF[[#6-10*FIX[#6/10]]EQ2]THEN#28=#24+#33*SIN[#27]
#29=#25+#33*COS[#27]

IF[#33LT0.1]THEN#3000=133( ROTATE LE 0.1 )
IF[[FIX[#6/10]]NE0]GOTO2

#6=#6-10*FIX[#6/10]
G90G00Z#18
G01Y[#25+#33]F#9
#30=1
WHILE[#30LE#31]DO1
G#6Z[#18-#17*#30]I0.J-#33
#30=#30+1
END1
G#6X#28Y#29Z#26I0.J-#33
G#6X#28Y#29Z#26I[#24-#28]J[#25-#29]
G01X#24Y#25
GOTO99

N2
#6=#6-10*FIX[#6/10]
G90G00X#24Y#25
G00Z#18
G01Y[#25+#33]F#9
#30=1
WHILE[#30LE#31]DO2
G#6Z[#18-#17*#30]I0.J-#33
#30=#30+1
END2
G#6X#28Y#29Z#26I0.J-#33
G01X#24Y#25
GOTO99

N99
G90G00Z#500
G#101
M99
%


补充内容 (2018-6-15 20:12):
功能介绍上漏交代 了,这个宏也可以支持极坐标。
但是不支持G91Y45K7这样的增量格式
G54G43 G90G0Z50
M3S1000F2000
G15
G133 X100 Y0 Z-20 R3  Q1 C20 D30
G133 Y45
G16
M5
M30

补充内容 (2018-6-15 20:16):
补充内容的示例程序上G15和G16写反了!特此声明!
不过宏的极坐标功能验证无误。

评分

参与人数 2G币 +3 元宝 +2 收起 理由
744840525 + 3 楼主是大神!膜拜!
3D世界网-零 + 2 分享加分!

查看全部评分

7

主题

961

回帖

6057

积分

上尉

积分
6057
发表于 2017-12-24 15:44:40 | 显示全部楼层
前排,谢谢分享{}{}
发表于 2017-12-24 15:15:00 | 显示全部楼层
好人一生平安

1

主题

105

回帖

1974

积分

六级士官

积分
1974
发表于 2017-12-24 15:23:10 | 显示全部楼层

学习一下学习一下

0

主题

1470

回帖

8231

积分

少校

积分
8231
发表于 2017-12-24 16:14:03 | 显示全部楼层
谢谢分享

7

主题

611

回帖

7万

积分

大将

积分
72970
发表于 2017-12-24 16:15:07 | 显示全部楼层
赞~~~~~~~

12

主题

765

回帖

1万

积分

上校

积分
13884
发表于 2017-12-24 17:03:45 | 显示全部楼层

好人一生平安

0

主题

207

回帖

887

积分

五级士官

积分
887
发表于 2017-12-24 17:20:47 | 显示全部楼层
学习一下学习一下

0

主题

124

回帖

1496

积分

六级士官

积分
1496
发表于 2017-12-24 17:23:36 | 显示全部楼层
学习学习啊

10

主题

2037

回帖

2万

积分

中将

积分
27710
发表于 2017-12-24 17:48:13 | 显示全部楼层
好好学习学习学习学习
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

咨询QQ:1359218528|发帖须知!|Archiver|手机版|小黑屋|UG爱好者论坛 ( 京ICP备10217105号-2 )

GMT+8, 2025-1-8 11:55

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表