浅谈应用二次开发制作船体型材自动套料软件

时间:2022-08-23 07:56:49

浅谈应用二次开发制作船体型材自动套料软件

摘 要:根据船体型材零件数量多形状复杂的特点,分析船厂现有型材下料模式,基于TRIBON系统的基础上,通过PYTHON语言对TRIBON进行二次开发,制作适合设计和施工的型材自动套料加工的管理系统。本研究通过提取TRIBON软件的数据库的信息,编制型材备料清单自动生成程序,实现标准格式的型材备料清单的自动生成,以及进行计算机型材预套料,从而达到提高生产设计效率和材料利用率的目的。

关键词:TRIBON系统;PYTHON语言;二次开发;型材套料

1 TRIBON系统

TRIBON系统是瑞典KCS公司研制的用于造船设计和生产的专业软件,是集计算机辅助设计与建造和信息集成于一体,并覆盖船体、管系、电缆、舱室、涂装等各个专业的船舶专业软件。其特点在于用计算机建立船舶的生产信息数据库,可进行各种信息数据的计算、管理和统计,且生产信息能直接被提取出来用于生产制造,完成设计与生产准备的统一。由于数据库可共享,设计人员可以方便地访问设计信息,使每个设计人员可以看到其他设计人员所作的最新变动,所以各专业之间可平行作业和相互协调,降低专业间的协调成本,减少设计和制造中的修改工作量,提高设计质量,缩短设计周期。因此,越来越多的造船行业运用TRIBON系统进行船舶的生产设计。但由于TRIBON系统本身的数据库开放性不足,部分模块和我国造船的实际情况存在差异等原因,国内企业经常需对TRIBON软件进行二次开发,以适合本企业使用。如我厂以63500 DWT船型为研究对象,利用Python语言编写的型材自动套料软件

2 Python语言

Python是一门解释性的、面向对象的、动态语义特征的高层语言。Python是一种脚本语言,脚本语言是类似DOS批处理、UNIX shell程序的语言。脚本语言不需要每次都编译再运行,并且在执行中可以很容易地访问正在运行的程序,甚至可以动态地修改正在运行的程序,适用于快速地开发及完成一些简单的任务。

3 型材套料现状

利用TIBON软件建好模型后,通过TIBON软件中的Profile Nesting模块的功能,提取数据库的信息,编制型材下料加工草图,如图1所示。

图1

图中包含了型材详细的材料大小、材质、端部形式、加工等信息。但只有这样的型材图还无法提供给采购部门进行采购。需提供详细的材料清单,如现在有一个分段某种规格型材P1,P2,P3…,Pn(选用8米/根母材,超过8米型材可单独处理)。要将这n根型材全部套料共需要8米/根该规格的型材多少根,这需要设计人员通过采用EXCEL手工统计,并提供用料清单给采购部门采购材料。而通过人工计算,一方面设计效率低,材料利用率不高,另一方面这样的下料草图下发现场后,现场施工人员还需要自己根据材料大小选择适当的搭配来控制材料利用率,或现场增加的接缝往往不能考虑到断缝与结构或焊缝之间的距离,从而造成不必要的工程返工,占用了大量的工作时间,且无法控制材料利用率。

4 二次开发自动优化型材套料软件

根据套料优化原则,针对优化型材套料主要分为两步来进行。

可以假设分段某种规格的n根型材需要套料为例,选用8米/根母材,且每根型材的长度都不超过母材的长度(超过母材的可以单独处理)。

4.1 初步预套料

将需要套料的n根型材按其长度的降序排列为数据(P)=(P1,P2,P3,…,Pn)。设套有型材的母材数据(N),编号Ni中记录了套入第i根母材中的型材数据,Ni母材的余料长度记作Li(Li=8-SUM(Ni)),将(N)按余料长度升序排序。

从排序后的(P)中依次提取每根型材Pi进行套料,在排序后的(N)中依次筛选套料母材Ni、Li:如果有Li>=Pi(即型材Pi套入母材Ni中,不会超出母材的长度),则将型材Pi套入母材Ni中,并修改相应的Li的值(Li-=Pi);如果没有满足Li>=Pi,则新增加一根母材Nn+1,将Pi套入Nn+1中,余料长度Ln+1=8-Pi。直到套完最后一根型材Pn为止。

4.2 优化套料

目的是为了使母材余料少的利用率更高,母材利用率低的余料更大,以便部分余料可以再次利用。

通过第一次初步预套料后,可以得到套料母材数据{N}({Ni}={(Pi),Li} ,Pi为Ni母材上所套型材的数据,Li为Ni母材余料长),将{N}按Li升序排列,假如得到如下事例:

N1 = {(P1,P2,P3),L1},

N2 = {(P4,P5,P6),L2},

N3 = {(P7,P8,P9),L3},

… …

Nn = {(Pn-2,Pn-1,Pn),Ln}

首先对母材N1进行优化,将套入N1中的各型材进行任意组合之一ZP1+,与N1之后的N2至Nn中各自型材任意组合之一ZPi+进行比较,如果有0

例如,N1中的(P1+P3)和N3中的(P7+P8),满足 (P1+P3)-(P7+P8)

N1 = {(P2,P7,P8),L1},

N2 = {(P4,P5,P6),L2},

N3 = {(P1,P3,P9),L3},

… …

Nn = {(Pn-2,Pn-1,Pn),Ln}

(L1 -= (P1+P3)-(P7+P8), L3 += (P1+P3)-(P7+P8))

互换后再次对{N}排序后重复对N1互换优化,直至没有可互换操作为止,则完成对N1的优化工作。按照对N1的优化操作依次完成之后的N2至Nn-1母材的优化。

用软件自动套料后生成的用料情况以及基本界面如图2

图2 图3

其中在生成材料清单的同时,创建了SKE.DXF和PLS.DXF两个文件,其中PLS.DXF文件如图3所示,该文件中有详细的各种规格型材长度以及每根8米长母材中包含的零件,现场施工人员可以根据该文件很快的进行合理套料。

5 结束语

实践证明,采用Python语言对TRIBON软件进行二次开发制作的型材自动套料软件,在对分段型材进行套料时,相较于原始人工统计方法,不仅分段型材材料利用率得到了很大的提高,同时所耗设计工时大大缩短,准确率大大提高。该软件缩短了工作时间,方便了现场施工,提高了材料利用率,最终达到了降本增效的目的。

参考文献

[1]王世贤.实用型材下料优化计算机程序.煤矿机械,1990.(4).

[2]钱善波,孙志伟.型材自动套料管理系统的研发与应用[J]造船技术,2008,3:8-10.

[3]陈革,冯大辉译.Python 语言入门.北京:中国电力出版社,2001.

[4]王波,型材优化下料问题的变换算法.咸宁学院学报.2005(12).

上一篇:三维协同设计技术BIM在选煤厂设计中的应用 下一篇:试论计算机控制中的网络与通信技术