找回密码
 立即注册

QQ登录

只需一步,快速开始

微信扫码登录

搜索
查看: 5859|回复: 8

后处理G52的输出

[复制链接]

27

主题

1165

回帖

1万

积分

大校

积分
15192

活跃会员

发表于 2015-6-27 20:24:14 | 显示全部楼层 |阅读模式
四轴后处理,B轴,旋转后要重新设定坐标系,能不能通过后处理自动计算,编刀轨的时候给其他面都设定了坐标系,然后希望旋转后能够自动通过G52计算,有点像五轴加工的G68.2的功能。

75

主题

983

回帖

3万

积分

上将

积分
37838
发表于 2015-6-28 10:27:46 | 显示全部楼层
为什么不用卧加回转宏程序呢?非常适用卧加的多面加工,你只需设定一个坐标系并对刀,比如G54,后面的G55~G59甚至G54.1 P1~G54.1 P48全部由控制系统自动帮你填写,而且不用重新对刀。
%
O7999;
#110=;
#111=;
IF [#1LT1] GOTO 3000;
IF [#1GT60] GOTO 3000;
IF [#1EQ49] GOTO 3000;
IF [#1EQ50] GOTO 3000;
IF [#1EQ51] GOTO 3000;
IF [#1EQ52] GOTO 3000;
IF [#1EQ53] GOTO 3000;
IF [#1LE48] GOTO 20;
#101=#[5221+[#1-54]*20];
#102=#[5222+[#1-54]*20];
#103=#[5223+[#1-54]*20];
GOTO 30;
N20 #101=#[7001+[#1-1]*20];
#102=#[7002+[#1-1]*20];
#103=#[7003+[#1-1]*20];
GOTO 30;
N30 #21=#101-#110;
#22=#103-#111;
#30=ABS[#21];
#31=ABS[#22];
IF [#2GT0] GOTO 40;
#2=#2+360.;
N40 IF [#21EQ0] GOTO 50;
IF [#22EQ0] GOTO 60;
IF [#21GT0] GOTO 70;
IF [#22LT0] GOTO 80;
IF [#22GT0] GOTO 90;
N50 IF [#22EQ0] GOTO 100;
IF [#22GT0] GOTO 200;
IF [#22LT0] GOTO 300;
N60 IF [#21GT0] GOTO 400;
IF [#21LT0] GOTO 500;
N70 IF [#22GT0] GOTO 600;
IF [#22LT0] GOTO 700;
N80 #120=ATAN[#30]/[#31];
GOTO 1000;
N90 #120=ATAN[#31]/[#30]+90;
GOTO 1000;
N100 #101=#110;
#103=#111;
GOTO 1010;
N200 #120=180;
GOTO 1000;
N300 #120=0;
GOTO 1000;
N400 #120=270;
GOTO 1000;
N500 #120=90;
GOTO 1000;
N600 #120=ATAN[#30]/[#31]+180;
GOTO 1000;
N700 #120=ATAN[#31]/[#30]+270;
GOTO 1000;
N1000 #18=SQRT[(#101-#110)*(#101-#110)+(#103-#111)*(#103-#111)];
#24=#18*SIN[#120+#2];
#26=#18*COS[#120+#2];
#106=#110+#24;
#107=#111+#26;
GOTO 2000;
N1010 #106=#110;
#107=#111;
N2000 IF [#3LT1] GOTO 3000;
IF [#3GT60] GOTO 3000;
IF [#3EQ49] GOTO 3000;
IF [#3EQ50] GOTO 3000;
IF [#3EQ51] GOTO 3000;
IF [#3EQ52] GOTO 3000;
IF [#3EQ53] GOTO 3000;
IF [#3LE48] GOTO 2200;
N2100 #[5221+[#3-54]*20]=#106;
#[5222+[#3-54]*20]=#102;
#[5223+[#3-54]*20]=#107;
GOTO 9000;
N2200 #[7001+[#3-1]*20]=#106;
#[7002+[#3-1]*20]=#102;
#[7003+[#3-1]*20]=#107;
M99;
N3000 #3000=21(#A&#C DATD ERROR);
%
我这有一PDF文档,详细介绍了回转宏的使用方法,但论坛不支持此格式文件,所以发不上来。

24

主题

753

回帖

8175

积分

少校

积分
8175
发表于 2015-6-28 10:52:14 | 显示全部楼层
laomei 发表于 2015-6-28 10:27
为什么不用卧加回转宏程序呢?非常适用卧加的多面加工,你只需设定一个坐标系并对刀,比如G54,后面的G55~G ...

楼主,我们也经常会遇到这类问题,可否将PDF文件发给我一份啊,谢谢啦!QQ邮箱1046648786@qq.com

24

主题

753

回帖

8175

积分

少校

积分
8175
发表于 2015-6-28 10:55:23 | 显示全部楼层
这个问题是会经常遇到,如果四轴能自锁,用四轴联动的后处理就可以,不过每次加工前要重新取高度差,调试时前两件可能也会NG。不用联动的后处理,每转动一次又需要重新分中取数,挺麻烦的。帮你顶一下,希望有高手能出个方便的方法

0

主题

396

回帖

1564

积分

六级士官

积分
1564
发表于 2015-6-28 12:29:43 | 显示全部楼层
顶顶顶顶顶顶{}{}

27

主题

1165

回帖

1万

积分

大校

积分
15192

活跃会员

 楼主| 发表于 2015-6-28 12:39:07 | 显示全部楼层
switch $controller_type {

      "siemens" {

         MOM_output_literal "G52 X$X Y$Y Z$Z"
         MOM_output_literal "G68 X$X Y$Y Z$Z I0 J1 K0 R$B"
         set rot ""

         set rot "ROT X$A"
         set rot "$rot ROT Y$B"
         set rot "$rot ROT Z$C"

        # MOM_output_literal $rot
      }
谁能把G52和G68分开,其中G52的判断条件是当B轴为零的时候,其他时候输出G68

27

主题

1165

回帖

1万

积分

大校

积分
15192

活跃会员

 楼主| 发表于 2015-6-28 12:41:01 | 显示全部楼层
laomei 发表于 2015-6-28 10:27
为什么不用卧加回转宏程序呢?非常适用卧加的多面加工,你只需设定一个坐标系并对刀,比如G54,后面的G55~G ...

东西不错不知道我能不能用,如果可以发文件的话就给我看看。396146683@qq.com

27

主题

1165

回帖

1万

积分

大校

积分
15192

活跃会员

 楼主| 发表于 2015-6-28 15:26:21 | 显示全部楼层
laomei 发表于 2015-6-28 10:27
为什么不用卧加回转宏程序呢?非常适用卧加的多面加工,你只需设定一个坐标系并对刀,比如G54,后面的G55~G ...

已经收到了你的文件,谢谢,不过我对变量不是很熟悉,没有看懂。感觉好像是首先找正一个坐标,然后就能确定这个坐标相对于机床原点的位置,旋转以后这个坐标相对原点位置发生了变化,然后根据一些判断条件重新找到旋转后这个位置在机床坐标系下的新位置并重新写入一个新的坐标系,用来建立新的坐标位置。

27

主题

1165

回帖

1万

积分

大校

积分
15192

活跃会员

 楼主| 发表于 2015-6-28 15:32:54 | 显示全部楼层
laomei 发表于 2015-6-28 10:27
为什么不用卧加回转宏程序呢?非常适用卧加的多面加工,你只需设定一个坐标系并对刀,比如G54,后面的G55~G ...


G52test.prt(203.00K)这是我做的一个文件,里面只有一个块儿,然后我在需要设定坐标原点的位置设置了坐标系,打开加工就能看到。你能帮我看看,你的宏程序可以自动设置在我需要设置的地方吗?谢谢!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-2-2 03:04

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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