网通访问 |电信访问 | 网络测速 | 联系管理员 |安全退出论坛,保护账号安全!
发新话题
打印

[注意]后处理讨论专栏

10. CANNED CYCLES
11. OUTPUT FILES
12. POSTPR/EXPST INTERFACE
光标移到第六项,按下回车,再移到第8项,这一项是指关闭冷却方式的代码,光标会停在M09M上,按三次空格,再按下回车。修改结束。
如何让这次改动生效?不是按下ESC退出就可以了的,您必须有一个存盘退出的过程。
按下ESC,一共需要2次,这时对话框显得有些乱,多进入退出几次,可以改善这一状况,如图所示。
第一项,问您什么文件名,这个当然不用动了。
第二项,是否保存?当然是YES了,一般来说,这个也不用动他。
第三项,是否替换?这时候要按下<TAB>键,把他切换为YES
第四项,准备一个输出文件?这个不用理他。
准备好这四项的确定后,按下Ctrl + Z(先按住Ctrl键不放,然后再按下Z键,再一起放开),保存就生效了,再按下回车退出,关闭这个对话框。

浮躁的人容易问:我到底该学什么_别问,学就对了;
浮躁的人容易问学proe有钱途吗_建议你去抢银行;
浮躁的人容易说:我要中文版!我英文不行_不行?学呀;
只观望而不学的人和只学而不坚持的人永远不是一个高手。

TOP

现在打开Cimatron E/IT,准备两条刀路,前一条开油或开气,第二条什么都不开。按以前的方案来做的话,第二条会输出一个M09,但是现在POST就不出输出M09了,一般我以前做的时候,冷却是都不开的,但是有的朋友可能加工时需要自动开油或开气的,这样就有个好处,不需要每一个都调整冷却方式。也有一定的弊端,这个大家自已考虑。
作用:演示一下通用设定文件的修改和生效方式。

接下来,就为大家一个一个地演示各项的操作,不过有些项目我也不是太明白,就省略了,我想也是不常用的项目,大家只要了解一些必须的知识就行了,如果有些高级的内容(如多轴系统),还是由Cimatron公司来帮您定制来得更好。
浮躁的人容易问:我到底该学什么_别问,学就对了;
浮躁的人容易问学proe有钱途吗_建议你去抢银行;
浮躁的人容易说:我要中文版!我英文不行_不行?学呀;
只观望而不学的人和只学而不坚持的人永远不是一个高手。

TOP

打开DEMO.EXF文件,找到以下内容:
********************************************************
INTERACTION (USER_1)       "MAIN-PROGRAM-NUMBER"     MainNum     = 100  ;
主程序号
INTERACTION (TOOL)         "DIACOMP=TOOL+<xx>"       DiaComp     = 50   ;
刀补号
INTERACTION (USER_1)       "TOOL-CHANGE-PROGRAM"     ChangeTool  = 8000 ;
换刀子程序号
INTERACTION (CHARACTER)    "SEQUENCING<Y/N>"         NumYN       = "N"  ;
是否需要行号
INTERACTION (SEQUENCING)   "SEQUENC-START"           SeqStart    = 10   ;
起始行号
INTERACTION (SEQUENCING)   "SEQUENC-INCR."           SeqIncr     =
[img]


此主题相关图片如下:
按此在新窗口浏览图片
浮躁的人容易问:我到底该学什么_别问,学就对了;
浮躁的人容易问学proe有钱途吗_建议你去抢银行;
浮躁的人容易说:我要中文版!我英文不行_不行?学呀;
只观望而不学的人和只学而不坚持的人永远不是一个高手。

TOP

10   ; 行号增量
INTERACTION (CHARACTER)    "SUBROUTINES<Y/N>"        Sub         = "Y"  ;
是否输出子程序
INTERACTION (USER_1)       "SUB-PROGRAM-NUMBER"      StartSubNum = 1000 ;
子程序号
********************************************************
菜单说明:
   INTERACTION
交互作用,是执行后处理时的一些交互的内容:
   (CHARACTER)
字符类型,仅指定义的符号
   (USER_1)
格式类型,性质同变量格式,余同。  
  “XXXX.....XXXX”
交互菜单显示内容
  MainNum
定义符,其定义的值或者字符由编程者输入。
浮躁的人容易问:我到底该学什么_别问,学就对了;
浮躁的人容易问学proe有钱途吗_建议你去抢银行;
浮躁的人容易说:我要中文版!我英文不行_不行?学呀;
只观望而不学的人和只学而不坚持的人永远不是一个高手。

TOP

例:当主程序号输入5时,相应的输出部分内容“MainNum”则用5取代。
    *-----output  
      IF_SET (FlagSeq _EQ_ YES )
         OUTPUT "%" \J "O" MainNum  ;   ----NC
文件输出为%O5
      ELSE
         OUTPUT " %" \J " O" MainNum  ;  ----NC
文件输出为 % O5
      END_IF ;

交互菜单界面

按此在新窗口浏览图片

如果需要添加新的交互内容,只需要添加一个交互行就可以了,当然需要注意被交互的内容格式是字符型还是实数型。
假如我要出两种不同程序头的后处理,可以在楼上的菜单中,增加一行:
INTERACTION (CHARACTER)    "CONTTYPE_SELECT"         
CONTTYPE    = "N"  ;   字符型的交互内容

EXF文件程序头输出部分改成下面内容就可以了

IF_SET ( CONTTYPE _EQ_ "y" )  CONTTYPE ="Y"; END_IF ;  
大小写设别
   IF_SET (
CONTTYPE _EQ_ "Y" )    如果CONTTYPE=Y
        OUTPUT " %_N_DM_MPF" \J ;
        OUTPUT " ;$PATH=/_N_MPF_DIR" \J " G90 G00 G17 G64 G54 " ;
       ELSE     
反之
         OUTPUT " %" \J " G90 G00 G17 G40 G54 " ;
      END_IF ;   
判断结束

按此在新窗口浏览图片

如果需要添加新的交互内容,只需要添加一个交互行就可以了,当然需要注意被交互的内容格式是字符型还是实数型。
假如我要出两种不同程序头的后处理,可以在楼上的菜单中,增加一行:
INTERACTION (CHARACTER)    "CONTTYPE_SELECT"         
CONTTYPE    = "N"  ;   字符型的交互内容

EXF文件程序头输出部分改成下面内容就可以了

IF_SET ( CONTTYPE _EQ_ "y" )  CONTTYPE ="Y"; END_IF ;  
大小写设别
   IF_SET (
CONTTYPE _EQ_ "Y" )    如果CONTTYPE=Y
        OUTPUT " %_N_DM_MPF" \J ;
        OUTPUT " ;$PATH=/_N_MPF_DIR" \J " G90 G00 G17 G64 G54 " ;
       ELSE     
反之
         OUTPUT " %" \J " G90 G00 G17 G40 G54 " ;
      END_IF ;   
判断结束

[此贴子已经被作者于2006-5-16 18:43:27编辑过]

浮躁的人容易问:我到底该学什么_别问,学就对了;
浮躁的人容易问学proe有钱途吗_建议你去抢银行;
浮躁的人容易说:我要中文版!我英文不行_不行?学呀;
只观望而不学的人和只学而不坚持的人永远不是一个高手。

TOP

当编程者在交互区输入Y或非Y时,NC文件程序头分别为:
%_N_DM_MPF
;$PATH=/_N_MPF_DIR_MPF
G90 G00 G17 G64 G54

或:
%
G90 G00 G17 G40 G54
....

有不少人或许对上面的条件判断不大了解,可翻旧贴查看!
主要判断符号如下:
   
等于              _EQ_
   
不等于           _NE_
   
大于              _GT_
   
小于              _LT_
   
大于等于        _GE_
   
小于等于        _LE_

浮躁的人容易问:我到底该学什么_别问,学就对了;
浮躁的人容易问学proe有钱途吗_建议你去抢银行;
浮躁的人容易说:我要中文版!我英文不行_不行?学呀;
只观望而不学的人和只学而不坚持的人永远不是一个高手。

TOP

欢迎大家多来坐讲座!
浮躁的人容易问:我到底该学什么_别问,学就对了;
浮躁的人容易问学proe有钱途吗_建议你去抢银行;
浮躁的人容易说:我要中文版!我英文不行_不行?学呀;
只观望而不学的人和只学而不坚持的人永远不是一个高手。

TOP

第三颗 定义DEF文件

 

Tape Information

When the maximum number of blocks or tape length is reached during an execution, the tape will be cut automatically and a warning message will be issued.

1.Maximum no. of blocks in tape < >

2.Maximum tape length (in meters)  <60.0>

3.Subroutines in separate files  <YES,NO>

第一项:纸带中最多的块数,所谓块数,指的是纸带中的任意一个指令的存在,比方说“G01”,就算一个BLOCK“X100”,也算一个BLOCK
第二项,纸带的最大长度。这个代表的是米数(是纸带长度还是刀路长度没有去具体了解,字面意思理解是纸带长度)。
第三项,是否在分开的文件中引用子程序。

这一段的设置,在我们大多数地CNC应用中,是很少接触到的,所以如果没有必要的话就不要去动他了,这个大家能够了解一下就可以了,留在脑中以防万一。

心境 改变环境

TOP

Programming Mode and Unit

Questions 1 through 4 are for informational purposes only. Every length unit (X, Y, Z, I, J, K) will be multiplied by the Factor for length units.

1.Programming mode    <ABSOLUTE,INCREMENTAL,BOTH>

2.Code for absolute coordinates   <G90>

3.Code for incremental coordinates   <G91>

4.Length unit of measurement   <METRIC,INCHES,BOTH>

5.Factor for length units    <1.0>

6.Tool Start Point   <TP HOME, 1ST PROC HOME>

7.Coordinate orientation   <MACSYS, 1st PROC, CUR PROC>

第一项:编程模式,分别为绝对值编程,相对值编程,混合编程。
第二项:使用绝对值坐标的命令(默认为G90
第三项:使用相对值坐标的命令(默认为G91
第四项:长度单位(公制,英制,混合)
第五项:比例因子(默认为1.0),这是一个非常有用的功能,许多人都问过,但我一般都没有去回答,因为涉及到前面的那些基本操作和理解,要一个一个地说清楚,是一件很郁闷的事。当你的工件忘记放收缩了,可以用这个让刀路放收缩,注意,这个是绝对的,也就是说,你的工件图形和目标工件,必须存在的是一个固定的比例关系,不可以是型腔要放收缩,而导柱孔不需要放收缩,要放就一起放,除非你深入地去理解他,操作他。如果零件的缩水是0.008,那么这里就输入1.008,图形中的100mm,加工后就变成了100.8mm,这个参数一定要小心修改!
第六项:刀具起始点,分别为路径起点,第一程序起点。
第七项:坐标原点,分别为机床原点,第一程序原点,当前程序原点。
上面这两项,没必要的话,不要去弄他,一~四项一般来说,也不要去动他。
心境 改变环境

TOP

Note:

6. Tool Start Point: If TP HOME is chosen, X_HOME, Y_HOME, and Z_HOME will be the coordinates of the toolpath start point. If 1ST PROC HOME is chosen, the coordinates will reflect the start point of the procedure.

7. Coordinate orientation: If 1ST PROC is chosen, the output orientation will be the same as that of the first output procedure. If CUR PROC is chosen, the output orientation will be the same as TP LIST.

 

 

Formats

There are eighteen format option questions for each of the following formats. They are listed below the formats. The default values for the formats each have a value with twelve positions. Each position represents an answer for one of the twelve format option questions.

If a question is to be answered YES or NO, 0 is NO and 1 is YES. The tilde ~ symbol represents any character but a blank. A blank space in the default position indicates that no character or space will be inserted in the specified position.

心境 改变环境

TOP

Note:

For technical reasons the values representing the answers to Format Options 11 and 12 are reversed, i.e. the 11th position corresponds to Format Option 12 and the 12th position corresponds to Format Option 11.

Character is a format type which may be assigned in place of the format types listed. It is not defined with the DFPOST questions. It assigns a modal status, by default. Variables formatted as Character may contain up to 20 characters.

User_1 to User_10 are user-defined format types and are explained in Section 3.2.

Coordinates <430000~-.101>
坐标
Angles<430000~-.101>
角度
Feed<5 1001~~ 101>
进给(不可以有负值哦)
Spindle_speed<5 1001~~.101>
转速
Dwell<430000~~.101>
钻孔循环
Sequencing<5 1001~~ 101>
行号
Tool<4 0000~~.001>
刀具

心境 改变环境

TOP

User_1<430000~-.001>
自定义
User_2 <430000~-.001>
自定义
User_3<430000~-.101>
自定义
User_4 <430000~-.101>
自定义
User_5<430000~-.101>
自定义
User_6<430000~-.101>
自定义
User_7<430000~-.101>
自定义
User_8<430000~-.101>
自定义
User_9<430000~-.101>
自定义
User_10<430000~-.101>
自定义
Real<355511~-.100>
实数
上面的就是变量定义的,舜江候兄没有讲得太清楚,我补充上来。其中尖括号里的内容就是默认值,对应在下面的变量格式里。
如:<430000~-.101>
最大4位整数,3位小数,整数最小位数为0,小数最小位数为0,前导零不要,后导零不要,正号不输出,负号为,小数点为“."……后面几位我也不是太清楚,所以就不说了。
心境 改变环境

TOP

有一种情况,不知道大家是否会遇到,你们可以立即测试一下。通过2点画一个R足够大的圆,比方说R40000,两点距离为200,然后沿线做一条刀路,看看POST出来的刀路是否也是R40000,如果不是,那就把第一项Coordinates的值改一下,这一项的用处大家应该知道了,后面就不多解释了。
我们在用EXF文件定义中,会用到这些变量格式,有一节变量定义中,大家可以看到各种值用的是什么格式,如果有必要的话,就修改他,或者用自定义的格式(User1~10)。

The values entered below are the default settings for Coordinates, 1. above. <430000^-.101>

心境 改变环境

TOP

See Chapter 3 in this manual for a detailed explanation of modal variable values (Item 12).

Format Options

Max. digits for integer part   <4>
整数位数
Max. digits for fractional part <3>
小数位数
Min. digits for integer part <0>
整数最小位数
Min. digits for fractional part <0>
小数最小位数
Leading zeroes <NO,YES>
前导零。就是说如果出现0.02”这样的值,是否需要前导的零,如果选NO的话,输出就是.02”
Trailing zeroes <NO,YES>
这个应该是后导的零吧,小数位数是3,如果有"0.2"这样的数,小数位数不足3,后面补零输出为"0.200",这个我没有去测试。
Character for the + sign < >
正号,这个不需要,所以是空的。
Character for the - sign <->
负号
Character for decimal point <.>
小数点
Use decimal pt. for whole numbers?.<YES,NO>

Representation of value 0 <0>
0
的特殊表达
Modal value ? <YES,NO>
????
Notes:
注意
Max. digits for integer part/Max. digits for fractional part <= 9
整数部分和小数部分最大位数是9,以后不要说Cimatron没精度了,Cimatron的精度绝对在浮点运算水平上。
For Real format, Max. digits for integer part and Max. digits for fractional part are internally set to 14
Real
模式(实数)最大位数为14
心境 改变环境

TOP

QUOTE:
 

龙兄,第一课的第一贴麻烦再转一次,昨天我有修改

[此贴子已经被作者于2006-5-16 19:39:27编辑过]

心境 改变环境

TOP

这就讲完了吗?挺好的,请继续吧

TOP

我看到换刀有子程序,但我想用个G91G28Z0M05,代替不知怎样改?请告诉我.

TOP

认真学习中!

TOP

第四课 EXF的重要区段变量


许多段落在里的exf文件里,都可以看到。用法比较简单,只需要在段落开始的时候写上段名(后面要有一个冒号),就表示这一段开始。
例如:
BEGINNING OF PROC:
OUTPUT $ "(Procname:" proc_name ")";
这就表示,在程序起始时,先输出程序名。直到该段代码运行完毕,遇到下一个段名(如“LINEAR MOTION:”),才会结束这一段。输出的内容,全部都在程序起始的部位。
可能解释得不是很清楚,大家细细去体会一下,如果谁能说得更清楚更明白一点的,欢迎补充!

心境 改变环境

TOP

除此以外,还有几个很重要的区域,掌握后,对定制EXF有很大的帮助。
从顶部看起:
* DEMO 3 axes Post Processor for FANUC
* CIMATRON90 VER 9.0
* Last update : 23-FEB-1998

********************************************************
* define private variables:   
私有变量
FORMAT (SEQUENCING)  Seq SubSeq CNTRL_NUM NURBS_DEG count first deg ;
FORMAT (TOOL)        CutterComp FirstTool LastTool ;
FORMAT (COORDINATES) Xold Yold Zold DXcenter DYcenter DZcenter ;
FORMAT (COORDINATES) Zinit Clear Depth CNTRL_X  CNTRL_Y  CNTRL_Z  KNOT_ ;
FORMAT (COORDINATES) Xhome Yhome Zhome ;
FORMAT (COORDINATES) XfirstOrigin YfirstOrigin ZfirstOrigin ;
FORMAT (USER_1)      CurrSubNum ;
FORMAT (coordinates) ORIGOLDI ORIGOLDJ ORIGOLDK ;

* define private flags:  
私有标记
FORMAT (USER_2)      FlagSub FlagSeq FlagSpin;
FORMAT (USER_2)      FirstOriginChange FlagError Flagrotmac  ;

* define private constants:
私有常量
FORMAT (USER_2)      YES NO ;

* change the format of existing variables:  
变更已存在变量格式
FORMAT (USER_1)      SUB_NUMBER ;

心境 改变环境

TOP

发新话题