基于CAA开发的船体结构开孔重量重心计算方法及系统与流程

未命名 08-27 阅读:128 评论:0

基于caa开发的船体结构开孔重量重心计算方法及系统
技术领域
1.本发明涉及船舶数字化设计技术领域,具体涉及一种基于caa开发的船体结构开孔重量重心计算方法及系统。


背景技术:

2.目前三维设计技术在潜艇设计、生产等领域得到广泛应用;三维设计技术不仅提高了设计质量,同时也节约了设计时间,缩短了设计周期;采用三维设计软件进行潜艇设计并根据三维模型进行各项计算是现代海军进行复杂潜艇设计的必由之路。
3.以法国达索公司的catia软件系统为代表的三维软件,在国内外各制造企业广泛应用,是目前航空、汽车及船舶等行业的主流软件之一,catia主要有两种二次开发方法,一种是基于vba(visual basic for applications,visual basic宏语言)的宏方法,另一种是基于caa(component application architecture,组件应用架构)的c++或者java应用接口。
4.重量重心是船舶的一项基本而又重要的设计数据,船舶的各项性能都与之有关;该项计算统计工作贯穿整个船舶的技术设计、施工设计;由于船体结构复杂,涉及复杂的曲面计算,如艏部的球面、艉部的锥段、单壳体或者单双混合壳体的计算。而且在这些复杂的船体结构上布置一些比如焊接件、穿舱件时,存在一些船体结构开孔,在设计初期,这些穿舱件位置难以固化,同时,复杂结构区域开孔质量无法精确计算,从而影响整个结构的重量重心。
5.目前针对船体结构开孔的重量重心计算包括手工进行测算、通过cad软件进行重量重心计算以及基于数据库技术进行重量重心计算;但手工进行测算存在效率低下、计算精度不一的问题;通过cad软件进行重量重心计算的方法由于其采用平面图计算,存在计算十分复杂以及人为误差、耗时长的问题;而基于数据库技术进行重量重心计算是应用数据库方法对分项计算和汇总统计进行编程,其计算过程中有人为统计数据图表,存在不容易发现错误,存在人为误差的问题;因此,在计算重量重心时,由于结构存在一些开孔,用传统的重量重心计算方法计算得出的结果不准确,同时存在无法实时更新的缺陷。


技术实现要素:

6.针对上述问题,本发明的一个目的是提供一种基于caa开发的船体结构开孔重量重心计算方法,该方法基于三维设计算重量重心,相较于采用单纯二维cad计算重量重心更精确;该方法为实时自动统计方法,消除人工统计过程中可能出现的错误。
7.本发明的第二个目的是提供一种基于caa开发的船体结构开孔重量重心计算系统。
8.本发明所采用的第一个技术方案是:一种基于caa开发的船体结构开孔重量重心计算方法,包括以下步骤:
9.s100:构建穿舱件模型,以获得穿舱件模型的外形尺寸及定位信息;
10.s200:基于所述穿舱件模型的外形尺寸及定位信息,构建穿舱件骨架模型;
11.s300:建立全船坐标系及船体结构背景曲面;基于全船坐标系将所述穿舱件骨架模型布置在所述船体结构背景曲面上,以获得开孔信息;
12.s400:基于所述开孔信息计算全船开孔重量重心。
13.优选地,所述步骤s100中的穿舱件模型的外形尺寸及定位信息包括:整个穿舱件模型的外表面、穿舱件模型在穿舱时与船体结构的相交面以及穿舱件模型的几何中心线。
14.优选地,所述步骤s200包括:
15.通过caa的二次开发,采用数据库驱动的方法,直接读取穿舱件模型的外形尺寸及定位信息,基于所述穿舱件模型的外形尺寸及定位信息自动生成穿舱件骨架模型。
16.优选地,所述步骤s300包括以下子步骤:
17.s310:获取骨架开孔的定位信息;
18.s320:基于全船坐标系以及所述骨架开孔的定位信息,通过caa将所述穿舱件骨架模型布置在所述船体结构背景曲面上得到虚拟开孔,从而获得开孔信息。
19.优选地,所述步骤s310包括:
20.获取整个穿舱件模型的外表面与船体结构背景曲面的交线,对所述交线进行填充,从而生成船体结构开孔面;
21.获取穿舱件模型的几何中心线与所述船体结构开孔面的交点数据,以得到骨架开孔的定位信息。
22.优选地,所述步骤s320中的开孔信息包括:单个穿舱件开孔的x坐标值、y坐标值和z坐标值以及孔面积、结构板厚、结构板材密度。
23.优选地,所述步骤s400中全船开孔重量重心通过以下公式计算:
[0024][0025][0026][0027]
式中,xc为开孔重心x坐标值;,mi为每个穿舱件开孔的重量;xi为单个穿舱件开孔的x坐标值;yc为开孔重心y坐标值;yi为单个穿舱件开孔的y坐标值;zc为开孔重心z坐标值;zi为单个穿舱件开孔的z坐标值。
[0028]
优选地,所述每个穿舱件开孔的重量通过以下公式表示::
[0029]
mi=s
××
ρ
[0030]
式中,mi为每个穿舱件开孔的重量;s为孔面积;h为结构板厚,ρ为结构板材密度。
[0031]
本发明所采用的第二个技术方案是:一种基于caa开发的船体结构开孔重量重心计算系统,包括建模模块、穿舱件骨架模型构建模块、虚拟开孔模块和计算模块;
[0032]
所述建模模块用于构建穿舱件模型,以获得穿舱件模型的外形尺寸及定位信息;
[0033]
所述穿舱件骨架模型构建模块用于基于所述穿舱件模型的外形尺寸及定位信息,构建穿舱件骨架模型;
[0034]
所述虚拟开孔模块用于建立全船坐标系及船体结构背景曲面;基于全船坐标系将
所述穿舱件骨架模型布置在所述船体结构背景曲面上,以获得开孔信息;
[0035]
所述计算模块用于基于所述开孔信息计算全船开孔重量重心。
[0036]
优选地,所述虚拟开孔模块执行以下操作:
[0037]
s310:获取骨架开孔的定位信息;
[0038]
s320:基于全船坐标系以及所述骨架开孔的定位信息,通过caa将所述穿舱件骨架模型布置在所述船体结构背景曲面上得到虚拟开孔,从而获得开孔信息。
[0039]
上述技术方案的有益效果:
[0040]
(1)本发明中公开的一种基于caa开发的船体结构开孔重量重心计算方法基于三维设计算重量重心,相较于采用单纯二维cad计算重量重心更精确;该方法为实时自动统计方法,消除人工统计过程中可能出现的错误。
[0041]
(2)本发明中由于能直接通过三维提取开孔的面积s,能解决不规则结构如锥段、球面结构上布置穿舱件无法精准计算开孔质量的问题。
[0042]
(3)本发明利用参数化建模产生的穿舱件外形尺寸能根据设计人员随时调整尺寸。
[0043]
(4)本发明可按设计人员特定的布置需求,布置穿舱件后(即在穿舱件定位后),根据三维模型计算出船舶复杂区域结构开孔重量重心,并能随设计变化实时更新;从而更准确的支撑设计人员掌握整个结构的重量重心,优化总体结构设计。
[0044]
(5)本发明提出的人机交互界面能实时查看、写入对应数据包总开孔重量重心。
附图说明
[0045]
图1为本发明的一个实施例提供的一种基于caa开发的船体结构开孔重量重心计算方法的流程框图;
[0046]
图2为本发明的一个实施例提供的参数化形式的穿舱件的示意图;
[0047]
图3为本发明一个实施例提供的穿舱件模型的外形尺寸及定位信息的示意图;
[0048]
图4为本发明一个实施例提供的整个穿舱件外表面与船体结构背景的交线的示意图;
[0049]
图5为本发明一个实施例提供的穿舱件的几何中心线与结构面的交点的示意图;
[0050]
图6为本发明一个实施例提供的开孔信息;
[0051]
图7为本发明一个实施例提供的人机交互界面的示意图;
[0052]
图8为本发明的一个实施例提供的一种基于caa开发的船体结构开孔重量重心计算系统的结构示意图。
具体实施方式
[0053]
下面结合附图和实施例对本发明的实施方式作进一步详细描述。以下实施例的详细描述和附图用于示例性地说明本发明的原理,但不能用来限制本发明的范围,即本发明不限于所描述的优选实施例,本发明的范围由权利要求书限定。
[0054]
在本发明的描述中,需要说明的是,除非另有说明,“多个”的含义是两个或两个以上;术语“第一”“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性;对于本领域的普通技术人员而言,可视具体情况理解上述术语在本发明中的具体含义。
[0055]
cad(computer aided design)指利用计算机及其图形设备帮助设计人员进行设计工作。
[0056]
caa(component app lication architecture)是catia功能模块进行二次开发的工具。
[0057]
实施例一
[0058]
如图1所示,本发明的一个实施例提供了一种基于caa开发的船体结构开孔重量重心计算方法,包括以下步骤:
[0059]
s100:构建穿舱件模型,以获得穿舱件模型的外形尺寸及定位信息;
[0060]
根据实体的穿舱件,数据库建模人员利用参数化建模,构建相应的穿舱件模型;通过穿舱件模型能得出的穿舱件模型的外形尺寸及定位信息。
[0061]
在对穿舱件进行参数化设计时,需要预先定义穿舱件中的参数关系式,并通过参数遍历以及名称匹配找到对应的变化参数,进而调整参数值并且生成参数化形式的穿舱件模型。
[0062]
基于穿舱件模型的外形尺寸及定位信息创建数据集dw,即数据集dw中包括穿舱件模型的外形尺寸及定位信息;穿舱件模型的外形尺寸及定位信息包括整个穿舱件模型的外表面(kk)、穿舱件模型在穿舱时与船体结构的相交面(topsurface)和穿舱件模型的几何中心线(linez);穿舱件模型的几何中心线用于定位该穿舱件模型的位置。
[0063]
如图2所示,穿舱件模型可根据实际设计情况随时调整不同的外形尺寸(即通过修改参数parameters内的参数调整不同的外形尺寸)。
[0064]
s200:基于穿舱件模型的外形尺寸及定位信息,通过caa构建穿舱件骨架模型;
[0065]
穿舱件骨架模型即穿舱件模型的开孔骨架;本发明通过caa的二次开发,采用数据库驱动的方法,直接从数据集dw中读取穿舱件模型的外形尺寸及定位信息,基于穿舱件模型的外形尺寸及定位信息自动生成穿舱件骨架模型,即构建了一个虚拟的穿舱件骨架模型。
[0066]
进一步将穿舱件模型的外形尺寸及定位信息存储在数据集partbody里,数据集partbody是catia软件里自带的用于存储每一个穿舱件建模时生成的几何体的数据集,里面有相关穿舱件的物理信息,partbody不仅可以存放“体状信息”也可以存放“线状信息”。
[0067]
在catia软件中,一个产品的各个信息可以都建立在一个产品物理结构树上,例如图3中的“xx产品”就是一个产品物理结构树的母节点,“xx区域”就是“xx产品”的子节点,整个产品的外形结构、管路、舾装、电缆都可以分成子节点挂在该产品物理结构树上。
[0068]
基于穿舱件模型的外形尺寸及定位信息,通过caa构建穿舱件骨架模型的具体操作步骤包括:
[0069]
点击catia软件中的二次开发(即caa)按钮“生成骨架包”,此时就会在产品物理结构树上生成图3中的“xx开孔数据包”这一母节点,“xx开孔数据包”中每一个穿舱件模型都对应一个穿舱件骨架模型(即开孔骨架),例如图3中的“开孔骨架1”、“开孔骨架2”以及“开孔骨架3”。
[0070]
s300:建立全船坐标系及船体结构背景曲面;基于全船坐标系将穿舱件骨架模型布置在船体结构背景曲面上,以生成开孔信息;
[0071]
(1)在catia软件上建立全船坐标系及船体结构背景曲面;
[0072]
在catia软件的产品物理结构树上建立全船坐标系及船体结构背景曲面(即结构背景),全船坐标系是产品上所有几何模型的定位基准。
[0073]
(2)基于全船坐标系通过caa将穿舱件骨架模型布置在船体结构背景曲面上,以生成开孔信息,包括以下子步骤:
[0074]
s310:获取骨架开孔的定位信息;
[0075]
在运行骨架开孔时,通过使用catia v6开放的caa底层接口,提取整个穿舱件模型的外表面(kk)与船体结构背景曲面的交线,得到如图4中的交线(intersectcurve);如图5所示,程序再对该交线(intersectcurve)进行填充,从而生成船体结构开孔面,进一步得到该船体结构开孔面的面积s(fillsurfacep);同时通过提取穿舱件模型的几何中心线(linez)与船体结构开孔面的交点(intersectpointp)数据,以得到骨架开孔的定位信息。
[0076]
s320:基于全船坐标系以及骨架开孔的定位信息,通过caa将该穿舱件骨架模型布置在船体结构背景曲面上得到一个虚拟开孔,从而生成开孔信息;
[0077]
本发明根据三维穿舱件建模,生成穿舱件骨架模型后,先形成骨架开孔的定位信息,再利用caa的二次开发基于骨架开孔的定位信息进行虚拟开孔,得到开孔信息;即此处的开孔在三维实体上并没有真正的孔,只是基于开孔数据包内的穿舱件骨架模型,得到以该穿舱件骨架模型布置在船体结构背景曲面上而生成的开孔信息;如图3中的“开孔骨架4”通过运行骨架开孔,得到如图4中的“开孔骨架4”内的一个骨架开孔的定位信息,存放在开孔数据包里的数据集partbody中。
[0078]
开孔信息包括单个穿舱件开孔的x坐标值、y坐标值和z坐标值以及孔面积、结构板厚、结构板材密度等。
[0079]
s400:基于开孔信息计算全船开孔重量重心;
[0080]
在microsoft visual studio软件上利用c++编程计算全船开孔重量重心,全船开孔重量重心的计算公式如下所示:
[0081][0082][0083][0084]
式中,xc为开孔重心x坐标值;,mi为每个穿舱件开孔的重量;xi为单个穿舱件开孔的x坐标值;yc为开孔重心y坐标值;yi为单个穿舱件开孔的y坐标值;zc为开孔重心z坐标值;zi为单个穿舱件开孔的z坐标值。
[0085]
其中,每个穿舱件开孔的重量mi通过以下公式表示:
[0086]
mi=s
××
ρ
[0087]
式中,mi为每个穿舱件开孔的重量;s为孔面积;h为结构板厚,ρ为结构板材密度。
[0088]
w=∑mi[0089]
式中,w为开孔总重量;mi为每个穿舱件开孔的重量。
[0090]
如图6所示,将上述最后计算得到的数据(每个穿舱件开孔的重量、开孔重心x坐标值、开孔重心y坐标值、开孔重心z坐标值等)作为开孔信息也储存至开孔数据包内。
[0091]
本发明最终将全部的穿舱件开孔重量重心以excel形式导出(即以报表的形式进行输出),便于设计人员查看;或以如图7所示的人机交互界面进行显示,,当设计人员点击人机交互界面上的统计开孔包重量重心按钮时,人机交互界面将全部开孔重量重心写入相对应的数据包内,方便结构设计。
[0092]
实施例二
[0093]
如图8所示,本发明的一个实施例提供了一种基于caa开发的船体结构开孔重量重心计算系统,包括建模模块、穿舱件骨架模型构建模块、虚拟开孔模块和计算模块;
[0094]
所述建模模块用于构建穿舱件模型,以获得穿舱件模型的外形尺寸及定位信息;
[0095]
所述穿舱件骨架模型构建模块用于基于所述穿舱件模型的外形尺寸及定位信息,构建穿舱件骨架模型;
[0096]
所述虚拟开孔模块用于建立全船坐标系及船体结构背景曲面;基于全船坐标系将所述穿舱件骨架模型布置在所述船体结构背景曲面上,以获得开孔信息;
[0097]
所述计算模块用于基于所述开孔信息计算全船开孔重量重心。
[0098]
进一步的,在一个实施例中,所述虚拟开孔模块执行以下操作:
[0099]
s310:获取骨架开孔的定位信息;
[0100]
s320:基于全船坐标系以及所述骨架开孔的定位信息,通过caa将所述穿舱件骨架模型布置在所述船体结构背景曲面上得到虚拟开孔,从而获得开孔信息。
[0101]
在本技术所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0102]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0103]
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0104]
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
[0105]
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

技术特征:
1.一种基于caa开发的船体结构开孔重量重心计算方法,其特征在于,包括以下步骤:s100:构建穿舱件模型,以获得穿舱件模型的外形尺寸及定位信息;s200:基于所述穿舱件模型的外形尺寸及定位信息,构建穿舱件骨架模型;s300:建立全船坐标系及船体结构背景曲面;基于全船坐标系将所述穿舱件骨架模型布置在所述船体结构背景曲面上,以获得开孔信息;s400:基于所述开孔信息计算全船开孔重量重心。2.根据权利要求1所述的船体结构开孔重量重心计算方法,其特征在于,所述步骤s100中的穿舱件模型的外形尺寸及定位信息包括:整个穿舱件模型的外表面、穿舱件模型在穿舱时与船体结构的相交面以及穿舱件模型的几何中心线。3.根据权利要求1所述的船体结构开孔重量重心计算方法,其特征在于,所述步骤s200包括:通过caa的二次开发,采用数据库驱动的方法,直接读取穿舱件模型的外形尺寸及定位信息,基于所述穿舱件模型的外形尺寸及定位信息自动生成穿舱件骨架模型。4.根据权利要求1所述的船体结构开孔重量重心计算方法,其特征在于,所述步骤s300包括以下子步骤:s310:获取骨架开孔的定位信息;s320:基于全船坐标系以及所述骨架开孔的定位信息,通过caa将所述穿舱件骨架模型布置在所述船体结构背景曲面上得到虚拟开孔,从而获得开孔信息。5.根据权利要求4所述的船体结构开孔重量重心计算方法,其特征在于,所述步骤s310包括:获取整个穿舱件模型的外表面与船体结构背景曲面的交线,对所述交线进行填充,从而生成船体结构开孔面;获取穿舱件模型的几何中心线与所述船体结构开孔面的交点数据,以得到骨架开孔的定位信息。6.根据权利要求4所述的船体结构开孔重量重心计算方法,其特征在于,所述步骤s320中的开孔信息包括:单个穿舱件开孔的x坐标值、y坐标值和z坐标值以及孔面积、结构板厚、结构板材密度。7.根据权利要求1所述的船体结构开孔重量重心计算方法,其特征在于,所述步骤s400中全船开孔重量重心通过以下公式计算:式中,x
c
为开孔重心x坐标值;,m
i
为每个穿舱件开孔的重量;x
i
为单个穿舱件开孔的x坐标值;y
c
为开孔重心y坐标值;y
i
为单个穿舱件开孔的y坐标值;z
c
为开孔重心z坐标值;z
i

单个穿舱件开孔的z坐标值。8.根据权利要求7所述的船体结构开孔重量重心计算方法,其特征在于,所述每个穿舱件开孔的重量通过以下公式表示:m
i
=s
××
ρ式中,m
i
为每个穿舱件开孔的重量;s为孔面积;h为结构板厚,ρ为结构板材密度。9.一种基于caa开发的船体结构开孔重量重心计算系统,其特征在于,包括建模模块、穿舱件骨架模型构建模块、虚拟开孔模块和计算模块;所述建模模块用于构建穿舱件模型,以获得穿舱件模型的外形尺寸及定位信息;所述穿舱件骨架模型构建模块用于基于所述穿舱件模型的外形尺寸及定位信息,构建穿舱件骨架模型;所述虚拟开孔模块用于建立全船坐标系及船体结构背景曲面;基于全船坐标系将所述穿舱件骨架模型布置在所述船体结构背景曲面上,以获得开孔信息;所述计算模块用于基于所述开孔信息计算全船开孔重量重心。10.根据权利要求9所述的船体结构开孔重量重心计算系统,其特征在于,所述虚拟开孔模块执行以下操作:s310:获取骨架开孔的定位信息;s320:基于全船坐标系以及所述骨架开孔的定位信息,通过caa将所述穿舱件骨架模型布置在所述船体结构背景曲面上得到虚拟开孔,从而获得开孔信息。

技术总结
本发明涉及船舶数字化设计技术领域,具体公开了一种基于CAA开发的船体结构开孔重量重心计算方法及系统,包括构建穿舱件模型,以获得穿舱件模型的外形尺寸及定位信息;基于穿舱件模型的外形尺寸及定位信息,构建穿舱件骨架模型;建立全船坐标系及船体结构背景曲面;基于全船坐标系将所述穿舱件骨架模型布置在所述船体结构背景曲面上,以获得开孔信息;基于开孔信息计算全船开孔重量重心;该方法基于三维设计算重量重心,相较于采用单纯二维CAD计算重量重心更精确;该方法为实时自动统计方法,消除人工统计过程中可能出现的错误。消除人工统计过程中可能出现的错误。消除人工统计过程中可能出现的错误。


技术研发人员:陈婧 孙宇航 胡均盛 胡雯华 谷明 张思兵
受保护的技术使用者:中国船舶集团有限公司第七一九研究所
技术研发日:2023.04.03
技术公布日:2023/8/24
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐