前些日子,有位网友向我咨询是否能够创建一个斜面的宏程序。坦白说,我之前并没有接触过这方面的内容。幸运的是,我最近正好休息,便在家中尝试着编写了一个这样的程序。需要强调的是,我在程序中完全没有添加半径补偿,而且也没有在实际机床上进行验证。在此,我只想将这个思路分享给大家,供各位参考。
坦率地讲,我的数学基础相当薄弱,初中毕业后,我的数学考试成绩仅有28分。唉,年轻时的我不懂事,没有认真学习。因此,我现在掌握的只是一些皮毛知识,像铣削圆弧面、椭圆面、开平方根、开立方根等公式全都忘得一干二净,就连正弦和余弦函数都需要翻书查找。
有网友私下里批评我,唉,如果大家有更好的方法,欢迎在公开场合分享出来,让我们一起探讨。
最近发布的视频内容,也是我根据自己掌握的知识挑选的,毕竟之前没有录制过相关视频。至于从哪里开始讲解,我还在摸索中。如果大家有意见或建议,请随时提出。感谢大家的支持。
这里展示的是一个单向抬刀的示例,后面还将介绍往复运动的方式。这仅仅是一个初步的思路。
在编写程序时,我们将中点设置在左下角,并且没有应用刀具半径补偿。
T1 M6
#100=0 顶面
#101=0.5 X向每刀步距
#102=50 X向的长度
G0 G90 G54 X0. Y0.
M3 S1000
G43 Z50. H1
M8
WHILE[#100LE#102]DO1
Z5.
#108=#100*TAN30 计算Z向的下刀量 TAN后面数字是角度
G1 Z-#108 X#100 F1000
Y50. 这个是Y向的宽度
G0 Z5.
Y0.
#100=#100+#101
END1
N10
G0 Z50.
M5
M9
G91 G28 Z0.
M1
备注参考上面一个
T1 M6
#100=0
#101=0.5
#102=50
G0 G90 G54 X0. Y0.
M3 S1000
G43 Z50. H1
M8
Z5.
WHILE[#100LE#102]DO1
#108=#100*TAN45
G1 Z-#108 X#100 F1000
Y50.
#100=#100+#101
IF[#100GE#102]GOTO10
#108=#100*TAN45
G1 Z-#108 X#100 F1000
Y0.
#100=#100+#101
END1
N10
G0 Z50.
M5
M9
G91 G28 Z0.
M1
这个的分中点是在工件的中心,还是没有加道具半径补偿,顺逆铣大家自行添加G41 G42 G40
T1 M6
#100=0
#101=0.5 (X向每刀的步距)
#102=50 (X向长度)
#103=30 (Y向宽度)
#104=20 (道具直径)
#105=30 (加工角度)
#110=[#103+#104]/2+5 计算宽度加道具的和除以2再加5,让刀具下刀位置在工件之外5毫米的位置,防止踩刀
#111=#102/2 继续X向的左右对分
G0 G90 G54 X-#111 Y-#110
M3 S1000
G43 Z50. H1
M8
Z5.
WHILE[#100LE#102]DO1
#108=#100*TAN#105 计算Z向每次下刀量
G1 Z-#108 X-#111+#100 F1000
Y#110
#100=#100+#101
IF[#100GE#102]GOTO10
#108=#100*TAN#105
G1 Z-#108 X-#111+#100 F1000
Y-#110
#100=#100+#101
END1
N10
G0 Z50.
M5
M9
G91 G28 Z0.
M1
有错误希望大家能够指正。
练习宏程序大家可以用可以模拟宏程序的软件,先用别人的模板修改练习了解思路,再自己尝试编写简单的,
软件编程是趋势,没有人否认软件的优势,宏程序学习一下也不是坏处,就像我做的这个公司,很小的公司,产品简单,没有电脑,机床也没连电脑,有些东西电脑遍的程序太大,机器根本拷贝不进去。那我有时就会用宏程序或者子程序了。子程序和宏有很多共通的地方。
希望对各位有所帮助。谢谢大家,喜欢就点个赞关注一下。