您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 工程监理 > Creo-2.0的AFX插件文件号自动生成及标准工程图自动生成配置
Creo2.0的AFX插件文件号自动生成及标准工程图自动生成配置第1页共13页作者:西山住客日期:2013/11/9CREO2.0的AFX插件,可以很方便地进行框架设计,但我在使用时发现在进行子组件建立和子组件里的零件设计时,很难达到按规律自动命名,于是就去花时间研究AFX目录里可编辑的文件配置是如何影响操作的,下面就我的经验来说明一下。一、3D模板配置1.Creo在进行3D建模时一定要分别建立一个3D组件模板和3D零件模板,放在config.pro指定的目录里;2.3D组件模板和3D零件模板,需要配置精度、单位、材料;3.3D组件模板和3D零件模板里需要定义如下表规定的参数,便于工程图的标题栏和明细表调用;序号参数名称类型参数意义1CINDEX字符串指明图号2CNAME字符串零件名称3CMAT字符串零件材料4CMASS实数零件重量5CQUTY整数零件数量6C_CREATOR字符串设计人7C_VERIFIER字符串校对人Creo2.0的AFX插件文件号自动生成及标准工程图自动生成配置第2页共13页8C_AUDITOR字符串审核人9C_OPERATOR字符串工艺人10C_NORMALIZER字符串标准化人11C_APPROVER字符串批准12C_DATE字符串日期4.关系式。上面的有几个参数需要在关系式里添加,便于系统自动处理。/*零部件重量=系统重量CMASS=PRO_MP_MASS/*图号=系统的文件号CINDEX=REL_MODEL_NAME/*零件名称=系统的中文名称CNAME=PTC_COMMON_NAME/*材料名称=系统给零件添加的材料名(这里用的系统材料里的自定义材料代号,是为了区分国标材料代号的大小写)cmat=material_param(cmaterial)5.组件图号和零件图号的分隔符转换。a)我们的图号规定:项目号.流水号。例如:M1B20.00,其中M1B20值的是主项目号,00值得指的是总图号,中间用“.”隔开,表示组件;继续往下,M1B20.01指的是流水号是01的一级子组件组件;M1B20.01.01,指的是流水号是01的二级子组件;一直往下可以做N级组件;Creo2.0的AFX插件文件号自动生成及标准工程图自动生成配置第3页共13页b)组件下的零件,我们的图号规定是项目号-流水号。例如,M1B20-01、M1B20-02、M1B20.01-01等。c)以上的图号里含有“.”,不能用在creo系统里用来作为文件名称命名的字符,在给文件命名时,需要转换为“_”下划线,例如表示总图的3D,文件名应该为M1B20_00,里面的子组件应该为M1N20_01,子组件里的零件应该为M1B20_01-01等。d)如何将关系式里规定的CINDEX=REL_MODEL_NAME所对应的“_”转化为“.”?我们在3D模型关系式里加了一段符号转化关系式:ORITEXT=_IFSEARCH(CINDEX,ORITEXT)1TMP=EXTRACT(CINDEX,1,SEARCH(CINDEX,ORITEXT)-1)CINDEX=TMP+.+EXTRACT(CINDEX,SEARCH(CINDEX,ORITEXT)+1,STRING_LENGTH(CINDEX)\-SEARCH(CINDEX,ORITEXT))ENDIFIFSEARCH(CINDEX,ORITEXT)1TMP=EXTRACT(CINDEX,1,SEARCH(CINDEX,ORITEXT)-1)CINDEX=TMP+.+EXTRACT(CINDEX,SEARCH(CINDEX,ORITEXT)+1,STRING_LENGTH(\CINDEX)-SEARCH(CINDEX,ORITEXT))ENDIFIFSEARCH(CINDEX,ORITEXT)1TMP=EXTRACT(CINDEX,1,SEARCH(CINDEX,ORITEXT)-1)CINDEX=TMP+.+EXTRACT(CINDEX,SEARCH(CINDEX,ORITEXT)+1,STRING_LENGTH(\CINDEX)-SEARCH(CINDEX,ORITEXT))ENDIFIFSEARCH(CINDEX,ORITEXT)1TMP=EXTRACT(CINDEX,1,SEARCH(CINDEX,ORITEXT)-1)CINDEX=TMP+.+EXTRACT(CINDEX,SEARCH(CINDEX,ORITEXT)+1,STRING_LENGTH(\Creo2.0的AFX插件文件号自动生成及标准工程图自动生成配置第4页共13页CINDEX)-SEARCH(CINDEX,ORITEXT))ENDIFIFSEARCH(CINDEX,ORITEXT)1TMP=EXTRACT(CINDEX,1,SEARCH(CINDEX,ORITEXT)-1)CINDEX=TMP+.+EXTRACT(CINDEX,SEARCH(CINDEX,ORITEXT)+1,STRING_LENGTH(\CINDEX)-SEARCH(CINDEX,ORITEXT))ENDIFIFSEARCH(CINDEX,ORITEXT)1TMP=EXTRACT(CINDEX,1,SEARCH(CINDEX,ORITEXT)-1)CINDEX=TMP+.+EXTRACT(CINDEX,SEARCH(CINDEX,ORITEXT)+1,STRING_LENGTH(\CINDEX)-SEARCH(CINDEX,ORITEXT))ENDIF注意以上关系式只能区分4级组件,如果需要继续加,请在后面再加:IFSEARCH(CINDEX,ORITEXT)1TMP=EXTRACT(CINDEX,1,SEARCH(CINDEX,ORITEXT)-1)CINDEX=TMP+.+EXTRACT(CINDEX,SEARCH(CINDEX,ORITEXT)+1,STRING_LENGTH(\CINDEX)-SEARCH(CINDEX,ORITEXT))ENDIF根据产品设计代号分几层数去加吧6.3D空模板按上面形式还要定义好机基本基准:坐标系、三个面和三个轴;基本观察方向视图FRONT,为以后创建工程图做准备。7.以下是我创建的标准3D模板:Creo2.0的AFX插件文件号自动生成及标准工程图自动生成配置8.在上面的图片里你会发现还有同名工程图,这是为了在创建一个3D文件时,如果你用指定的3D模板,会在你当前目录下自动创一个同名工程图,这样做可以省去一步工程图的创建了,是不是很爽啊!当然要创建工程图是一定要有工程图模板,如何创建工程图模板,请参考相关资料,这里就不说了。我创建的工程图模板见有图:二、CREO基本建模3D模板和工程图模板建好后,就可以进行3D建第5页共13页Creo2.0的AFX插件文件号自动生成及标准工程图自动生成配置第6页共13页模和自动工程图生成了。言归正传,下面开始进行AFX设计环境规划了。1.AFX已经给标准的截面梁、连接器、设备、标准件规定了如下参数:BUW_NAME—包含截面梁或元素名称(角接板、管道或终端板)。此值作为固定值存储在截面梁、连接器或设备元素中,并且不会改变。BUW_TYPE—包含截面梁或元素类型的说明,例如铝截面梁系统的供应商和元素订单编号。BUW_SIZE—包含截面梁或元素尺寸信息,例如L4x4x1/2(对于角接板)或extrastrong3(对于管道)。此值保存为固定的库零件值,或在有尺寸列表可用时由AFX在选择元素的过程中控制。BUW_LENGTH—包含截面梁切口长度(显示为数字)。此值在每次重新生成后会调整。BUW_LENGTH_STR—包含截面梁切口长度(显示为文本)。此值在每次重新生成后会调整。BUW_PROFIL_TYPE—包含库截面梁零件名称。无法更改此值。我们将使用这些参数来建立关系式,实现子组件、零件名称的自动建立;2.规划零件的关系式。我们将放在D:\ProgramFiles\PTC\Creo2.0\CommonFiles\M080\efx\parts\profiles目录下的param_relations.txt文件打开,添加如下关系式:CNAME=BUW_NAME+BUW_SIZE+-+BUW_LENGTH_STRCINDEX=rel_model_nameCMASS=PRO_MP_MASSCMAT=PTC_MATERIAL_NAME当然为了实现在AFX里生成的零件,图号里的符号“_”转换为“.”,还要加上如下关系式:oritext=_ifsearch(CINDEX,oritext)1tmp=extract(CINDEX,1,search(CINDEX,oritext)-1)CINDEX=tmp+.+Creo2.0的AFX插件文件号自动生成及标准工程图自动生成配置第7页共13页extract(CINDEX,search(CINDEX,oritext)+1,String_length(CINDEX)-search(CINDEX,oritext))endififsearch(CINDEX,oritext)1tmp=extract(CINDEX,1,search(CINDEX,oritext)-1)CINDEX=tmp+.+extract(CINDEX,search(CINDEX,oritext)+1,String_length(CINDEX)-search(CINDEX,oritext))endififsearch(CINDEX,oritext)1tmp=extract(CINDEX,1,search(CINDEX,oritext)-1)CINDEX=tmp+.+extract(CINDEX,search(CINDEX,oritext)+1,String_length(CINDEX)-search(CINDEX,oritext))endififsearch(CINDEX,oritext)1tmp=extract(CINDEX,1,search(CINDEX,oritext)-1)CINDEX=tmp+.+extract(CINDEX,search(CINDEX,oritext)+1,String_length(CINDEX)-search(CINDEX,oritext))Endififsearch(CINDEX,oritext)1tmp=extract(CINDEX,1,search(CINDEX,oritext)-1)CINDEX=tmp+.+extract(CINDEX,search(CINDEX,oritext)+1,String_length(CINDEX)-search(CINDEX,oritext))endififsearch(CINDEX,oritext)1tmp=extract(CINDEX,1,search(CINDEX,oritext)-1)CINDEX=tmp+.+extract(CINDEX,search(CINDEX,oritext)+1,String_length(CINDEX)-search(CINDEX,oritext))Endif3.规划子组件关系式:a)将上面修改好的param_relations.txt文件拷贝到D:\ProgramFiles\PTC\Creo2.0\CommonFiles\M080\efx\parts\assemblies这个目录,如果有这个文件,就替换掉它;b)打开param_relations.txt文件,将这个文件编辑为如下内容:CINDEX=rel_model_nameCreo2.0的AFX插件文件号自动生成及标准工程图自动生成配置第8页共13页CMASS=PRO_MP_MASSCNAME=ptc_common_name/*下面的关系式是为了实现子组件项目的自动生成和子组件的自动创建PROJECT_SHORT=rel_model_name/*一下是为了转换图号里的“_”为“.”oritext=_if
本文标题:Creo-2.0的AFX插件文件号自动生成及标准工程图自动生成配置
链接地址:https://www.777doc.com/doc-5159974 .html