edittext去掉下划线输入(批量改文件后缀命令)

edittext去掉下划线输入(批量改文件后缀命令)

MasterCAM后处理修改特殊技巧一.1 MasterCAM后处理修改特殊技巧:

Scrollex EDIT

另外:输出字母的大小写修改方式不知如何更改。

注:若要修改下述相应功能则直接查找红色下划线语句即可。

①、 MasterCAM后处理输出文件格式设置

sextnc MIN #NC Program Extension for Okuma

上述语句表示输出格式为MIN格式。若没有可以新建。“.Trun”格式表示车床专用。需要的格式修改MIN即可,如MPF,NC,H,TXT等这样就不必每次为输出什么样的格式费神了。我就经常用MPF和NC、H几种格式,为每种格式编制一个后处理或通用一个均比较方便。

②、 “Arcoutput”控制语句控制圆弧输出格式,设置值若为“0”表示输出为“IJK”格式;若设置值为“1”则输出圆弧格式为“R”。“arctype”控制输出圆弧类型,若为“1”则表示由圆心确定;若为“2”则表示由起点(Start)指向圆心(Center),2=St-Ctr;若为“3”表示由圆心指向起点,3=Ctr-St;若为“4”表示非增量。

arcoutput : 0 #0 = IJK, 1 = R no sign, 2 = R signed neg. over 180

arctype : 1 #Arc center 1=abs, 2=St-Ctr, 3=Ctr-St , 4=unsigned inc.

③、“Omitseq”控制语句控制序列号输出,若设置值为“Yes”则忽略序列号,不输出,若设置值为“No”则不忽略即输出序列号。

④、“Spaces”控制语句控制空格输出,若设置值为“0”表示不输出空格即紧凑输出,若设置值为“1”表示输出空格即在每个“X,Y,R,F”等控制语句前加一空格。

⑤、若要查找每一条输出语句的作用及位置则在输出语句后加上标语句即可。一般输出语句的格式为:

pbld, n, “M6”, e(其中pbld为输出开头,n为序列号,“”引号内为直接输出字符,e为结束语句。

下面语句为程序号输出格式:

fmt O 4 progno #Program number

#fmt “:” 4 progno #Program number

#表示注释语句的开始,fmt是格式定义,O表示输出程序开头为O,若开头为PR或P时只需要改O为需要的程序开头即可。这里 的4表示程序号长度为4个字节。其它用fmt格式定义的语句也一样,可用此法修改想改的部分即可得到需要的输出结果。比如要求输出的G01变为L格式(即从ISO格式转化为Heidenhain格式)

*progno:从MasterCAM图形中读入程序号

scomm:从MasterCAM图形中读入注释文本

*t:从MasterCAM图形中读入刀具号

*tnote, *toffnote, *tlngnote,

*tldia:从MasterCAM图形中读入刀具直径

date:从MasterCAM图形中读入日期

time:从MasterCAM图形中读入时间

*speed:从MasterCAM图形中读入主轴速度

*spindle:从MasterCAM图形中读入主轴

scoolant:从MasterCAM图形中读入冷却液打开与关闭

“”:从MasterCAM图形中输出时引号内的内容直接输出。

Sprogname:从MasterCAM图形中输出程序名控制语句

Scrollex

MasterCAM9后处理的修改

MasterCAM系统缺省的后处理文件为MPFAN.PST,适用于FANUC(发那科)数控代码的控制器。其它类型的控制器需选择对应的后处理文件。

⑴进行模具加工时,需从G54~G59的工件坐标系指令中指定一个,最常用的是G54。部分控制器使用G92指令确定工件坐标系。对刀时需定义工件坐标原点,原点的机械坐标值保存在CNC控制器的G54~G59指令参数中。CNC控制器执行G54~G59指令时,调出相应的参数用于工件加工。采用系统缺省的后处理文件时,相关参数设置正确的情况下可输出G55~G59指令,但无法实现G54指令的自动输出。

⑵FANUC.PST后处理文件针对的是4轴加工中心,而目前使用量最大的是3轴加工中心,多出了第4轴数据“A0.”。

⑶不带刀库的数控铣使用时要去掉刀具号、换刀指令、回参考点动作。

⑷部分控制器不接受NC文件中的注释行。

⑸删除行号使NC文件进一步缩小。

⑹调整下刀点坐标值位置,以便于在断刀时对NC文件进行修改。

⑺普通及啄式钻孔的循环指令在缺省后处理文件中不能输出。使用循环指令时可大幅提高计算速度,缩小NC文件长度。

如果要实现以上全部要求,需对NC文件进行大量重复修改,易于出现差错,效率低下,因此必须对PST(后处理)文件进行修改。修改方法如下:

1、增加G54指令(方法一):

采用其他后处理文件(如MP_EZ.PST)可正常输出G54指令。由于FANUC.PST后处理文件广泛采用,这里仍以此文件为例进行所有修改。其他后处理文件内容有所不同,修改时根据实际情况调整。

单击【edit】→【find】按钮,系统弹出查找对话框,输入“G49”。

查找结果所在行为:

pbld, n, *sgcode, *sgplane, “G40”, “G49”, “G80”, *sgabsinc, e

插入G54指令到当前行,将其修改为:

pbld, n, *sgcode, *sgplane, “G40”, “G49”, “G80”, *sgabsinc, “G54″,e

输出的NC文件修改前对应位置指令为:

N102G0G17G40G49G80G90

修改后变为:

N102G0G17G40G49G80G90G54

查找当前行的上一行:

pbld, n, *smetric, e

将其整行删除,或加上“#”成为注释行:

# pbld, n, *smetric, e

修改后G21指令不再出现,某些控制器可不用此指令。注意修改时保持格式一致。G21指令为选择公制单位输入,对应的英制单位输入指令为G20。

2、增加G54指令(方法二):

单击按钮,系统弹出查找对话框,输入“force_wcs”,单击按钮,查找结果所在行为:

force_wcs : no #Force WCS output at every toolchange?

将no改为yes,修改结果为:

force_wcs : yes #Force WCS output at every toolchange?

输出的NC文件修改前对应位置指令为:

N106G0G90X16.Y-14.5A0.S2200M3

修改后变为:

N106G0G90G54X16.Y-14.5A0.S2200M3

前一方法为强制输出固定指令代码,如需使用G55~G59指令时,有所不便。多刀路同时输出时,只在整个程序中出现一次G54指令。后一方法同其他后处理文件产生G54指令的原理相同,多刀路同时输出时,每次换刀都会出现G54指令,也可根据参数自动转换成G55~G59指令。

输出三轴加工中心程序的FANUC后处理文件为MP_EZ.PST,输出4轴加工中心程序的三菱控制器后处理文件为MP520AM.PST。

3、删除第四轴数据“A0.”,以适应三轴加工中心:

单击按钮,系统弹出查找对话框,输入“Rotary Axis”,单击按钮,查找结果所在行为:

164. Enable Rotary Axis button? y

164. Enable Rotary Axis button? n

修改后第四轴数据不再出现。

4、删除刀具号、换刀指令、回参考点指令,适应无刀库的数控铣机床:

单击按钮,系统弹出查找对话框,输入“M6”,单击按钮,查找结果所在行为:

if stagetool >= zero, pbld, n, *t, “M6”, e

将其修改为:

if stagetool >= zero, e # pbld, n, *t, “M6”,

另一个换刀的位置所在行为:

pbld, n, *t, “M6”, e

将其删除或改为注释行:

#pbld, n, *t, “M6”, e

修改后换刀指令行不再出现,通常修改第一个出现“M6”指令的位置即可。

单击按钮,系统弹出查找对话框,输入“*sg28ref”,单击按钮,查找结果所在行为:

pbld, n, sgabsinc, sgcode, *sg28ref, “Z0.”, scoolant, e

pbld, n, *sg28ref, “X0.”, “Y0.”, protretinc, e

将其修改为:

pbld, n, scoolant, e

# pbld, n, *sg28ref, “X0.”, “Y0.”, protretinc, e

输出的NC文件修改前对应位置指令为:

N116G91G28Z0.M9

修改后变为:

N116M9

PST文件中另有两个类似位置,如使用G92指令确定工件坐标,可对其适当修改。加工结束后,机床各轴不回参考点,便于手动换刀时节省时间。

5、删除NC文件的程序名、注释行:

单击 按钮,系统弹出查找对话框,输入“%”,单击 按钮,查找结果所在行为:

“%”, e

*progno, e

“(PROGRAM NAME – “, progname, “)”, e

“(DATE=DD-MM-YY – “, date, ” TIME=HH:MM – “, time, “)”, e

将其删除或改为注释行:

“%”, e

# *progno, e

# “(PROGRAM NAME – “, progname, “)”, e

# “(DATE=DD-MM-YY – “, date, ” TIME=HH:MM – “, time, “)”,

输出的NC文件修改前对应位置指令为:

O0010

(PROGRAM NAME – A2)

(DATE=DD-MM-YY – 25-12-04 TIME=HH:MM – 10:45)

修改后以上指令行不再出现。

单击按钮,系统弹出查找对话框,输入“pstrtool”,单击 按钮,查找结果所在行为:

“(“, pstrtool, *tnote, *toffnote, *tlngnote, *tldia, “)”, e

将其删除或改为注释行:

#”(“, pstrtool, *tnote, *toffnote, *tlngnote, *tldia, “)”, e

输出的NC文件修改前对应位置指令为:

(D16R8.0 TOOL – 2 DIA. OFF. – 0 LEN. – 0 DIA. – 16.)

修改后以上指令行不再出现。此注释行指明当前刀路所使用的刀具参数,可用于加工前核对加工单,建议保留。法兰克及三菱控制器可以接受注释内容。

6、取消行号:

单击按钮,系统弹出查找对话框,输入“omitseq”,单击 按钮,查找结果所在行为:

omitseq : no #Omit sequence no.

将其修改为:

omitseq : yes #Omit sequence no.

修改后行号不再出现。

7、调整下刀点坐标值位置:

单击按钮,系统弹出查找对话框,输入“g43”,单击 按钮,查找结果所在行为:

pcan1, pbld, n, *sgcode, *sgabsinc, pwcs, pfxout, pfyout,

pfcout, *speed, *spindle, pgear, strcantext, e

pbld, n, “G43”, *tlngno, pfzout, scoolant, next_tool, e

将其修改为:

pcan1, pbld, n, *sgcode, *sgabsinc, pwcs, pfxout, pfyout, pfcout, e

pbld, n, *sgcode, pfzout, e

pbld, n, *speed, *spindle, pgear, strcantext, e

pbld, n, “G43”, *tlngno, scoolant, next_tool, e

输出的NC文件修改前对应位置指令为:

G0G90G54X16.Y-14.5S2200M3

G43H0Z20.M8

修改后变为:

G0G90G54X16.Y-14.5

G0Z20.

S2200M3

G43H0M8

新的指令顺序使下刀点(安全高度)x、y、z坐标值同其他指令分开,易于在断刀时修改。G43指令在PST文件中有两个位置,如仅使用G54指令时,修改第一个出现“G43”的位置即可。

8、输出普通及啄式钻孔循环指令:

单击按钮,系统弹出查找对话框,输入“usecandrill”,单击 按钮,查找结果相关行为:

usecandrill : no #Use canned cycle for drill

usecanpeck : no #Use canned cycle for Peck

usecandrill : yes #Use canned cycle for drill

usecanpeck : yes #Use canned cycle for Peck

此修改适用于支持G81、G83钻孔循环指令的控制器。

部分FANUC系统G代码,不全。可供参考。

G代码表

代码 组 功能

G00 01 定位

G01 直线插补

G02 顺时针圆弧插补

G03 逆时针圆弧插补

G04 00 暂停

G10 可编数据输入

G11 取消可编数据输入方式

G15 17 极坐标指令取消

G16 极坐标指令开

G17 02 选择X、Y平面

G18 选择Z、X平面

G19 选择Y、Z平面

G20 06 英制输入

G21 公制输入

G28 00 返回参考点

G29 从参考点返回

G30 返回第2、3、4参考点

G40 07 取消刀具半径补偿

G41 刀具半径左补偿

G42 刀具半径右补偿

G43 08 刀具长度正补偿

G44 刀具长度负补偿

G49 取消刀具长度补偿

G50 11 取消比例缩放

G51 比例缩放开

G50.1 22 镜象取消

G51.1 镜象开

G52 00 局部坐标系设定

G53 选择机床坐标系

G54 14 选择工件坐标系1

G55 选择工件坐标系2

G56 选择工件坐标系3

G57 选择工件坐标系4

G58 选择工件坐标系5

G59 选择工件坐标系6

G65 00 宏程序调用

G66 12 宏程序模态调用

G67 取消宏程序模态调用

G68 16 坐标旋转

G69 取消坐标旋转

G73 09 深孔钻循环

G74 左攻螺纹循环

G76 精镗循环

G80 取消孔加工固定循环

G81 钻、镗孔循环

G82 锪孔循环

G83 深孔钻循环

G84 右攻螺纹循环

G85 镗孔循环

G86 镗孔循环

G87 背镗孔循环

G88 镗孔循环

G89 镗孔循环

G90 03 绝对方式编程

G91 增量方式编程

G92 00 设定工件坐标系

G98 10 固定循环返回初始点

G99 固定循环返回R点

MASTERCAM后处理的设置和参数修改

下面重点介绍它的后处理设置.

1) Annotation(注释).对后处理文件及其设定方法作一般性介绍.此部分内容一般都不用更改.

以下是截取的部分注释:(注释前都带#号,系统在执行代码处理时是不会读取前面带#号的语句的.)

# Post Name : MPFAN

# Product : MILL

# Machine Name : GENERIC FANUC

# Control Name : GENERIC FANUC

# Description : GENERIC FANUC MILL POST

# Associated Post : NONE

# Mill/Turn : NO

# 4-axis/Axis subs. : YES

# 5-axis : NO

# Subprograms : YES

# Executable : MP v9.0

#

# WARNING: THIS POST IS GENERIC AND IS INTENDED FOR MODIFICATION TO

# THE MACHINE TOOL REQUIREMENTS AND PERSONAL PREFERENCE.

2) Debugging and Factory Set Program Switches (系统程序规划).此部分是MASTERCAM版本的后处理系统规划,每个版本都大同小异,一般不需更改.以下截取的是9.0版的)

m_one : -1 #Define constant

zero : 0 #Define constant

one : 1 #Define constant

two : 2 #Define constant

three : 3 #Define constant

four : 4 #Define constant

five : 5 #Define constant

c9k : 999 #Define constant

fastmode : yes #Enable Quick Post Processing, (set to no for debug)

bug1 : 2 #0=No display, 1=Generic list box, 2=Editor

bug2 : 40 #Append postline labels, non-zero is column position?

bug3 : 0 #Append whatline no. to each NC line?

bug4 : 1 #Append NCI line no. to each NC line?

whatno : yes #Do not perform whatline branches? (leave as yes)

get_1004 : 1 #Find gcode 1004 with getnextop?

rpd_typ_v7 : 0 #Use Version 7 style contour flags/processing?

strtool_v7 : 2 #Use Version 7 toolname?

tlchng_aft : 2 #Delay call to toolchange until move line

cant_tlchng : 1 #Ignore cantext entry on move with tlchng_aft

newglobal : 1 #Error checking for global variables

getnextop : 0 #Build the next variable table

sub_level : 1 #Enable automatic subprogram support(启用自动支持子程式)

breakarcs : 2 #Break arcs, 0 = no, 1 = quadrants, 2 = 180deg. max arcs(打断圆弧方式)

arcoutput : 1 #0 = IJK, 1 = R no sign, 2 = R signed neg. over 180(转出圆弧方式)

arctype : 2 #Arc center 1=abs, 2=St-Ctr, 3=Ctr-St, 4=unsigned inc.

do_full_arc : 0 #Allow full circle output? 0=no, 1=no (是否转成整圆方式)

helix_arc : 0 #Support helix arc output, 0=no, 1=all planes,2=XY plane only(是否转成螺旋弧)

arccheck : 1 #Check for small arcs, convert to linear(是否检测小圆弧并将其转成线)

atol : .01 #Angularity tolerance for arccheck = 2(圆弧角度公差)

ltol : .002 #Length tolerance for arccheck = 1(圆弧长度公差)

vtol : .1 #System tolerance(系统公差)

maxfeedpm : 500 #Limit for feed in inch/min(最大进给-英制)

ltol_m : .05 #Length tolerance for arccheck = 1, metric(圆弧长度公差-公制)

vtol_m : .0025 #System tolerance, metric(系统公差-公制)

maxfeedpm_m : 10000 #Limit for feed in mm/min(最大进给-公制)

force_wcs : no #Force WCS output at every toolchange?(换刀时是否转出WCS坐标)

spaces : 0 #Number of spaces to add between fields(两行之间是否加入空格)

omitseq : yes #Omit sequence numbers?(是否省略序列号)

seqmax : 9999 #Max. sequence number(最大序列号)

stagetool : 0 #0 = Do not pre-stage tools, 1 = Stage tools(是否沿用刀具)

use_gear : 0 #Output gear selection code, 0=no, 1=no (是否转成齿轮代码)

max_speed : 10000 #Maximum spindle speed(最大转速)

min_speed : 50 #Minimum spindle speed(最小转速)

nobrk : no #Omit breakup of x, y & z rapid moves

progname : 0 #Use uppercase for program name (sprogname)(程式名称是否使用大写)

4) 中间还有一些例如:Common User-defined(指令设定),Format statements(格式报告),definitions for NC output(NC代码限定),Error messages(出错信息),Toolchange / NC output variable Formats(刀具变量)等基本上都是系统固定格式,不需要更改.在此就不再详述.当然,我也不建议你更改这些项目,如果你改错的话,系统很可能不执行或机台报警……

5) Start of File and Toolchange Setup(文本内容和换刀设定).此部分内容很重要,很多使用者都从这里着手把程式改成自己需要的格式.以下截取的是9.0版的部分内容,其中有些是我根据自己需要更改的,中文是我加的注解.引号内是可以更改的内容.

“%”, e(程式开头的百分号)

*progno, e(程式号码)

comment(注解,可有可无,如不需要则删除此句)

“(PROGRAM NAME – “, sprogname, “)”, e(程式名称,可有可无)

“(“, *tnote, *toffnote, *tlngnote, *tldia, “)”, e(刀具直径及补正参数显示,如不需要则把此整句删除)

“(DATE=DD-MM-YY – “, date, ” TIME=HH:MM – “, time, “)”, e(程式日期显示,可有可无)

pbld, n, *”/M99″, e (我自己加的一句,如不需要则整句删除,而不是只删除引号内的内容)

pbld, n, *”G90″, “G92″,”X0.Y0.Z10.”, e(定义加工原点,也可以改为G54坐标)

sav_absinc = absinc (绝对坐标系)

……

(中间省略的部分是系统根据刀路自动转出的程式,一般不必改)

……

(以下几句是出现在程式尾,可以根据需要添加或删除)

n, “Z10.”, e (加工完成后提刀至安全高度)

n, “X0.Y0.”, e (归零)

n, “G91”, e (转用相对坐标)

n, “M99”, e (回到主程式)

mergesub(此四句为程式结尾固定语句,不必理它)

clearsub

mergeaux

clearaux

“%”, e(程式尾)

6)Numbered questions for Mastercam Mill(问题参数设定).此部分大多数是MASTERCAM系统的参数设定,而涉及到后处理的内容很少,在此就不再详述,有兴趣者可以用词典翻译看看讲些啥?有什么新发现可以告诉俺.

发表评论

登录后才能评论