龙空技术网

四轴加工中心刀尖跟随(RTCP)补偿宏程式的编写

CNC机械加工互联 1535

前言:

现时各位老铁们对“四轴联动指令”大体比较关注,各位老铁们都需要知道一些“四轴联动指令”的相关文章。那么小编在网上搜集了一些有关“四轴联动指令””的相关资讯,希望姐妹们能喜欢,各位老铁们一起来学习一下吧!

四轴加工中心机床一般都没有刀尖跟随(RTCP)这个功能,四轴联动加工编程时,坐标一般设在工件的旋转中心中上,但实际上机时,产品装夹并没有将编程原点重合在四轴的旋转中心上,如下面这个

这种情况,有三种处理方法:

1、通过宏程式在机台上进行RTCP补偿加工。

2、将编程坐标(旋转中心)移到与实际中心重合的位置,再重新出程式。

3、将实际中心与理论中心的偏移值输入到后处理里,后处理出程式时,由后处理计算转换后再输出正确的程式进行加工。

下面介绍第一种方法中这个用于刀尖跟随计算的宏程式的编写:

我们可以考虑改成下面这样的代码,将数据传递给1000宏程式进行转换计算,然后通过宏变量传回来进行加工

编程要点分析:

1、变量的选用

2、机台的实际旋转中心

3、安全考虑,变量使用前要清0

4、坐标原点的读取

5、需要转换的坐标值有哪些: 分析可知代码 A、B、C、X、Y、Z、R(钻孔R平面)的数值,需要转换计算,其它 M、S、F、I、J、K、Q、P、N、R(圆弧R)等的值都不需要。

6、坐标值模态的维持

7、计算结果的存储及使用

变量选用:

#4 机床的X旋转中心

#5 机床的Y旋转中心

#6 机床的Z旋转中心

#31 用来读取坐标X原点

#32 用来读取坐标Y原点

#33 用来读取坐标Z原点

#30 用来读取坐标ABC原点

#1 用来传递A值

#2 用来传递B值

#3 用来传递C值

#18 用来传递R值

#19 用来传递S值作为条件判断去清0变量值

#24 用来传递X值

#25 用来传递Y值

#26 用来传递Z值

#514 用来记忆X的上一步状态值

#515 用来记忆Y的上一步状态值

#516 用来记忆Z的上一步状态值

#517 用来R平面的上一步状态值

#518 用来记忆角度A、B、C的上一状态值

#524 用来存储当前这一步X的计算结果

#525 用来存储当前这一步Y的计算结果

#526 用来存储当前这一步Z的计算结果

#527 用来存储当前这一步R的计算结果

#528 用来存储当前这一步角度A、B、C的结果

所编程式及代码功能说明:

1、旋转中心设定

2、变量清0功能

3、坐标读取

4、XYZR坐标值的传递

5、A或B或C的值的传递

6、转换计算(这里不作公式推导,原理请参阅之前的4轴坐标自动计算文章)

7、将代码连起来得到的完整程式

%

O1000

#4=-280. (X CENTER OF ROTATION)

#5=0. (Y CENTER OF ROTATION)

#6=-670. (Z CENTER OF ROTATION)

WHILE[#19NE#0]DO1

#514=0

#515=0

#516=0

#517=0

#518=0

#524=0

#525=0

#526=0

#527=0

#528=0

#19=#0

END1

#31=#5221 (BASE OFFSET X)

#32=#5222 (BASE OFFSET Y)

#33=#5223 (BASE OFFSET Z)

#30=#5224 (BASE OFFSET 4-AXIS)

WHILE[#24NE#0]DO1

#514=#24

#24=#0

END1

WHILE[#25NE#0]DO1

#515=#25

#25=#0

END1

WHILE[#26NE#0]DO1

#516=#26

#26=#0

END1

WHILE[#18NE#0]DO1

#517=#18

#18=#0

END1

WHILE[#1NE#0]DO1

#518=#1

#1=#0

END1

WHILE[#2NE#0]DO1

#518=#2

#2=#0

END1

WHILE[#3NE#0]DO1

#518=#3

#3=#0

END1

#524=[#31-#4]*COS[-#518]+[#33-#6]*SIN[-#518]+#514+#4-#31 (CALC X)

#525=#515 (CALC Y)

#526=-[#31-#4]*SIN[-#518]+[#33-#6]*COS[-#518]+#516+#6-#33 (CALC Z)

#527=-[#31-#4]*SIN[-#518]+[#33-#6]*COS[-#518]+#517+#6-#33 (CALC R)

#528=#518 (CALC ABC)

M99

%

加工程式看起来全是宏变量,很复杂,但对于MasterCAM的后处理来说是可以实现的

标签: #四轴联动指令