powermill ductpost后置处理修改.doc_第1页
powermill ductpost后置处理修改.doc_第2页
powermill ductpost后置处理修改.doc_第3页
powermill ductpost后置处理修改.doc_第4页
powermill ductpost后置处理修改.doc_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

DuctPost1430后置处理的修改说明指导思想:1. 确定机床认同的标准代码文件;2. 可使用DUCTPOST W HEID.OPT C:HEID.OPT利用PM已有的3轴后置来获取数控系统的基本后置3. 使用DUCTPOST标准后置产生机床的加工代码文件;4. 对比两者的差异,增加自定义用户化信息,由于增加信息无条件优先,它会替代系统默认的原始信息,不断修改直到DUCTPOST产生的加工代码文件和所需标准代码文件一致;5. 修改中注意备份和重命名(建议增加机床具体型号以示区别),删除用户化信息后,后置将自动还原成系统初始默认的标准后置;具体参数:1. 程序行号a) 如果系统不需要行号,那么重新定义批号键“N”define format ( N )not permanent end defineb) 如果系统需要行号起始行号“10”,增量行号“5”,可如下定义批号键“N”block start = 10block increment = 5c) 如果机床能认同的最大行号有所限制,那么可以插入下面的选项maximum block number = 5999(or whatever value required)d) 需要特殊的行号的地方多半定义一些特殊技能N1000 BEGIN PGM SPECIAL MM N1000 TOOL CALL 0 Z S3000 N1000 M55 N1000 M3 N1000 CYCL DEF 19.0 BEARBEITUNGSEBENE N1000 CYCL DEF 19.1 A0 B0 C0 N10 L X0.0 Y0.0 Z150.0 B0 C0 FMAX N12 L X254.345 Y146.780 B90.0 C35.250 FMAX N14 L Z-55.70 FMAX N16 L . 建议采用下面的格式define word NF address letter = N1000 address width = 5 field width= 0 end define word order = ( + NF ) define block tape start NF 0 ; BEGIN PGM ; ID PartID ; metric data end define define block tool change first NF 0 ; T2 0 ; Z ; S 3000 NF 0 ; M1 55 NF 0 ; M1 3 NF 0 ; G4 190 ; BEARBEITUNGSEBENE NF 0 ; G4 191 ; A 0 ; B 0 ; C 0 N ; G1 ; X FromX ; Y FromY ; Z FromZ ; B =C ; C =C ; FMAX end define2. 线形移动通常线形输出的标准格式为G01 X. Y. Z. F.G01(G1)是直线命令,XYZ是绝对或增量坐标,F是进给速度3. 快速移动典型的快速移动输出格式可能象这样G00 G43 X. Y. Z. S. H. M34. 圆弧运动通常线形输出的标准格式为G02(G03) X. Y. I. J. F. xy Plane ( G17 )G02(G03) X. Z. I. K. F. zx Plane ( G18 )G02(G03) Y. Z. J. K. F. yz Plane ( G19 )G2/G3代表顺圆/逆圆,X,Y,Z代表圆弧终点坐标,I,J,K代表圆心,设置如下:define codes circle cw = G1 2 circle ccw = G1 3 xy plane = G3 17 xz plane = G3 18 zy plane = G3 19 end defineI,J,K表现为绝对坐标时设置为:incremental centre = falseI,J,K表现为相对坐标时设置为:incremental centre = true假如圆心坐标I,J,K符号不对(如果更改过圆心类型,一定要主义检查),可以这样改正define format ( I J K ) scale factor = -1 or 1 end define 有的机床不能输出整圆,需要将整个圆弧分为四个象限输出,此时需要作如下设定 single quadrant = true圆弧可以被强制输出为直线段,可作如下设定 integer 26 = 0 更常用 或者 circle output = ( 0 1 1 1 )在ductpost1430中圆弧可以分平面强制输出为直线段,可作如下设定 suppress xy arc = true default =false suppress zx arc = true default =false suppress yz arc = true default =false5. 信息输出信息输出设置是个二进位选项,默认值是有信息输出,如果不需要,直接添加message output = false6. 行程极限轴向移动行程限制由下面的命令行控制(缺省值):linear axis limits = ( -99999. 99999. -99999. 99999. -99999. 99999. )第一对数据控制X的正负极限行程,第二对控制Y,第三对控制Z。如果这些行程限制被超越,警告信息将被打印出来,后置过程中将出现“X太小(太大)超越了负极限行程(正极限行程)在某某区”,然后继续输出真实值。轴向转动行程限制由下面的命令行控制(缺省值):rotary axis limits = ( -99999 999999 -99999 999999 999 1 )第一对数据控制方位角的正负极限行程,第二对数据控制俯仰角的正负极限行程,最后一对数据反应了执行角度变化允许移动的次数和角度公差。以4轴加工为例:rotary axis limits = ( 0.0 0.0 -360.0 360.0 0.1 4 )如果旋转极限被超越,刀具将缩回到预先远离工作曲面的高度,然后转轴复位,增量执行旋转角度,直到在限定次数内完成所需的角度旋转。如果是5轴的案例:rotary axis limits = ( -20.0 110.0 -3600.0 3600.0 0.1 4 )在某些环境中行程限制被超越是可能的,但只是从方位角和俯仰角中选一个进行调配却是不可能的,警告信息提示后后置过程将被终止。7. 字符定义在DUCT后置的内嵌式加工源代码中,有一个初始化的字符定义清单,如下例:machine tiger define word / address letter = / end define define word N address letter = N end define define word G1 address letter = G end define define word G2 address letter = G end define etc. .上面每一个定义都确定了一个字符值。/= word1 ; N =word2 ; G1 = word3 ;以及清单下面的其他定义。在某些场合我们不得不定义一些变量名来实现一定的功能,这种手段还是非常有用的。 8. 十进制输出加入 integer 51 = n 到opt文件 integer 51 = ( n ) 小数输出格式 =1 小于1的数字被输出为 .xxxx (例如: .871 ) 大于1的数字被输出为 xxxx. (例如: 34. ) =2 小于1的数字被输出为 0.xxxx (例如: 0.871 ) 大于1的数字被输出为 xxxx. (例如: 34. ) =3 小于1的数字被输出为 .xxxx (例如: .871 ) 大于1的数字被输出为 xxxx.0 (例如: 34.0 ) =4 小于1的数字被输出为 0.xxxx (例如: 0.871 ) 大于1的数字被输出为 xxxx.0 (例如: 34.0 ) =5 与3相同 =6 小于1的数字被输出为 .xxxx (例如: .871 ) 大于1的数字被输出为 xxxx (例如: 34 ) 注意:此设置会影响所有十进制输出格式9. 掠过速度10. 进给速率精度11. 程序快速分割12. 持续轮廓速度13. 刀具径向补偿14. 钻孔循环15. 刀具轴向补偿16. 简单四轴设定多轴机床需作以下设定(在下例中三个主旋转轴被定义为A、B、C,但只用到一个旋转轴) define format ( A B C ) # 内置源文件可能已经设置好 metric formats leading zeros = false trailing zeros = true decimal point = true decimal places = 3 imperial formats leading zeros = false trailing zeros = true decimal point = true decimal places = 4 end define word order = ( + A B C ) # 仅内置词序列表不存在时需要block order = true # 取代词序列表, 使用 define block xxx 定义顺序 define keys azimuth axis not used #只有一个旋转轴不需要 elevation axis = A #第四旋转轴通常为仰角 ( 例如绕X轴旋转 ) end define # elevation axis ,包括A 或者B,或者C,需要插入Rapid和Linear定义块define block move rapid N ; rapid ; G2 ; G3 ; G6 ; x coord ; y coord ; z coord ; elevation axis ; spindle ; tool length ; M1 ; M2 end define define block move linear N ; linear ; G2 ; x coord ; y coord ; z coord ; elevation axis ; feedrate ; M1 ; M2 end define 旋转轴参数设定 当包括任何旋转轴时,下列参数必须设定 azimuth axis parameters = ( 0. 0. 0. 1. 0. 0. ) elevation axis parameters = ( 0. 0. 0. 0. 1. 0. ) 前三个数字给出了旋转中心(0. 0. 0.通常用来设定单旋转工作台)后三个数字定义了绕X,Y或者Z轴其中哪个轴旋转第四旋转轴是刀头旋转时 必须作以下设定 spindle elevation rotation = true #true时为主轴旋转,false时是工作台旋转(默认)elevation centre = ( 0. 0. 180.5 ) # 仅用于主轴方向偏离旋转中心,通常沿Z轴。(注意这些数值必须有小数点 ( 0. 而不是 0 )输入的距离是刀夹面到旋转中心(在上面的例子中这个距离是Z轴方向180.5)刀夹顶端到刀具端头的距离则可以在duct或者PowerMill的刀具长度中设定。注意:有些机床自身有刀具中心点管理功能,此时中心偏置必须设置为0. 。附加参数: elevation axis units = degrees elevation axis direction = positive # 标准旋转方向 pcs origin = ( 0 0 0 0 0 0 ) # (缺省值, 很少使用, 主要由于5轴) # Azimuth Min Max Elevn Min Max Tol. Moves rotary axis limits = ( -99999 99999 -99999 99999 0.1 1 ) # 缺省值,可以无限旋转 公差值(Tol.)是由Ductpost移动设置值保持的角度位移公差。 保持最高公差和最小移动可以提高机床性能。(从DP1331起,移动功能(最后一个数字)是多余的,被“linearise multiaxis moves = true”代替,它会自动调整移动数值使加工达到设定的公差)。 四轴示例:1.第四旋转轴在工作台(A:绕X轴旋转) define format ( A ) decimal point = true decimal places = 3 end define word order = ( + A ) define keys azimuth axis not used elevation axis = A end define spindle elevation rotation = false # Default elevation units = degrees elevation axis direction = positive azimuth axis parameters = ( 0. 0. 0. 0. 0. 0. ) elevation axis parameters = ( 0. 0. 0. 1. 0. 0. ) define block move rapid N ; rapid ; G2 ; G3 ; G6 ; x coord ; y coord ; z coord ; elevation axis ; tool length ; M1 ; M2 end define define block move linear N ; linear ; G2 ; x coord ; y coord ; z coord ; elevation axis ; tool radius ; feedrate ; M1 ; M2 end define 2.第四旋转轴在工作台(B:绕Y轴旋转) define format ( B ) decimal point = true decimal places = 3 end define word order = ( + B ) define keys azimuth axis not used elevation axis = B end define spindle elevation rotation = false # Default elevation units = degrees elevation axis direction = positive azimuth axis parameters = ( 0. 0. 0. 0. 0. 0. ) elevation axis parameters = ( 0. 0. 0. 0. 1. 0. ) define block move rapid N ; rapid ; G2 ; G3 ; G6 ; x coord ; y coord ; z coord ; elevation axis ; tool length ; M1 ; M2 end define define block move linear N ; linear ; G2 ; x coord ; y coord ; z coord ; elevation axis ; tool radius ; feedrate ; M1 ; M2 end define3.第四旋转轴在主轴(A:绕X轴旋转) define format ( A ) decimal point = true decimal places = 3 end define word order = ( + A ) define keys azimuth axis not used elevation axis = A end define spindle elevation rotation = true # Default false elevation units = degrees elevation axis direction = positive elevation centre = ( 0. 0. 180.5 ) # E distance azimuth axis parameters = ( 0 0 0 0 0 0 ) elevation axis parameters = ( 0 0 0 1 0 0 ) define block move rapid N ; rapid ; G2 ; G3 ; G6 ; x coord ; y coord ; z coord ; elevation axis ; tool length ; M1 ; M2 end define define block move linear N ; linear ; G2 ; x coord ; y coord ; z coord ; elevation axis ; tool radius ; feedrate ; M1 ; M2 end define说明4对于第四旋转轴A轴在刀头上的后置,应该设置方位角参数,而不是仰角参数出NC程序时把刀具长度设置为零(对没有RTCP功能而言),或者按实际长度补偿。3.第四旋转轴在主轴(B:绕Y轴旋转) define format ( B ) decimal point = true decimal places = 3 end define word order = ( + B ) define keys azimuth axis not used elevation axis = B end define spindle elevation rotation = true # Default false elevation units = degrees elevation axis direction = positive elevation centre = ( 0. 0. 180.5 ) azimuth axis parameters = ( 0 0 0 0 0 0 ) elevation axis parameters = ( 0 0 0 0 1 0 ) define block move rapid N ; rapid ; G2 ; G3 ; G6 ; x coord ; y coord ; z coord ; elevation axis ; tool length ; M1 ; M2 end define define block move linear N ; linear ; G2 ; x coord ; y coord ; z coord ; elevation axis ; tool radius ; feedrate ; M1 ; M2 end define17. 工作台旋转5轴设定 多轴工作时需要设定以下内容(例子中三个主旋转轴被定义为A,B和C,但是实际上只用到了两个旋转轴): define format ( A B C ) # 有可能内置后置已定义 metric formats leading zeros = false trailing zeros = true decimal point = true decimal places = 3 imperial formats leading zeros = false trailing zeros = true decimal point = true decimal places = 4 end define # word order = ( + A B C ) # 仅内置词序列表为定义时使用 # block order = true # 取代词序列表, 使用 define block . 顺序 # define keys azimuth axis = A # 第四轴通常为方位角 ( 工作台倾斜轴 ) elevation axis = C # 第五轴通常为仰角 (处于倾斜工作台上的旋转工作台 ) end define # 方位轴和仰角轴 ( A, 和 /或 B, 和 /或C) 需要在快速移动和线性移动块中定义 define block move rapid N ; rapid ; G2 ; G3 ; G6 ; x coord ; y coord ; z coord ; azimuth axis ; elevation axis ; spindle ; tool length ; M1 ; M2 end define # define block move linear N ; linear ; G2 ; x coord ; y coord ; z coord ; azimuth axis ; elevation axis ; tool radius ; feedrate ; M1 ; M2 end define 旋转轴参数设定:以下参数需要定义 azimuth axis parameters = ( 0. 0. 0. 1. 0. 0. ) elevation axis parameters = ( 0. 0. 0. 0. 0. 1. )前三个数字定义旋转中心,方位角倾斜工作台通常不偏离仰角轴的中心线(因此这些值将被设置为0. 0. 0. ),但是方位角工作台面中心可能处于倾斜工作台中心线上、高于或者低于倾斜工作台中心线。 在第一个图示中旋转仰角工作台面低于方位角倾斜工作台轴中心线,为了让后置处理器考虑到这个偏置,需要在elevation axis parameter中设定这个差值。 此值的正负取决于机床制造商设定的机床旋转中心在什么地方,通常这个中心在倾斜工作台旋转轴的中心线上。 比如说,设定一个偏置值为80.56 mm,像下面这样 elevation axis parameter = ( 0. 0. 80.56 ) #正值使用于低于,负值使用于高于,如果处于方位角旋转中心线上此值为零 如果机床旋转中心被定义在仰角工作台面上,那么此值的符号相反。 后三个数字定义绕哪个轴旋转。 注意1:这些数值可以带小数点,也可以不带小数点(0.)或者(0) 注意1:有些机床的控制系统可以自动进行旋转转换,此时中心偏置应该设置为零。 附加参数: spindle azimuth rotation = false # 工作台旋转时缺省值 azimuth axis units = degrees # 常用单位( 缺省可以是none ) azimuth axis direction = positive #所需的标准旋转方向 (缺省可以是none ) # spindle elevation rotation = false #工作台旋转时缺省值 elevation axis units = degrees #常用单位( 缺省可以是none ) elevation axis direction = positive #所需的标准旋转方向 (缺省可以是none ) # pcs origin = ( 0 0 0 0 0 0 ) # ( 缺省值, 很少使用, 有时用于5轴主轴校准) # # Azimuth Min Max. Elevn Min Max. Tol. Moves rotary axis limits = ( -99999 99999 -99999 99999 0.1 1 ) #缺省值, 实际上可以无限制旋转 # linearise multiaxis moves = true #缺省设置 multiaxis coordinate transform = true # 缺省设置 # 公差值(Tol.)是由Ductpost移动设置值保持的角度位移公差。 保持最高公差和最小移动可以提高机床性能。(从DP1331起,移动功能(最后一个数字)是多余的,被“linearise multiaxis moves = true”代替,它会自动调整移动数值使加工达到设定的公差)。 工作台旋转5轴示例 下面的例子是针对5轴机床的典型最小定义,有些格式可能不是必须的。 5轴机床很可能需要更多的信息,这取决于控制系统。 注释:下列参数必须设定: linearise multiaxis moves = true multiaxis coordinate transform = true 除非机床控制系统有自己的RTC计算功能, 在第一个角度位移之前调用一个相应的指令 ,此时这些参数应被定义为下面这样 : linearise multiaxis moves = false multiaxis coordinate transform = false 1/5轴工作台旋转示例 方位角工作台为A,绕X旋转;仰角工作台为C,绕Z旋转;当A轴偏置沿Z轴校准为零时。 define format ( A C ) decimal point = true decimal places = 3 end define word order = ( + A C ) define keys azimuth axis = A elevation axis = C end define spindle azimuth rotation = false spindle elevation rotation = false azimuth axis units = degrees elevation axis units = degrees azimuth axis direction = positive elevation axis direction = positive azimuth axis parameters = ( 0. 0. 0. 1. 0. 0. ) elevation axis parameters = ( 0. 0. 0. 0. 0. 1.) # RTC zero. ( Type A ) 在类型A中,不需要定义旋转中心偏置,因此机床基准点X0 Y0 Z0被定义在仰角工作台面中心,沿方位角倾斜工作台X(或者Y)轴旋转中心线对齐校准为零。 elevation axis parameters = ( 0. 0. 55.0 0. 0. 1. ) # RTC 55mm 高于零点( Type B ) 在类型B中,机床基准点X0 Y0 Z0被定义在仰角工作台面中心并且仰角工作台面低于方位角倾斜工作台旋转中心线55.0 mm. ,因此后置必须考虑到这个偏置。 elevation axis parameters = ( 0. 0. -55.0 0. 0. 1. ) # RTC -55mm低于零点 ( Type C ) 在类型C中,机床基准点X0 Y0 Z0被定义在仰角工作台面中心并且仰角工作台面高于方位角倾斜工作台旋转中心线55.0 mm. ,因此后置必须考虑到这个偏置。 linear axis limits = ( -1750 0 1200.0 -875.0 875.0 -250.0 250.0 ) rotary axis limits = ( -95.0 35.0 -3600.0 3600.0 0.01 1 ) linearise multiaxis moves = true multiaxis coordinate transform = true withdrawal amount = 100.0 integer 3 = 1 define block move rapid N ; G1 ; G6 ; X ; Y ; Z ; A ; C ; S ; H ; M1 end define define block move linear N ; G1 ; G2 ; X ; Y ; Z ; A ; C ; D ; F ; M1 end define 5/5轴45度回转工作台示例( DMG - DMU*V 系列 ) (按住Ctrl鼠标单击图片观看动画,需要IE支持) 回转头B轴绕ZY旋转,仰角工作台C轴绕Z旋转(当B为零时,垂直方向)。(这种类型的机床通常使用Heidenhain4XX控制系统,MillPlus 3XX控制系统不具备自动RTC计算功能) define keys azimuth axis = B elevation axis = C end define spindle azimuth rotation = false spindle elevation rotation = false azimuth axis units = degrees elevation axis units = degrees azimuth axis direction = positive elevation axis direction = positive azimuth axis param = ( 0 0 0 0 -1 -1 ) # 注意: 使用了两个轴并且有符号. elevation axis param = ( 0 0 0 0 0 1 ) linear axis limits = ( -11000.0 11000.0 -1500.0 1500.0 -800.0 800.0 ) rotary axis limits = ( -7.0 180.0 -7200.0 7200.0 0.1 4 ) multiaxis coordinate transform = false # 见前面的注释 linearise multiaxis moves = false withdrawal amount = 100.0 integer 3 = 118. 工作台和主轴头复合旋转5轴设定 多轴工作时需要设定以下内容(例子中三个主旋转轴被定义为A,B和C,但是实际上只用到了两个旋转轴):define format ( A B C ) #有可能内置后置已定义 metric formats leading zeros = false trailing zeros = true decimal point = true decimal places = 3 imperial formats leading zeros = false trailing zeros = true decimal point = true decimal places = 4 end define word order = ( + A B C ) #仅内置词序列表未定义时使用block order = true #取代词序列表, 使用 define block . 顺序define keys azimuth axis = A # 第四轴通常是方位角( 主轴旋转 ) elevation axis = C #第五轴通常是仰角 ( 旋转工作台 ) end define # 方位轴和仰角轴 ( A, 和 /或 B, 和 /或C) 需要在快速移动和线性移动块中定义 define block move rapid N ; G1 ; G2 ; G3 ; G6 ; X ; Y ; Z ; A ; C ; S ; H ; M1 ; M2 end define define block move linear N ; G1 ; G2 ; X ; Y ; Z ; A ; C ; F ; M1 ; M2 end define旋转轴参数设定 必须设定下面的参数 spindle azimuth rotation = true # 对旋转工作台缺省设置是false 此设置定义主轴是一个旋转轴 azimuth axis parameters = ( 0. 0. 0. 1. 0. 0. ) elevation axis parameter

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论