一种基于CATIA_CAA三维工装属性规范设计方法

时间:2022-06-15 06:31:29

一种基于CATIA_CAA三维工装属性规范设计方法

【摘 要】 针对在CATIA 中使用人工填加工装属性时效率低、易漏、易错等问题,提出了一种在工装设计中进行自动规范的方法。该方法基于CAA,以CATIA 为平台,Visual C ++为编程工具,能够自动快速准确进行工装属性的填加。从而解决了以往从提取订货单信息到填加工装信息过程繁琐易错的难题。提高了工作效率,为工装设计部门对规范工装属性提供了帮助。

【关键词】 三维工装设计 规范性设计 CATIA CAA

【Abstract】 For the use of artificial fill in CATIA Machining mounted low efficiency properties, leaky, error-prone and other issues, tooling design proposes a method for automatic specification. The method is based CAA, to CATIA as a platform, Visual C + + as the programming tool for fast and accurate tooling can automatically fill attributes plus. Thus solves the orders from extracting information processing equipment to fill in the information process cumbersome and error-prone problem. Improve work efficiency, tooling design department of the specification attribute provides tooling to help.

【Key words】 3D tooling design Normative Design CATIA CAA

1 引言

随着数字化制造不断的推广和深化,越来越多的问题也随之突显出来。其中,在无纸化模式推行的过程中,保证三维工装设计的规范化问题显得尤为重要。在传统的工装设计中,零部件排序随意,命名不规范,审签栏位置不统一,标题栏信息不完整,工装属性与订货单不一致。这些问题都严重制约了数字化技术在飞机制造中的运用[1]。

针对以上问题,提出一种基于CATIA/CAA的工装自动规范技术,并以工装属性填加为例进行说明。传统的工装属性填加主要由工艺人员根据订货单手工填加,工作量大、过程繁琐,而且容易出错,无法保证工装属性的规范性。基于CATIA/CAA的工装属性自动规范设计方法,是通过辅助软件将订货单与工装数模关联起来,使CATIA 能够自动调用订货单的数据,并将其填加到对应的工装属性栏中,实现高效、准确的产品数模属性填加。三维工装设计的规范性的保证,以及信息关联技术的采用,规范了三维工装的建立方法,确保了三维工装信息的规范性,同时提高了工装设计效率,避免了人为操作错误。

2 开发环境介绍

2.1 CATIA 二次开发介绍

CATIA V5版本是由法国达索(Dassault System)公司和IBM(International Business Machines Corporation)公司共同打造的一款CAD/CAE/CAM一体化软件。该软件广泛应用于航空、汽车等行业,特别是航空主机厂均采用CATIA软件进行产品的描述、工装设计等。伴随着CATIA软件在我国汽车、航空航天等制造领域的广泛使用,越来越多的企业在应用过程中相继提出需要本地化、二次开发的需要。在一些常用CAD、CAM系统的基础上开发的虚拟制造系统包括设计参数化、加工仿真、虚拟装配、工艺信息管理和网络化等模块。如若可以把其中某些功能转接到CATIA软件中,或者将CATIA软件现有的一些模块本地化,将给CATIA软件的发展创造更广阔的空间。

2.2 CAA技术

Component Application Architecture(CAA)组件应用架构,有效的解决了维护、管理、扩展的困难。大量使用最新计算机技术和标准以及软件工程技术,使得其具有与众不同的鲜明特点:数据结构单一,各个模块全相关,某些模块双相关,拥有强大的应用扩展能力。CAA方法进行二次开发使用的核心思想是面向对象的程序设计(Object Oriented Programming, OOP)。同时,由于基于这样一种思想的两大技术――对象的联接和嵌入(Object Linked Embedded)以及组件对象模型(Component Object Model)的应用,使得开发的过程得以轻松实现标准化,大大提高了程序的易用性和可扩展性。CAA软件的整体结构布局如图1所示,它从宏观上体现了达索各主要开发产品之间的内在联系[2]。

2.3 CAA的实现

CAA的实现是依据提供的快速应用研发环境RADE和不同的API接口程序来完成的。快速应用研发环境Rapid Application Development Environment(RADE)是一个集成的可视化开发环境,它提供给用户比较完整的编程工具组。实际上RADE以Microsoft Visual Studio VC++为载体,在VC++环境中嵌入了CAA的开发工具。API提供了操作各种对象的接口、工具和方法。利用CAA可以实现从简单到复杂的二次开发工作,而且开发后的结果和原系统的结合非常紧密,如果没有特别说明,无法把用户所研发的功能从原系统中区分开来,这对用户的使用和集成非常有利[3]。

3 工装属性自动规范设计

3.1 属性规范设计内容和主要方法

二次开发的过程首先是通过对数据库信息的读取得到需要填加的属性信息,然后利用CATIA提供的接口和函数达到对数模属性信息的读取与修改,最终完成规范的工装属性设计。工装属性规范信息是以订货单信息为依据,将如设计单位、适用机型、产品图号、制造单位、版次号、工装图号等信息存入数据库内,以备程序读取自动生成规范的工装属性。

3.2 规范设计软件结构

根据功能需求,可将软件分为4个部分,见图2。

(1)用户选择模块:用户与程序的交互接口,实现相关信息的输入;(2)订货单获取模块:从订货单提取相关属性信息;(3)调取待填加工装属性模块:将待填加属性的工装从数据库调取出来;(4)工装属性预览模块:将从订货单提取到的相关属性生成预览图,供用户判断。

4 关键技术研究

4.1 CATIA二次开发方法

目前,对CATIA进行二次开发的主要方法有4种,即用户定义特征方法(Interactive User Defined Feature,IUDF)、智能构建方法(Knowledge Ware)、使用自动化接口的宏(Automation API) 和基于组件应用架构CAA(Component Application Architecture) 的二次开发(CAA V5 C++and java API)[4]。

本文采用的CATIA二次环境开发方法是在vc++的环境下进行的, RADE(Rapid Application Development Environment)以Microsoft Visual C++6.0为载体将开发工具完全集成在了VC++环境中,并提供了一个CAA框架编译器。通过CAA V5 RADE包括的工具:TCK(Tool Configuration Key)、MAB(多工作空间应用生成器)、CUT(C++单元调试管理器)、MKMK(CAA编译工具)、CID(C++交互式面板)等,以插件的形式与MSDev VC++集成到一起。借助这些工具在MSDev VC++环境下开发所需要的组件[5]。

由于CATIA自身包括基于组件构架思想的COM/OLE技术,这就使得外部程序通过接口可以访问CATIA内部对象。

4.2 订货单信息获取

根据实际情况调研得知,工装订货单一般是由工艺人员使用CAPP 软件所编制而成的后缀名为.cxp 的文件,其中包含了工装的属性,如:使用单位、制造单位、设计单位、适用机型、订货单号、产品图号、工装图号、版次号等详细信息。将工装属性以订货单为依据,预先设置Access数据库,通过程序调用数据库待填加的属性,并传输到CATIA中实现与其数据的拼接。

4.3 工装属性的填加

为了确保属性填加的规范性,需要通过程序在后台事先编辑好属性框。通过CAA提供的属性框接口DI0PANV2,利用参数管理接口CATICkeParm将数据库中的参数转换为CATIA可以接受的(CATString)参数,最后利用CAA提供的属性接口CATIPrd Properties,将转化完成后的参数填加到已编辑好的符合规范的属性框中,完成属性填加。在实现工装属性规范填加和数据的正确获取的这一过程中,需要知道在CATIA中工装属性的存放地址。在这一获取过程中引入容器(container)的概念,在CATIA中不同的容器中包含着不同的特征,任何一个文档都包含了若干个容器。对于每个产品文档(Product Document),其包含的容器有:product container,specification container,the scope container和geometrical container,而产品数模的属性信息则包含在product container 中[6]。所以软件如要利用遍历工装属性的方法对工装进行属性填加和修改,必须先从product container容器中获取该工装特征存放地址指针后再通过该工装特征指针提供的接口将对应的属性参数填加到指针所指的地址中完成工装属性的填加。

5 工装规范属性填加软件流程

软件流程方便简单,可以实现工装属性规范填加,软件流程如图3所示:

在人机交互界面(图4)中,用户首先需要选择待填加属性的工装,单击“请选择工装路径”按钮完成填加。然后单击“请选择订货单路径”按钮,选择工装对应的订货单。点击预览按钮,程序将在后台通过遍历关键字的方法将用户需要的工装属性提取出来,并显示在填加项的面板上供用户查看。

订货单信息提取无误之后,单击确定按钮,程序将会通过零件属性接口CATIPrdProperties依次将信息填加到工装属性栏中。填加完成后,程序将自动保存修改并打开数模,方便工艺人员查看填加后的结果。图5 所示为属性填加完成后的结果图。

其中,进行属性填加的关键程序如下:

CATUnicodeString nameExtension=CATUnicodeString ("*.CATProduct");

CATString filterExtension=CATString ("*.CATProduct");

设置可供选择的文件类型为CATIA可以识别的文件,确定文件后缀格式;

pConnect.OnInitADOConn();

CATUnicodeString Sql="SELECT*FROM订货单WHERE Index=";

Sql.Append(buf1);

连接命为订货单的数据库,并将数据库中读取的数据存放到数组中,最终转化为CATIA可以识别的数据显示出来;

CATDocument * pProductDoc = GetDoc();

通过GetDoc()得到文档的product container,通过指向容器的指针pProductDoc获得工装特征句柄;

pProductDoc->QueryInterface(IID_CATIDocRoots,(void**) &piDocRootsOnDoc);

CATListValCATBaseUnknown_var*pRootProducts =piDocRootsOnDoc->GiveDocRoots();

用IUnknown接口提供的QueryInterface将CATDocument 类型的pProductDoc强制转换为CATIDocRoots类型的piDocRootsOnDoc,并通过piDocRootsOnDoc指针调用GiveDocRoots函数得到工装属性存放位置,最后将转换类型后的数据利用数组存放入piDocRootsOnDoc指针指向的地址完成属性填加。

6 结语

本文利用CAA工作平台,对CATIA进行二次开发,解决了以往工装的属性填加手工繁琐易错的缺点,实现了在工作效率提升的同时保证工作质量,如能够将命名规范,审签栏规范,标题栏规范等内容一同完成将对实际生产有着重大的意义。不仅提高了数字化制造的水平,缩短了新机研制周期,降低了研制成本,而且从根本上解决新机研制中工艺准备时间紧、任务重、技术人员加班时间长,人为出错率高等问题。为企业的规范管理提供了一种新的方法和思路。此外,软件具有一定的通用性,针对不同的规范性要求,进行简单的程序更改即可满足不同用户的需要。

参考文献:

[1]曹俊生.基于CATIA /CAA 的飞机结构虚拟装配信息模型研究[D].南京:南京航空航天学,2005.

[2]胡挺,吴立军.CATIA 二次开发技术基础[J].浙大旭日科技,2006.7.

[3]何朝良,杜延娜.基于CAA的CATIA二次开发初探[J].自动化技术与应用,2006(9):25-26.

[4]苏洪军,王永金.基于CAA的CATIAV5二次开发方法的研究[J].机械,2008,(S1).

[5]杨文龙,姚淑珍,吴芸编著.软件工程.北京:电子工业出版社,1997.

[6]黄志文.基于CATIA的电子样机技术及工程应用研究[D].南京航空航天大学,2002.

上一篇:企业全面预算管理存在的问题分析与对策思考 下一篇:粮食主产区稳定粮食生产的案例探讨