野火论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始


查看: 282390|回复: 3156

[原创] 参数化建模简介(参数、关系、齿轮参数化建模)

  [复制链接]

49

主题

411

帖子

264

威望

讲师

Rank: 6Rank: 6

积分
1080

原创先锋勋章斑竹勋章希望之星勋章

QQ
发表于 2008-12-12 20:53 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
proe参数化建模简介(1)


    本教程分两部分,第一部分主要介绍参数化建模的相关概念和方法,包括参数的概念、参数的设置、关系的概念、关系的类型、如何添加关系以及如何使用关系创建简单的参数化零件(以齿轮为例)。
第二部分介绍参数化建模的其他方法:如族表的应用、如何使用UDF(用户自定义特征)、如何使用Pro/Program创建参数化零件。(后一部分要等一段时间了,呵呵)

    参数化设计是proe重点强调的设计理念。参数是参数化设计的核心概念,在一个模型中,参数是通过“尺寸”的形式来体现的。参数化设计的突出有点在于可以通过变更参数的方法来方便的修改设计意图,从而修改设计意图。关系式是参数化设计中的另外一项重要内容,它体现了参数之间相互制约的“父子”关系。
所以,首先要了解proe中参数和关系的相关理论。
一、什么是参数?
    参数有两个含义:
l一是提供设计对象的附加信息,是参数化设计的重要要素之一。参数和模型一起存储,参数可以标明不同模型的属性。例如在一个“族表”中创建参数“成本”后,对于该族表的不同实例可以设置不同的值,以示区别。
l二是配合关系的使用来创建参数化模型,通过变更参数的数值来变更模型的形状和大小。
二、如何设置参数
    在零件模式下,单击菜单“工具”——参数,即可打开参数对话框,使用该对话框可添加或编辑一些参数。

a1.jpg


1.参数的组成
(1)名称:参数的名称和标识,用于区分不同的参数,是引用参数的依据。注意:用于关系的参数必须以字母开头,不区分大小写,参数名不能包含如下非法字符:!、@#等。
(2)类型:指定参数的类型
  • a)整数:整型数据
  • b)实数:实数型数据
  • c)字符型:字符型数据
  • d)是否:布尔型数据。
(3)数值:为参数设置一个初始值,该值可以在随后的设计中修改
(4)指定:选中该复选框可以使参数在PDMProduct Data Management,产品数据管理)系统中可见
(5)访问:为参数设置访问权限。
  • a)完全:无限制的访问权,用户可以随意访问参数
  • b)限制:具有限制权限的参数
  • c)锁定:锁定的参数,这些参数不能随意更改,通常由关系式确定。
(6)源:指定参数的来源
  • a)用户定义的:用户定义的参数,其值可以随意修改
  • b)关系:由关系式驱动的参数,其值不能随意修改。
(7)说明:关于参数含义和用途的注释文字
(8)受限制的:创建其值受限制的参数。创建受限制参数后,它们的定义存在于模型中而与参数文件无关。
(9)单位:为参数指定单位,可以从其下的下拉列表框中选择。
2.增删参数的属性项目
可以根据实际需要增加或删除以上9项中除了“名称”之外的其他属性项目
a2.jpg
三、关系的概念
关系是参数化设计的另一个重要因素。
关系是使用者自定义的尺寸符号和参数之间的等式。关系捕获特征之间、参数之间或组件之间的设计关系。
可以这样来理解,参数化模型建立好之后,参数的意义可以确定一系列的产品,通过更改参数即可生成不同尺寸的零件,而关系是确保在更改参数的过程中,该零件能满足基本的形状要求。如参数化齿轮,可以更改模数、齿数从而生成同系列、不同尺寸的多个模型,而关系则满足在更改参数的过程中齿轮不会变成其他的零件。
四、关系式的组成
关系式的组成主要有:尺寸符号、数字、参数、保留字、注释等。
1.符号类型
系统会给每一个尺寸数值创建一个独立的尺寸编号,在不同的模式下,被给定的编号也不同
a3.jpg
a4.jpg
a5.jpg

4)自定参数。
用户自定义的参数。
  l使用者参数名必须以字母开头(如果它们要用于关系的话)。
  l不能使用 d#kd#rd#tm#tp#、或tpm#作为使用者参数名,因为它们是由尺寸保留使用的。
  l使用者参数名不能包含非字母数字字符,诸如!@#$


2.系统内缺省的常量(大小写视为相同)
下列参数是由系统保留使用的:
a6.jpg

3.运算符号(算数、比较、逻辑)
a7.jpg

4.数学函数(大小写视为相同)
a9.jpg
下面简单介绍这些函数的用法:
sin()cos()tan()函数
这三个都是数学上的三角函数,分别使用角度的度数值来求得角度对应的正弦、余弦和正切值,比如:
A=sin(30) A=0.5
B=cos(30) B=0.866
C=tan(30)C=0.577
asin()acos()atan()函数
这三个是上面三个三角函数的反函数,通过给定的实数值求得对应的角度值,如:
A=asin(0.5) A=30
B=acos(0.5) B=60
C=atan(0.5) C=26.6
sinh()cosh()tanh()函数
在数学中,双曲函数类似于常见的(也叫圆函数的)三角函数。基本双曲函数是双曲正弦“sinh”,双曲余弦“cosh”,从它们导出双曲正切“tanh”等。
sinh / 双曲正弦: sinh(x) = [e^x - e^(-x)] / 2
cosh / 双曲余弦: cosh(x) = [e^x + e^(-x)] / 2
tanh / 双曲正切: tanh(x) = sinh(x) / cosh(x)=[e^x - e^(-x)] / [e^x + e^(-x)]
函数使用实数作为输入值
sqrt()函数
开平方,如:
A=sqrt(100) A=10;
B=sqrt(2)B=1.414...
log()函数
求得10为底的对数值,如:
A=log(1) A=0;
A=log(10) A=1;
A=log(5)A=0.6989...;
ln()函数
求得以自然数e为底的对数值,e是自然数,值是2.718...;如:
A=ln(1)A=0;
A=ln(5) A=1.609...;
exp()函数
求得以自然数e为底的开方数,如:
A=exp(2)
A=e^2=7.387...;

abs()函数
求得给定参数的绝对值,如
A=abs(-1.6) A=1.6
B=abs(3.5) B3.5
max()min()函数
求得给定的两个参数之中的最大最小值,如
A=max(3.8,2.5) A=3.8
B=min(3.8,2.5) B=2.5
mod()函数
求第一个参数除以第二个参数得到的余数,如:
A=mod(20,6) A=2
B=mod(20.7,6.1) B=2.4
pow()函数
指数函数,如
A=pow(10,2) A=100
B=pow(100,0.5) B=10
ceil()floor()
均可有一个附加参数,用它可指定舍去的小数位.
ceil(parameter_name or number, number_of_dec_places).
floor(parameter_name or number, number_of_dec_places).
parameter_name or number:参数名或数值 要保留的小数位(可省略)
number_of_dec_places:要保留的小数位(可省略) ,它的取值的不同可有不同的结果:
l可以为数值亦可为参数,若为实数则取整.
lnumber_of_dec_place>8, 则不作任何处理,用原值
lnumber_of_dec_place<8, 则舍去其后的小数位,则进位
例如:
Ceil(10.2)-->11 10.2大的最小整数为11.
floor(-10.2)-->-11 -10.2小的最大整数为-11.
floor(10.2)-->10
10.2小的最大整数为10.
Ceil(10.255,2)-->10.26. 10.255大的最小符合数.
Ceil(10.255,0)-->11
floor(10.255,1)-->10.2
Len1=ceil(20.5) ==>Len1=21
Len2=floor(-11.3) ==>Len2=-12
Len=Len1+Len2 ==>Len=9
5.其他函数
Proe中提供的函数很多,除上述数学函数外,还有许多函数,在此介绍几个字符串函数
tring_length( ) :返回某字符串参数中字符的个数。
用法:String_length(Parameter name or string参数名或字符串例)
如:
strlen1=string_length("material") strlen1=8
material="steel"strlen2=string_length(material),则strlen2=5
rel_model_name( ):返回目前模型的名称
用法:rel_model_name( ) 注意括号内为空的,返回目前模型名称.
:
当前模型为part1,则 partName=rel_model_name( )==>partName="part1"
如在装配图中,则需加上进程号(session Id),例如
partName=rel_model_name:2( )
rel_model_type( ) 返回目前模型类型
用法: rel_model_type( )
:
如当前模型为装配图 parttype=rel_model_type( ) ==>parttype="ASSEMBLY".
itos( ) 将整数换成字符串
用法:
Itos(integer) 整数,若为实数则舍去小数点.
:
S1=Itos(123)==>s1="123"
S2=itos(123.57)==>s2="123"
intl=123.5 s3=itos(intl)==>s3="123"

search( ) 查找字符串,返回位置值
用法:search(string,substring).
string:原字符串
substring:要找的字符串. 查到则返回位置,否则返回0,第一个字符位置值为1,依此类推.
:
Parstr=abcdef. Where=search(parstr,"bcd"")==>Where=2.
Where=search(parstr,"bed")==>where=0(没查到).
extract( ) 提取字符串
用法:extract(string,position,length)
string原字符串
position提取位,大于0而小于字符串长度
length提取字符数,不能大于字符串长度
:
new=extraecl("abcded",2,3)==>new="bcd".
其含义是: "abcdef"串的第2个字符(b)开始取出3个字符.
exists( ) 测试项目是否存在
用法:exists(Item)
Item
可以是参数或尺寸.
:
If exists(d5) 检查零件内是否有d5尺寸.
If exists("material") 检查零件内是否有material参数.
evalgraph()计算函数
用法:evalgraph(graph_name,x_value)
其中graph_name是指控制图表(graph)的名字,要用双引号括起,x_valuegraph中的横坐标值。函数返回graphx对应的y值。
sd5evalgraph(“sec”,3) evalgraph只是proe提供的一个用于计算图表graph中的横坐标对应纵坐标的值的一个函数,你可以用在任何场合。
trajparf_of_pnt( )返回指定点在曲线中的位置比例。
用法:trajpar_of_pnt(curve_name,point_name)
curve_name是曲线的名称
point_name则为点的名字。
两个参数都需要用“”来括起。函数返回的是点在曲线上的比例值,可能等于trajpar也可能是1-trajpar。视曲线的起点如何。
ratio=trajpar_of_pnt(“wire”,”pnt1”) ratio的值等于点pnt1在曲线wire上的比例值。
6.注释
/* 后文字并不会参与关系式的运算,可用来描述关系式的意义。
如:
/*Width is equal to 2*height
d1=2*d2

五、关系式的分类
proe提供了为数不少的关系式,范围涵盖广泛,不过,一般使用者常用的仅其中几种,一下列举三大类分别说明。
1.简单式
该类型通常用于单纯的赋值。如:
m=2
d1=d2*2
2.判断式
有时必须加上一些判断语句,以适合特定的情况,其语法是:
if ……endif
if……else……endif
如:
(1)if ……endif
if d2>=d3
  length_A=100
endif
if volume=50&area<200
diameter=30
end if
(2)if……else……endif
if A>10
type=1
if B>8
type=2
endif
else
type=0
endif
3.解方程与联立解方程组
在设计时,有时需要借助系统求解一些方程。在proe中,求解方程的语法是:solve……for。若解不止一组,系统也仅能返回一组结果。
如:
r_base=70
radtodeg=180/pi
A=0
solve
A*radtodeg-atan(A)=trajpar*20
for
A

d3=r_base*(1+A^2)^0.5
area=100
perimeter=50
solve
d3*d4=area
2*(d3+d4)=perimeter
for d3,d4
六、如何添加关系
单击主菜单“工具”——“关系”,即可打开关系对话框
a10.jpg
下面以实例说明如何使用参数和关系创建参数化零件
34.jpg 35.jpg 36.jpg
1、新建零件:gear
2、设置尺寸参数
单击菜单“工具”——参数,在参数对话框中添加尺寸的各个参数,如下图所示
a11.jpg

3、绘制齿轮基本圆
选取FRONT平面为草绘平面,单击草绘按钮,进入到二维草绘,在草绘平面内绘制认知尺寸的四个同心圆,确定,退出草绘模式。
a12.jpg
4、创建齿轮关系式,确定齿轮尺寸
(1)在“工具”主菜单选取“关系”选项,打开关系对话框
(2)在关系对话框中分别添加齿轮的分度圆直径、基圆直径、齿根圆直径以及齿顶圆直径的关系式(如下图所示),通过这些关系式以及已知的参数来确定上述参数的数值。
3.jpg
(3)接下来将参数与图形上的尺寸相关联。在图形上单击选择尺寸代号,将其添加到【关系】对话框中,再编辑关系式,添加完毕后的【关系】对话框如下图所示,其中为尺寸sdOsdlsd2sd3新添加了关系,将这四个圆依次指定为基圆、齿根圆、分度圆和齿顶圆。
4.jpg
(4)在【关系】对话框中单击确定按钮,系统自动根据设定的参数和关系式再生模型并生成新的基本尺寸。最终生成如下图所示的标准齿轮基本圆。
5.jpg

游客,如果您要查看本帖隐藏内容请回复

25

主题

200

帖子

12

威望

工程师

Rank: 3Rank: 3

积分
252
发表于 2008-12-12 21:06 | 显示全部楼层
非常好

1224

主题

4万

帖子

894

威望

管理员

Rank: 10Rank: 10Rank: 10

积分
46202

社区建设勋章优秀斑竹勋章原创先锋勋章热心助人勋章宣传大使勋章斑竹勋章

发表于 2008-12-12 21:53 | 显示全部楼层
辛苦了,写这么多,内容非常好,加为精华

25

主题

200

帖子

12

威望

工程师

Rank: 3Rank: 3

积分
252
发表于 2008-12-12 22:15 | 显示全部楼层
我正在学,怎么画那个齿轮练习时,到第四步它的齿轮尺寸不变化??
头像被屏蔽

6

主题

374

帖子

34

威望

高工

Rank: 4

积分
500

希望之星勋章

发表于 2008-12-12 22:27 | 显示全部楼层
厉害哦,学习中,支持LZ

0

主题

17

帖子

0

威望

实习生

Rank: 1

积分
18
发表于 2008-12-12 22:33 | 显示全部楼层
学习学习呵呵,不怎么会画的那个呵呵

152

主题

1096

帖子

82

威望

讲师

Rank: 6Rank: 6

积分
1333

热心助人勋章

QQ
发表于 2008-12-12 22:42 | 显示全部楼层
原帖由 sgjunfeng 于 2008-12-12 20:53 发表
proe参数化建模简介(1)

    本教程分两部分,第一部分主要介绍参数化建模的相关概念和方法,包括参数的概念、参数的设置、关系的概念、关系的类型、如何添加关系以及如何使用关系创建简单的参数化零件(以齿轮为例 ...

ganxie fenxiang

0

主题

138

帖子

1

威望

助工

Rank: 2

积分
154
发表于 2008-12-13 00:24 | 显示全部楼层
学习学习呵呵

0

主题

88

帖子

0

威望

助工

Rank: 2

积分
118
发表于 2008-12-13 11:11 | 显示全部楼层
下载看看,学习

8

主题

284

帖子

16

威望

工程师

Rank: 3Rank: 3

积分
334
发表于 2008-12-13 11:52 | 显示全部楼层
好东西是要用来学习的。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

本站为非营利性站点,部分资源为网友搜集或发布,仅供学习和研究使用,如用于商业用途,请购买正版。站内所发布的资源,如有侵犯你的权益,请联系我们,本站将立即改正或删除。

QQ|手机版|小黑屋|野火论坛(©2007~2020) ( 苏ICP备11036728号-2 )苏公网安备 32039102000103号

GMT+8, 2020-7-13 08:35 , Processed in 0.160790 second(s), 18 queries , Memcache On.

快速回复 返回顶部 返回列表