ProE程序编程基础教程.docx
- 文档编号:6917470
- 上传时间:2023-01-12
- 格式:DOCX
- 页数:25
- 大小:64.85KB
ProE程序编程基础教程.docx
《ProE程序编程基础教程.docx》由会员分享,可在线阅读,更多相关《ProE程序编程基础教程.docx(25页珍藏版)》请在冰豆网上搜索。
ProE程序编程基础教程
程序的常用语句ProE编程基础教程时间:
2013-09-01 作者:
模具联盟网 点击:
557 评论:
0 字体:
T|T
pro/engineer里的程序语句非常简单,不像其它语言那么复杂,就那么几种,下面详细介绍,并给出一此例子:
pro/engineer的常用语句有5种,即:
执行语句Execute,暂停语句Interact,条件语句If...else,特征隐藏语句Suppressed,尺寸参数修改语句Modify.下面分别介绍这几种语句及运用.
执行语句
Execute
该语句用于在装配中执行零件的程序,即在当前装配程序中去执行某个零件的程序, 记得只在有装配的时候才能使用这个语句,否则无效或出错.其格式如下:
Executepart(part_name)
表达式
ENDExecute
例如:
input
aasrting(aa是变量名,string是变量的类型)
"enterthenameofpart"(是提示作用,不要也没有影响,若pro/e是中文版,变量及提示信息可以是中文)
abcnubmer
"enterdiameterofhole"
bbyes_no
"是否加圆孔"(再说多一次,中文版pro/e支持中文
)
Executepart(part_name)
/d2=assembly_diameter
Endexecute
2:
暂停语句
Interact
暂停语句就是将程序暂停执行,让用户进行特征的建立例如:
ifa>b
width=30
else
interact(意思是假如b>a程序就在此处暂停)
endif
/3:
条件语句If..else
这个语句的作用是创建条件分支,它有两种格式
/ 格式一:
格式二
if判断语句 if判断语句
操作块 操作块1
endif
else
操作块2
else
注意:
endiif是写在一起的,也就是说不能有空格,在其它很多计算机语言中是写成endif,这里有点不同 否则出错或无效,切记
!
特征隐藏语句Suppressed
特征隐藏语句,用于将某特征暂时隐藏,它的格式如下:
ADDsuppressedfeature(initialnumber5)
internalfeatureID170
parents=1(#)
round:
general
注意:
当要恢复隐藏征的时候将第一行的suppressed删除就可以了,怎么样很简单吧
!
尺寸修改语句
modify
/ 如果直接修改程序中的尺寸,系统并不反映,必须在尺寸前加上Modify,修改后的尺寸才生效.例如:
/ 要装特征d1的尺寸20改成30,首先要做的是在d1前面加上modify,这样d1就起作用了
修改前:
d1=20
修改后:
modifyd1=30
在这里还提醒各位朋友,如果删除ADD....ENDADD里面的全部内容,就等于删除与之相对应的特征,如果调换他们的顺序,也只要把ADD...ENDADD之间的内容对换一下就可以了!
一:
本例采用一个很简单的例子,带读者进入编程,以便用户能够快速将基撑握
在本例中,操作对像是左图1-1所示的零件模型,通过编辑程序来控制程序来控制零件的长度,宽度,高度,圆孔的大小,
<1>根据图1-3所示的零件尺寸,画出零件(如左图1- 1所示)
<2>此时单击菜单栏的"信息","切换尺寸",显示如 图1-4所示的图,细细一看,得知长方体的长度, 宽度,高度分别是由d0,d1,d4来控制的(说明一下 如果画法不同的话,这些控制尺寸的符号有所不同 ,在些特别声明),而孔的中心距和直径分别是由
d3和d2控制的,这点必须明不,否则在编程的时候 不知道哪个是控制哪个特征的尺寸,就谈不上编程
<3>单击菜单管理器的"零件","program程序","edit design编辑设计",此时弹出名为prt0021.pls的记 事本,如图1-5所示<4>此时在记事本prt0021.pls中找到
INPUT
ENDINPUT
这一段,并在中间输入如下内容
INPUT 长度NUMBER /注:
变量可以是中文/ "请输入长方体的长度"/在状态栏提示的信息/ 宽度NUMBER
"请输入长方体的宽度"
"l3hr?
8U3h:
z%QCAD,CAE,CAM,CATIA,PROE,UG,SOLIDWORKS, 高度NUMBER "请输入长方体的高度" 圆孔YES_NO IF圆孔==YES 圆孔直径NUMBER "请输入圆孔的直径" ENDIF ENDINPUT
<5>在找到
RELATIONS
ENDRELATIONS
在其中间输入如下内容
RELATIONS D0=长度
D1=宽度 D4=高度
IF圆孔==YES D2=圆孔直径
D3=长度/2 ENDIF ENDRELATIONS <6>找到ADD..ENDADD孔的特征部分,在其前面和后面加上一个条件,如下所示(红色为要加的内容)
IF圆孔==YES /***加入此条件****/内部特征标识86
父项=39
倒圆角:
一般
元素名信息状态
--------------------------------
简单的已定义
常量,边链已定义
3References(已定义半径)值=圆孔直径已定义,c-O/H-Zn[
5RoundExtent可选的
6AttachType生成实体-特征有实体几何。
已定义
特征尺寸:
9Q/D9ou5]
d5=12.00R
ENDADD /***加入此条件****/
<7>关闭记事本,系统询问是否保存,单击"是",系统询问是否将程序反映到模型中,单击"是",如下图1-6所示,此时在菜单管理器中单击"enter
利用程序替换Proe组件中的元件
时间:
2011-02-26/分类:
插件/2个评论发表评论
1.在“工具”菜单下面选择“程序(Program)”来打开程序菜单。
2.在菜单管理器中选择“编辑设计(EditDesign)”来进入程序。
3.写入程序。
下面是一个例子,其中大部分都是Proe自动生存,我们自行编写的是蓝色加粗的字体部分。
VERSION5.0
REVNUM141
LISTINGFORASSEMBLYASM0001
INPUT
ASM_NAMESTRING
“WOULDYOULIKEASSEMBLY“AB”,“AC”,OR“CYL”?
”
/*上面的代码是再生模型的时候会产生用户交互提示用户输入AB,AC,CYL*/ENDINPUT
RELATIONS
IFASM_NAME==“AB”
VAR_NAME=“BLOCK_B.PRT”
ELSE
IFASM_NAME==“AC”
VAR_NAME=“BLOCK_C.PRT”
ELSE
IFASM_NAME==“CYL”
VAR_NAME=“CYL.PRT”
/*上面的代码是根据用户输入来设置Proe参数的值*/ENDIF
ENDIF
ENDIF
ENDRELATIONS
ADDFEATURE(initialnumber1)
INTERNALFEATUREID1
DATUMPLANE
NO.ELEMENTNAMEINFO
—————-————-
1FeatureNameDefined
2ConstraintsDefined
2.1Constraint#1Defined
2.1.1ConstrTypeXAxis
3FlipDatumDirDefined
4FitDefined
4.1FitTypeDefault
NAME=ASM_RIGHT
FEATUREISINLAYER(S):
01__ASM_ALL_DTM_PLN–OPERATION=SHOWN
01__ASM_DEF_DTM_PLN–OPERATION=SHOWN
ENDADD
ADDFEATURE(initialnumber2)
INTERNALFEATUREID3
DATUMPLANE
NO.ELEMENTNAMEINFO
—————-————-
1FeatureNameDefined
2ConstraintsDefined
2.1Constraint#1Defined
2.1.1ConstrTypeYAxis
3FlipDatumDirDefined
4FitDefined
4.1FitTypeDefault
NAME=ASM_TOP
FEATUREISINLAYER(S):
01__ASM_ALL_DTM_PLN–OPERATION=SHOWN
01__ASM_DEF_DTM_PLN–OPERATION=SHOWN
ENDADD
ADDFEATURE(initialnumber3)
INTERNALFEATUREID5
DATUMPLANE
NO.ELEMENTNAMEINFO
—————-————-
1FeatureNameDefined
2ConstraintsDefined
2.1Constraint#1Defined
2.1.1ConstrTypeZAxis
3FlipDatumDirDefined
4FitDefined
4.1FitTypeDefault
NAME=ASM_FRONT
FEATUREISINLAYER(S):
01__ASM_ALL_DTM_PLN–OPERATION=SHOWN
01__ASM_DEF_DTM_PLN–OPERATION=SHOWN
ENDADD
ADDFEATURE(initialnumber4)
INTERNALFEATUREID7
TYPE=COORDINATESYSTEM
NAME=ASM_DEF_CSYS
FEATUREISINLAYER(S):
05__ASM_ALL_DTM_CSYS–OPERATION=SHOWN
05__ASM_DEF_DTM_CSYS–OPERATION=SHOWN
ENDADD
ADDPARTBLOCK_A
INTERNALCOMPONENTID39
ENDADD
ADDCOMPONENT(VAR_NAME)/*该行代码是根据参数VAR_NAME值来选择装配的元件*/INTERNALCOMPONENTID40
PARENTS=39(#5)
ENDADD
MASSPROP
ENDMASSPROP
本文标签:
参数化设计
同
Interact
语句一样,
Choose
语句也是一次性的,再生之后,
Choose
语句消失。
Choose
语句语法如下:
Choose(Valuename)
Valuename:
一个字符串型变量。
使用
Choose
语句要先在
Input
„„E
ndInput
语句中加一个字符串型变量。
在加入
UDF
组后,做一次替换,再编辑程序,在组标记的
Add
„„
End
Add
语句段内就会多了一句:
“组用特征标识
(
名称
)
替换
:
1127(RRR)
”,找到这一句(如果没能成功替换,则不会有这
一句),记下这个数字,这个数字就是要被替换出来的那个组的特征
ID
。
然后在这个组标
记的
Add
„„
EndAdd
语句段后增加一个
Choose
语句,
Choose
的变量就是先前建的那个字
符串变量。
再生时,将此变量的值修改为“
1127
”
(刚才查到的
ID
)。
再生后模型里的
UDF
组就被替换了。
示例:
Input
„„
GpString
EndInput
„„
AddFeaturexxxx
„„
组用特征标识
(
名称
)
替换
:
1127(RRR)
组是由
UDFUUU
驱动的
ENDADD
Choose(GP)
(Input
段中设置变量组标记
Add
段中查找
ID
组标记段后用
Choose(
变量名
))
当
Choose
语句放在
Massprop...EndMassprop
语句前时,
Choose
语句执行后不消失
----
变成固定语句。
如此,如果模型中有多个
UDF
需要根据情况选择,则可在
Massprop
之
前连着放几个
Choose
语句。
而如果是一次性的操作,则可使用
Choose
语句的瞬时性。
第十一个,
Massprop
„„
EndMassprop
这个语句用于再生时计算质量属性。
计算后系统里的质量属性相关的参数变成最新值,
可在其它地方直接引用而不必在引用前再进行一次质量属性计算。
它也是一个语句段,
其语
法如下:
Massprop
Partpartname1
Partpartname2
„„
Assemblyasmname1
Assemblyasmnmae2
„„
EndMassprop
(各零件
/
组件名可不用带扩展名)
在
Massprop
语句段中,可嵌入
IF
„„
EndIf
语句。
好,前面把十一个词的意思都讲完了。
再看一下这些词的分类与组合规则。
根据它们在程序中的保留时间,可分为固定语句和瞬时语句。
固定语句一旦写到程序
里,除非再做编辑人为删除它,它一直存在,每次再生都起作用。
瞬时语句是一次性的,再
生之后,就从程序里消失了。
瞬时语句有
Interact
和
Modify
共二个。
Choose
语句则比较
特殊,瞬时性与固定性兼具,当它放在
Massprop......EndMassprop
语句段之前时,它是
固定语句,当它放在
Add......End
Add
语句之前时,它是瞬时语句。
其它的都是固定语句。
根据它们在程序中的地位,可把这十一个词分成三种:
段语句、独立语句、辅助语句。
段语句用来构成一个程序块,一个块实现一个独立的功能,如输入变量、设置关系、
增加一个特征(元件)、向一个元件传递参数等等。
段语句包括:
Input
„„
EndInput
、
Relations
„„
End
Relations
、
Add
„„
End
Add
、
Execute
„„
End
Execute
、
Massprop
„„
EndMassprop
共五个。
独立语句,一个语句实现一个独立的功能,包括:
Interact
、
Choose
,共
2
个。
辅助语句不能单独使用,必须与其它语句一起使用,包括:
If
„„
EndIf
、
Lookup_inst
、
Suppressed
、
Modify
,共
4
个。
独立语句与段语句是平等的,不能嵌入段语句中使用,但辅助语句可以嵌入段语句中
使用。
IF
语句可嵌入所有的段语句中使用,也可将段语句
(
仅
Add
和
Execute)
和独立语句嵌
入
IF
语句中使用。
Lookup_inst
、
Suppressed
、
Modify
必须嵌入
Add
语句中使用。
Interact
可放在任何可放
Add
语句的地方。
Choose
语句应紧跟在组标记的
Add
语句之
后。
在程序中,
首先是
Part
及版本信息。
接下来是程序的内容,
以
Input
打头,
Relations
继后,
Massprop
结尾,在
Relations
与
Massprop
中间,是其它各种语句(段)的按上述规
则的组合。
实际上,还有一个注释语句也应该算一个语句。
但它不影响模型变化。
故前面未将其
列入基本词汇中。
注释语句以斜杠加星号打头,即以“
/*
”打头,后面跟注释内容。
注释语句仅用在
Relations
„„
EndRelations
语句和
AddFeather
„„
EndAdd
语句
中。
在
Relations
语句中,它可在任何位置,在
AddFeather
„„
EndAddx
语句中,它必须
紧跟在第一行
AddFeather
之后作为第二行。
注释语句加入的内容,不直接影响模型,也不会在模型中显示。
在编辑关系的编辑器
中,可以看到加在
Relations
语句中的注释,在特征信息中可以看到加在
Add
Feather
„„
EndAdd
语句中的注释。
注释语句不是一次性的,再生之后继续存在于程序中。
再看一下设计来源。
第一次从“编辑程序”进入一个模型的程序编辑器时,系统是直接打开编辑器的,同
时新建一个名字为
part
名后缀为
pls
的文本文件(可在当前工作目录下找到)。
编辑完后
关闭编辑器,系统会提示是否将程序所做的修改体现到模型中,也即是否再生。
选“是”的
话,模型变更,同时
pls
文件从磁盘上消失。
选“否”的话,模型不变更,程序内容被保存
在
pls
文件中,
pls
文件继续保留于磁盘上。
实际上,每次编辑程序时,系统都会查找是否存在与零件(组件)同名的
pls
文件,
如果存在,则在编辑程序时会弹出
“设计来源”菜单,
要求选择
“从模型”还是“从文件”。
选“从文件”的话,系统直接将已有的
pls
文件调入编辑器进行编辑。
选“从模型”的话,
系统将根据当前模型构建新的
pls
文件,
同时会提示是否替换掉已经存在的
pls
文件,
选
“是”
的话,替换掉原
pls
文件并将新
pls
文件调入编辑器,选“否”的话,中止操作。
编辑结束后会提示再生,选“是”将弹出“得到输入”菜单。
此菜单选择程序里的输
入变量的来源。
有三种:
Current
Vals(
当前值
)
、
Enter(
输入
)
、
Read
File(
读取文件
)
。
如
是第一次编辑程序,
应选
“输入”,之后系统会列出
Input
语句中的所有变量名并加上复选
框,
选取需要输入新值的变量后,
系统会一个一个的提示你输入每个变量的值。
如不是第一
次编辑了,输入变量可能已经都有正确的值了,就可选“当前值”,这样就直接跳过输入,
直接进入再生。
“读取文件”是先建一个文本文件(如
A.txt
),此文件由一行行的赋值语
句组成,示例:
A=20.0
B=56
C=
”
txt
”
D=Yes
k=No
N=9
„„
选“读取文件”后,系统会要求输入文件名,输入
:
A.txt
,则系统到
A.txt
这个文件
中去查找与输入变量同名的变量,
并将
A.txt
文件中的同名变量的值赋给输入变量。
比如程
序里
Input
段有
ANumber,BString,DYes-No,MNumber
共四个变量,用“读取文件”到
A.txt
里找,找完的结果是
A=20.0,B=
空
D=yes,M=0.0
。
这里要注意的是:
如果输入变量在文件里找不到同名变量,则使用当前值或系统默认
值(见前文)。
文件里多出来的变量,系统是不会使用的。
程序里,各变量是不分大小写的
(写成小写的话,下次进入编辑器会自动变成大写的),但在文本文件里,是分大小写的,
同时,在查找时,也是分大小写的。
因此,程序里有变量
B
,文本文件里有变量
b
但没变量
B
的话,变量
B
的值将使用当前值或默认值。
由于以上的特点,我们可以用一个文本文件去管理多个模型的输入变量。
再看一下变量的删除。
Input
语段里的变量,
再生之后将进入参数表
(如果变量名与某个尺寸的尺寸名同名的
话,则此变量将不在参数表里显示)。
此后如果输入新值,可以在参数表里看到其新值。
如
果在程序里将先前已经赋过值的变量删除了或改名了,
所有调用这个变量的地方将继续调用
参数表里的那个同名参数。
如果要将一个
Input
语段里的变量删除并清除对模型的影响,
应
先在程序里将其删除,然后在参数表里删除其同名变量。
一个细节,关于修改尺寸。
到现在,如果我们要在程序中修改某个尺寸的值。
可以有两个办法实现:
A.
在
Relations
语段修改。
B.
在
Add
段的相应尺寸后用
Modify
语句修改。
以上两种改法的区别:
A.
关系中修改的,
再生后将在关系列表里加一条关系,
这个尺寸变成由关系控制的了,
以后不能直接在模型中修改它的尺寸值了,必须进入关系编辑器或程序编辑器里才能修改。
B.Modify
语句修改的,是一次性生效的。
再生之后,任何时候都可以直接在模型里修
改那个尺寸的值。
1234567890ABCDEFGHIJKLMNabcdefghijklmn!
@#$%^&&*()_+.一三五七九贰肆陆扒拾,。
青玉案元夕东风夜放花千树更吹落星如雨宝马雕车香满路凤箫声动玉壶光转一夜鱼龙舞蛾儿雪柳黄金缕笑语盈盈暗香去众里寻他千XX暮然回首那人却在灯火阑珊处
窗体顶端
窗体底端
你可能喜欢
ProE高级技巧设计教程发布几何proe自顶向下设计ProE教程ProE二次开发c语言程序设计
ProE高级技巧(不传之秘笈)
40页
免费
ProE高级技巧
40页
免费
ProE的高级曲面技巧教程
31页
2财富值
ProE高级技巧(经典)
40页
免费
ProE的秘密(高级技巧)
暂无评价
2页
免费
更多与“ProE高级技巧”相关的文档>>
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ProE 程序 编程 基础教程
![提示](https://static.bdocx.com/images/bang_tan.gif)