CATIA 与AutoCAD 联合应用进行船舶电气原理设计的方法
2022-02-07杜承东董大朋
杜承东 ,董大朋 , 黄 夏
(1.海装驻上海地区第二军事代表室,上海200129;2.沪东中华造船(集团)有限公司,上海 200129)
1 前言
随着数字化造船技术的不断发展,对设计图纸的要求也在不断提高,要求设计图纸精细化并且降低修改率。为了达到这一目的,一款实用性强的设计应用软件是必不可少的。CATIA 是法国达索公司的一款产品开发设计软件,支持从产品的项目前阶段、具体设计、分析、模拟、组装到维护在内的全部工业设计流程[1]。该设计软件已成为航空和汽车设计领域的重要设计辅助工具,由于其强大的全过程辅助设计功能,目前已开始逐步在船舶设计领域推广。
该软件可以把系统原理图信息直接驱动到三维模型的物理节点下,使三维模型与系统原理图的信息完全一致[2][3],减少了大量人为差错;但该软件在电气系统原理图设计方面比较繁琐,需要做大量的前期准备工作和数据积累,例如电缆库的建立、电气元件二维符号库的绘制等,并且绘图速度和操作便捷度远不如目前广泛使用的AutoCAD 绘图软件。
使用AutoCAD 绘制电气系统图简单、高效,但是其图纸没有拓扑结构,与三维设计软件没有相关接口,不便于三维建模工作的展开。因此利用船舶电气设计领域常用的设计软件进行二次开发,以便后期便捷对接CATIA 三维设计软件是很有必要的。本文介绍一种针对CATIA 三维设计软件应用自行开发的AutoCAD 二次开发程序,用来进行船舶电气系统图设绘,并导入CATIA 三维设计软件的方法。
2 设计流程
2.1 系统图设绘
在使用AutoCAD 设绘电气系统原理图时,主要的设绘内容是设备、电缆以及相关信息文字。由于AutoCAD 绘制的系统图本身没有拓扑结构,因此可以使用二次开发程序生成的属性块去绘制设备和电缆;在该二次开发程序下使用CAD 设绘电气系统原理图时,可以在已有的常规电气系统原理图中增加属性和关联,也可以利用该二次开发程序设绘带属性的新图;在设绘中,电缆块插入点需要放置在表示电缆的线形图元上,设备块插入点需要放置在表示设备的矩形框或封闭区域内,这样可以识别到代表电缆的直线及其电缆块内属性信息,以及代表设备的框及其设备块内属性信息;二次开发程序还可以识别到代表电缆的直线和代表设备的框之间的连接关系,使得绘制的图纸具有逻辑关系;在上述信息全部识别完整的条件下,该二次开发程序还具有自动生成电缆表册、设备明细表、图纸差异校对、生成数据表格等辅助功能。
该二次开发程序的电气系统图设绘界面,见图1。通过图1中的增加设备或增加电缆来进行系统图设绘,也可以选用无框设备来叠加在已有系统图的设备框线上,仅增加设备属性;程序识别电缆和设备的的连接关系后会高亮显示,表示图纸中电缆和设备已成功关联,以便进行校对工作,见图2。
图1 电气系统图设绘界面
图2 设备和电缆关联后的系统图
2.2 布置图设绘
该二次开发程序可以辅助进行电气设备布置图的设绘,替代传统的布置图和系统图分别设绘的方式;可以使用该二次开发程序读取电气系统图中的设备信息,读取完成后切换到布置图进行布置;程序提供了几种常用的设备符号供选择,复杂的形状只能手工复制,再交给程序自动转成属性块;程序除了能把从电气系统图读到的设备代号自动填到符号中,还可以自动生成设备三维建模用的设备模型代号,即小样代号或零件代号。大中型设备(控制箱、控制台等)的模型代号为设备代号加中文描述,小型设备(灯具、开关、接线盒等)的模型代号为设备型号加中文描述;程序还能根据自动生成布置图的明细表,明细表中的设备数量根据模型代号统计,程序会自动累加模型代号相同的设备数量得到设备总数。
3 CATIA 的导入功能
3.1 电缆和设备导入功能
首先在向CATIA 导入上述设绘完毕二维图纸中的电缆和设备前,需要在CATIA 的系统逻辑根节点下建立设备和电缆2 个逻辑节点,然后在这两个逻辑节点下分别建立例如电力一次系统、电力二次系统、照明系统等不同的电气系统节点,完成后分别点击设备导入和电缆导入按钮。
通过该导入功能,二维平面CAD 图纸中的设备和电缆就分别被导入到了逻辑设备和电缆下相应系统的节点下。
该二次开发程序功能,使用C#语言和CATIACAA 联合开发,因为CATIA 并没有提供逻辑节点的二次开发接口,只能使用C#提取AutoCAD 的属性信息,保存到XML 文件后再由CATIA-CAA 读取并实例化到CATIA 的系统逻辑节点上;CAA 程序由C#起动,使用时无需分别运行两个程序;CAA 功能也可由EKL 代替,不过需要把EKL 代码挂到CATIA 节点上,使用起来比较繁琐;CATIA 结构树的搭建,也可以根据实际需要修改并修改代码。
3.2 电缆及设备连接关系的创建
在上述操作完成后,此时电缆和设备间还没有创建连接关系,创建连接关系前需要点击程序的生成端口按钮来为每个电缆和设备节点生成端口,端口数量按设备的实际电缆接口数量创建,并尽量按常规CAD设绘习惯设置端口的位置。
电缆及设备的端口创建完成后,就可以为电缆和设备创建连接关系了。目前还无法在CATIA 内部直接创建电缆和设备的连接关系,只能在CATIA 外部进行,即需要使用CATIA 的原生功能把系统图导出,点击程序的XML 导出按钮,程序会自动打开CATIA XML导出界面;按照CAITA 界面中指定的XML 位置点击生成连接按钮,程序会自动把电缆和设备的连接关系写入导出的XML 文件中,完成后再点击XML 导入按钮,程序会自动打开CATIA 导入XML 界面;点击Full Update 后,CAD 系统图导入CATIA 就全部完成了。
利用该二次开发程序将CAD 系统图导入到CATIA中形成逻辑系统图,无需使用CATIA 原生功能中的系统图设绘功能,完成了CATIA 电缆节点、设备节点和连接关系的信息输入,有了这些就可以进行CATIA 中的逻辑到物理的驱动了,此功能由CAA 开发、C#程序起动。
4 其它功能
4.1 各类电气库的建立
使用该二次开发程序设绘电气系统图纸前,可以将电缆库和舱室库导入到程序中,程序支持EXCEL 表格形式的批量导入和手动导入。由于每个工程使用的电缆型号和规格都不一样,在导入前需要建立本项目的工程再进行导入,这样导入后在修改电缆型号、规格时,仅在该项目已采购电缆中选择,避免了电缆型号修改后但实际库内电缆无货的情况。
舱室库与电缆库一样,根据工程项目需要建立,在修改设备属性时可以根据设备位置进行舱室库的选择。
4.2 辅助计算功能
在该二次开发程序中,同时设计有辅助计算功能,可以根据用户实际需求预设各种经验计算公式和电缆、开关选型库。例如:在设备属性中如填写了电制、额定功率、额定电流等属性,可使用该程序在系统设计中自动选择保护开关、负载电缆的规格;设置配电板配电容量、电流等的计算公式,并根据负载性质设置同时系数,可以计算配电板的总负载功率、配电线路的三相平衡率、电缆压降等,大幅减少设计人员的相关计算工作量。
4.3 数据导出功能
该二次开发程序还提供了数据导出功能,根据设计需要导出电缆或设备的属性信息。 该导出功能可满足各种清册清单的快速编制或再导入到其它建模软件,文件格式可选多种格式,使系统图的信息数据可以与其它建模软件通用。
5 有待进一步研究的方向
5.1 CATIA 逻辑关系的自动导入
目前该软件仅实现了将设备和电缆全自动导入到CATIA 节点下,而电缆、设备和节点的逻辑关系还需要人工导出 XML 文件后,经过软件修改 XML 文件再由人工导入才能建立,过程十分繁琐。因此后续将进一步研究通过 CAA 二次开发,实现自动建立上述逻辑关系。
5.2 图纸自动生成和快速转换
目前导入 CATIA 的只有电缆、设备和它们之间的逻辑关系,并没有同 CAD 系统图一样的可视化图形,后续将进一步研究开发通过读取 CAD 图纸中图形信息和位置,在 CATIA 图形中自动生成与 CAD 图纸完全一致的 CATIA 图形;目前 CAD 电缆和设备需要使用属性块进行绘制才能实现与 CATIA 交互,但目前很多图纸使用的都是普通文字和图形,后续还需进一步研究开发,实现自动将普通的 CAD 图纸转换成带标准属性块的图纸,进一步减少图纸绘制的工作量。
6 结语
本文针对CATIA 三维设计软件应用下自行开发的一个CAD 二次开发接口程序,介绍了应用该二次开发程序进行系统图信息输入和CAITA 导入的标准化设计流程。如:在设计初期就使用该二次开发程序进行系统原理图设绘,无需使用CAITA 设绘二维电气系统图,提高了绘制系统图的效率,同时可以减少很多设计过程中的反复统计和校对工作,比如电缆长度预估、设备种类及数量统计、总功率计算等;此外,还可减少设计工作中的开关规格选择、系统图与布置图的校对、系统布置与三维模型的校对、设备代号排序等工作,并能完成二维AutoCAD 系统图直接同步导入CATIA 三维物理模型的工作;该程序还提供了从设计到出图整个过程的同步和检查功能,可减少大量人为差错,提高设计效率和设计质量。