一级士官
UID2462959
U币0
G币0
技术0
主题30
精华0
阅读权限30
注册时间2010-11-16
最后登录1970-1-1
在线时间0 小时
一级士官
|
本帖最后由 opwxy 于 2011-1-9 18:37 编辑
有不少人对PROE中关系式不是很理解,在网上发表的有关文章的收集,希望对大家有所帮助。
一)关系式中可以用下列数学函数式表达:
1)、正弦 sin( )
2)、余弦 cos( )
3)、正切 tan( )
4)、反正弦 asin( )
5)、反余弦 acos( )
6)、反正切 atan( )
7)、双曲线正弦 sinh( )
8)、双曲线余弦 cosh( )
9)、双曲线正切 tanh( )
以上九种三角函数式所使用的单位均为“度”。
10)、平方根 sqrt( )
11)、以10为底的对数 log( )
12)、自然对数 ln( )
13)、e的幂 exp( )
14)、绝对值 abs( )
15)、不小于其值的最小整数(上限值) ceil( )
16)、不超过其值的最大整数(下限值) floor( )
可以给函数ceil和floor加一个可选的自变量,用它指定要圆整的小数位数。
带有圆整参数的这些函数的语法是:
ceil(parameter_name或number, number_of_dec_places)
floor (parameter_name 或 number, number_of_dec_places)
其中的parameter_name或number意为参数名称或者一个带小数位的精确数值
后面跟随着的number_of_dec_places意为十进位的小数位数,是可选值:
A)可以被表示为一个数或一个使用者自定义参数。如果该参数值是一个实数,则被截尾成为一个整数。
B)它的最大值是8。如果超过8,则不会舍入要舍入的数(第一个自变量),并使用其初值。
C)如果不指定它,则功能同前期版本一样。
使用不指定小数部分位数的ceil和floor函数,其举例如下:
ceil (10.2) 值为11
floor (10.2) 值为 10
使用指定小数部分位数的ceil和floor函数,其举例如下:
ceil (10.255, 2) 等于10.26
ceil (10.255, 0) 等于11 [ 与ceil (10.255)相同 ]
ceil(10.25531415926,7)等于10.2553142
ceil(10.25531415926,8)等于10.25531416
floor (10.255, 2) 等于10.25
floor (10.255, 0) 等于10.
Floor(10.2531415926,7)等于10.2553141
Floor(10.2531415926,8)等于10.25531415
举例一:
以上函数式通常用的四种表达式如下图:
以上两种曲线是在proe中的曲线—从方程—指定坐标系(选系统中固有的坐标系)—选笛卡儿坐标,就会出现公式界面,再输入如上公式。为什么要乘一个200的系数呢?因为这里系统默认的是度数,即自变量由零变为360因变量只在零和一之间变动,因此图形是很扁平的,不好看,只能把它向上下拉长,就加上了这个系数,如果读者希望图形长一点或者扁一点都可以通过加系数来解决。
这里x为什么要定为89,因为到了90,y就会变成无穷大,这在图形上是画不成的,所以定为89度,其实还可以定大一点如是说89.8也可以,只要不是90就行。
上式中的sqrt就是开平方的意思,本图没有加系数,读者可以看得更直观。
二)关系式中还可以用下列曲线表计算式表达:
曲线表计算使用者能用曲线表特征,通过关系来驱动尺寸。尺寸可以是草绘器、零件或组件尺寸。格式如下:
evalgraph("graph_name", x) ,其中graph_name意为曲线表的图形函数名称,x是沿曲线表x-轴的值,evalgraph意为在曲线图形上给定“x”后相对应的y值。
看起来graph_name有点复杂,其实在中文版中系统自定为“图形一”、“图形二”,大家可以更简化一些,命名为“A”、“B”、“C”或者“1”、“2”、“3”都可以。
对于混合特征,可以指定轨线参数trajpar作为该函数的第二个自变量。
这时,关系式的表达方式为:
evalgraph("graph_name",trajpar*xmax)
上述表达式中的trajpar为从0到1的一个变量,xma意为在自变量X方向上全程值。
注释:曲线表特征通常是用于计算x-轴上所定义范围内x值对应的y值。当超出范围时,y值是通过外推的方法来计算的。对于小于初始值的x值,系统通过从初始点延长切线的方法计算外推值。同样,对于大于终点值的x值,系统通过将切线从终点往外延伸计算外推值。
举例二:
以上面开平方曲线为三维空间轨迹线作变截面扫描,截面为大半个圆,圆直径为0.5,其中弦的长度为“sd4(系统自定的名称),下面再作一个sd4的变量图形,取名为“1”(此名最为简单),图形如下:
取sd4的变量如下式:
sd4=evalgraph("1",trajpar*5)
其中evalgraph的数学含义为赋予图形的值,“1”即为上图的名称,trajpar为0~1的变量,5就是上次的曲线方程中x向量的全程值。而弦sd4的变化是随上面图形的变化而变化的。如下图:
从上所知,evalgraph("graph_name",trajpar*xmax)关系式是一个用途极为广泛的数学式。
复合曲线轨道函数
在关系中可以使用复合曲线的轨道参数trajpar_of_pnt。
下列函数定义一个0.0和1.0之间的值:
trajpar_of_pnt("trajname", "pointname")
其中trajname是复合曲线名,pointname是基准点名。
轨迹线是一个沿复合曲线的参数,在它上面垂直于曲线切线的平面通过基准点。因此,基准点不必位于曲线上;在曲线上距基准点最近的点上计算该参数值。
如果复合曲线被用作多轨道扫瞄的骨架,则trajpar_of_pnt与trajpar或1.0 - trajpar一致(取决于为混合特征选择的起点)。 注:1.0-trajpar即是1~0,与trajpar的方向相反。
三)关于关系
关系(也被称为参数关系)是使用者自定义的符号尺寸和参数之间的等式。关系捕获特征之间、参数之间或组件与组件之间的设计关系,因此,允许使用者来控制对模型修改的影响作用。
关系是捕获设计知识和意图的一种方式。和参数一样,它们用于驱动模型 - 改变关系也就改变了模型。
关系可用于控制模型修改的影响作用、定义零件和组件中的尺寸值、为设计条件担当约束(例如,指定与零件的边相关的孔的位置)。
它们用在设计过程中来描述模型或组件的不同部分之间的关系。关系可以是简单值(例如,d1=4)或复杂的条件分支语句。
关系类型
有两种类型的关系:
A)等式 - 使等式左边的一个参数等于右边的表达式。这种关系用于给尺寸和参数赋值。例如:
简单的赋值:d1=4.75
复杂的赋值:d5 = d2*(SQRT(d7/3.0+d4))
B)比较 - 比较左边的表达式和右边的表达式。这种关系通常用于作为一个约束或用于逻辑分支的条件语句中。例如:
作为约束:(d1 + d2)>(d3 + 2.5)
在条件语句中;IF (d1 + 2.5) >= d7
增加关系
可以把关系增加到:
1)特征的截面(在草绘模式中,如果最初通过选择“草绘器”>“关系”>“增加”来创建截面)。
2)特征(在零件或组件模式下)。
用关系式创建特征可举例如下:
这里我们先建一个椭圆体的拉伸特征,然后在椭圆面上草绘一条样条曲线,完成后的图形如下:
在样条曲线的起始端部定义一基准点,注意是按比例0或者0.01都要可以,如下图:
以基准点为中心作一孔拉伸剪切,取直径为35毫米,如下图:
以此圆孔的拉伸特征作阵列(事先要把基准点和圆孔拉伸特征合并成一个组,并以此组特征进行阵列),以基准点偏离起始点0.01为第一方向的基本值,增量为 0.1,阵列数为10。这样我们就可以以样条曲线为轨迹阵列出十个直径为35毫米的孔来。但我们希望通过关系式阵列出不同孔径的孔来,因此我们就用¢35这第二方向的基本值,其增量就用关系式来表述,如下图:
点击上图中第二方向的编辑按钮,就出现关系式的编辑框,如下图:
以上关系式就用到了条件语句if作为关系约束表达式,其后的idx1是第一方向阵列的数值表达式,我们这里阵列数是十,则它表达的是十这个数值。整个关系式的意义为:
如果第一方向的阵列数值小于或者等于四,那每直径为三十五的孔改成直径为二十五,余下的孔径全部改成直径为六十,点击文件-保存后图形生成如下:
从上图看,符合所要求的尺寸。原始孔径为35,阵列后的第一到第四个孔径为25,剩下的孔径通通为60。
通过上例,我们应该对于这类条件语句应用于关系式有所了解了。
3)零件(在零件或组件模式下)。
4)组件(在组件模式下)。
当第一次选择关系菜单时,预设为查看或改变当前模型(例如,零件模式下的一个零件)中的关系。
要获得对关系的访问,从“部件”或“组件”菜单中选择“关系”,然后从“模型关系”菜单中选择下列命令之一:
A)组件关系:使用组件中的关系。如果组件包含一个或多个子组件,“组件关系”菜单出现并带有下列命令:
当前 - 缺省时是顶层组件。
名称 - 键入组件名。
B)骨架关系:使用组件中骨架模型的关系(只对组件适用)。
C)零件关系:使用零件中的关系。
D)特征关系:使用特征特有的关系。如果特征有一个截面,那么使用者就可选择:获得对截面(草绘器)中关系的访问,或者获得对作为一个整体的特征中的关系的访问。
E)数组关系:使用数组所特有的关系。
注释:
如果试图将截面之外的关系指派给已经由截面关系驱动的参数,则系统再生模型时给出错误信息。试图将关系指派给已经由截面之外关系驱动的参数时也同样。删除关系之一并重新生成。
如果组件试图给已经由零件或子组件关系驱动的尺寸变量指派值时,出现两个错误信息。删除关系之一并重新生成。
修改模型的单位可使关系无效,因为它们没有随该模型缩放。有关修改单位的详细信息,请参阅“关于公制和非公制度量单位”帮助主题。
四)关系中使用参数符号:
在关系中使用四种类型的参数符号:
1)尺寸符号:支持下列尺寸符号类型:
d# - 零件或组件模式下的尺寸。
d#:# - 组件模式下的尺寸。组件或组件的进程标识添加为后缀。
rd# - 零件或顶层组件中的参考尺寸。
rd#:# - 组件模式中的参考尺寸(组件或组件的进程标识添加为后缀)。
rsd# - 草绘器中(截面)的参考尺寸。
kd# - 在草绘(截面)中的已知尺寸(在父零件或组件中)。
2)公差:这些是与公差格式相关连的参数。当尺寸由数字转向符号的时侯出现这些符号。
tpm# - 加减对称格式中的公差;#是尺寸数。
tp# - 加减格式中的正公差;#是尺寸数。
tm# - 加减格式中的负公差;#是尺寸数。
3)实例数:这些是整数参数,是数组方向上的实例个数。
p# - 其中#是实例的个数。
注释:如果将实例数改变为一个非整数值,Pro/ENGINEER将截去其小数部分。例如,2.90将变为2。
4)使用者参数:这些可以是由增加参数或关系所定义的参数。
例如:
Volume = d0*d1*d2
Vendor = "Stockton Corp."
注释:
使用者参数名必须以字母开头(如果它们要用于关系的话)。
不能使用d#、kd#、rd#、tm#、tp#、或tpm#作为使用者参数名,因为它们是由尺寸保留使用的。
使用者参数名不能包含非字母数字字符,诸如!、@、#、$。
五)下列参数是由系统保留使用的:
PI(几何常数)
值 = 3.14159
(不能改变该值。)
G(引力常数)
缺省值 = 9.8米/秒^2
(C1、C2、C3和C4是缺省值,分别等于1.0、2.0、3.0和4.0。)
六)关系式中的运算符号:
1. 加号(+)
2. 减号(-)
3. 乘号(*)
4. 除号(/)
5. 平方根(sqrt)
6. 幂(^)
七)以上还只是系统函数的一小部分,系统所有函数如下:
abs acos asin atan atan2 bound cable_len ceil comparegraphs cos cosh dead
eang ecoordx ecoordy edist evalgraph exists
exp extract false floor if itos
ln log lookup_inst massprop_parm material_parm
max min mod mp_assgned_mass mp_cg_x
mp_cg_y mp_cg_z mp_mass mp_surf_area mp_volume
near no pi pow rel_model_name
rel_model_type search sign sim_load_value
sim_mc_value sim_shell_thickness sin sinh smt_def_bend_rad
smt_thickness sqrt string_length tan tanh trajpar trajpar_of_pnt
true yes |
-
1.jpg
(15.12 KB, 下载次数: 50)
-
2.jpg
(15.2 KB, 下载次数: 46)
-
3.jpg
(12.74 KB, 下载次数: 52)
-
4.jpg
(11.58 KB, 下载次数: 43)
-
5.jpg
(12.34 KB, 下载次数: 58)
-
5.jpg
(12.34 KB, 下载次数: 49)
-
6.jpg
(12.97 KB, 下载次数: 48)
-
7.jpg
(27.41 KB, 下载次数: 54)
-
7.jpg
(27.41 KB, 下载次数: 40)
-
1.jpg
(15.12 KB, 下载次数: 44)
-
4.jpg
(11.58 KB, 下载次数: 49)
|