QQ登录

只需一步,快速开始

快捷登录

登录 或者 注册 请先

UG爱好者

查看: 1006|回复: 13
打印 上一主题 下一主题

[分享] Mastercam多坐标后处理分享。

[复制链接]

一级士官

Rank: 2

3

主题

5

帖子

214

积分
跳转到指定楼层
楼主
发表于 2024-9-27 19:09:43 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
第一次修改后处理。不懂的地方还很多,不便之处请多多包涵。可以说是后处理方面是小白。市场找不到合适自己的,只能动手了。
       平时做产品用到的一个工作台安装工装,一次装夹加工多个产品的环境。
官方默认的多坐标后处理是G54--G59,用完这组G代码后用 G54 P1,G54 P2.....
这个看机床有些设备直接可以用G54 P1... 这边的设备 是可以直接G54 P1 我就修改了一下G54这边的后处理。看机床,不是所有都是这样的。
  1. pwcs     #G54+ coordinate setting at toolchange
  2.       if mi1$ > one,
  3.         [
  4.         sav_frc_wcs = force_wcs
  5.         if sub_level$ > 0, force_wcs = zero
  6.         if workofs$ <> prv_workofs$ | (force_wcs & toolchng),
  7.           [
  8.           if workofs$ < 100,
  9.             [
  10.           p_wcs = workofs$ + 1
  11.             "G54", *p_wcs
  12.         force_wcs = sav_frc_wcs
  13.         !workofs$
  14.         ]
复制代码

有个小bug (出现的数字1-8看图)   出程序后处理的时候 全部出1-8,G54P1 有二次出现。只出刀路转换那个 输出少一个坐标(应该是系统默认了第一个(1-7)也算一个)
单一坐标输出应该不影响使用的,多坐标输出,假如需要6个坐标,那么设置7个坐标,只出刀路转换的坐标。前面(1-7)的不出。
本文仅供学习参考,如若上机实践,一经出现问题本人概不负责。请根据实际情况来做。祝各位事业进步。



有奖推广贴子: 

回复

使用道具 举报

五级士官

Rank: 4

0

主题

39

帖子

903

积分
推荐
发表于 2024-10-2 12:33:38 | 只看该作者
想上几个上几个,你上48个都行

N1 ( 6.0 倒角刀 | T2 | D2 | H2 | φ6. )
( MAX_Z = 10.  MIN_Z = -1. )

( CMF-6.0 )
T2 M6
#1=54
#2=54
WHILE[#1LE#2]DO1
G0 G17 G90 G#1 X0. Y35.003 S2800 M3
M8
G43 H2 Z10.
G98 G81 Z-1. R.5 F200.
Y-35.003
G80
G91 Z30.
G17 G40 G80 G90
#1=#1+1
END1
M9
M5
S50
G91 G28 Z0.
M1

N2 ( 3.4 钻头 | T13 | D13 | H13 | φ3.4 )
( MAX_Z = 10.  MIN_Z = -10. )

( DR-3.4 )
T13 M6
#1=54
#2=54
WHILE[#1LE#2]DO1
G0 G90 G#1 X0. Y-35.003 S2200 M3
M8
G43 H13 Z10.
G98 G83 Z-10. R.5 Q2. F300.
Y35.003
G80
G91 Z30.
G17 G40 G80 G90
#1=#1+1
END1
M9
M5
S50
G91 G28 Z0.
M1
回复 支持 1 反对 0

使用道具 举报

六级士官

Rank: 4

1

主题

139

帖子

1083

积分
推荐
发表于 2024-9-29 09:15:31 | 只看该作者
兄弟,你把这下面的加到你的后处理,开启多工位就OK了



#-------------------------------------------------------------------------------------------------
Multi_coordinates : 0    # 开启多工位,多坐标选择?(利用宏代码循环指令多工位多坐标系加工,最多48个)
                         # 0 = 关闭多工位,多坐标
                         # 1 = 开启多工位,多坐标(数量小于7个使用标准坐标系G5N,大于6个使用附加坐标系G54.1 PN)
                         #                       (开启时在对话框输入数量小于2个或直接回车 = 软件设置的坐标系)
#-------------------------------------------------------------------------------------------------


#-------------------------------------------------------------------------------------------------
fmt  "P"  4   dwellda      #G54.1坐标系P代码
coordinate         : 0
le_number          : 0
sav_spc1           : 0
hzbscbj            : 0
fmt "LE" 4  le_number

pcoordinate
   if sjyxbj = 1238 & sydgx = 2589 & sfzmdl = 1579,
     [
    if Multi_coordinates = 1,
        [
        if hzbscbj = 0, q1, hzbscbj = 1
        if coordinate > 1 & coordinate < 7,
          [
          sav_spc1 = spaces$
          spaces$ = 0
          le_number = coordinate + 53
          pbld, "#1=54", e$
          pbld, "WHILE[#1", *le_number,"]", "DO1", e$
          spaces$ = sav_spc1
          ]
       else,
         if coordinate > 6,
          [
          if coordinate > 48, coordinate = 48
          sav_spc1 = spaces$
          spaces$ = 0
          le_number = coordinate
          pbld, "#2=1", e$
          pbld, "WHILE[#2", *le_number,"]", "DO1", e$
          spaces$ = sav_spc1
          ]
        ]
      ]


fq 1 coordinate "请输入坐标数量后按回车键确认!大于6个使用G54.1PN坐标系,输入数量小于 2 或直接回车确认等于软件默认坐标系(支持6个标准和48个附加坐标系)"

pcoordinate1
   if sjyxbj = 1238 & sydgx = 2589 & sfzmdl = 1579,
     [
    if Multi_coordinates = 1,
        [
        if coordinate > 1 & coordinate < 7,
          [
          sav_spc1 = spaces$
          spaces$ = 0
          pbld, "#1=#1+1", e$
          pbld, "END1", e$
          spaces$ = sav_spc1
          ]
       else,
         if coordinate > 6,
          [
          sav_spc1 = spaces$
          spaces$ = 0
          pbld, "#2=#2+1", e$
          pbld, "END1", e$
          spaces$ = sav_spc1
          ]
        ]
      ]

pwcss
   if sjyxbj = 1238 & sydgx = 2589 & sfzmdl = 1579,
     [
      [if Multi_coordinates = 1 & coordinate > 1 & coordinate < 7, "G#1"],
      [if Multi_coordinates = 1 & coordinate > 6 , "G54.1 P#2"],
      [if Multi_coordinates = 0 | coordinate < 2, pwcs],
     ]
#-------------------------------------------------------------------------------------------------
pkdghsc
   if sjyxbj = 1238 & sydgx = 2589 & sfzmdl = 1579,
     [
        if Empty_knife = 1,
         [
          if coordinatea = 1, pbld, szbhl, e$
          if coordinatea = 2, pbld, sghla, e$
          pbld, [if gcode$, *sgfeed], *sgcode, *sgabsinc, "G54", pfxout, pfyout, pfcout,
          [if nextdc$ <> 7 & (Tapping_mode = 1 | Tapping_mode = 3 | Tapping_mode = 4), *speed, *spindle],
          [if nextdc$ <> 7 & nextdc$ <> 3 & Tapping_mode = 2, *speed, *spindle],
          pgear, [if gcode$, *feed], strcantext, e$
          if Length_Compensation = 1, pbld, sg43, *tlngno$, pfzout, [if Globe_valve = 1, pscool], [if Globe_valve = 2, sm88], e$
          if Length_Compensation = 2, pbld, *sgcode, pfzout, [if Globe_valve = 1, pscool], [if Globe_valve = 2, sm88], e$
         ]
       else,
         [
          pbld, sgabsinc, pwcs, pfxout, pfyout, pfzout, pfcout, e$
         ]
      ]
###################################################################################################
回复 支持 1 反对 0

使用道具 举报

中尉

Rank: 5Rank: 5

20

主题

509

帖子

3077

积分
沙发
发表于 2024-9-28 07:49:24 | 只看该作者
消灭零回复
回复 支持 反对

使用道具 举报

中校

原初时代打铁人

Rank: 7Rank: 7Rank: 7

18

主题

820

帖子

1万

积分
板凳
发表于 2024-9-28 08:38:13 | 只看该作者
原后处理不需要按照你那么改,本身坐标系参数里0-5表示G54-G59,6-53表示G54.1 P1-G54.1 P48,代码里,只需要把G54.1 P_WCS,改成G54 P_WCS就够了
MasterCAM/UGNX/CAD/Solidworks/Vericut Qqun:703424792
回复 支持 反对

使用道具 举报

一级士官

Rank: 2

3

主题

5

帖子

214

积分
地板
 楼主| 发表于 2024-9-28 09:33:44 | 只看该作者
75921872 发表于 2024-9-28 08:38
原后处理不需要按照你那么改,本身坐标系参数里0-5表示G54-G59,6-53表示G54.1 P1-G54.1 P48,代码里,只需 ...

这边的机台 默认坐标G54 P1。不过知道怎么改就好了。
回复 支持 反对

使用道具 举报

上尉

Rank: 6Rank: 6

4

主题

1287

帖子

5214

积分
6#
发表于 2024-9-29 11:36:34 | 只看该作者
谢谢大佬分享!!!
回复 支持 反对

使用道具 举报

二级士官

Rank: 2

0

主题

63

帖子

402

积分
9#
发表于 2024-10-8 17:17:32 | 只看该作者
收藏了,感谢楼主无私分享
回复 支持 反对

使用道具 举报

上等兵

Rank: 1

0

主题

10

帖子

160

积分
10#
发表于 2024-10-9 07:10:37 来自手机 | 只看该作者
riym 发表于 2024-9-29 09:15
兄弟,你把这下面的加到你的后处理,开启多工位就OK了



你好,请问你这个代码添加到数车后处理里面可以吗?实现一个长轴可以加工多个相同零件
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

 
 
QQ:1359218528
工作时间:
9:00-17:00
 
微信公众号
手机APP
机械社区
微信小程序

手机版|UG爱好者论坛 ( 京ICP备10217105号-2 )    论坛管理员QQ:1359218528

本站信息均由会员发表,不代表本网站立场,如侵犯了您的权利请联系管理员,邮箱:1359218528@qq.com  

Powered by UG爱好者 X3.2  © 2001-2014 Comsenz Inc. GMT+8, 2024-11-25 03:10

返回顶部