找回密码
 立即注册

QQ登录

只需一步,快速开始

微信扫码登录

搜索
查看: 1691|回复: 9

[求助] 谁能发一个侧铣头后处理

[复制链接]

1

主题

0

回帖

58

积分

上等兵

积分
58
发表于 2023-2-9 11:48:41 | 显示全部楼层 |阅读模式
各位大神 谁能发一个侧铣头后处理

6

主题

273

回帖

1万

积分

中校

积分
11174
发表于 2023-2-9 13:33:01 | 显示全部楼层
试试看 自己做的

FANUC-通用-无刀库.rar

39.47 KB, 下载次数: 167, 下载积分: G币 -1

28

主题

98

回帖

6950

积分

上尉

积分
6950
发表于 2023-2-9 13:46:46 | 显示全部楼层
本帖最后由 bey2008 于 2023-2-9 13:54 编辑

是否生成侧铣头程式与后处理没多大关系,你把刀轴设置为X,Y或其它的矢量的与你侧铣头一致,自然而然普通后处理生成的也是侧铣头程序建一个主坐标系再建个副坐标系也可以的

0

主题

4

回帖

82

积分

上等兵

积分
82
发表于 2023-5-4 16:05:46 | 显示全部楼层
836232208 发表于 2023-2-9 13:33
试试看 自己做的

刚用完,好用,谢谢谢谢谢谢

1

主题

287

回帖

5330

积分

上尉

积分
5330
发表于 2023-7-1 17:41:26 | 显示全部楼层
bey2008 发表于 2023-2-9 13:46
是否生成侧铣头程式与后处理没多大关系,你把刀轴设置为X,Y或其它的矢量的与你侧铣头一致,自然而然普通后处 ...

我试过我的三轴后处理,刀轴改了,后处理不识别G18G19,所以还是要改的后处理

28

主题

98

回帖

6950

积分

上尉

积分
6950
发表于 2023-7-1 20:24:47 | 显示全部楼层
NXZYF 发表于 2023-7-1 17:41
我试过我的三轴后处理,刀轴改了,后处理不识别G18G19,所以还是要改的后处理

那是因为你的后处理不完善,下面定制命令加在程序开始目录下
#正常判断G17 G18 G19,三平面输出的判断语句#########
  # 在定制命令中用的名称 { PB_CMD_fix_RAPID_SET }
   if { ![CMD_EXIST ugpost_RAPID_SET] } {
      if { [CMD_EXIST RAPID_SET] } {
         rename RAPID_SET ugpost_RAPID_SET
      }
   } else {
return
   }
#***********
uplevel #0 {
#====================
proc RAPID_SET { } {
#====================
   if { [CMD_EXIST PB_CMD_set_principal_axis] } {
      PB_CMD_set_principal_axis
   }
   global mom_cycle_spindle_axis mom_sys_work_plane_change
   global traverse_axis1 traverse_axis2 mom_motion_event mom_machine_mode
   global mom_pos mom_prev_pos mom_from_pos mom_last_pos mom_sys_home_pos
   global mom_sys_tool_change_pos
   global spindle_first rapid_spindle_inhibit rapid_traverse_inhibit
   global mom_current_motion
   if { ![info exists mom_from_pos($mom_cycle_spindle_axis)] && \
         [info exists mom_sys_home_pos($mom_cycle_spindle_axis)] } {

      set mom_from_pos(0) $mom_sys_home_pos(0)
      set mom_from_pos(1) $mom_sys_home_pos(1)
      set mom_from_pos(2) $mom_sys_home_pos(2)
   } elseif { ![info exists mom_sys_home_pos($mom_cycle_spindle_axis)] && \
              [info exists mom_from_pos($mom_cycle_spindle_axis)] } {
      set mom_sys_home_pos(0) $mom_from_pos(0)
      set mom_sys_home_pos(1) $mom_from_pos(1)
      set mom_sys_home_pos(2) $mom_from_pos(2)
   } elseif { ![info exists mom_sys_home_pos($mom_cycle_spindle_axis)] && \
             ![info exists mom_from_pos($mom_cycle_spindle_axis)] } {
      set mom_from_pos(0) 0.0 ; set mom_sys_home_pos(0) 0.0
      set mom_from_pos(1) 0.0 ; set mom_sys_home_pos(1) 0.0
      set mom_from_pos(2) 0.0 ; set mom_sys_home_pos(2) 0.0
   }
   if { ![info exists mom_sys_tool_change_pos($mom_cycle_spindle_axis)] } {
      set mom_sys_tool_change_pos($mom_cycle_spindle_axis) 100000.0
   }
   set is_initial_move [string match "initial_move" $mom_current_motion]
   set is_first_move   [string match "first_move"   $mom_current_motion]
   if { $is_initial_move || $is_first_move } {
      set mom_last_pos($mom_cycle_spindle_axis) $mom_sys_tool_change_pos($mom_cycle_spindle_axis)
   } else {
      if { [info exists mom_last_pos($mom_cycle_spindle_axis)] == 0 } {
         set mom_last_pos($mom_cycle_spindle_axis) $mom_sys_home_pos($mom_cycle_spindle_axis)
      }
   }
   if { $mom_machine_mode != "MILL" && $mom_machine_mode != "DRILL" } {
     # When machine mode is UNDEFINED, ask machine type
      if { ![string match "MILL" [PB_CMD_ask_machine_type]] } {
return
      }
   }
   WORKPLANE_SET
   set rapid_spindle_inhibit  FALSE
   set rapid_traverse_inhibit FALSE
   if { [EQ_is_lt $mom_pos($mom_cycle_spindle_axis) $mom_last_pos($mom_cycle_spindle_axis)] } {
      set going_lower 1
   } else {
      set going_lower 0
   }
   if { ![info exists mom_sys_work_plane_change] } {
      set mom_sys_work_plane_change 1
   }
  # Reverse workplane change direction per spindle axis
   global mom_spindle_axis
   if { [info exists mom_spindle_axis] } {
    # - This flag has no effect if the work plane change is not set.
    #
      set disable_non_principal_spindle 0
      switch $mom_cycle_spindle_axis {
         0 {
            if [EQ_is_lt $mom_spindle_axis(0) 0.0] {
               set going_lower [expr abs($going_lower - 1)]
            }
         }
         1 {
            if [EQ_is_lt $mom_spindle_axis(1) 0.0] {
               set going_lower [expr abs($going_lower - 1)]
            }
         }
         2 {
         # Multi-spindle machine
            if [EQ_is_lt $mom_spindle_axis(2) 0.0] {
               set going_lower [expr abs($going_lower - 1)]
            }
         }
      }
     # Per user's choice above, disable work plane change for non-principal spindle axis
     #
      if { $disable_non_principal_spindle } {
         if { ![EQ_is_equal $mom_spindle_axis(0) 1] && \
              ![EQ_is_equal $mom_spindle_axis(1) 1] && \
              ![EQ_is_equal $mom_spindle_axis(0) 1] } {
            global mom_user_work_plane_change
            global mom_user_spindle_first
            set mom_user_work_plane_change $mom_sys_work_plane_change
            set mom_sys_work_plane_change 0

            if [info exists spindle_first] {
               set mom_user_spindle_first $spindle_first
            } else {
               set mom_user_spindle_first NONE
            }
         }
      }
   }
   if { $mom_sys_work_plane_change } {
      if { $going_lower } {
         set spindle_first FALSE
      } else {
         set spindle_first TRUE
      }
     # Force output in Initial Move and First Move.
      if { !$is_initial_move && !$is_first_move } {

         if { [EQ_is_equal $mom_pos($mom_cycle_spindle_axis) $mom_last_pos($mom_cycle_spindle_axis)] } {
            set rapid_spindle_inhibit TRUE
         } else {
            set rapid_spindle_inhibit FALSE
         }
         if { [EQ_is_equal $mom_pos($traverse_axis1) $mom_prev_pos($traverse_axis1)] && \
              [EQ_is_equal $mom_pos($traverse_axis2) $mom_prev_pos($traverse_axis2)] && \
              [EQ_is_equal $mom_pos(3) $mom_prev_pos(3)] && [EQ_is_equal $mom_pos(4) $mom_prev_pos(4)] } {
            set rapid_traverse_inhibit TRUE
         } else {
            set rapid_traverse_inhibit FALSE
         }
      }
   } else {
      set spindle_first NONE
   }
} ;# RAPID_SET
} ;# uplevel

28

主题

98

回帖

6950

积分

上尉

积分
6950
发表于 2023-7-1 20:34:15 | 显示全部楼层
NXZYF 发表于 2023-7-1 17:41
我试过我的三轴后处理,刀轴改了,后处理不识别G18G19,所以还是要改的后处理

另外 在机床运动和现成循环中要加入G17,
360.jpg

1

主题

287

回帖

5330

积分

上尉

积分
5330
发表于 2023-7-3 14:57:38 | 显示全部楼层
bey2008 发表于 2023-7-1 20:34
另外 在机床运动和现成循环中要加入G17,

谢谢分享,我自己试着改一下

1

主题

340

回帖

3758

积分

中尉

积分
3758
发表于 2023-7-3 15:07:23 | 显示全部楼层
{:}{:}{:}{:}{:}

0

主题

184

回帖

800

积分

四级士官

积分
800
发表于 2023-7-28 01:38:51 | 显示全部楼层

感谢楼主分享
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-1-19 20:44

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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