本文介绍了在UGⅡ系统中,如何创建用户自定义的刀具库,完善刀具切削参数库的方法,以减少大量简单烦琐的参数设置工作,加快CAD/CAM系统中程序编制,从而提高工艺制造技术人员的快速反应能力,适应复杂多变的生产任务。
近年来我国的机械制造行业发展迅猛,各企业不断加大投入进行技改。特别是数控设备及其加工技术,计算机辅助设计及制造技术(CAD/CAM)的不断深入应用,使机械制造企业在技术方面有了质的突破。然而,在众多加工企业中,能够有效利用技术创新,并形成规模化、集约化的制造企业还是为数不多。关键原因在于,对于中国机械制造企业,在这方面还有很多基础工作需要去做,去完善,这样才可能充分利用先进的技术,以有限的资源提高涉及到生产、管理等方面的系统的效率,从而创造最大的经济效益。
东方电机股份有限公司在20世纪90年代中期就引进了原EDS公司PLM事业部的UG系统,经过多年的应用,技术人员已经逐步把很多工作转移到该软件平台。UGⅡ系统作为一个多功能集成的工程应用系统,特别是随着近年的发展和不断完善,已能适应公司的各项技术开发及生产制造任务。然而在使用其 CAM模块进行数控加工程序编制时,有太多的参数需要设置,有时难免疏忽,也比较烦琐,直接影响了编制加工程序的效率。虽然,EDS公司在开发UGⅡ系统时,提供了很多模板,但工程技术人员还需面对企业本身的设计制造的实际情况,收集一些基础的技术参数,构建适合本企业的数据库。这里将根据在UG 系统的CAM模块中刀具参数的设置过程,从以下几个方面,详细介绍如何建立用户自定义的刀具数据库。
一、创建刀具几何结构参数数据库
在实际加工应用中,需要对一个工件或多个工件编制加工工艺及程序时,都有可能用到多种规格、不同类型的加工刀具。如果我们在编制程序时,每次都要重新创建并设置这些刀具参数,包括刀具的几何结构、材料等,效率必将大大下降,而且所完成的也只是些简单的重复劳动。
在UG系统的 CAM模块中,我们可以通过在Create Tool对话框中选择 Retrieve Tool按钮,直接调用UG刀具库中定义的30多种不同类型的刀具,如图1和图2所示。但UG库中的刀具多数并不是我们需要的规格尺寸的刀具,因此我们希望可以一次性地定义好需要的刀具几何结构参数,在以后的操作中能够像调用UG库中刀具一样,直接使用。
图1 Create Tool对话框
图2 Retrieve Tool子菜单
在UGⅡ系统中,刀具几何结构参数库主要存放在 ${UGⅡ_base_DIR}Machresource librarytool 目录下,主要由以下几个文件构成:ASCⅡ子目录下Dbc_tool_ ascⅡ.def、Dbc_tool_ascⅡ.tcl和English或Metric 子目录下的Dool_ database.dat。 文件Dbc_tool_ascⅡ.def 定义了刀具库必要的刀具几何结构参数变量及库的类型层次结构;文件Dbc_tool_ascⅡ.tcl则包含了各个刀具库操作事件处理器,它们主要用于UG与刀具库的连接。在文件Tool_database.dat中存放的就是我们最关心的东西,所有的刀具几何结构参数和材料信息都在其中。
用户定义新的刀具,可以直接修改Tool_database.dat文件中的刀具记录。另外,也可以在UG中先定义好刀具的几何结构参数,然后通过执行Shop documentation,选择最后一个输出模板Export Tool Library to ASCⅡ datafile,把刀具参数输出到一个文件。接下来,需要做的工作就是把输出到这个文件中的刀具记录添加到Tool_database.dat文件中。
至此,应该说,基本可以达到最初的目的了。但在实际使用中,随着自定义的刀具不断增多,用户自己也不清楚到底定义了多少、定义了哪些种类的刀具,从库里调用刀具时,更需要搞清楚要调用的刀具究竟属于UG刀具库中哪个类型的刀具,如图2所示。通过深入研究,发现在Dbc_tool_ascⅡ.def文件中对刀具库的类型层次结构定义时,UGⅡ系统用CLASS MILLING、CLASS DRILLING和CLASS TURNING定义了刀具库的三个主类,在这三个主类下又定义了30多个子类。在Tool_database.dat文件中的每条刀具记录,都以DATA开头,都包含有T和ST数据,实际上它们就是此条记录定义的刀具主类TYPE和子类SubType信息。
在文件Dbc_tool_ascⅡ.def中加入以下代码,重新启动UG后,执行从库中调用刀具,可以得到如图3所示的效果,这就是我们希望得到的,条理明晰、符合自己使用的刀具类型层次结构。
图3 刀具选择界面
CLASS User_defined_milling
{
TYPE QRY
QUERY " [DB(Type)] = = [04]"
DIALOG libref Diameter
RSET libref Descr Diameter MaterialDes
UI_NAME "用户自定义_铣刀"
…
}
CLASS User_defined_drilling
{
TYPE QRY
QUERY "[DB(Type)] = = [05]"
DIALOG libref Diameter
RSET libref Descr Diameter MaterialDes
UI_NAME "用户自定义_钻头"
…
}
在向文件Dbc_tool_ascⅡ.def中加入主类代码时,注意前后“{}”的位置,并跟系统定义的CLASS MILLING、CLASS DRILLING和CLASS TURNING主类结构保持平行,嵌入在CALSS TOOL的定义中。其中定义的主类类型值不能重复。在每个主类下,可以根据主类自行定义相关的子类,即用SubType 代替 QUERY "[DB(Type)] = = [01]"中的 Type,并且类型代码值也可以重新排序。
完成了刀具库自定义类型层次结构的定义,需要从库中检索刀具,还得修改刀具几何结构参数数据库(Tool_database.dat)中的刀具记录,即修改记录中的T和ST对应的值,则该条记录进入相应的主类和子类检索,得到如图4所示检索结果。要建立一个完整的刀具几何结构参数库,类型层次结构定义是基础,后续要做的就是不断地把相应的刀具记录添加到数据库文件Tool_database.dat中,形成用户自定义的刀具库。
图4 检索结果
二、创建自定义刀具材料库、零件材料库以及刀具切削参数库
通过以上工作所建立的刀具库,笔者称为刀具几何结构参数库,它主要由刀具的几何结构数据组成。对于编程人员来说,创建一个Operation,生成可以使用的刀位程序,还需要设置刀具的相关切削用量参数,包括主轴转速、切削深度、进给速度等。在UG系统的CAM模块中,执行Feeds and Speeds对话框中的Reset from Table,系统可以根据切削深度、刀具材料、零件材料及切削方法,自动从库中调用并计算出相应的切削用量值,如图5所示。
图5 Feeds and Speeds对话框
除切削深度需要手动设定外,用户从相应的库中可以直接调用不同的切削方法、零件材料和刀具材料。其中刀具材料,我们也可以在创建刀具时从刀具几何结构参数库中直接得到,关键是在建立刀具几何结构参数库时,刀具记录中包含了正确刀具材料信息MATREF,即引用刀具材料库的某一材料参考信息。在UG系统中,切削方法、零件材料、刀具材料都以库参考值存在,分别对应于CUT_METHODS. DAT、PART_MATERIALS.DAT、TOOL_MATERIALS.DAT文件中的LIBRF值。系统执行Reset from Table,根据各库参考值和切削深度,在切削参数库FEEDS_SPEEDS.DAT文件中进行检索,引用被检索出记录的数据,如Surface Speed、Feed_per_Tooth等的值,进而计算出相应的主轴转速、进给速度等。
因此,在建立刀具材料库、零件材料库时,应系统规划,统一标准,避免混乱,而建库本身就比较简单了,可以参照UGⅡ系统相应的库,增加或修改以DATA开头的记录。建立刀具切削参数库的工作就要烦琐得多。一般来说,在实际加工中,要根据不同刀具材料、零件材料,以及不同的切深和切宽,选择不同的刀具切削用量。一个成熟的工艺技术人员,可根据长期积累的经验,并参照刀具商提供的参数,结合加工实际状况,选择合适的切削用量,也可以反过来根据实际加工情况,修正经验值,完成经验的不断积累。创建自定义刀具切削参数库,就是把用户的经验积累起来,并予以数值化提供给其他技术人员。
三、创建刀具几何图形库
谈到建立刀具库,不能不涉及到刀具几何图形库的使用。创建刀具几何图形库,主要目的就是在最新的Unigraphics NX2.0 系统中进行刀位机床仿真时,可以调用用户构建的刀具计算机三维几何模型,如图6所示。没有用户自定义的刀具几何图形库,或者调用UG系统自带的刀具模型,显然达不到机床仿真的目的。
图6 刀具模型
系统刀具几何图形库,由${UGⅡ_base_DIR}Machresource librarytoolgraphics 目录下一系列刀具的实体模型文件构成,包含用于显示刀具装配的信息。构建用户自定义的刀具装配模型,推荐在非主模型文件中,将用户自定义刀具、刀柄及相关部件进行装配。对于钻削或铣削的刀具,在模型装配时,刀具轴应与X轴正方向一致,坐标系零点在刀柄夹持点(Tool Tracking Point)。另外,构建的刀具非主模型文件名应与刀具几何结构参数库tool_database.dat文件中DATA记录的LIBRF值相同。这样,按照以上原则,系统进行刀位机床仿真或需要显示刀具时,才能够按照刀具的库参考值,调出刀具装配模型,并以系统缺省方向和位置显示出用户自定义的刀具模型。
四、在创建自定义刀具库过程中需要注意的几个问题
(1)建立刀具库时,在dbc_tool_ascⅡ.def文件中定义刀具主类或子类时,UI_NAME 后面可以采用中文字串。另外,库中所有记录的刀具描述、材料描述都可以采用中文字串。但目前不建议刀具库记录中的LIBRF值采用中文。
(2)建立刀具几何结构参数库、刀具材料库、零件材料库及切削参数库过程中,应保持每个库中的LIBRF值的唯一性,原因在于它是作为系统其他库引用和系统内部识别的标识。
(3)调用刀具库创建刀具时,为增加检索查询项目,可以在dbc_tool_ascⅡ.def文件内,相应刀具主类或子类定义的“DIALOG libref Diameter”行中,加入需要增加的刀具查询参数。
当然,要提高CAD/CAM系统效率,以及工艺制造技术人员的快速反应能力,本文所涉及到的仅仅是系统里很小的一个环节。更多的工作还需要技术人员不懈的努力,脚踏实地地收集和积累制造系统中的各个基础数据,结合现代新技术不断完善和健全,从而提高系统整体的协作水平和工作效率。