孙 良,褚朱宏
(江苏新世纪造船有限公司,江苏 靖江 214518)
随着造船技术的不断改进,当今造船的成本较以前已经发生了很大的变化,建造成本成为最大成本之一。在建造成本的构成中又以装配成本为重,因为船体的建造是部件装配、单元装配、分段装配、船台/坞内装配、码头的一个过程,而且在装配过程中每一部件的装配顺序对整个分段的建造周期都有着非常重要的意义。有效减少装配成本已成为降低建造成本的重要课题。
现代造船模式能提高预装率,减少船台/坞内工作量。结构件的装配时机在不同阶段的成本将按1、3、5、7、9倍上涨,装配时间越晚所需的工时越多,花费的成本也越大。因此,在生产设计阶段必须合理组织好每一部件的装配,使得现场施工能做到在时间上有序、空间上分道。
TRIBON M3软件是大家都熟悉的一款船舶设计软件。其中的装配计划模块的主要功能就是对所有需要装配的部件进行合理组织。
TRIBON M3装配计划能建立起结构与舾装的混合装配体系,它可以打破原有分段和区域的体系,按照最优的装配方法建立好装配树,为每一装配节点设置装配属性,并且生成生产所需的组立图。
装配树是一种反映装配顺序的树状图,在树状图中通常以分段名作为树的根节点,然后向下扩展到大组、中组和小组,如图1所示。
图1 结构装配树
图1中,IB1A组立是小组立;ZP1A是中组立,它由IB1A小组件和本级组立的部分零件组成;000是大组立,它由 FR76B、FR79B、FR82B、FR85、ZP1A等中组立和部分本级零件组成;104是完整的分段。通过此装配图,现场施工时可以非常直观地知道装配的上下级关系。但TRIBON M3的装配计划模块不能设置同级装配的先后顺序,到了AVEVA MARINE系统中才可以定义。
在装配计划模块中,可以为每一装配节点设置装配属性。装配属性有装配类型、装配工位、组立流向、装配基面、建造方针以及预估重量重心等。
装配工位用于定义当前组立在哪个工位上进行装配,因为在工厂内同一工序可能有很多的工位。例如,同样是分段制作工序,它可能包含很多的曲面胎架工位和平曲胎架工位。
装配流向用于定义当前组立包含的零件或部件需要流转到哪一部门或工序。例如,需要小组立的零件直接流转到制作小组立的部门或工位,而在分段装配阶段才需要的零件或部件直接流转到分段制作部门。对于分段总组或合拢阶段才使用的零件在零件切割完成后可以直接流转到总组或搭载的工位。这样可以避免零件在所有的工序中多余的流转,减少零件在流转过程中出现的遗失,从而大大节省物流成本和原材料成本。
装配基面用于定义当前组立在装配零件的哪一面向着基面,使得装配最方便。建造方针用于定义当前组立如何进行装配,一般是些文字性的描述。预估重量用于定义当前组立里需要但没有模型或实体的构件的重量和重心。
组立图是用于指导现场施工的图纸之一,它不同于一般的结构图。组立图上通常只标示当前组立的零件和部件,对于不是当前组立的零件和部件不会显示出来。在组立图上还可以将当前组立的图形同时以两种方式表达,一种是三维视图,另一种是符号视图。组立组与传统的结构图相比更简洁,更有利于工人施工。
TRIBON M3的二次开发大都使用系统自带的Vitesse接口来读写数据或操作对象,它使用的语言是python,python是一种面向对象的语言。通过Vitesse接口程序可以实现工具条、快捷键的定制,也可以实现对模型、图纸的操作。用好二次开发工具可以大大提高设计效率。
在TRIBON M3的装配计划模块中可以建立装配树,但是系统本身没有直接输出装配树状图的工具,因此需要二次开发才能将装配树状图输出,从而实现指导生产的目的。TRIBON M3中用于装配计划的Vitesse程序有kcs_assembly、KcsAssembly。
因此在程序的开头首先需要导入以下两类,import kcs_assembly,import KcsAssembly。
其次就是要获取装配树上的每个节点,为输出树状图做好准备。一般来讲,要输出哪一个组立的树状图需要由用户输入,系统可以通过kcs_assembly类中assembly_sub_get方法来获取子节点,但是每一子节点下又包含有子节点,并且子节点的级数不固定,因此要获取每一节点的子节点较为困难。但是如果使用递归算法可以很方便地实现。
获得装配树的各级节点后,可以很方便地获取各节点的属性,如流向、工位、建造方针、重量、重心等。
TRIBON M3内的装配计划模块自带了生成组立图的功能,但是需要手工一个一个节点地生成,效率较低,因此有必要开发批量生成组立图的程序。
2.3.1 生成装配零件表的原理
生成装配零件表(Assembly Part List)时系统会触发环境变量SBB_TRIGDIR所指定文件夹内的trig_ap_parts_list_create程序执行,并且在生成装配零件表时能够遍历所属子节点并生成子节点的装配零件表。因此,在进行二次开发时可以借用此触发功能,通过改写trig_ap_parts_list_create来实现批量生成组立图。
下面简要分析一下系统自带的触发程序,程序代码如下:
从上面的代码可以看出此触发程序其实是一个函数,它的输入参数是一个数组,此数组包含的是2个从TRIBON输出的2个CSV文件的文件名称。在函数中执行了一个带有宏语句的EXCEL文件,然后由EXCEL文件中宏语句对TRIBON输出的2个CSV文件进行整理并输出相关报表。
因此,在开发自动生成组立图时,可以利用此触发器,并使用由TRIBON生成的2个CSV文件,并生成工厂所需要的装配零件表。
2.3.2 批量生成组立图的原理
在TRIBON中生成组立图有两种方法,一种是交互式,另一种是批处理方式,两种方式各有优缺点,这里主要介绍批处理方式。进行批处理生成组立图时使用了tbwautodraw程序,它在DOS模式下运行,运行时可以使用多项参数,主要参数有:
2.3.3 自动生成组立图
运用上述两个原理,在生成装配零件表的触发程序中加入下列代码来实现自动生成如图2所示的组立图:
图2 装配组立图
船舶建造是以船体为载体的一个建造过程,船体结构建造的能力和水平是衡量造船企业的一个重要指标。在生产中运用科学、合理的装配计划能大大缩短船舶制造周期,同时也能有效地减少很多重复的劳动,为工厂的降本增效发挥积极作用。实践证明,应用TRIBON M3二次开发工具可以大大提高设计效率,从而为实现真正意义的纸上模拟造船发挥作用。