图2 创建宏
2.运行宏
首先选择宏,因为宏可保存于内部文件,也可保存于外部文件,所以首先在宏窗口的左下角的下拉框中选择是内部文件还是外部文件。如果是内部文件,则在宏窗口的文本框中会显示已创建的一系列宏,选择需要的宏,按下Run按钮,宏结果就可显示于窗口内。如果是外部文件,则选择宏窗口左侧的Select按钮,选择宏所在的文件目录,按下Run按钮,同样,宏结果也显示于窗口内。
四、宏在CATIA中的应用
1.利用宏输入数据
宏在CATIA中的应用非常广泛,它与CATIA的内核及内部函数的调用集成得很好。例如,在一个部件上打一系列的孔,从装配件上提取材料清单等等。在实际工作中,飞机的外形数据存于Excel文件中,利用宏来读取Excel文件中的数据。如果数据以其他文件格式保存,如dat文件格式,可转换为Excel文件格式,或者直接更改代码,从其他文件中直接读取。代码如下:
Language="VBSCRIPT" '因为本操作系统是 windows2000,所以 此宏是用'vbscript编 写的
Sub CATMain()
Dim partDocument1 As Document '创建文件
Set partDocument1 = CATIA.ActiveDocument
Dim part1 As Part '创建部件
Set part1 = partDocument1.Part
dim excel as object ' 调用excel对象
set excel=getobject("d: \外形数据.xls") '飞机外形数据存于d: \外形数据.xls文'件下
'利用循环,读入excel中的数据。此数据为飞机外形上的一些点的坐标值,这些'值分别存于excel的表单1中的B、C、D中,把这些值分别赋给变量x,y,z
i=1
do while x<>””
x=excel.worksheets(1).cells.range("B" & trim(cstr(i))).value
y=excel.worksheets(1).cells.range("C" & trim(cstr(i))).value
z=excel.worksheets(1).cells.range("D" & trim(cstr(i))).value
·
·
·
'定义点坐标
Dim hybridShapePointCoord1 As HybridShapePointCoord
Set hybridShapePointCoord1 = hybridShapeFactory1.AddNewPointCoord(x,y,z)
·
·
·
'输入点
hybridBody1.AppendHybridShape hybridShapePointCoord1
part1.InWorkObject = hybridShapePointCoord1
i=i+1
loop
part1.Update
End sub
按照创建和运行宏的步骤,把以上代码输入到自定义的一个宏的代码区中,保存并运行。这样,“外形数据.xls”文件中的所有飞机外形数据都被读取出来。CATIA系统为这些点自动编号,设计人员可从当前界面左侧最下一项Open Body.1的树形扩展目录中看到所有的点。
图3就是用此宏输入的机翼上的点。保存此CATIA文件为jiyi.CATpart。
图3 宏输入数据
2.利用宏处理数据
为了得到飞机的外形,我们需要对已输入的点进行处理,即把这些点用Spline命令连成若干条样条曲线,再对这些样条曲线进行处理。在这项任务中,把点连成线是一项繁重的重复性工作,而用宏可以很快地自动完成。宏代码如下:
Language="VBSCRIPT"
Sub CATMain()
'宏初始化
Dim documents1 As Documents
Set documents1 = CATIA.Documents
Dim partDocument1 As Document
Set partDocument1 = documents1.Item("art1.CATPart")
·
·
·
'根据飞机外形要求,设置两个嵌套循环,内部循环完成一条样条曲线的点与点 '的连接,外部循环完成多条样条曲线的连接。
dim j as integer
for j=1 to const1
'样条曲线的定义和设置
Dim hybridShapeSpline1 As HybridShapeSpline
Set hybridShapeSpline1 = hybridShapeFactory1.AddNewSpline()
hybridShapeSpline1.SetSplineType 0
hybridShapeSpline1.SetClosing 1
·
·
·
dim i as integer
for i=1 to const2
Dim hybridShapePointCoord1 As HybridShape
Set hybridShapePointCoord1= hybridShapes1.Item(i+const2*(j-1))
·
·
·
hybridShapeSpline1.AddControlPoint hybridShapeControlPoint1
next
hybridBody1.AppendHybridShape hybridShapeSpline1
part1.InWorkObject = hybridShapeSpline1
part1.Update
next
part1.Update
End Sub
同样,按照创建和运行宏的步骤,把以上代码输入到自定义的另一宏的代码区中,保存并运行,结果如图4所示。
CATIA源于航空工业,是业界无可争辩的领袖.以其精确安全,可靠性满足商业 、 防御和航空领域各种应用的需要,CATIA引以自豪的几个主要项目(例如波音777,737)均成功地用100%数字模型无纸加工完成。这在航空工业中从来没有过。CATIA与STEP完全兼容,为航空提供的解决方案,包括管道系统(Piping and Tabling),组装、结构、内部负荷分析(业界第一)、电路布线和综合利用。
这一巨额投资,产生了戴姆勒克莱斯勒公司称之为DMAPS的系统,即数字化制造过程系统(the Digital Manufacturing Process System )。 DAMPS,将先进制造工程与同一个数据库结合为一体象设计和汽车工程那样。在零件的设计过程中零件的几何细节特征、表面蚀刻设计以及零部件的结构分析都与制造零件所需的所有步骤无缝地连结在一起,其中包括:焊接研究、冲压模具设计、装配工具、检验及车间设备规划.....等。DAMPS中的可视零部件是所有参数化的,这样任一步骤的设计变化都会自动地反映到其它的所有步骤上。
使用DMAPS,用户可以用图形化的方法表示制造过程和操作,以制造和装配这些零部件。通过仿真来验证装配系统是很重要的。戴姆勒克莱斯勒公司使用了AutoMod:即由自动仿真设计公司(Salt Lake City,UT)开发的一种离散事件仿真工具以验证系统的生产循环周期和生产能力。通过Dassault公司可以得到Deneb Robotics公司(Trog,MI)开发的QUEST软件,由于它能利用与产品模型直接相关的过程参数,来模拟过程流、设施设计及生产能力,它不但可以成为DMAPS战略的一部分,而且将与CATIA紧密集成起来。另一项Deneb的仿真技术是IGRIP,这项技术将离线式可编程机器手工作单元的设备运行、运动学与I/O逻辑电路结合为一体。
戴姆勒克莱斯勒公司的CATIA数据管道技术的最新发展是CPGA(控制程序生成与分析)。使用由RockwellAutomation公司(Costa Mesa,CA)、Dasssult公司、Deneb公司、Progressive Tools and Industries公司共同开发的CPGA技术,戴姆勒克莱斯勒公司不仅能够通过计算机设计产品,而且还能够自动生成操纵产品加工工具所必需的控制代码与机器诊断程序。这一能力,不但不用手工编写每一个加工单元所需的成千上万行代码,还可能将需要花费几年时间的制造过程变成仅在几周到几个月时间就能完成的事。