ProE环境下BOM相关技术在Pro/ENGINEER中文环境下,应用Pro/REPORT的功能,再加上用户设计时,设定一些特定的参数,则可以自动生成符合企业标准的明细表。1、设计参数当用户设计零件时,有些信息可自动列入明细表中,但更多的相关信息,可以通过设定参数的方式,在设计阶段设定,通常情况下,可遵照下列步骤进行。a.为保证整个设计小组设计的一致性,并尽可能减少重复工作,建议用户预设一个标准零件模板,如start.prt,它应该只含有三个基准参考面(Datumplane)。为使将来的装配中没有太多的参考面,影响视觉效果,可把参考面放入层(Layer)中,并保存成不显示状态(Blank)。b.设定质量信息,对于start.prt做质量计算(Info;ModelAnalysis;ModelMassProperties)。此时须给入一个密度值,对于钢件,为7.85E-6,然后加入一个Relation,cmass=mp_mass””,其中cmass即为将来的质量参数,建议在取参数名时,使用连续的字符串,不要用“-”“_”等,在后面的设定中会有冲突,第三,编辑Program(Program;EditDesign),在文件最后,应该是如下内容:MASSPROPPartstart加入此一行ENDMASSPROP编辑Program的目的是为了当零件修改后,Regenerate时,软件会重新计算质量。但此一项需要Pro/ASSEMBLY模块。如无此模块,那么每次设计修改后,请在总装配后,再做一次质量计算,然后在二维图(含BOM的二维图)中,Regenerate一次。c.设定其它参数根据用户的不同需求,参数可自行设计,通常可加入下列几项:(Setup;parameter;create;string)cmat:代表材料,输入一个常用材料,如:Q-235cname:代表中文名称,输入‘基本件’cindex:代表件号,一般情况下,明细表中件号一栏,可以和零件名称(modelname)保持一致,这样可少设一个参数,但有时用户的件号用“.”或空格分成几段,以便管理,而这种命名方式在Pro/E中是非法的,另一种情况是,在产品设计阶段、零件件号尚不确定,用户可以按某种编号方式先定零件名,再由cindex参数来列示于明细表中,但这样均会有一定的副作用,就是在没有PDM的情况下,不启动Pro/E软件,操作系统检索不到件号栏。这里面的优劣,希望用户考虑。ctype:代表零部件类型,通常用户的明细表会分类,如钢件、铸铁件、非金属件或基本件、通用件、标准件等。用户需要根据自己的实际情况,用ctype加以区分,如A代表钢件、D代表标准件等。gbname:类似于cindex,可用于标准件,在partname中,整个企业是不允许有重复的,但有时用户在标准件明细栏中,件号栏内只标准GB70-85字样,而规格大小列于名称栏内,螺钉M5x10。d.装配体,即部件对于子装配,也可如零件一样,设定一个标准模板,当然,因为部件的数量总是相对较少,也可不做模块,到时逐个去设定。2、产品设计当设计一个新零件时,要先打开start.prt,然后saveas成一个新的零件名,再用这个新的零件名进行设计,在装配中设计一个新零件,也可以用copy方式利用start.prt。3、明细表格式的设定利用Pro/ENGINEER软件中的Pro/REPORT模块,可以自动生成明细表,通常是将一个定制的表格置于Format中,在设计装配体的工程图时,直接调用这个Format即可。由于在Format中,图幅的大小是不可改变的,因此用户需要建立几个不同幅面的Format,如A0、A1、A2,建议取名为A0-asm、A1-asm……,定义好后,存入Pro/E安装目录下的Format目录中,供所有人员使用。a.定义Format基本格式,以A1-asm为例;New;Format;“A1-asm”,选择A1幅面。修改二维图配置文件,setup;Modifyval将text_height一项改为合适的字高,如3.5由于在Pro/E的二维绘图中,不采用参数化绘图,因此在定义内边框时,可如下完成:sketch;construction;offset;建立与4条基本边框有一定间距的双点划线,再做sketch;line;vertex;选取4个交点,可得到4条实线,做为内边框。然后在右下角建立标题栏,也可按上述方式画线,但只需画出粗实线即可,细实线由table完成。这时外边框为粗实线,若想改为细实线,请用Modify;Linestyle;将外边框改为Leader。在标题栏处,定义一个或几个基本的table,通过move;vertics与内边框对齐,利用modtable;merge;将table修改为合适的形状,利用modrows/cols;Justify;middle;逐列将字符设定为表格中间位置,再通过Entertext输入需要的中、英文字符。在Pro/E中,有许多变量是可以由软件自动判别的,请参考用户手册,常用的有&model_name,可写入模型名称,可以是零件或装配;&scale比例尺;¤t_sheet,第几页;&total_sheets,共几页等,另外所有用户自行设定的参数,均可作为table中的变量使用,请注意,对于自定义参数,一定要用table中的Entertext,不可用detail中的creat;note。b.定义明细表栏明细表做为一个table存在于Pro/E的工程图中,里面的文字内容,文本可以通过table;save/retrive;storetext的方式存成一个文本,并可读入Excell中,其中的空格可用作分行用,与其他系统连接。建立一个table,自下向上(Ascending),最下面一行为表头,另外需要几行根据表格的不一样,由用户决定。如果零件不分类(即不对标准件、基本件、钢件、非金属件等分类)。零件间也不需要空行时,只需一行,需几个空行,加几行,再乘以分类的类数。列数及每列宽度,通常企业有标准。然后定义RepeatRegion。RepeatRegion;Add,选择第一行左起第一列及最后一列,若需空行(如两行空行),则选择第一行左起第一列及第三行左起最后一列,如果对零件分类,则每一类需分别有一个RepeatRegion。在Pro/E中,允许对用户的表格进行各种各样的设定,来满足不同的选择,通常有几项是必须要选择的。Attribute;在RepeatRegion中,点取Attribute,选择已定义的一个RepeatRegion,会出现几项Duplicates表格中同一模型分别显示NoDuplicates同一模型显示在一行,并计算总数NoDup/level:同一模型显示在一行,同时,不同部件中的相同零件也统计在一起,这后两项的选择取决于企业的标准及习惯,如两个仪器需要相同的螺钉固定,总数是4+8个,有时需要分别两行,则选择NoDuplicates,若只需一行,数量是12,则选择NoDup/level。Recursive:一直检索到零件级,会列出所有零件。Flat:只显示最高一层的零件或部件,各部件所属的零部件不列出,通常一个复杂的装配体,在Pro/E中可采用多级子装配,这样容易操作和管理,但列表时并不需要如此多的部件,因此通常可选择,Recursive。此时表中会将部件名称及所属的零件名称同时列出,后面会提到处理办法。StartIndexNostartIdx此选择适用于零件的分类统计,当分类统计时,第一类的起始序号是1,第二类的序号应接续第一类,以次类推,这时,应对第二类设定StartIndex再选第一类的RepeatRegion。但由于是自动检索零件,因此,软件不允许序号不连续。至此,RepeatRegion已基本定义完成,接下来输入各列的内容,选择Entertext;ReportSym从重复区域中选择对应的单元。序号栏,填入rpt;index。件号(代号)栏,填入asm;mbr;name,或者如果零件名称与件号不一致,并且零件参数中已加入cindex可填入asm;mbr;UserDefined:键盘输入cindex。名称栏,填入asm;mbr;UserDefined:键入cname.数量栏,填入rpt;qty。材料栏,填入asm;mbr;Userdefined:键入cmat。重量栏,填入asm;mbr;Userdefined:键入cmass。如果你要统计各零件的总重,即数量乘以重量,则在上述工作完成后,再做下面的工作。在RepeatRegion中,先做UpdateTables,这样你刚刚填入的参数才会起作用,再选择Relations,点取刚定义的table,再add,键入totalmass=rpt_qty*asm_mbr_cmass,然后Entertext,总重栏:填入rpt;rel;UserDefined:键入totalmass。这时,如果用户定义的参数名称中含有‘-’或‘_’号,则在relation中,就会发生问题。对于标准件,可能有规格一栏,需填入螺钉M5X20字样,可填入asm;mbr;UserDefined;键入gbsize.此时,内中只有M5X20字样,table完成后,用Modify;Text;Textline,将原先的&asm.mbr.gbsize改为&asm.mbr.cname&asm.mbr.gbsize,即可实现。c.有关RepeatRegion的命令应用在应用BOM的过程中,用户在做装配图时,有些可以定制成标准的table,直接应用,有些则可以利用RepeatRegion中提供的功能随时进行调整。在b项完成后,用户在做装配图时,可直接调用上述的Format,则table中会自动显示当前模型的明细表。此时可进行调整Model/Rep:当工程图中含有不同的模型时,用此功能可设定对应模型,而且一个装配模型可以拥有不同的简化表示(SimplfyRep),而table均可利用简化表示屏蔽掉不希望列出的子项,如,一个电缆(Harness)在装配中也作为一个part,用户可用简化表示,Exlude这个零件,然后选择Model/Rep。即可按简化模型显示子项。Attribute在b项中已解释。Flat/RecItem:在b项中曾提到零部件的整理,如果用户将所有零件都显示,(Attribute,NoDup/level,Recursive),而有些部件又不需展开,则可利用此项,选择子装配的名称,Recursive是展开,Flat是收拢,即可不显示此部件所属的零部件,Default是恢复成Attribute中的形式。Filters:此项是根据不同参数的设定来取舍子项,用ByItem可选择某一行不显示,用ByRule则可定义分类表格,如用户定义了Ctype参数,a代表基本件,b代表标准件,而第一个表格列出基本件,第二个表格列出标准件,则可利用此项,ByRule;Add键入&arm.mbr.ctype==a,而第二个表格,键入&asm.mbr.ctype==b。如果在一个表格中,只想列出零件而不需要部件(Assembly),则键入&asm.mbr.type==part。请注意要两个等号,表示等于,!=表示不等于,=,=等符号表示大于,小于。SortRegions:表格排序,在Pro/E中,缺省的排序会是装配次序,用户需要时可自行指定某一列或几列作为依据进行排序。Comments:备注栏。在定义完RepeatRegion后,备注栏可不输入内容,而定义成Commentscell,明细内容显示出来后,可直接用Entertext键入相应的零部件行中,这样,此信息便会跟随这个零件,表格次序的调整,不会改变他们的对应关系。Indentation:可根据零部件装配层次的不同而将显示内容在排列上向后几个字符间距,只需选择某个参数,并输入错位的间距(字符个数)即可。DashItem:可将表格中的某些内容用“-”代替,仅限于序号和数量,当一个序号变成“-”后,其它序号会自动重排,保持连续。FixI