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