孫 良,褚朱宏
(江蘇新世紀(jì)造船有限公司,江蘇 靖江 214518)
隨著造船技術(shù)的不斷改進(jìn),當(dāng)今造船的成本較以前已經(jīng)發(fā)生了很大的變化,建造成本成為最大成本之一。在建造成本的構(gòu)成中又以裝配成本為重,因?yàn)榇w的建造是部件裝配、單元裝配、分段裝配、船臺(tái)/塢內(nèi)裝配、碼頭的一個(gè)過程,而且在裝配過程中每一部件的裝配順序?qū)φ麄€(gè)分段的建造周期都有著非常重要的意義。有效減少裝配成本已成為降低建造成本的重要課題。
現(xiàn)代造船模式能提高預(yù)裝率,減少船臺(tái)/塢內(nèi)工作量。結(jié)構(gòu)件的裝配時(shí)機(jī)在不同階段的成本將按1、3、5、7、9倍上漲,裝配時(shí)間越晚所需的工時(shí)越多,花費(fèi)的成本也越大。因此,在生產(chǎn)設(shè)計(jì)階段必須合理組織好每一部件的裝配,使得現(xiàn)場(chǎng)施工能做到在時(shí)間上有序、空間上分道。
TRIBON M3軟件是大家都熟悉的一款船舶設(shè)計(jì)軟件。其中的裝配計(jì)劃模塊的主要功能就是對(duì)所有需要裝配的部件進(jìn)行合理組織。
TRIBON M3裝配計(jì)劃能建立起結(jié)構(gòu)與舾裝的混合裝配體系,它可以打破原有分段和區(qū)域的體系,按照最優(yōu)的裝配方法建立好裝配樹,為每一裝配節(jié)點(diǎn)設(shè)置裝配屬性,并且生成生產(chǎn)所需的組立圖。
裝配樹是一種反映裝配順序的樹狀圖,在樹狀圖中通常以分段名作為樹的根節(jié)點(diǎn),然后向下擴(kuò)展到大組、中組和小組,如圖1所示。
圖1 結(jié)構(gòu)裝配樹
圖1中,IB1A組立是小組立;ZP1A是中組立,它由IB1A小組件和本級(jí)組立的部分零件組成;000是大組立,它由 FR76B、FR79B、FR82B、FR85、ZP1A等中組立和部分本級(jí)零件組成;104是完整的分段。通過此裝配圖,現(xiàn)場(chǎng)施工時(shí)可以非常直觀地知道裝配的上下級(jí)關(guān)系。但TRIBON M3的裝配計(jì)劃模塊不能設(shè)置同級(jí)裝配的先后順序,到了AVEVA MARINE系統(tǒng)中才可以定義。
在裝配計(jì)劃模塊中,可以為每一裝配節(jié)點(diǎn)設(shè)置裝配屬性。裝配屬性有裝配類型、裝配工位、組立流向、裝配基面、建造方針以及預(yù)估重量重心等。
裝配工位用于定義當(dāng)前組立在哪個(gè)工位上進(jìn)行裝配,因?yàn)樵诠S內(nèi)同一工序可能有很多的工位。例如,同樣是分段制作工序,它可能包含很多的曲面胎架工位和平曲胎架工位。
裝配流向用于定義當(dāng)前組立包含的零件或部件需要流轉(zhuǎn)到哪一部門或工序。例如,需要小組立的零件直接流轉(zhuǎn)到制作小組立的部門或工位,而在分段裝配階段才需要的零件或部件直接流轉(zhuǎn)到分段制作部門。對(duì)于分段總組或合攏階段才使用的零件在零件切割完成后可以直接流轉(zhuǎn)到總組或搭載的工位。這樣可以避免零件在所有的工序中多余的流轉(zhuǎn),減少零件在流轉(zhuǎn)過程中出現(xiàn)的遺失,從而大大節(jié)省物流成本和原材料成本。
裝配基面用于定義當(dāng)前組立在裝配零件的哪一面向著基面,使得裝配最方便。建造方針用于定義當(dāng)前組立如何進(jìn)行裝配,一般是些文字性的描述。預(yù)估重量用于定義當(dāng)前組立里需要但沒有模型或?qū)嶓w的構(gòu)件的重量和重心。
組立圖是用于指導(dǎo)現(xiàn)場(chǎng)施工的圖紙之一,它不同于一般的結(jié)構(gòu)圖。組立圖上通常只標(biāo)示當(dāng)前組立的零件和部件,對(duì)于不是當(dāng)前組立的零件和部件不會(huì)顯示出來。在組立圖上還可以將當(dāng)前組立的圖形同時(shí)以兩種方式表達(dá),一種是三維視圖,另一種是符號(hào)視圖。組立組與傳統(tǒng)的結(jié)構(gòu)圖相比更簡(jiǎn)潔,更有利于工人施工。
TRIBON M3的二次開發(fā)大都使用系統(tǒng)自帶的Vitesse接口來讀寫數(shù)據(jù)或操作對(duì)象,它使用的語(yǔ)言是python,python是一種面向?qū)ο蟮恼Z(yǔ)言。通過Vitesse接口程序可以實(shí)現(xiàn)工具條、快捷鍵的定制,也可以實(shí)現(xiàn)對(duì)模型、圖紙的操作。用好二次開發(fā)工具可以大大提高設(shè)計(jì)效率。
在TRIBON M3的裝配計(jì)劃模塊中可以建立裝配樹,但是系統(tǒng)本身沒有直接輸出裝配樹狀圖的工具,因此需要二次開發(fā)才能將裝配樹狀圖輸出,從而實(shí)現(xiàn)指導(dǎo)生產(chǎn)的目的。TRIBON M3中用于裝配計(jì)劃的Vitesse程序有kcs_assembly、KcsAssembly。
因此在程序的開頭首先需要導(dǎo)入以下兩類,import kcs_assembly,import KcsAssembly。
其次就是要獲取裝配樹上的每個(gè)節(jié)點(diǎn),為輸出樹狀圖做好準(zhǔn)備。一般來講,要輸出哪一個(gè)組立的樹狀圖需要由用戶輸入,系統(tǒng)可以通過kcs_assembly類中assembly_sub_get方法來獲取子節(jié)點(diǎn),但是每一子節(jié)點(diǎn)下又包含有子節(jié)點(diǎn),并且子節(jié)點(diǎn)的級(jí)數(shù)不固定,因此要獲取每一節(jié)點(diǎn)的子節(jié)點(diǎn)較為困難。但是如果使用遞歸算法可以很方便地實(shí)現(xiàn)。
獲得裝配樹的各級(jí)節(jié)點(diǎn)后,可以很方便地獲取各節(jié)點(diǎn)的屬性,如流向、工位、建造方針、重量、重心等。
TRIBON M3內(nèi)的裝配計(jì)劃模塊自帶了生成組立圖的功能,但是需要手工一個(gè)一個(gè)節(jié)點(diǎn)地生成,效率較低,因此有必要開發(fā)批量生成組立圖的程序。
2.3.1 生成裝配零件表的原理
生成裝配零件表(Assembly Part List)時(shí)系統(tǒng)會(huì)觸發(fā)環(huán)境變量SBB_TRIGDIR所指定文件夾內(nèi)的trig_ap_parts_list_create程序執(zhí)行,并且在生成裝配零件表時(shí)能夠遍歷所屬子節(jié)點(diǎn)并生成子節(jié)點(diǎn)的裝配零件表。因此,在進(jìn)行二次開發(fā)時(shí)可以借用此觸發(fā)功能,通過改寫trig_ap_parts_list_create來實(shí)現(xiàn)批量生成組立圖。
下面簡(jiǎn)要分析一下系統(tǒng)自帶的觸發(fā)程序,程序代碼如下:
從上面的代碼可以看出此觸發(fā)程序其實(shí)是一個(gè)函數(shù),它的輸入?yún)?shù)是一個(gè)數(shù)組,此數(shù)組包含的是2個(gè)從TRIBON輸出的2個(gè)CSV文件的文件名稱。在函數(shù)中執(zhí)行了一個(gè)帶有宏語(yǔ)句的EXCEL文件,然后由EXCEL文件中宏語(yǔ)句對(duì)TRIBON輸出的2個(gè)CSV文件進(jìn)行整理并輸出相關(guān)報(bào)表。
因此,在開發(fā)自動(dòng)生成組立圖時(shí),可以利用此觸發(fā)器,并使用由TRIBON生成的2個(gè)CSV文件,并生成工廠所需要的裝配零件表。
2.3.2 批量生成組立圖的原理
在TRIBON中生成組立圖有兩種方法,一種是交互式,另一種是批處理方式,兩種方式各有優(yōu)缺點(diǎn),這里主要介紹批處理方式。進(jìn)行批處理生成組立圖時(shí)使用了tbwautodraw程序,它在DOS模式下運(yùn)行,運(yùn)行時(shí)可以使用多項(xiàng)參數(shù),主要參數(shù)有:
2.3.3 自動(dòng)生成組立圖
運(yùn)用上述兩個(gè)原理,在生成裝配零件表的觸發(fā)程序中加入下列代碼來實(shí)現(xiàn)自動(dòng)生成如圖2所示的組立圖:
圖2 裝配組立圖
船舶建造是以船體為載體的一個(gè)建造過程,船體結(jié)構(gòu)建造的能力和水平是衡量造船企業(yè)的一個(gè)重要指標(biāo)。在生產(chǎn)中運(yùn)用科學(xué)、合理的裝配計(jì)劃能大大縮短船舶制造周期,同時(shí)也能有效地減少很多重復(fù)的勞動(dòng),為工廠的降本增效發(fā)揮積極作用。實(shí)踐證明,應(yīng)用TRIBON M3二次開發(fā)工具可以大大提高設(shè)計(jì)效率,從而為實(shí)現(xiàn)真正意義的紙上模擬造船發(fā)揮作用。