5iMX宗旨:分享遥控模型兴趣爱好

5iMX.com 我爱模型 玩家论坛 ——专业遥控模型和无人机玩家论坛(玩模型就上我爱模型,创始于2003年)
查看: 34446|回复: 46
打印 上一主题 下一主题

PowerMILL----Mach3的后处理终于成功了!!

[复制链接]
跳转到指定楼层
楼主
发表于 2012-7-14 02:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
PowerMILL----Mach3完美的后处理终于成功了!!
以后在MACH3下就不要修改G代码直接就可以用,软件业不要设置了,还在研究4轴和5轴的计算方法,成功后一起公布!很好用的!!哈哈看图!

[ 本帖最后由 sfj88713 于 2012-7-14 10:21 编辑 ]

1.jpg (25.91 KB, 下载次数: 201)

1.jpg

2.jpg (53.87 KB, 下载次数: 174)

2.jpg

3.jpg (18.53 KB, 下载次数: 142)

3.jpg

4.jpg (28.04 KB, 下载次数: 190)

4.jpg

5.jpg (18.19 KB, 下载次数: 192)

5.jpg

欢迎继续阅读楼主其他信息

沙发
 楼主| 发表于 2012-7-14 02:14 | 只看该作者
PowerMILL----Mach3完美的后处理终于成功了!!

6.jpg (138.13 KB, 下载次数: 192)

6.jpg

7.jpg (48.11 KB, 下载次数: 163)

7.jpg

8.jpg (41.56 KB, 下载次数: 170)

8.jpg

9.jpg (52.3 KB, 下载次数: 169)

9.jpg

10.jpg (78.67 KB, 下载次数: 163)

10.jpg
3
 楼主| 发表于 2012-7-14 02:16 | 只看该作者
PowerMILL----Mach3完美的后处理终于成功了!!

12.jpg (51.02 KB, 下载次数: 133)

12.jpg

13.jpg (56.67 KB, 下载次数: 161)

13.jpg

14.jpg (65.22 KB, 下载次数: 204)

14.jpg

15.jpg (60.89 KB, 下载次数: 150)

15.jpg
4
 楼主| 发表于 2012-7-14 02:17 | 只看该作者
PowerMILL----Mach3完美的后处理终于成功了!!

16.jpg (72.52 KB, 下载次数: 170)

16.jpg
5
 楼主| 发表于 2012-7-14 02:18 | 只看该作者
PowerMILL----Mach3完美的后处理终于成功了!!

18.jpg (34.02 KB, 下载次数: 162)

18.jpg

19.jpg (65.38 KB, 下载次数: 192)

19.jpg

20.jpg (124.16 KB, 下载次数: 165)

20.jpg
6
 楼主| 发表于 2012-7-14 02:21 | 只看该作者
PowerMILL----Mach3完美的后处理终于成功了!!

11a.jpg (102.43 KB, 下载次数: 146)

11a.jpg

17a.jpg (79.68 KB, 下载次数: 163)

17a.jpg
7
发表于 2012-7-14 03:51 | 只看该作者
:em17: :em17: :em17: :em17: :em17: :em17: :em17:
8
发表于 2012-7-14 07:14 | 只看该作者
如何个完美法?用标准后处理存在什么问题?
9
发表于 2012-7-14 07:54 | 只看该作者
也许正好能用吧!不过楼主编程技术有待提高!第一个零件最好外面下刀,后面的挖槽最好螺旋或斜线下刀,不然稍微硬点的材料会顶刀,影响主轴和丝杆寿命!最好的轮廓精加工从边上下刀会有痕迹的!
10
 楼主| 发表于 2012-7-14 08:44 | 只看该作者
谢谢了!!正在学习中!!!请多多指点!!
11
发表于 2012-7-14 08:47 | 只看该作者
:em22: 标准的法兰克后处理而已啊
12
发表于 2012-7-14 09:00 | 只看该作者
原帖由 ttt12305 于 2012-7-14 08:47 发表
:em22: 标准的法兰克后处理而已啊

标准法兰克后处理没有回机床零点么?
13
发表于 2012-7-14 09:54 | 只看该作者
标准输出即可了啊
除非你DIY一个没有接近结构的机床,需要自己定义吧。
别卖关子了,赶紧上详细的:em15: :em03:
这几天正好在研究PW
14
 楼主| 发表于 2012-7-14 10:06 | 只看该作者
machine fanuc15m
  message output = false
     integer 51 = 5

word order = (+ X Y Z B C I J K R D )
word order = (+ S M2 EM )

  define block tape start
   "%MACH3"

G1 0 ; G5  ; X fromX ; Y fromY
   S ToolSpeed ; M2 3
end define

define block tape end

   M2 30
   "%"
end define
end


经过修改的比较好用的代码!!保存MACH3.opt  就OK了!!请大家试试!!
15
发表于 2012-7-14 10:07 | 只看该作者
看看 瞧瞧 僂僂
16
发表于 2012-7-14 10:11 | 只看该作者
:em15: 学习学习
17
 楼主| 发表于 2012-7-14 10:16 | 只看该作者
machine fanucom —————— 后处理文件头
=========================== 第一部分是定义字符段 ==============================
define word TN
address letter = "TOOL TYPE:- "
address width = 13
field width = 25
end define
具体解释:
define word TN —————————————— 定义字段;
address letter = "TOOL TYPE:- " ————— 定义字段的返回值,比如在后处理文件里有“MS =C ; TN ToolType ; EM =C”,而在写程式的时候选用的是端铣刀,那么在CNC程式里就会有(TOOL TYPE:- ENDMILL);
address width = 13 ——————————— 定义字符宽度,如上"TOOL TYPE:- ",从T开始算起一共13位,包括空格;
field width = 25 ——————————— 定义返回字的宽度,如上"ENDMILL",如果field width = 2,那"TOOL TYPE:- "就返回EN;如果field width = 25,那"TOOL TYPE:- "就返回ENDMILL。
end define
========================== 第二段是定义字符的格式 =============================
define format ( / G6 S T M1 M2 L P D E H O )
address width = 1
field width = 2
exponent width = 0
scale factor = 1
scale divisor = 1
tape position = 0
print position = 1
sign = none
not permanent
not modal
metric formats
leading zeros = false
trailing zeros = true
decimal point = false 控制公制尺寸的前导零、后导零,小数点
decimal places = 0
imperial formats
leading zeros = false
trailing zeros = true
decimal point = false 控制英制尺寸的前导零、后导零,小数点
decimal places = 0
end define
word order = ( OP N G1 G2 G3 G4 G5 )
word order = ( + G6 G7 X Y Z B C )
word order = ( + I J K R D S T )
word order = ( + H M1 M2 MS msg EM Q ) 注册字符
word order = ( + Q1 Z2 R2 ID F )
word order = ( + TN TD TR DY MT YR PM )
========================== 第三段是定义键值 ===================================
define keys
blocknumber = N —————— 定义程序段号
preparatory function = G1 ——————— 定义准备功能指令
aux function = M1 —————— 定义辅助功能指令
x feedrate not used ————— 定义X进给率指令
y feedrate not used ————— 定义Y进给率指令
z feedrate not used ————— 定义Z进给率指令
circle angle not used ————— 圆周角度
x coordinate = X —————— 定义X坐标轴
y coordinate = Y —————— 定义Y坐标轴
z coordinate = Z —————— 定义Z坐标轴
key i = I —————— 定义X轴矢量I键
key j = J —————— 定义Y轴矢量J键
key k = K —————— 定义Z轴矢量K键
feedrate = F —————— 定义进给率指令
feedrate per revolution = F ——————— 定义每转进给率指令
spindle = S —————— 定义主轴指令
tool number = T —————— 定义刀具指令
cycle dwell not used
dwell = X ————— 定义暂停时间键值
tool length = H —————— 定义刀具长度补偿指令
tool radius = D —————— 定义刀具半径补偿指令
drill peck depth = Q1 —————— 钻孔的啄钻深度
drill hole depth = Z2 —————— 定义钻孔深度
clearplane = R2 ————— 定义安全平面高度
message start = MS ————— 定义注释的开始符
message end = EM ———— 定义注释的结束符
opskip = OP ———— 定义跳段符号
radius = R ————— 定义半径R键
program id = ID ————— 定义程序号
azimuth axis = B ————— 在多轴加工中,定义方位轴
elevation axis = C ————— 在多轴加工中,定义仰角轴
3rd rotation axis = null ————— 在多轴加工中,定义第三旋转轴
leader not used
x vector not used
y vector not used
z vector not used
error not used
end define
18
 楼主| 发表于 2012-7-14 10:16 | 只看该作者
========================== 定义指令值 ========================================
define codes
rapid = G1 0 ========== 快速点定位
linear = G1 1 =========== 直线插补
circle cw = G1 2 =========== 顺圆插补
circle ccw = G1 3 ========== 逆圆插补
dwell = G6 4 ========= 暂停、准确停止
xy plane = G3 17 ========= XY平面
zy plane = G3 19 ========= YZ平面
xz plane = G3 18 ========= ZX平面
compensation off = G2 40 ========== 取消刀具半径补偿
compensation on left = G2 41 =========== 刀具半径左补偿
compensation on right = G2 42 =========== 刀具半径右补偿
imperial data = G4 20 ============ 英寸输入
metric data = G4 21 ============ 毫米输入
absolute data = G5 90 ============ 指定绝对坐标编程
incremental data = G5 91 ============ 指定增量坐标编程
from = G3 54 ========== 制定工作坐标系
feedrate per minute not used ================ 每分钟进给
feedrate per revolution not used ================= 每转进给
spindle rpm not used
constant surface speed not used
drill = G4 81 =========== 钻孔循环锪镗循环
break chip = G4 82 =========== 钻孔循环或反镗循环
deep drill = G4 83 ============ 深孔钻循环
tap = G4 84 ========== 攻丝循环
bore 1 = G4 85 ========== 镗孔循环
bore 2 = G4 86 ========== 镗孔循环
bore 3 = G4 87 ========== 背镗循环
bore 4 = G4 88 ========== 镗孔循环
bore 5 = G4 89 ========== 镗孔循环
end of drill = G4 80 ============= 固定循环取消
macro start not used ============ 宏程序模态调用
macro end not used =========== 宏程序模态调用取消
macro call not used ============ 宏程序调用
cycle retract = G6 99 ========== 固定循环返回到R点
tool length offset = G3 43 =========== 正向刀具长度补偿
spline not used ======== spline插补方式
stop = M1 0 ==== 程序停止
opt stop = M1 1 ===== 选择停止
spindle on cw = M1 3 ===== 主轴正转
spindle on ccw = M1 4 ===== 主轴逆转
spindle off = M1 5 ===== 主轴停止
spin coolant on cw = M1 13
spin coolant on ccw = M1 14
spin coolant off = M1 5 ====== 冷却液关
change tool = M1 6 ====== 自动换刀
coolant on mist = M1 7 ===== 雾状冷却液
coolant on = M1 8 ==== 冷却液开
coolant on flood = M1 8 ===== 冷却液开(喷出)
coolant off = M1 9 ===== 冷却液关
clamp on not used
clamp off not used
end of tape = M1 2 ===== 程序结束
end of prog = M1 30 ===== 程序结束
gear range 1 not used
gear range 2 not used
gear range 3 not used
constant contour speed not used
constant contour speed 2 not used
word drill not used
word break chip not used
word deep not used
word tap not used
word bore 1 not used
word bore 2 not used
word bore 3 not used
word bore 4 not used
word bore 5 not used
coolant on tap not used
rigid tap not used ====== 刚性攻丝
helical drill not used
helical retract drill not used
end define
19
 楼主| 发表于 2012-7-14 10:17 | 只看该作者
================================ 定义变量 ======================================
print header = "Delcam Postprocessor" ================== 定义打印标题
machine name = "Fanuc6m version 1.2" ========= 机器名
point = "." ================================ 小数点
zero = "0" =============================== 零
tape headers = 1 ============================== 纸带标题
(integer 6 、integer 7):定义coolant output(冷却液输出)
integer 6 = 2 ============== 定义冷却液开(M07、M08)的输出方式,
此变量共有三个选项——0:在后处理时遇到相关指令时输出;1:在下一段中单独输出;2、在下一段中和坐标移动一起输出。
integer 7 = 1 ============== 定义冷却液关(M09)的输出方式,此变量共有三个选项——0:在后处理时遇到相关指令时输出;1:在下一段中单独输出;2、在下一段中和坐标移动一起输出。
(integer 10、integer 11、integer 12、integer 13):定义spindle output(主轴输出)
integer 10 = 2 ============== 定义主轴开(M03、M04)的输出方式,
此变量共有三个选项——0:在后处理时遇到主轴开指令时输出;1:在下一段中单独输出;2、在下一段中和坐标移动一起输出。
integer 11 = 1 ============= 定义主轴关(M05)的输出方式,此变量共有二个选项——0:在遇到主轴关指令时不输出S;1:在遇到主轴关指令时输出S0。
integer 12 = 1 ============= 定义M代码的输出方式,此变量共有二个选项——0:在遇到主轴相关指令时不输出M;1:在遇到主轴相关指令时输出M。
tool reset coordinates = 2 =============== 定义刀具复位后(M06后)的坐标处理方式,有1、2、3、4四个选项,请注意这四个选项的刀具补偿的区别:
1、 2、




3、 4、




cycle output = 1 ================ 定义循环指令(G80~G89)的输出方式,此变量共有两个选项——0:不输出循环移动指令;1、输出循环指令(默认值为G81)。
(integer 20、integer 26、full circle):定义circle output(圆弧输出)
integer 20 = 1 ============= 定义圆弧(M02、M03)的输出坐标,此变量共有两个选项——0:不输出圆弧的X、Y坐标;1:输出圆弧的X、Y坐标。
block start = 1 =============== 定义程序段的开始段号
block increment = 1 =============== 定义程序段号的增量
split move = 0
integer 26 = 1 ============== 定义圆弧(M02、M03)的输出,此变量共有两个选项——0:不输出圆弧指令;1、输出圆弧指令,如果选择0,那么在后处理时遇到有圆弧的地方,系统将这个圆弧打断成若干条直线段输出。
program id start = 100 =============== 定义程序起始号
integer 34 = 3
integer 35 = 1
integer 36 = 1
integer 37 = 2
rapid feed code = 0 =============== 共有两个选项——0:在快速移动时不输出进给率;1:在快速移动时输出进给率(需要在快速移动中定义F)。
maximum block number = 0
maximum tape blocks = 0
minimum tape blocks = 0
segment type = 0
counter start = 0
counter increment = 0
tape split retract distance = -999
multiaxis coordinate transform = true ====== 定义机床是否支持多轴联动,true:支持;false:不支持
message output = false
block order = true
tlo output = true ======== 是否正常输出刀具长度(半径)补偿,true:输出;false:不输出。
tape split on tool change = false
full circle = true ========= true:整圆输出;false:不做整圆输出。
incremental centre = true
go home output = false
use partid = true ======== 是否使用自定义partid,true:使用;false:不使用
use progid = true ======== 是否使用自定义progid,true:使用;false:不使用
spindle x motion = false ======== 定义主轴运动方向,true:X方向;false:NOX方向。
spindle y motion = false ======== 定义主轴运动方向,true:Y方向;false:NOY方向。
spindle z motion = true ======== 定义主轴运动方向,true:Z方向;false:NOZ方向。
spindle w motion = false ======== 定义主轴运动方向,true:W方向;false:NOW方向。
spindle azimuth rotation = false ========== 定义方位轴方式,true:为主轴头式;false:为工作台式。
spindle elevation rotation = false ========== 定义仰角轴方式,true:为主轴头式;false:为工作台式。
linearise multiaxis moves = true ========== 定义机床是否支持线性多轴联动,true:支持;false:不支持。
use hole top in cycles = false
retract at angular limit = false
unwind at tool change = false
suppress xy arc = false
suppress xz arc = false
suppress yz arc = false
transform workplane origin = false
previous multax rapid style = false
knot vector type = none
units = input ======= 定义单位,input=ouput;metric;imperial
coordinates = absolute ====== 定义坐标单位,absolute ;incremental
azimuth axis units = degrees ======= 定义方位轴单位
azimuth axis direction = positive ======= 定义方位轴用法,相对还是绝对
elevation axis units = degrees ======== 定义仰角轴单位
elevation axis direction = positive ======== 定义仰角轴用法,相对还是绝对
spline type = none
workplane angles = none
option file units = none
maximum feedrate = 9999.0000
minimum feedrate = 1.0000
rapid feedrate = 9999.0000
maximum tape length = 0.0000
plunge threshold angle = 0.0000
maximum segment = 0.0000
diameter = 1.0000
withdrawal amount = 50.0000
arc radius limit = 10000.0000
retraction threshhold angle = 360.0000
arc minimum radius = 0.0000
azimuth axis parameters = ( 0 0 0 0 0 0 ) ========= 定义方位轴参数,前三个零为分别定义每个轴的旋转中心;后三个零为定义方位轴的坐标,依次为X、Y、Z。
azimuth centre = ( 0 0 0 ) ========================== 定义方位轴圆心参数
elevation axis parameters = ( 0 0 0 0 0 0 ) ========== 定义仰角轴参数,前三个零为分别定义每个轴的旋转中心;后三个零为定义仰角轴的坐标,依次为X、Y、Z。
elevation centre = ( 0 0 0 ) =========================== 定义仰角轴圆心参数
pcs origin = ( 0 0 0 0 0 0 ) ======== 定义旋转轴圆心
linear axis limits = ( -99999 999999 -99999 999999 -99999 999999 ) ============== 定义线性轴范围
rotary axis limits = ( -99999 999999 -99999 999999 999 1 ) ============ 定义旋转轴范围,前两个零为定义方位轴的旋转范围;中间两个零为定义仰角轴的旋转范围;第五个零定义公差;第六个零定义分辨率。
move safe angles = ( 0 0 0 0 ) ==================== 定义起始角度
20
 楼主| 发表于 2012-7-14 10:18 | 只看该作者
本人看到这个启发修改代码来形成MACH3用的合适代码!供大家学习学习!
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

关闭

【站内推荐】上一条 /1 下一条

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