基于UG 二次开发的邮轮舱室防火区域三维辅助划分方法

2022-07-02 05:50次洪恩
船舶 2022年3期
关键词:舱室甲板类别

孙 利 徐 昌 次洪恩

(中国船舶及海洋工程设计研究院 上海 200011)

0 引 言

消防安全是船舶设计中非常重要的设计约束,尤其对于载客人数众多的豪华邮轮和客滚船等大型客船类船舶而言,而其中的防火区域划分又是消防安全设计中最重要且基础的被动防火措施,对于舱室布置的影响也最大。防火区域的划分要求决定了相邻舱室舱壁和甲板间的防火等级,进而影响了船舶建造的工艺和质量,陈训美等介绍了某豪华游船防火设计对建造施工的影响。此外,防火划分的不同还在一定程度上影响了安全返港规范要求的火灾事故界限。划分防火区域主要由相邻舱室的类别用途决定,优化合理的舱室布置可以在一定程度上减少船舶防火绝缘材料的使用,精简建造工艺并降低建造成本。

以往的防火区域划分设计一般基于二维图纸,设计者对照规范描述确定图面每个舱室类型,然后手动分隔创建相邻舱壁和甲板图线或图形填充,进而依据规范要求人为判断相邻舱壁和甲板的防火等级划分,并修改图线或图形填充的样式以示区别。然而,该传统方法需要大量人工干预操作且容易出错,并且当船舶舱室数量较多时也不易检查。相对于常规的运输船,客船上舱室种类和数量更多,对于1 艘10 万总吨级的大型豪华邮轮,其舱室数量甚至多达几千个。如此,应用传统方法工作量将相当巨大,不仅效率低且易出错,无法适应基于降低全船防火区域划分等级水平的舱室布置优化需求,更无法随着方案频繁更新而快速反馈防火划分结果及物量统计结果。

随着设计手段不断革新,应用三维CAD 软件进行船舶开发设计条件越来越成熟,各类通用三维CAD 软件的参数化建模与二次开发功能也十分强大,为与船舶设计方法相融合提供了软件技术基础。赵志峰等研究了基于三维CAD 软件在客船舱室布置中的二次开发应用;唐英等和张胜文等利用三维CAD 软件参数化建模功能与二次开发技术开发了船舶螺旋桨辅助设计方法;船舶专业软件NAPA 开发了半三维的船舶防火区域辅助划分模块,可辅助输出二维防火区域划分图。

防火区域划分针对的是一个三维空间的舱室间防火等级划分问题,基于三维CAD 软件构建船舶舱室模型再定义防火分割等级的方法更贴近规范要求的逻辑。目前,市场上成熟的三维CAD 商业软件有很多,如Siemens 公司旗下的UG(Unigraphics NX)、Dassault公司旗下的CATIA和SolidWorks,以及Autodesk 公司的AutoCAD 等,都可为用户提供基础的三维CAD 建模功能。在船舶设计制造领域,UG 和CATIA 都开发了相应的船舶模块以支持船舶设计中所用到的特殊的建模流程、建模标准件库以及产品管理等功能。UG 是Siemens PLM Software公司出品的一个产品工程解决方案,是一个交互式的计算机辅助设计与计算机辅助制造(CAD/CAM)系统。它功能强大,可以轻松实现各种复杂实体及造型的建构,并拥有强大的参数化建模能力、丰富的二次开发接口以及友好的交互界面。鉴于以上优点,本文的研究将基于UG 软件为平台。

为适应、助力船舶三维设计,本文针对传统防火区域划分方法一系列的问题,在通用三维CAD 软件平台UG 上进行了二次开发,完成了一种船舶舱室防火区域辅助划分系统。首先,对基于传统二维CAD 软件进行防火区域划分的模式作简要介绍并分析其缺陷,同时简单介绍基于三维CAD 软件的防火区域划分方法;其次,对基于三维CAD 软件UG 如何实现三维CAD 防火区域划分方法(即船舶舱室防火区域辅助划分系统)的基本架构和模块开发进行介绍;然后,对系统开发中的相邻舱室快速搜索关键技术进行重点阐述;最后,以某邮轮的防火区域划分实际案例为研究对象,介绍该系统的应用情况。

1 基于三维CAD 模型的防火区域划分方法

1.1 传统二维CAD防火区域划分方法

根据SOLAS 规范可知,船舶防火区域划分主要分为3 类:主竖区限界面(如有),不作为主竖区或水平区限界面的舱壁,以及在主竖区内既不形成阶层也不作为水平区限界面的甲板。从以上类型可知,船舶防火区域划分实际上就是对舱室三维空间毗邻关系的边界防火属性划分,而在传统的二维CAD 设计工具条件下:

(1)不得不把舱室的三维空间先转化为抽象的二维空间(即甲板视图)。

(2)根据规范定义舱室的防火类型,在每层甲板视图标记舱室类型,如图1 所示。

图1 二维CAD 防火划分方法—某船局部甲板视图&舱室类别标记示例

(3)舱壁限界面分隔处理。通过人工识别舱室间相邻线段,并用多段线重构起止点,如下页图2所示。

图2 二维CAD 防火划分方法—某船局部舱室间舱壁边界多段线重构示例

(4)甲板限界面分隔处理。舱室上下关系的甲板间限界面分隔工作是二维CAD 软件处理防火区域划分最为复杂的工序:首先,将上层甲板的每个舱室边界线投影到下层甲板,然后人工识别该舱室边界线内和下层甲板各舱室的重叠情况,并用多段线重构该舱室地板区域。见下页图3 :左图为将上层甲板的驾驶室房间轮廓多段线投影至下层甲板的示意图;然后,根据下层甲板的实际舱室边界,将驾驶室房间轮廓重新划分成多个子区域,如右图所示。

图3 二维CAD 防火划分方法—某船“驾驶室”上下舱室间甲板限界面封闭多段线重构示例

(5)人工对照规范舱室间舱壁、甲板防火关系要求,手动为舱壁多段线或甲板封闭多段线区域进行特殊线型或填充图案的标示,如第36 页图4 所示。根据SOLAS 规范对36 人以上客船的要求,驾驶室作为C01 类舱室,与同层周围的梯道(C02 类舱室)和电气设备间 (C10 类舱室) 间的防火要求都是A-0 级分隔;而对上下甲板间要求,C01 类舱室下如果为C07 类舱室,则甲板防火要求为A-60,如果下面为C03 类走廊,则甲板防火要求为A-15。

图4 二维CAD 防火划分方法—某船“驾驶室”与相邻舱室舱壁&甲板防火级别标识示例

从以上步骤分解可以看出,基于二维CAD 软件的防火区域划分方法,需要大量人工判断与操作,尤其是舱室间舱壁以及甲板限界面的重构工作。传统二维CAD 软件表达的是三维模型在某一位置、某一方向上的投影,是抽象后的舱室间位置关系,如果希望通过二维CAD 软件将船舶舱室所有的位置关系表述清楚,需要多个位置、多个方向的多张二维图一起综合表达。以图1 为例,只看下层甲板的视图,只能获取该层甲板舱室间水平位置关系信息,而对于该层甲板的上下相邻舱室情况需要不同高度的甲板视图一起表达,有些情况甚至需要加一个横剖面视图特意表达某个纵向位置舱室间的上下关系。所需视图数量多,是应用传统二维CAD 软件绘制防火区域划分工作量大的原因之一。另一重要原因,是应用二维CAD 软件绘制的船舶舱室布置是没有舱室或其几何对象依附关系概念的。不同舱室的定义是通过一系列在图面上围成的曲线以及人工添加的文字所区分的,而不是真实存储于软件模型中的一个对象或一个实体。因此,也就无法应用几何拓扑关系辅助设计者定义相邻舱室间的公共限界面(线),而是完全要依靠人工视觉判断哪对舱室是相邻,公共的限界面(线)范围有多少。

1.2 三维CAD防火区域划分方法

下文简述如何应用三维CAD软件来建模:首先,每个舱室在模型空间只需定义1次,无需重复表达;此外,三维CAD软件中有几何拓扑对象的概念,点、线、面、体都有相互依附关系。如此,很多工作更容易实现自动化,比如:舱室间毗邻关系的判断,舱室间公共限界面的重构,以及对照规范要求并结合公共限界面对应舱室的情况自动匹配定义防火级别等。

基于三维CAD软件的工具平台,船舶防火区域划分的主要流程包括:

(1)创建三维舱室模型:应用三维CAD软件的三维建模功能,将船上每个舱室的几何形状如实地应用实体(Solid Body)R予以表达。

(2)舱室属性定义:将每个实体几何舱室,附上拥有船舶特殊类别属性的自定义信息,为后续舱室间防火关系判别奠定基础。

(3)舱室间公界面定义:通过空间几何位置关系判别,获取不同实体几何舱室间的毗邻关系,并创建舱室间公共限界面,用片体(Sheet Body)S予以表达。这里的舱室间毗邻关系应是三维空间全方位的相邻关系判断,不限于水平相邻,还包括上下相邻,一起判断生成公共限界面。此外,为方便后面定义防火属性,在每个新创建的公共限界面几何片体上,另附上该公共限界面S所属的舱室对信息,即SRR,以及该公界面的类别、甲板或舱壁。

(4)定义防火属性:根据规范针对不同船型的防火划分要求,遍历模型空间公界面,并根据其所附舱室对信息以及类别信息判断应定义的防火属性,并通过自定义属性进行定义。

表1总结了基于三维CAD工具相对于二维CAD工具进行防火区域划分的主要步骤差异。

表1 防火区域划分步骤差异(二维CAD vs 三维CAD)

需要补充说明的是:

(1)建模方面,如果单纯为了绘制防火区域划分而单独创建三维舱室模型,则该方法的使用成本很高,不一定优于二维CAD 方法,尤其是对于舱室不多的小型货船。但现在的船舶设计趋势是全设计流程三维化,在总布置、稳性设计阶段应该已完成了三维舱室模型的建立,而非特意为防火划分创建三维模型,如此,则基于三维CAD 的防火划分方法的建模时间成本没有那么高。

(2)舱室类型标记工作也是三维CAD 方法的一个优势。对于二维CAD 方法,每层甲板视图对每个舱室都要进行一次标记,如果某舱室高度方向跨多层,则对于该舱室要重复标记多次;而对于三维CAD 方法,每个舱室模型仅需定义一次属性,避免了重复标记属性的问题。

(3)通过几何特征的筛选与判断,基于三维CAD 方法,理论上可以自动判断舱室间的毗邻关系,并自动重构舱室对间的公共限界面,可以极大降低人工操作复杂度,减少出错概率。

在下一章将具体介绍基于三维CAD 软件UG的防火区域辅助划分系统实现的基本架构。

2 船舶舱室防火区域辅助划分系统架构

针对1.2节提出的基于三维CAD的防火区域划分流程与方法,本章将介绍如何通过UG软件平台,基于其原有的软件基础功能,配合二次开发实现各个流程。

首先,船舶舱室防火区域辅助划分系统的基本模块架构如图5所示。该系统基于三维CAD软件UG为基本平台,借助其成熟的三维实体建模功能、几何模型可添加自定义属性功能以及NXOpen开发工具的开发接口进行二次开发,其中规范规则信息以及其他自定义属性参数存储于Excel格式文件中,便于用户调整更新。该系统主要分为3个模块:舱室属性定义模块、防火区域自动划分模块以及结构防火等级统计模块。

图5 船舶舱室防火区域辅助划分系统基本模块架构图

2.1 舱室属性定义模块

该模块主要辅助实现的是1.2 节中流程(1)和(2)。针对流程(1)来说,主要解决舱室几何建模问题。UG 本身有强大的三维实体几何建模能力,可以准确地表达船舶各舱室几何形状;此外,该软件还支持多种通用几何信息格式(如*.iges、*.stp 等),可以将其他三维软件创建的舱室模型通过中间格式导入到UG 中,节省建模时间。

流程(2)是本系统二次开发的重要工作之一。为便于系统自动判断舱室间防火区域划分,需要对每个舱室的类别属性进行标准化定义,基本步骤如下:

(1)将各类舱室类别信息定义存储在Excel格式文件中,主要包括项目舱室属性表(如下页图6中右表所示)、规范舱室防火类别表(如下页表2所示)以及舱壁和甲板对应的舱室间防火等级规范要求(如第45页表3和第46页表4所示)。通过UG支持的NXOpen开发工具,可以读取这些Excel表格所存储的信息。

表2 SOLAS 36 人以上客船舱室类型列表

(2)在UG中开发用户界面,提供舱室选择和既定属性类别选择功能;本系统应用UG提供的界面开发工具BlockUI控件进行开发,提供用户选择待定义的几何实体,以及选择既定的舱室类别。其中,这些舱室类别为后台读取步骤(1)中Excel存储的舱室属性表信息。

(3)将舱室属性信息保存在每个实体模型的自定义属性中。利用UG支持的对象自定义属性功能,将每个舱室用户定义的舱室类别名称(如“BW”)、舱室名称(如“FPT”)以及防火类别(如“C10”)等信息存储到每个实体几何对象的自定义属性中。

该模块界面与舱室类别信息存储表形式见下页图6。

图6 舱室属性定义模块界面与舱室类别信息存储表

?

?

2.2 防火区域自动划分模块

该模块是本文所提方法的核心模块,对应实现的内容为1.2 节三维CAD 防火区域划分方法流程中的(3)和(4)。实现的基本原理为:

(1)读取Excel 表格中不同舱室间舱壁和甲板防火等级划分规则要求 (表 3 和表4),存储在内存中。

(2)寻找每个待划分舱室空间相邻的舱室。根据防火划分的原理,寻找毗邻舱室是防火定义中关键的一步,防火划分的对象就是不同舱室间毗邻结构。该步骤也是本辅助系统开发的重点和难点,UG本身提供了几何实体求交集的内置函数,但实际应用发现该内置函数的运行效率很低。为解决这一问题,本文提出了一种快速搜索方法,详见第3 章。

(3)创建相邻舱室间共界舱壁。经过步骤(2),会得到一组毗邻的舱室对的集合,集合中的每个元素信息g =(SSRR)。其中:SS为被判断相邻的2 个面的id;RR分别为SS所属的2 个舱室的id。应用UG 提供的内置函数,可以为每对SS创建公共限界面S。为方便后续防火属性判断,在S上存储其对应的舱室RR所属的舱室防火类别CC,以及区分该限界面是甲板或是舱壁的属性类别TT的判断可以通过S面的法向进行判别。

(4)依据2.2 节(1)获得的规范要求(即舱壁或甲板防火类别矩阵表3 和表4),代入每个限界面S的舱室防火类别属性信息CCT查询并确定限界面的防火属性,并通过自定义属性存储到限界面模型上。

(5)为方便检查与后续出图,该模块还会为每种防火等级的舱壁、甲板设定特定颜色,不同防火等级对应的颜色也可由用户通过配置文件进行个性化修改。

2.3 结构防火分隔等级统计模块

全船舱室防火绝缘材料的使用数量多少是评价舱室布置优劣的重要指标。通过结构防火分隔等级统计模块,可以快速反馈全船或选定舱壁甲板的各类防火等级面积情况。

该模块实现的基本原理为:

(1)用户选择所需统计的舱壁和甲板对象集合。模块遍历每个所选对象:

a)提取每个对象所附的自定义防火等级属性参数。

b)应用UG 内置的API 函数获取每个片体对象的面积信息。

(2)统计汇总并输出。

该模块功能可以为后续基于防火分隔等级为目标的舱室布局自动优化提供评判基础。

3 相邻舱室快速搜索关键技术

防火区域自动划分模块的关键难点是如何快速判断2 个舱室的边界是否彼此相邻,即是否有共界面。本质上就是判断每个舱室的每个面与哪些舱室的哪些面有重叠部分。通常,成熟的三维CAD 软件都有判断2 个实体之间进行布尔运算的功能,但是每次运算的时间会相对较长,当舱室数量很大时,程序运算效率不高。

以1 艘大型豪华邮轮为例,全船十几层甲板,每层甲板有几十、甚至上百个舱室,全船总计几千个舱室,每个房间一般最少有6 个面。如果每对舱室的每两个面都要一一作循环判断,不仅计算数量将非常惊人,而且程序运行等候时间也是设计人员所无法接受的。

针对这一问题,本文提出了分步分级的相邻舱室判断方法,通过6 步由简到繁的判断程序,逐步筛查判断每对舱室间边界是否共界。以舱室A 的面a 与舱室B 的面b 为例说明,判断步骤基本内容如下:

(1)判断a 和b 是否都是平面:如果是,进行(2);如果a 和b 都是曲面,进行(6);否则,返回结果a 和b 不相邻,判断结束。

(2)判断a 和b 的法向是否相同:如果是,进行(3);否则,返回结果a 和b 不相邻,判断结束。

(3)判断a 和b 间平面距离是否为0:如果是,进行(4);否则,返回结果a 和b 不相邻,判断结束。

(4)将a 和b 所有节点投影到所在平面并转换为平面坐标系坐标(,),判断转换后的a 和b坐标范围是否有重叠,如图7 所示。如果有,进行(5);否则,返回结果a 和b 不相邻,判断结束。

图7 平面多边形范围是否重叠判断

(5)根据参考文献[6]中关于任意简单多边形相交的判断算法,判断平面内2 个任意多边形是否重叠:如果是,则a 和b 相邻,进行(6);否则,返回结果a 和b 不相邻,判断结束。

(6)利用软件自带的布尔运算功能,创建a和b 之间的共界面。

以上判断流程主要针对船舶舱室特有的几何特征,即平面边界多、曲面边界少,即使是豪华邮轮,其曲面边界也往往在船体的外表面,而这些外表面往往不会和其他舱室共界。

4 船舶舱室防火区域辅助划分系统在某邮轮上的应用

这一章将应用本文提出的舱室防火区域辅助划分系统,对某邮轮上建部分区域进行防火分隔自动划分工作。此次测试涉及该邮轮上建部分甲板总计约150 个舱室区域,分4 个主竖区。

需要说明的是:为便于进行舱室区域布置规划,每片相邻住舱定义为1 个大住舱区域,而非每个房间建1 个舱室模型。舱室模型见图8。

图8 某邮轮局部上建舱室三维模型

应用本文舱室防火区域自动划分系统,自动生成舱室间分界面约695 个,并依据规范要求为其定义防火属性。防火分隔结果见下页图9,各分界面颜色对应防火等级与统计结果见下页表5。应用本文第3 章的“相邻舱室快速搜索技术”后,本案例的运行时间从原先的约20 min 降低至约3 min,节省时间80%以上。防火分隔等级统计结果见下页图10。

图10 防火分隔等级统计结果

表5 防火等级颜色图例

图9 某邮轮局部上建防火分隔模型

5 结 语

针对大型邮轮等客船舱室众多、传统防火区域划分方法工作量大、需要较多人工判断与手动操作,且不适应船舶三维设计整体环境等方面问题,本文提出了一种基于三维CAD 软件为平台,融入规范要求并运用二次开发技术,开发船舶舱室防火区域划分的辅助系统与方法,很大程度上提高了船舶舱室防火区域划分的自动化,不仅减少了设计者的工作量,也降低了人为出错概率。该系统还提供了针对不同防火分隔等级用量的统计功能,可为基于降低防火材料使用为目标的舱室布局优化奠定技术基础。

猜你喜欢
舱室甲板类别
某客滚船舱室单元的电气设计
客滚船进水探测系统设计分析
在干船坞进行机舱区舱室结构试验的研究及应用
一起去图书馆吧
简析基于概率预测的网络数学模型建构
甲板秀秀秀脸型
拼航空母舰
微观航母之飞行甲板的功能设计
选相纸 打照片
航母甲板上斜着走