1启动后处理构造器④2如图设置,选用fanuc_6M控制器④3保存,取名:3zhou_fanuc4(不让G40单独占一行)删除G40代码④⑤5(不让G40与G02同一行)删除G41代码④⑤6(设置G00同样可以输出G41/G40)添加G41代码④⑤7(设置G41之后必然有D01)添加customcommand代码④⑤⑥7(设置G41之后必然有D01)输入代码MOM_forceOnceD⑦插入⑨输入代码⑧设置名称7(设置G41之后必然有D01)(补充说明)下面的做法是不正确的D会提前出现8(设置线性运动分辨率)(即坐标数据精度)(设置为0.001,精度不要设置高了)9(设置圆弧最小值)④⑤最小值最小圆弧长度太小会出问题,见后面补充说明设置0.01比较合适10(设置钻孔循环G98退刀)选择G9810(设置钻孔循环G98退刀)添加G9811(设置G84格式)允许定制11(设置G84格式)添加G95M29指令11(设置G84格式)添加定制G95指令11(设置G84格式)添加定制M29指令11(设置G84格式)(设置G84之后输出G94的标识)(钻孔之后不输出G94攻丝之后才输出G94)11(设置G84格式)钻孔之后不输出G94攻丝之后才输出G9411(设置G84格式)(单独定义一个攻丝F指令)删除原来的F11(设置G84格式)添加自定义F如下图11(设置G84格式)新建格式设置如下11(设置G84格式)(设置螺距F大于5小于0.001报警)编程F超出区间会报警如下图这个报警不便于检查我们继续优化11(设置G84格式)(设置超出值弹出报警窗口)值设大11(设置G84格式)(设置超出值弹出报警窗口)在G84之后加入如下语句就会报警如右图作业:设置T=0S=0报警提示:在代码上面右键选择编辑,可以查看代码的变量名称11(设置G84格式)(添加一个Q代码)设置如右图11(设置G84格式)设置代码输出顺序交换一下输出顺序完成G84设置12(去除切削进给F后面的点)如F200.改成F200④⑤13(删除G02后面的K代码)G18/G19平面需要时可以单独做一个后处理14(线性运动SM03单独占行)提行即可15(程序无G00同样输出G43)加入G43H01指令16(快速运动SM03单独占行)提行即可17(G43这行输出M08)18(S之后出现G04暂停)在线性运动和快速运动的S之后添加G04K地址不同系统暂停指令不同自己根据系统要求设置代码18(S之后出现G04暂停)(每个工序刷新一次G04)这样可以实现,但是同一把刀每个工序都在S之后输出暂停浪费时间我们需要换刀时才暂停所以要改一下,见后页18(S之后出现G04暂停)接上页把刷新放到换刀之前就可以了19(添加刀具信息和换刀暂停T0报警)在自动换刀TM6后面添加一个自定义命令如下图看不清楚代码到文件,搜索T=0即可20(S0、F250报警)在每个地方都添加右边代码(有些工序是没有某些动作的,所以全部添加保证生效)20(S0、F250报警)钻孔需要在这里面添加,否则无效21(设置G54-G59)添加一个新块21(设置G54-G59)添加G-MCSFixtureoffset21(设置G54-G59)右键更改为用户定义21(设置G54-G59)53改成G54默认输出G54MCS中的装夹偏置设置1=G552=G56...22(程序头输出%+NC名)输出零件名称23(在程序头输出Zmax)定制命令-导入-行程检查导入23(在程序头输出Zmax)在before_motion中输入check命令23(在程序头输出Zmax)在尾部添加如下代码注意因为要重写文件,所以后处理NC文件不能指定为中文路径,否则会报警注意:代码看不清楚到输出到程序头会大大减慢后处理速度做过一个比较:2250K的文件(2.19M)不加turbo输出到前面80秒加turbo输出到前面要55秒钟不加turbo输出在后面30秒加turbo输出在后面7秒钟24(提高后处理速度)导入turbo高速处理指令24(提高后处理速度)把turbo高速处理指令加入程序头即可注意:加入turbo的影响加入turbo高速处理指令后,设置的自定义事件:与线性运动,圆弧运动,快速运动相关的都无效了例如F=250报警就无效了(钻孔,换刀有效里面的还有效)制作完成!后面有补充内容铣床(多把刀具一起后处理时报警设置)第一次调刀,无动作后面如果出现换刀报警铣床加入turbo后被强制输出G43要到这里面来屏蔽掉共3处铣床为了G00输出刀补,在这里加一句文字参数解释:截断值:大于5就输出5(很危险的)警告用户:警告用户(在哪里警告?)中止流程:弹出报警信息如下图(圆弧最小值太小的后果)④⑤(圆弧最小值太小的后果)这里有个极小圆弧段后处理结果变成了一个整圆精度问题导致XY坐标四舍五入后被省略,导致识别成一个整圆(报废过零件,切记!)(圆弧最小值太大的后果)(圆弧最小值太大的后果)(圆变成了多边形)当圆弧段不能满足输出圆弧代码时系统根据编程公差把圆用G01来拟合这时如果编程公差比较大圆就铣成了多边形(编程精度设置太高的后果)UG内部已经识别极小圆弧后处理可能出错(编程精度设置太高的后果)UG内部并未识别圆弧后处理不会出错F大于“移刀进给率设定值”时退刀时G01会变成G00此时无法输出G40因为快速移动里面没有设置G41/G42/G40需要添加问题编程F大于“移刀进给率设定值”时进刀时G01会变成F10000.这个F10000.是从这里来的程序值大于这个范围时就取这里的值