PROE关系式运用

上传人:jin****ng 文档编号:110349917 上传时间:2022-06-18 格式:DOC 页数:11 大小:78KB
返回 下载 相关 举报
PROE关系式运用_第1页
第1页 / 共11页
PROE关系式运用_第2页
第2页 / 共11页
PROE关系式运用_第3页
第3页 / 共11页
亲,该文档总共11页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
注册:2008年8月3日楼主小大个性首页|邮箱PROE关系(目前在网上找到的较全面的,以供大家学习学习)0亶I夏IpROE关系(1) 关于关系关系(也被称为参数关系)是书写在符号尺寸和参数之间的用户定义的等式。关系捕获特征、零件或组件 元件内的设计关系,从而允许用户来控制对模型修改的效果。关系是捕获设计知识和意图的一种方式。和参数一样,关系被用于驱动模型。如果更改关系,则模型也会 随之改变。可以使用关系来:控制模型的修改效果。定义零件和组件中的尺寸值。作为设计条件的约束(例如,指定孔相对于零件边的位置)。在设计过程中描述某个模型或组件的不同零件之间的条件关系。关系可以是简单值(例如d1=4)或复杂的条件分支语句。(2) 关系类型有两种类型的关系:等式(Equality)-使方程左边的参数等于右边的表达式。这类关系用于给尺寸和参数赋值。例如:简单的赋值:d1 = 4.75复杂的赋值:d5 = d2*(SQRT(d7/3.0+d4)比较(Comparison)-比较方程左边的表达式和右边的表达式。这种关系通常用于作为一个约束或用于 逻辑分支的条件语句中。例如:作为约束:(d1 + d2) > (d3 + 2.5)在条件语句中:IF (d1 + 2.5) >= d7(3) 添加关系可以把关系添加到:特征的截面(在草绘器模式下)。特征(在零件或组件模式下)。零件(在零件或组件模式下)。组件(在组件模式下)。第一次选择工具(Tools)>关系(Relations)时,假定要查看或更改当前模型(例如,零件”模式下的 零件)中的关系。要使用关系,同时打开零件或组件,可单击工具(Tools)>关系(Relations)。关系(Relations)对话框 打开。在查找(Look In)下,选取下列对象类型之一:零件(Part)-使用零件中的关系(在零件和组件模式下均可)。组件(Assembly)-使用组件中的关系。特征(Feature)-使用某一特征专用的关系(在零件和组件模式下均可)。继承(Inherited)-在零件”和组件模式下均可。截面(Section)-如果特征具有截面,则可在截面(“截面)中使用截面(“草绘器)关系(在零件”和 组件”模式下均可)。阵列(Pattern)-使用某一阵列专用的关系(在零件”和组件”模式下均可)。骨架(Skeleton)-使用组件中骨架模型的关系。元件(Component)-使用组件元件的关系。注意:o如果试图将截面之外的关系指派给已经由截面关系驱动的参数,则系统再生模型时给出错误信息。试图 将关系指派给已经由截面之外关系驱动的参数时也同样。删除关系之一并重新生成。o如果组件试图给已经由零件或子组件关系驱动的尺寸变量指派值时,出现两个错误信息。删除关系之一 并重新生成。o修改模型的单位可使关系无效,因为它们没有随该模型缩放。给模型增加关系1. 零件或组件打开时,单击工具(Tools)>关系(Relations)。关系(Relations)对话框打开。2. 在文本框中键入关系并按ENTER键。系统接受输入内容。可输入任意多个关系,输入每一个关系后按ENTER 键。注意:系统不接受超过31个字符的参数名,变量名或符号名。用以下方式之一可以给模型添加关系:编辑关系文件并添加更多的关系。修改尺寸并且当提示输入新值,键入关系的右边。在特征中创建关系时遵循的规则当在特征中创建关系时,它们同特征一起保存、一起驻留,而不管使用该特征的模型如何。零件关系式在所有特征再生之前进行计算,特征关系式在特征再生时进行计算。因此,在关系执行几何计 算(诸如两点之间的距离)时,如果与用作零件关系相对,它被用作特征关系,则可能给出不同的结果。 在特征中创建关系可以使用在零件或组件中创建关系时使用的同一规则。注意:新参数不是在特征中创建的,但可以通过特征级名称修改已存在的模型参数。关系中使用的参数符号在关系中使用四种类型的参数符号: 尺寸符号 (Dimension symbols) - 支持下列尺寸符号类型:o d# - 零件或组件模式中的尺寸。o d#:# - 组件模式中的尺寸。组件或元件的进程标识添加为后缀。o rd# - 零件或顶级组件中的参照尺寸。o rd#:# - 组件模式中的参照尺寸。组件或元件的进程 ID 添加为后缀。o rsd# - 草绘器(剖面)中的参照尺寸。o kd# - 草绘(剖面)中的已知尺寸(在父零件或组件中)。 公差 (Tolerances) - 这些是与公差格式相关的参数。当尺寸由数字的转向符号的时候出项这些符号。o tpm# - 加减对称格式的公差;# 是尺寸数。o tp# - 加减格式的正公差;# 是尺寸数。o tm# - 加减格式的负公差;# 是尺寸数。实例数(Number of Instances)-这些是阵列方向上的实例数的整数参数。o p# - 其中 # 是实例的个数。注意:如果将实例数改成一个非整数值,Pro/ENGINEER将截去其小数部分。例如,2.90将变为2。 用户参数 (User Parameters) - 这些可以是通过添加参数或关系定义的参数:例如:Volume = d0*d1*d2Vendor = Stockton Corp.注意:o 用户参数名必须以字母开头(如果它们要用于关系的话)。o 不能使用 d#、kd#、rd#、tm#、tp# 或 tpm# 作为用户参数名,因为系统需要保留它们,和尺寸一起使用。o用户参数名不能包含非字母?b禁止邮箱贴下列参数是由系统保留使用的:PI (几何常数)值=3.14159 (不能改变此值。)G (引力常数)缺省值=9.8米/秒2 (C1、C2、C3和C4是缺省值,分别等于1.0、2.0、3.0和4.0。)可在关系(Relations)对话框的局部参数(Local Parameters)框中更改这些系统参数值。这些改变的值应用于当前工作区的所有模型。关系中使用的运算符可在关系(包括方程和条件语句)中使用下列运算符。算术运算符+加减/除*乘人指数()分组圆括号例如:d0 = (d1-d2)*d3赋值运算符= 等于= 号是一个赋值运算符,它使得方程或关系两边相等。应用时,等式左边只能有一个参数。注意: 等于赋值运算符不同于 等于比较运算符。比较运算符只要能返回 TRUE/FALSE 值,就可使用比较运算符。例如,只要 d1 大于或等于 3.5,下面的关系就返回TRUE。只要d1小于3.5,就返回FALSE:d1 >= 3.5系统支持下列比较运算符:= 等于> 大于>= 大于或等于!=, <>,= 不等于< 小于<= 小于或等于|或&与, ! 非运算符 |、&、! 和 扩展了比较关系的应用,它们使得能在一个语句中设置若干条件。例如,只要 d1 介于2和3之间且不等于2.5,下面的关系就返回TRUE:di > 2 & di < 3 & di = 2.5关系中使用的函数数学函数可在关系(包括方程和条件语句)中使用下列运算符。关系中也可以包括下列数学函数:cos ()余弦tan ()正切sin ()正弦sqrt ()平方根asin ()反正弦acos ()反余弦atan ()反正切sinh ()双曲线正弦cosh ()双曲线余弦tanh ()双曲线正切注意:所有三角函数都使用单位度。log()以10为底的对数ln()自然对数exp() e的幕abs()绝对值ceil()不小于其值的最小整数floor()不超过其值的最大整数可以给函数ceil和floor添加一个任意自变量,用以指定要圆整的小数位数。带有圆整参数的这些函数的语法是:ceil (parameter_name or number, number_of_dec_places)floor (parameter_name or number, number_of_dec_places)其中 number_of_dec_places 是可选值:可以被表示为一个数或一个用户自定义参数。如果该参数值是一个实数,则被截尾成为一个整数。它的最大值是8。如果超过8,则不会舍入要舍入的数(第一个自变量),并使用其初值。如果不指定它,则功能同前期版本一样。使用未指定小数位数的ceil和floor函数,举例如下:ceil (10.2)值为 11floor (-10.2)值为 一 11使用指定小数位数的ceil和floor函数,举例如下:ceil (10.255, 2)值为 10.26ceil (10.255, 0)值为 11 与 ceil (10.255)相同floor (10.255, 1)值为 10.2floor (-10.255, 2)值为-10.26关系错误Pro/ENGINEER检查刚刚编辑文件中关系的有效性,并且,如果发现关系文件中的错误,则立即返回到“编辑”模式并标记错误的关系。然后可以修正有标记的关系。在关系文件中可能出现三种类型的错误信息:长的行-关系行超过80个字符。编辑改行,或把该行分成两行(其方法是键入反斜杠符号()以表示 关系在下一行继续)。长符号名-符号名超过31个字符。编辑符号名使其字符少于31个。错误-发生语法错误;例如,出现没有定义的参数。计算关系以获得错误并编辑。注意:这种错误检查捕捉不到约束冲突。如果联立关系不能成立,则在消息区出现警告。如果遇到不确定 的联立关系,则在最后一个关系行下的空行上出现出错消息。提示:修改单位将如何影响关系修改模型的单位可使关系无效,因为它们没有随该模型缩放。曲线表计算曲线表计算使用户能用曲线表特征,通过关系来驱动尺寸。尺寸可以是草绘器、零件或组件尺寸。格式如 下:evalgraph(graph_name, x)-其中graph_name是图形的名称,x是沿图形x轴的值,返回y值。对于扫描特征,可指定轨迹参数trajpar作为该函数的第二个自变量。注意:曲线表特征通常是用于计算x轴上所定义范围内x值对应的y值。当超出范围时,y值是通过外 推的方法来计算的。对于小于初值的x值,系统通过将切线从起始点往回延伸计算外推值。同样,对于大 于终值的x值,系统通过将切线从终点往外延伸计算外推值。复合曲线轨道函数可在关系中使用复合曲线的轨迹参数trajpar_of_pnt。下列函数返回一个0.0和1.0之间的值:trajpar_of_pnt(trajname, pointname)-其中trajname是复合曲线名称,pointname是基准点名称。轨线是一个沿复合曲线的参数,在它上面垂直于曲线切线的平面通过基准点。因此,基准点不必位于曲线 上;在曲线上距基准点最近的点上计算该参数值。如果复合曲线被用作多轨迹扫描的骨架,则trajpar_of_pnt要么与该平面上的参数trajpar 一致,要么与 1.0 - trajpar 一致(取决于为扫描特征选择的起点)。trajpar_of_p nt 补充说明1.trajpar_of_pnt 不是 VSS 里的内容,VSS 里用到的是 trajpar。trajpar 是个变量,从 0 到 1,trajpar_of_p nt是个函数,其值是一个0到1里的一个定值。2假如曲线名为CURVE1,基准点名为PNT1,通常我们用到的都是点在曲线上的情况,不在曲线上时取过 点PNT1的曲线的法线(切线垂直线)与曲线的交点来算结果。此函数的结果是:曲线起点到PNT1之间 的这一段曲线长度与曲线全长的比值,如果pnt1与曲线起点重合,值为0,如果pnt1与曲线终点重合, 值为1。因此,在某些情况下,trajpar_of_pnt 与 trajpar 或 1.0 - trajpar 一致.3点的位置由其它的东西控制,当点位置变更时,这个函数的结果反映点的变化,其结果用于扫描等(如 截面尺寸)。因此,这个函数的作用是实现用一个点的位置变化来控制其它的东西,而不能反过来用函数 的值去驱动点,点必须是由其它东西驱动的。4.如果想用一个点沿一曲线连续运动以取trajpar_of_pnt去控制VSS截面尺寸的话,还是用graph比较好。 目前trajpar_of_pnt比较成功的用法是用于随意阵列。5冰大的随意阵列是目前用此函数最成功的例子(冰大:关于珍珠项链的阵列思想任意曲线上的等距 离点的阵列方法) 来自其它:6. 问:a=trajpar_of_pnt(trajparname,pointname+itos(2*idxl-l)后面+itos(2*idxl-l)是什么意思?还 有一个函数是loc=itos(1000*trajpar_of_p nt(trajpar name,poi ntn ame)表达的是什么意思?答: “itos(2*idxl-l)”是把阵列的项数转换成字符串,再与之前的基准点名合并,以符合你的实际基准点名 称。“loc=itos(1000*trajpar_of_p nt(trajpar name,poi ntn ame)同理,把数转换成字符串。7. trajpar是一个从0到1递增的函数,起始为0结束为1,比如sd#=sin(trajpar*360)+2,就是一个起始 高度为2正弦函数从0度角到360度角变化。将字符串作为关系的自变量来传递 下列函数允许用户使用串作为自变量: str in g_le ngth()-返回参数中字符的个数。例如,如果串参数material的值定义为steel,则stri ng_l ength(material)等于 5,因为steel有 5 个字母。 rel_model_name()-返回当前模型名。例如,如果当前正在处理零件A,则rel_model_name()等于 A。要在组件的关系中使用该函数,关系如下所示:n ame = rel_model _n ame:2()注意括号()内是空的。 rel_model_type()-返回当前模型的类型。如果正在组件模式中工作,则rel_model_type()等于组件。 exists()-判断某个项目(如参数、尺寸)是否存在。该函数适用于正在计算关系的模型,或任何模型 元件或子模型结构。例如:o if exists(d5:20)-检查运行时间ID为20的模型其尺寸是否为d5o if exists (par:fid_25:cid_12)-检查元件ID 12中特征ID为25的特征是否有参数par。这允许进行基于参数的决策,该参数只存在于大型组件的一个零件中。例如,假设在大型组件中有若干系 统(诸如液压的、气动的、电子的系统),但大多数对象不属于任何系统。在这种情况下,为了进行基于参数的计算评估,只需要给系统中所属的模型指派适当的参数。例如,如果 电子系统中的项目需要使用BOM报表中的零件号,而不是模型名,则可以创建一个报表参数bom_name, 并写出如下关系:if exists(asm_mbr_cabling)bom _n ame = part_noelsebom _n ame = asm_mbr_ nameen dif示例:曲线表计算曲线表计算使用户能用曲线表特征,通过关系来驱动尺寸。尺寸可以是草绘器、零件或组件尺寸。格式如 下:evalgraph(“graph_name,x)-其中graph_name是图形的名称,x是沿图形x轴的值,返回y值。见下图。图形名称:拉伸 d1=0.5 d2=1.5 dl=evalgraph (stretch, 1) d2=evalgraph (stretch, dl*4)对于扫描特征,可指定轨迹参数trajpar作为该函数的第二个自变量。示例:用注释批注关系可以使用注释评注关系。每一个注释行必须以一个斜杠和一个星号开始。关系中的注释举例如下:/* Width is equal to 2*heightd1 = 2*d2注释必须在所应用的关系之前出现。当排序关系时,注释将随关系一起移动,并附加在关系之上。提示:使用关系中的注释。在关系中使用注释是一个好习惯,这样做,总能够记住有哪些关系及为什么在 模型中使用它。注释也会有益于使用模型的其他用户。关系中的联立方程组联立方程组是这样的若干关系,在其中必须联立解出若干变量或尺寸。例如,假设有一个宽为dl、高为 d2的盒子,并要指定下列条件:其面积等于100其周长等于50可以键入下列方程组:SOLVEd1*d2 = 1002*(d1+d2) = 50FOR dl d2 .or.FOR d1,d2所有SOLVE和FOR语句之间的行成为方程组的一部分。FOR行列出要求解的变量。所有在联立方程组 中出现而在FOR列表中不出现的变量被解释为常数。故也可以键入:area = 100perimeter = 50SOLVEd1*d2 = area2*(d1 + d2) = perimeterFOR d1 d2用在联立方程组中的变量必须预先初始化。例如,在上一个关系中省略area = 100时会引起错误。由联立方程组定义的关系可以同单变量关系自由混合。选取显示(Show)时两者都显示,并可使用关系 (Relations)对话框中的编辑(Edit)进行编辑。注意:即使方程组有多组解,也只返回一组。可在联立方程组后面添加额外的代码,以便在解多于一组时指定一组解。例如,在上一个例子中,两组可 能的解为 d1=5, d2=20 和 d1=20, d2=5。或许要通过添加下列条件码来添加约束d1 <= d2:IF d1 >d2temp = d1d1 = d2d2 = tempENDIF关系中的条件语句IF语句IF语句可以加到关系中以形成条件语句。例如,IF di > d2 len gth = 14.5 ENDIFIF dl <= d2 len gth = 7.0 ENDIF条件是一个值为TRUE (或YES)或FALSE (或NO)的表达式。这些值可以用于条件语句中。例如, 下列语句都可以用同样的方式计算:IF ANSWER = YESIF ANSWER = TRUEIF ANSWER ELSE语句即使再复杂的条件结构都可以通过在分支中使用ELSE语句来实现。用这一语句,前一个关系可以修改成 如下这个样子:IF d1 > d2 len gth = 14.5 ELSE len gth = 7.0ENDIF在IF、ELSE和ENDIF语句之间可以有若个特征。此外,IF-ELSE-ENDIF结构还可以嵌套在特征序列(它 们是其它IF-ELSE-ENDIF结构的模型)内。IF子句的语法如下:IF &t;条件>顺序0或更多关系或IF子句ELSE <可选>顺序0或更多关系或IF子句&t;可选>ENDIF注意: ENDIF必须作为一个字来拼写。 ELSE必须本身占一行。条件语句中的相等必须使用两个等号(=)。赋值号必须是一个等号(=)。 条件语句的排序不对包含条件语句的关系进行排序。 参数的串值评论支持者:0人,反对者:0人,中立者:0人查看评论信息 可以给参数键入字符串值。字符串值被键入在双引号之间。例如,取决于特征参数大小的绘图中的参 考。绘图注释使用注释内的参数名,模型关系如下所示:IF dl > d2MIL_REF = MIL-STD XXXXAELSEMIL_REF = MIL-STD XXXXBENDIF字符串运算符和函数 串可以使用下列运算符和函数:= 比较字符串相等。!=, <>, = 比较字符串的不等。+合并字符串。itos(int)将整数转换为字符串。其中,int可以是一个数字或表达式。非整数将被舍入。 search(string, substring)搜索子串。结果值是子串在串中的位置(如未找到,返回0)。 extract(string, position, length)提取一个子串。例如:如果 param = abcdef,则: flag = param = abcdef -返回 TRUE。 flag=abcdef!=ghi -返回 TRUE。 new=param+ghi - new的值为 abcdefghi。 new=itos(10+刀-new的值为 17。 new=param+itos(1.5) -new 的值为abcdef2。 where = search(param, bcd) - where 的值为 2。 where = search(param, bcd) - where 的值为 0。 new = extract(param,2,3) - new 的值为 bed
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 活动策划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!