从CATIA到TRIBON的板架结构数据转换方法
2012-03-06倪海参汪学锋
倪海参 汪学锋
1上海交通大学船舶海洋与建筑工程学院,上海 200030
2上海交通大学船舶海洋与建筑工程学院海洋工程国家重点实验室,上海 200030
从CATIA到TRIBON的板架结构数据转换方法
倪海参1汪学锋2
1上海交通大学船舶海洋与建筑工程学院,上海 200030
2上海交通大学船舶海洋与建筑工程学院海洋工程国家重点实验室,上海 200030
船舶行业不同CAD软件间的数据交换是个倍受关注的问题,从CATIA到TRIBON的数据转换是其中一个重要的环节。通过对船舶CAD软件CATIA与TRIBON之间模型数据结构的分析研究,开发了从CATIA到TRIBON的船体板架结构的数据转换方法。该方法首先分析研究CATIA结构树,然后通过对CATIA系统的二次开发提取板架结构几何与属性信息,其中可以通过控制提取数据的精度来提高数据转换过程的精度;利用外挂软件将数据信息合并到一个文档,按照数据映射关系将其转换为能够在TRIBON中进行建模的格式文件;开发TRIBON系统建模模块,最终迅速有效地完成数据的转换。几个板架结构的转换实例说明该方法能为两个不同CAD软件间的数据交换提供一种有效的工具。
CATIA;TRIBON;数据转换;二次开发
0 引 言
近年来,在我国船舶设计制造领域,各船厂、科研院所均采用了数字化船舶设计系统[1],其中以 TRIBON,CADDS5 和 CATIA[2]为代表的船舶设计软件正在不断提升船舶设计水平。TRIBON是目前使用最为广泛的船舶生产设计软件之一,被称作“船舶设计制造专家”。尽管TRIBON系统存在三维图形拓扑造型能力差等缺点,但是由于其实用性,仍被许多造船公司作为船舶生产设计的主要软件[3]。CATIA则由于其易于建模的人性化操作界面和智能化的模型树结构,使用户能方便、快捷地对产品进行重复修改,正在被越来越多的用户所接受。目前,CATIA大多应用于船舶详细设计阶段,在生产设计阶段要根据详细设计图纸在TRIBON中重新构图,这一过程无形中增加了船舶生产设计的工作量。
由于船舶软件数据的非标准性和特殊性,至今无法完全实现它们之间模型数据的相互转换,导致先进设计方法不能有效展开,影响了船舶设计质量和设计周期。CATIA与TRIBON在详细设计和生产设计阶段存在着严重的数据交换障碍,且两者之间的数据交换尚无研究先例。CATIA系统与TRIBON系统虽然都支持IGES格式文件的导入和导出,但是当CATIA系统中导出的IGES文件简单地导入TRIBON系统中时,模型结构信息将会严重丢失。针对该问题,汪学锋等[4]已经着手开展了不同软件间的数据交换研究,苗赟等[5]开发研究的TRIBON与CADDS5的数据交换接口为本文提供了研究基础,但是由于CAD系统与模型数据结构的不同,存在着许多值得进一步研究的地方,其中参考文献[5]就可利用CADDS5软件菜单功能直接提取数据信息。本文根据CATIA中结构模型数据的特点来开发接入的提取模块,并利用该模块提取繁杂的模型数据。由于只有对型材库标准构件信息提取足够完整才能在转换过程中不至于丢失信息,因此为了提高数据转换精度,本研究在提取过程中对曲线进行了特殊处理。同时,还将根据数据结构组织特点开发CATIA和TRIOBN数据交换和导入的模块。通过开展CATIA与TRIBON两大船舶CAD软件间的数据交换研究,将实现CATIA模型与TRIBON模型数据的无缝连接。
1 总体开发框架
1.1 开发环境和开发工具
本文利用CATIA与TRIBON系统软件提供的二次开发工具和外部VB软件开展研究,既保持了核心技术的独立性和发展性,也避免了CATIA及TRIBON版本升级可能带来的不兼容性。
CATIA具有两种二次开发方式,一种是编写VBScript脚本程序从系统内部访问对象,即通过CATIA的宏(Macro)命令运行的方法;另一种是由第三方软件开发脚本程序,通过CATIA提供的连接组件实现两者之间的通信。由于宏在运行过程中无法改变参数值并且智能程度较低,只适用于简单的重复性操作过程,因此本文选用了自主开发独立软件的方法。此外,开发第三方软件也有两种方法,一种是CAA(Component Application Ar⁃chitecture)C++模式,另一种是CAA Automation模式。前者基于CATIA已有组件定制开发,其工作量较大;后者则相对较为容易理解与掌握,也能够满足开发需求。所以本文采用第三方软件Visual Basic 6.0利用CAA Automation技术进行开发[6]。
TRIBON提供了VITESSE二次开发工具,使用户能访问产品信息模型和在TRIBON系统内部实施建模。利用面向对象的高级编程语言PY⁃THON编写的VITESSE程序,可以实现对TRIBON系统建模的功能扩展。但VITESSE程序只能够在TRIBON系统的应用程序环境下运行。
1.2 总体开发流程
总体开发流程如图1所示,主要由CATIA信息提取、数据中间转换及TRIBON重构模型3大部分组成,具体形成了3大模块。
1)信息提取模块:作为数据交换系统的前置接口,通过访问CATIA模型对象从CATIA数据库中提取出模型信息;
2)中间转换模块:利用Visual Basic 6.0开发中间转换接口[7],将CATIA提取出的文本文档映射[8]为以关键字和参数值形式组织的TRIBON可识别格式文件;
3)模型重构模块:作为数据转换系统的后置接口,将上述文件导入TRIBON系统数据库,执行读取和解析命令在TRIBON系统中重构模型。
图1 开发流程图Fig.1 Flow chart of data transformation
2 数据交换过程
2.1 CATIA模型数据结构
在CATIA模型中,Product为顶层结构,在Product根节点下包括多个Part子节点、Part节点以及Part所包括的子节点含有的模型信息。其下面的Part节点是零件文档的最上层对象,也是包含模型完整信息的最小单位。如图2所示,Part对象包括所有访问零件文档所需的对象和方法,如Bodies(Plate,Stiffener…),Parameters(Points,Thickness…),OriginElement等。
图2 结构树模型信息Fig.2 Production tree of model information
2.2 数据文件提取
在CAA Automation中,所有的数据都被封装成对象的形式,并呈树状结构(产品结构树)。本文通过根对象(Application)对所有其它对象进行访问,从而获得产品结构树的树状层次结构所表示的零件装配关系,说明产品、部件和零件之间的从属关系等,得到完整的产品数据信息。
对于船舶模型,CATIA中由几何信息和属性信息两种形式共同描述船体结构模型信息。几何信息需要批量读取CATIA结构树中的点坐标,用提取的点集来表达船舶和扶强材等构件的基本形状。结构树的树状层次结构表示装配关系,代表产品、部件和零件之间的从属关系,利用对这些对象的属性进行访问,可以方便地得到产品相应的数据信息。因此,属性信息则由开发的软件访问对象的厚度、材料和截面形式等参数值得到。最后,把几何信息和属性信息合并,从而表达出完整的板架信息。提取数据的流程如图3所示。
图3 提取数据流程图Fig.3 Flow chart of model data extraction
本文利用Visual Basic 6.0在CATIA系统界面中添加了对当前文档进行提取信息的窗口,通过该窗口首先获取本地激活的文档,然后访问其对象属性。
型材的信息处理要定义型材结构体来保存型材信息,扶强材的形式如下:扶强材{起点,终点,截面形状,端切形式}。
其中对曲线信息的提取是个难点,若直接提取只能提取到曲线起点、中点和终点的坐标值,不能满足转换过程中的精度要求。在CATIA系统建模过程中曲线是通过离散点插值后形成的曲率连续的曲线,为了能够用更详尽的信息表达曲线特征,要对曲线进行等距离的离散化然后提取离散点,在离散代码:Set pntPoint=oHSF.AddNewPoin⁃tOnCurveFromPercent(refCurve,1/iPoint,False)中,循环过程中iPoint取值越高,曲线表达会越精确,离散化效果如图4所示。
图4 曲线离散点Fig.4 Discrete points in the curve
2.3 数据文件映射
通过开发外挂软件,从CATIA中读取的几何信息和属性信息包含TRIBON系统中Scheme文件需要的信息,因此只要采用一一映射的方式对文本文档数据进行读写操作完成数据的转换,就能实现TRIBON中的自动建模。
平面板架上的元素包括板缝(SEA)、板(PLA)、扶强材(STI)、肘板(BRA)和孔(HOL)等[9],板架Scheme文件对每一个基本元素遵循特定规则进行描述。通过VB合并几何信息(Geometry Infor⁃mation)和属性信息(Attribute Information)到一个数据文件,然后读取数据文件写入空的Scheme文件中。
1)读取板架名称、位置和方向等信息;
2)读取边界点信息;
3)读取平板厚度等信息;
4)读取扶强材信息;
5)读取开孔信息。
上述各阶段都按Scheme文件格式写入,从而完成主要的数据转换工作,具体的映射过程如图5所示。
图5 数据映射过程Fig.5 Data-mapping process
2.4 数据文件导入
利用 VITESSE工具[10]开发 PYTHON程序模块,该模块添加了数据导入菜单用以指定数据导入路径,将已经转换好的Scheme文件导入TRI⁃BON系统中,并读取数据,解析其信息,最后自动建模。
添加数据导入菜单需要编写初始化文件,并定义环境变量SBB_TRIGDIR,通过开发的VI⁃TESSE程序接口读取环境变量SBB_TRIGDIR所指向目录的初始化文件trig_draft_init.py以加载开发的数据导入菜单。数据导入菜单如图6所示,定义菜单的方法如图7所示。
图6 数据导入菜单Fig.6 Operation menu for data import
图7 定义数据导入菜单Fig.7 Defining the operation menu
利用VITESSE开发数据导入路径对话框(图8),然后调用已开发的重构模块函数,执行重构命令PYTHON程序来完成TRIBON系统中的自动重构。VITESSE程序按照之前写出的Scheme文件的组织顺序依次识别Panel-Count,Panel-Name,Panel-Statement,Curve-Count,Curve-Statement等信息,其关键源程序如图9所示。
图8 数据导入路径对话框Fig.8 The dialog box of file import path
图9 运行Scheme信息Fig.9 Running Scheme file for model
3 应用实例
一系列的应用实例转换验证了所开发的程序,本文介绍其中典型的两例。
1)船舶双层底结构中的肋板结构,其包含了平面板架的基本几何特征,如人孔、曲线边界、直线边界等的处理,经过转换,证明本文的研究方法能够完整地实现转换(图10)。
图10 船舶肋板转换实例Fig.10 Rib transformation example
为了验证转换结果的精确程度,图11对局部细节放大,得到TRIBON图形中离散点越密集,曲线精确程度越高,本文选择插入19个点将曲线离散为20段。在对精度要求较高的情况下,可以适当增加离散点,但是数据的增加会导致处理速度变慢。
图11 肋板曲线部分放大图Fig.11 Zoom in the rib’s curved line
2)复杂的双层底内底板除了上例中的信息外,还包含4个扶强材,也就形成了板件组合,将其扩展就能完成整个分段甚至全船的转换(图12)。比较内底板局部放大图(图13)可以看到不同结构的拓扑关系和型材库中标准构件的成功转换。
图12 船舶内底板转换实例Fig.12 Transformation example for inner bottom plating
图13 船舶内底板转换实例局部放大图Fig.13 Zoom in the inner bottom plating model
4 结 语
本文开展了从CATIA到TRIBON船舶结构数据交换的方法研究,得到如下结论:
1)本文所提出的从CATIA到TRIBON船舶结构数据转换的方法有效、可靠,可以解决船体结构平面板架的数据转换,通过对曲线的离散化处理,有效提高了数据交换的精度,为软件间更加复杂的船体模型数据转换提供了研究基础。
2)数据转换通过提取、转换和导入3个步骤,将主要转换过程用外挂程序来实现,可以认为是一种有效的手段。其不仅可以用于CATIA到TRI⁃BON的转换,也可以广泛应用于类似的其它CAD软件之间的转换,其中本文方法提取的CATIA模型信息同样可以导入其它系统进行有限元分析等方面的研究。
3)在船舶模型从设计端向生产端的转换环节中,包括型材库标准结构件的转换,可减少甚至是消除船厂重复建模的工作,将会提高使用效率。
本文的研究还仅限于相对简单的板架结构,以此为基础在后续的研究过程中可以处理更加复杂的模型数据库,如开发更多、更全的标准构件转换模块,进一步地研究和改善大曲度的曲面等的转换,实现船体分段及全船数据模型的交换。
[1]乔珊,应文烨,何刚.舰船数字化设计应用研究[J].中国舰船研究,2007,2(4):20-25.
QIAO S,YING W Y,HE G.Application of digitaliza⁃tion design for ship[J].Chinese Journal of Ship Re⁃search,2007,2(4):20-25.
[2]Dassult System.CATIA documentation[EB/OL].2008[2010-09-01].http://www.maruf.ca/files/catiahelp/CATIA_P3_default.htm.
[3]Tribon Solutions AB.Tribon M3-user’s guides docu⁃mentation[CP].2008.
[4]汪学锋,李锋,周炜,等.流固耦合网格插值方法研究[J].船舶力学,2009,13(4):571-578.
WANG X F,LI F,ZHOU W,et al.Research on grid in⁃terpolation method of fluid-structure coupling[J].Jour⁃nal of Ship Mechanics,2009,13(4):571-578.
[5]苗赟,汪学锋.船舶主流CAD软件间的数据交换研究[J].中国造船,2011,52(3):190-197.
MIAO Y,WANG X F.Research on data transformation between principal ship CAD softwares[J].Shipbuild⁃ing of China,2011,52(3):190-197.
[6]Dassult System.CAA V5 Visual Basic help[CP].2008.
[7]顾敏芳,汪学锋.Patran集成Fluent处理中模型的转换[J].中国舰船研究,2010,5(1):6-9,13.
GU M F,WANG X F.Model transformation in integra⁃tion of Fluent based on Patran[J].Chinese Journal of Ship Research,2010,5(1):6-9,13.
[8]江敏,杜学东,张晓晖,等.对等点的数据映射推导算法 研 究[J].计 算 机 工 程 与 应 用 ,2009,45(3):152-154.
JIANG M,DU X D,ZHANG X H,et al.Research of data mapping inference algorism of peer-to-peer[J].Computer Engineering and Applications,2009,45(3):152-154.
[9]贾琪琳.TRIBON的船体分段数据分析[J].船舶工程,2010,32(1):67-69.
JIA Q L.Data analysis of ship segments by TRIBON[J].Ship Engineering,2010,32(1):67-69.
[10]Tribon Solutions AB.Tribon M3-user’s guides:Vi⁃tesse,availability in Tribon applications[CP].2008.
Data Transformation from CATIA to TRIBON for Naval Ships
NI Hai-shen1 WANG Xue-feng2
1 School of Naval Architecture,Ocean and Civil Engineering,Shanghai Jiao Tong University,Shanghai 200030,China
2 State Key Laboratory of Marine Engineering,School of Naval Architecture,Shanghai Jiao Tong University,Shanghai 200030,China
Data transformation among different ship CAD software is a highly concerned issue,with the transformation between CATIA and TRIBON being a particularly important element.By analyzing the struc⁃ture of model data,a data transformation method from CATIA to TRIBON for naval ships was proposed in this paper.Firstly,the secondary software attached to CATIA was developed to extract its geometry and at⁃tribute information,and the precision of this extraction procedure directly determines the overall accuracy of the transformation process.Next,the plug-in software was used to merge the data into a single file and translated it into a valid TRIBON document format.Finally,the remodeling modules of TRIBON were de⁃veloped to accomplish the transformation.Simulation results show that the proposed method can be used to transmit data among different CAD software effectively and efficiently.
CATIA;TRIBON;data transformation;secondary software
U662.9
A
1673-3185(2012)05-66-05
10.3969/j.issn.1673-3185.2012.05.012
2011-11-18
国家高技术研究发展计划(863)项目(2008AA09A108);国家教育财政部重大项目(ZXZY019)
倪海参(1986-),男,硕士研究生。研究方向:船舶与海洋工程。
汪学锋(1966-),男,研究员,博士生导师。研究方向:船舶与海洋工程。E⁃mail:wangxuef@sjtu.edu.cn
汪学锋。
喻 菁]