21
CAA 及及及及 及及 及及及 [及及] 本本本 Dassault Systemes CAA(Component Application Architecture)本本本本本本本本本本本本本本,本本 CAA 本 本 本 、。 CAA 本本本本本本本本本本本本本 [及及及] 本本本 、( COMCAA RADE 一、 CAA 及及 Component Application Architecture (CAA) 本 Dassault Systemes本本本本本本本 本本本本Dassault Systemes本 PPR HUB本 ,。

CAA及其应用 - read.pudn.comread.pudn.com/downloads50/sourcecode/graph/171498/…  · Web viewCATIA V5 :产品的数字 ... Microsoft是COM和OLE 的先祖,基于此种技术的应用软件,如Microsoft

  • Upload
    trananh

  • View
    254

  • Download
    4

Embed Size (px)

Citation preview

Page 1: CAA及其应用 - read.pudn.comread.pudn.com/downloads50/sourcecode/graph/171498/…  · Web viewCATIA V5 :产品的数字 ... Microsoft是COM和OLE 的先祖,基于此种技术的应用软件,如Microsoft

CAA及其应用第一飞机设计研究院 刘俊堂

[ 摘 要 ] 本 文 就 Dassault Systemes 的 CAA(Component Application Architecture)产品作了比较全面而详尽的介绍,包括 CAA 产品的构架、软件包的构成和选购。最后对 CAA 的安装和应用也作了简要介绍。[关键词] 面向对象程序设计、组件对象模型(COM)CAA RADE

一、 CAA 简介Component Application Architecture (CAA) 组件应用架构,是

Dassault Systemes产品扩展和客户进行二次开发的强有力的工具。以 为商标的Dassault Systemes已形成六大支柱产品,通过PPR HUB进行集成,对产品的生命周期进行全方位管理。

图1 Dassault Systemes产品结构逻辑关系这六大产品包括:

Page 2: CAA及其应用 - read.pudn.comread.pudn.com/downloads50/sourcecode/graph/171498/…  · Web viewCATIA V5 :产品的数字 ... Microsoft是COM和OLE 的先祖,基于此种技术的应用软件,如Microsoft

CATIA V5:产品的数字化设计和数字样机技术。ENOVIA:产品数据管理和协同工作环境。DELMIA:数字化工厂,包括工艺设计、资源控制、工厂布置和生产模拟等。另外还有SOLIDWORKS、SMARTTEAM也可进行数字化设计和管理,由用户

情况决定。特别要提的是SPATIAL,专门进行CAA架构的开发和研究。PPR HUB是Dassault Systemes 3D产品生命周期管理(Product

Lifecycle Management ,PLM)解决方案的核心,确保CATIA、ENOVIA、DELMIA三者之间的整合。

Dassault Systemes的这套解决方案得利于开放式,可扩展的模块化开发架构 CAA,使得全球诸多开发商可以参与Dassault Systemes的研发。

对客户而言,CAA可以进行从简单到复杂的二次开发工作,而且和原系统的结合非常紧密,如果没有特别的说明,无法把客户所研发的功能从原系统中区分出来,这非常有利于用户的使用和集成。

CAA的实现,是通过提供的快速应用研发环境RADE和不同的API接口程序来完成的。

快速应用研发环境Rapid Application Development

Environment(RADE)是一个可视化的集成开发环境,它提供完整的编程工具组。实际上RADE以Microsoft Visual Studio VC++为载体,在VC++环境中增加了CAA的开发工具。

API提供了操作各种对象的方法、工具和接口。Dassault Systemes提供的CAA产品包括如下内容: CAA RADE 快速开发环境,基于Microsoft Visual Studio

Page 3: CAA及其应用 - read.pudn.comread.pudn.com/downloads50/sourcecode/graph/171498/…  · Web viewCATIA V5 :产品的数字 ... Microsoft是COM和OLE 的先祖,基于此种技术的应用软件,如Microsoft

CAA CATIA V5 API, CATIA V5应用开发工具 CAA ENOVIA LCA V5 API,ENOVIA LCA应用开发工具 CAA DELMIA V5 API,DELMIA V5应用开发工具 CAA ENOVIA PORTAL V5 API ,ENOVIA PORTAL V5应用开发工具

二、 CAA架构在 软 件 开 发 领 域 , 使 用 面 向 对 象 的 程 序 设 计 ( OOP:Object-Oriented-

Programming)已经成为软件开发设计的主流,它为软件的发展带来了很多好处:可复用性、抽象性、封装性等。软件专家把软件开发看作是对象的组合。

面向对象程序设计是一种程序设计方法,而建立在面向对象程序设计基础之上的组件对象模型(COM)和对象的连接和嵌入(OLE)技术,使程序设计更加容易且趋于标准化,使程序的使用更加简洁明了。Microsoft 是 COM 和 OLE 的先祖,基于此种技术的应用软件,如 Microsoft Word,Execl,Access 得到广泛地使用和承认,而且许多应用软件也是基于这种技术,CAA 就是基于这种技术的 Windows 应用软件。

Page 4: CAA及其应用 - read.pudn.comread.pudn.com/downloads50/sourcecode/graph/171498/…  · Web viewCATIA V5 :产品的数字 ... Microsoft是COM和OLE 的先祖,基于此种技术的应用软件,如Microsoft

图 1

CAA 产品的架构可用图 1表示。它全面反映了 Dassault Systemes几大产品之间的关系。在 CAA 架构的支撑之下,Dassault Systemes 系统可像搭积木一样建立起来,这种结构非常适宜于系统的壮大和发展。表 1列出了在 CATIA

V5 应用方面为 Dassault Systemes 开发应用程序的部分公司。

表 1 CATIA V5软件合作伙伴

序号 合作伙伴 产品1 CADDAM Systems company Inc. Helix Integration/Environment V1R4

CAA V5 Based/Helix Direct Interface (HDI)CAA V5 Based

2 Dimensional Control Systems Inc. 3DCS Analyst CAA V5 Based/3DCS

Page 5: CAA及其应用 - read.pudn.comread.pudn.com/downloads50/sourcecode/graph/171498/…  · Web viewCATIA V5 :产品的数字 ... Microsoft是COM和OLE 的先祖,基于此种技术的应用软件,如Microsoft

Designer CAA V5 Based3 Trace Parts Trace Parts CAA V5 Based4 T-Systems ITS GmbH VAMOS CAA V5 Based5 Metalsoft Inc. Fabriwin CAA V5 Based6 Mechanical Dynamics Inc. Dynamic Designer CAA V5 Based7 LMS International LMS Virtual.Lab Acoustics

LMS Virtual.Lab Noise and VibrationLMS Virtual.Lab DurabilityLMS Virtual.Lab Motion

8 ICEMCFD ICEM CFD Hexa CAA V5 Based9 AIKOKU ALPHA

ENGINEERING CORP.AIKOKU Post for 4 axis CAA V5 Based/ AIKOKU Post for 5 axis CAA V5 Based

10 CENIT AG Systemhaus CUT4AXES CAA V5 Based11 EADS Matra Datavision EUCLID3 Connectivity CAA V5 Based12 ZEH Software ZEHSever CAA V5 Based13 Infrastructure Interface COM/VDAFS CAA V5 Based

在商业运作方面,与 Dassault Systemes 系统的其产品一样,CAA 也被划分为软件包(Configuration)和模块(Product),用户在购置 CAA时要根据需要选择合适的配置和产品。目前CAA 有五个配置软件包: CAA-Multi-workspace Application Building(简称ABC)

CAA 应用的基本配置.

CAA-C++ Extended Development(简称 CDC)提供与 C++共存的的开发环境,即对 C++开发环境的客户化,用户除可使用C++开发环境的所有工具外,还可使用 CAA 提供的独特的开发工具.可用于CATIA 和 ENOVIA 的二次开发.

CAA-C++ Base Development(简称 CDV)与 CDC 类似 ,但规模小 ,针对 中小市场 , 可 有限地运用 于 CATIA V5 和

Page 6: CAA及其应用 - read.pudn.comread.pudn.com/downloads50/sourcecode/graph/171498/…  · Web viewCATIA V5 :产品的数字 ... Microsoft是COM和OLE 的先祖,基于此种技术的应用软件,如Microsoft

ENOVIA LCA 的客户化工作.

CAA-Java Base Development(简称 JDV)运行于 JAVA 开发环境,适用于 ENOVIA LCA 客户端的定制.

CAA-Legacy Data Integration Development Configuration(简称 LDC)提供数据接口工具,可使用户继承原有的数据.

CAA 提供的产品(模块)包括:

CAA-C++ API Documentation Generator(CDG).

CAA-C++ Source Checker(CSC)

CAA-CAA Data Model Customizer(DMC)

CAA-Java UnitTest Manager(JUT)

CAA-Multi-Worksoace Application Builder(MAB)

CAA-Teamwork Release Manager(TRM)

CAA-C++ Interactive Dashboard(CID)

CAA-C++ Unit Test Manager(CUT)

CAA-Java Interactive Dashboard(JID)

CAA-Web Application Generator for Legacy Database(LWG)

CAA-Source Code Manager(SCM)

Page 7: CAA及其应用 - read.pudn.comread.pudn.com/downloads50/sourcecode/graph/171498/…  · Web viewCATIA V5 :产品的数字 ... Microsoft是COM和OLE 的先祖,基于此种技术的应用软件,如Microsoft

图 2

图 3表示了 CAA 产品配置及其所包含的产品的矩阵图.这里对各个模块的功能不再作详尽的解释,如果读者需要可参考相关资料或访问关于 CAA 的网站.

三、 CAA 安装CAA 的安装包括两大部分,一是 Dassault Systemes相关应用软件的安装,

如 CATIA V5、ENOVIA;二是 CAA 本身的安装。在安装 CAA 以前,要确认 Dassault Systemes 应用和 CAA版本的一致性,

甚至要考虑二者补丁的一致性,否则将导致 CAA 无法使用。下面以 Dassault

Systemes 的 CATIA V5R9 GA版应用程序和 CAA 的 CDC 安装为例,简要介绍

Page 8: CAA及其应用 - read.pudn.comread.pudn.com/downloads50/sourcecode/graph/171498/…  · Web viewCATIA V5 :产品的数字 ... Microsoft是COM和OLE 的先祖,基于此种技术的应用软件,如Microsoft

CAA 的安装过程。假设用户购买了 CATIA V5R9 和 CAA CDC 的使用权,并拥有相应的产品

License。按照下面的步骤安装 CAA 一般就可使用 CAA 了: 安装 CATIA V5R9 GA 版,如果以前已经安装过,可忽略这一步; 安装 CATIA V5R9 API(此产品属 CAA范畴),API自动安装在 CATIA 所

在的目录下,由于 CAA RADE 不识别带有空格的目录名,所以在先前一步安装 CATIA时,一定要自定义安装位置,且目录名不能包含空格。

Microsoft Visual Studio V6.0 的安装; CAA RADE 的 安 装 , 在 CAA RADE 安 装前,必须安 装 Microsoft Visual

Studio V6.0,同时注意不要把 CAA RADE 安装在 CATIA 的安装目录下,安装路径不能有空格。

通过以上四步,完成了 CAA 的安装,但要使用 CAA,必须进行 RADE 产品的认证和环境的设置。

RADE 产品的认证,通过命令启动 RADE Tools Licensing:C:>$RADE_INSTALLATION_PATH$/intel_a/code/bin/CATVBTLicenser.exe

这里$RADE_INSTALLATION_PATH$为 RADE的安装路径。

Page 9: CAA及其应用 - read.pudn.comread.pudn.com/downloads50/sourcecode/graph/171498/…  · Web viewCATIA V5 :产品的数字 ... Microsoft是COM和OLE 的先祖,基于此种技术的应用软件,如Microsoft

图 2 RADE License 配置窗口选择有效的 License,确定即可。 安装联机帮助,以便在 RADE 开发环境下提供 CAA帮助。

C:>$RADE_INSTALLATION_PATH$/intel_a/code/bin/ CATVBTSetup.exe

这里$RADE_INSTALLATION_PATH$为 RADE的安装路径。

Page 10: CAA及其应用 - read.pudn.comread.pudn.com/downloads50/sourcecode/graph/171498/…  · Web viewCATIA V5 :产品的数字 ... Microsoft是COM和OLE 的先祖,基于此种技术的应用软件,如Microsoft

选择Documentation,指定帮助文档的路径(在 CATIA 安装目录下)。

四、 CAA 启动下面简要介绍一下 CAA RADE 的使用流程。 启动Microsoft Visual C++,选择 Tools->Customize…,在弹出的菜单上选择

Page 11: CAA及其应用 - read.pudn.comread.pudn.com/downloads50/sourcecode/graph/171498/…  · Web viewCATIA V5 :产品的数字 ... Microsoft是COM和OLE 的先祖,基于此种技术的应用软件,如Microsoft

Add-ins and Macro Files,选中有关的插接件,关闭窗口,退出 Microsoft Visual C+

+。这一步骤在首次使用 CAA RADE必须进行。

重新启动Microsoft Visual C++,出现 CAA RADE 的帮助窗口。在菜单栏上增加了两个新的菜单项,CAAV5 Workspace 和 Source Code Manager,这是

Page 12: CAA及其应用 - read.pudn.comread.pudn.com/downloads50/sourcecode/graph/171498/…  · Web viewCATIA V5 :产品的数字 ... Microsoft是COM和OLE 的先祖,基于此种技术的应用软件,如Microsoft

CAA RADE添加的菜单项。

另外,展开其他菜单项,如 Project,可以到看以 图标打头的菜单项,也属于 CAA RADE 的菜单项。到此为止,我们就可以使用 CAA RADE 来开发 CATIA

V5R9 的用户客户化程序了。

五、 CAA 应用范例

Page 13: CAA及其应用 - read.pudn.comread.pudn.com/downloads50/sourcecode/graph/171498/…  · Web viewCATIA V5 :产品的数字 ... Microsoft是COM和OLE 的先祖,基于此种技术的应用软件,如Microsoft

为了帮助用户熟悉 CAA RADE 的开发环境和工具,Dassault Systemes 各个应用系统各自提供了许多应用范例,如 CATIA V5R9 提供了与开发 CATIA 有关的范例,用户甚至可对范例稍加修改而变成自己的产品。在安装 CATIA API时,应用范例被安装在 CATIA目录下的 CAADoc 文件夹中。所有范例的文件夹以 .edu 结尾。为了防止原始范例文档的破坏,可以把 CAADoc 文件夹的用例拷贝到其他地方(比如,把 CAASystem.edu拷贝到 E:\V5R9\UsercaseWorkspace),并以此作为目标进行编程练习。

启动 Microsoft Visual C++,选择 File菜单下的 Open CAA V5 Workspace

命令。

a、 在 Open with 选项列表中选择Mkmk,Mkmk 是 CAA RADE 提供的连编命令。b、在 Workspace Directory 文本框中指定范例所在的文件夹,如本例的 E:\V5R9\

UsercaseWorkspace。CAA RADE 中的 Workspace 是 Project存在的地方。c、在 Toollevel 选项列表中选择V5R9_T09。点击OK,RADE 进行关于本用例的初始化工作,显示相关窗口和信息。

Page 14: CAA及其应用 - read.pudn.comread.pudn.com/downloads50/sourcecode/graph/171498/…  · Web viewCATIA V5 :产品的数字 ... Microsoft是COM和OLE 的先祖,基于此种技术的应用软件,如Microsoft

因为在新建的 Workspace 中不存在项目 Project,CAA RADE将为用户生成一个,并给以提示。

选择模块Project 生成之后,CAA RADE 要求选择项目所包含的模块,这里我们选

择 CAAsysCallBack.m.

Page 15: CAA及其应用 - read.pudn.comread.pudn.com/downloads50/sourcecode/graph/171498/…  · Web viewCATIA V5 :产品的数字 ... Microsoft是COM和OLE 的先祖,基于此种技术的应用软件,如Microsoft

点击 OK,RADE 提示用户需连接的资源库,RADE 称其为 prerequisite

workspace。这是可想而知的,因为范例及其用户编写的程序,要在 Dassault

Systemes 应用系统环境下运行,必须把 Dassault Systemes 资源和用户的客户化程序整合在一起。

点击OK,RADE显示范例程序的结构,包括类和文件。

Page 16: CAA及其应用 - read.pudn.comread.pudn.com/downloads50/sourcecode/graph/171498/…  · Web viewCATIA V5 :产品的数字 ... Microsoft是COM和OLE 的先祖,基于此种技术的应用软件,如Microsoft

定义 Prerequisite Workspace , 在 CAAV5 Workspace 菜单 中 选择菜单项Locate Prerequisite Workspace…。

Page 17: CAA及其应用 - read.pudn.comread.pudn.com/downloads50/sourcecode/graph/171498/…  · Web viewCATIA V5 :产品的数字 ... Microsoft是COM和OLE 的先祖,基于此种技术的应用软件,如Microsoft

a、选择Mode 下 Access prerequisites from their origin location。b、 在 Origin for prerequisite Frameworks 下 , 把 CATIA 的 资 源添加 为

Prerequisite Workspace。方法是点击Add…。点击OK,RADE调用相关资源。

程 序 的 连 编 , 选择 Build 菜单 下 的 mkmk 命令。 在 出 现 的 Code

Builder(mkmk)窗口指定相关选项,见下图。

点击OK,RADE 开始建立连编代码。

Page 18: CAA及其应用 - read.pudn.comread.pudn.com/downloads50/sourcecode/graph/171498/…  · Web viewCATIA V5 :产品的数字 ... Microsoft是COM和OLE 的先祖,基于此种技术的应用软件,如Microsoft

建立 Debug时运行程序,在 CAAV5 Workspace菜单下,选择 Create/Update

Runtime View…,在 Create RunTimeView 中选择 all.

点击OK,RADE弹出相关窗口。

把 CAASysCallback.m 所在的 Project 设为激活的状态,Class View或 File

View右键 CAASysCallback.m classes。

Page 19: CAA及其应用 - read.pudn.comread.pudn.com/downloads50/sourcecode/graph/171498/…  · Web viewCATIA V5 :产品的数字 ... Microsoft是COM和OLE 的先祖,基于此种技术的应用软件,如Microsoft

选择 Set as Active Project。

运行范例,指定范例程 序 可执行代码的 地址。 在 Project 菜单 中 选择Settings…,RADE弹出 Project Settings窗口。在 Debug 下指定范例程序可执行代码的地址。点击OK。

在 Build菜单下,点击 Execute CAASysCallBack.exe运行程序。

Page 20: CAA及其应用 - read.pudn.comread.pudn.com/downloads50/sourcecode/graph/171498/…  · Web viewCATIA V5 :产品的数字 ... Microsoft是COM和OLE 的先祖,基于此种技术的应用软件,如Microsoft

六、 结论.

Component Application Architecture (CAA) 组件应用架构,是第三方产品集成和一般客户进行客户化、个性化设计的强有力的工具,利用 CAA 完全可以实现 Dassault Systemes 应用的深层次开发。但是,由于 Dassault Systemes 应用本身的复杂性和 CAA 所涉及的深层次内容,利用 CAA 进行二次开发必然具有一定的复杂性和难度,用户在熟练掌握 Dassault Systemes 应用系统的同时,还必须具备软件开发的知识和能力。