楊文燈
摘 要:本文介紹一種與Tekla Structures連接的板材排版系統(tǒng)。系統(tǒng)讀入Tekla Structures輸出的構(gòu)件報(bào)告文件,對(duì)構(gòu)件數(shù)據(jù)進(jìn)行分類處理。對(duì)板材構(gòu)件,設(shè)計(jì)快速可行的排版算法,排版的結(jié)果理想。
關(guān)鍵詞:Tekla Structures;板材排版;數(shù)據(jù)分類處理
我們?cè)贏utoCAD 上,利用VBA開(kāi)發(fā)出了板材排板系統(tǒng),該系統(tǒng)首先利用Tekla Structures軟件輸出上部組塊構(gòu)件的報(bào)告,對(duì)構(gòu)件的報(bào)告的數(shù)據(jù)進(jìn)行整理、分類,輸出按不同的板厚、材料進(jìn)行分類的Excel文檔。在此基礎(chǔ)上,再對(duì)各類板厚、材料的板材分別進(jìn)行排版,輸出排版圖紙。系統(tǒng)較好地解決了與Tekla Structures軟件的連接問(wèn)題,大大提高工作效率,降低設(shè)計(jì)人員的勞動(dòng)強(qiáng)度,排版質(zhì)量也有明顯提高。
1 系統(tǒng)對(duì)數(shù)據(jù)的分類管理
Tekla Structures可以輸出按整個(gè)平臺(tái)或平臺(tái)的某層的所有構(gòu)件報(bào)告的xsr類型文件,但是,報(bào)告中的構(gòu)件清單不按構(gòu)件的類型、板厚和材料排列,排列混亂。這對(duì)后期的設(shè)計(jì)工作和數(shù)據(jù)的管理帶來(lái)極大的不便。而板材的排版需按相同的板厚和材料進(jìn)行排版。為了排版工作的順利進(jìn)行和后期數(shù)據(jù)的管理方便,排版系統(tǒng)先讀入xsr類型的構(gòu)件報(bào)告進(jìn)行處理,利用AutoCAD與Excel的聯(lián)系,輸出按不同構(gòu)件類型、板厚和材料的Excel文件,對(duì)于板材構(gòu)件,還將數(shù)據(jù)處理得到的與排版有關(guān)的數(shù)據(jù)反饋到排版系統(tǒng)的應(yīng)用界面中,讓使用者方便、及時(shí)了解板材構(gòu)件的基本情況。板材構(gòu)件的詳細(xì)情況可以在線查閱Excel文件。設(shè)計(jì)人員可以根據(jù)不同的情況,采用不同的排板方式。排版的結(jié)果再寫(xiě)入該種板厚、材料的Excel文件,排版的結(jié)果的內(nèi)容包括各型板材構(gòu)件的排結(jié)果情況和輸出排版圖紙的文件名,使板材構(gòu)件的Excel文件包含完整的設(shè)計(jì)數(shù)據(jù)。
2 系統(tǒng)的排版算法
板材的排版算法實(shí)質(zhì)為一種二維離散優(yōu)化算法問(wèn)題。我們分別采用按行和按列優(yōu)先搜索算法。一般地,板材的坯料總是正四邊形的。按行(按列類似)優(yōu)先搜索算法就是先取最大的板件作為一行的開(kāi)始,然后,按這個(gè)板件所占的寬度作為一行開(kāi)始對(duì)余下的板件進(jìn)行從大到小的搜索排列,一直到這一行排滿為止,即這一行的利用率達(dá)到一個(gè)預(yù)先設(shè)計(jì)定的值。然后再進(jìn)行余下行的搜索,一直到坯料排滿為止。這里要注意的是,在每設(shè)定一行時(shí)都要考慮余下的坯料寬度要與余下的構(gòu)件基本相配。同時(shí)會(huì)由于板件的數(shù)量或形狀問(wèn)題而出現(xiàn)一行或同時(shí)幾行不能排滿的情況,余下的地方要用混合方法進(jìn)行搜索排列。按行和按列算法的速度快,搜索結(jié)果也較好。一般情況,在構(gòu)件的形狀比較規(guī)則的情況下,利用率可以達(dá)到90%以上。單從利用率上看,混合搜索法的效果最好,但是,搜索時(shí)間太長(zhǎng),排版中構(gòu)件的排列也較亂,不利于后期的切割加工。因此,本系統(tǒng)不專門(mén)采用混合搜索算法。
3 排版系統(tǒng)的結(jié)構(gòu)
3.1 系統(tǒng)結(jié)構(gòu)
系統(tǒng)共有三個(gè)模塊,數(shù)據(jù)模塊、排板模塊和版樣輸出模塊。數(shù)據(jù)模塊功能是數(shù)據(jù)讀入、分類處理和數(shù)據(jù)的貯存,數(shù)據(jù)的貯存是模塊通過(guò)建立與Excel的聯(lián)系,將數(shù)據(jù)貯存在Excel中,并可作為數(shù)據(jù)的輸出文件。排版模塊功能是從界面和Excel讀入用戶輸入的排版要求和構(gòu)件的數(shù)據(jù)進(jìn)行排版處理,并進(jìn)行版樣構(gòu)造。版樣輸出模塊是利用AutoCAD的功能,在其繪圖區(qū)進(jìn)行版樣圖形的構(gòu)造,并通過(guò)它實(shí)現(xiàn)版樣圖紙輸出。系統(tǒng)的功能結(jié)構(gòu)如圖1。
3.2 系統(tǒng)的界面
排版系統(tǒng)界面的上部為對(duì)板材數(shù)據(jù)的處理,輸入Tekla Structures給出的構(gòu)件報(bào)告文件名,按數(shù)據(jù)情況按鈕,系統(tǒng)即會(huì)從構(gòu)件報(bào)告讀入數(shù)據(jù)并進(jìn)行處理,輸出分別按各種構(gòu)件類型、厚度、材料的Excel文件,并將各種類型板材構(gòu)件與排版有關(guān)的數(shù)據(jù)顯示在界面列表中。設(shè)計(jì)人員可以從列表中選擇不同板厚、材料的板形構(gòu)件,輸入坯料的情況和間隙要求,逐項(xiàng)進(jìn)行排版。排版時(shí)先按行優(yōu)先排,系統(tǒng)會(huì)返回排版結(jié)果的坯板利用率,更進(jìn)一步可按查看版樣回到AutoCAD 上,詳細(xì)檢查排版結(jié)果情況。返回排版界面后,若選擇接受,則保存版樣,并將其文件名寫(xiě)到相應(yīng)的板厚、材料的Excel文件中。或進(jìn)行重排,重排是按列優(yōu)先搜索的算法。
4 結(jié)束語(yǔ)
排版系統(tǒng)解決了與Tekla Structures軟件的數(shù)據(jù)連接問(wèn)題。排版系統(tǒng)讀入Tekla Structures輸出按整個(gè)鉆井平臺(tái)或平臺(tái)的某層的所有構(gòu)件報(bào)告的xsr類型文件,經(jīng)分類處理,輸出按不同構(gòu)件類型、板厚和材料的Excel文件,使鉆井平臺(tái)的設(shè)計(jì)數(shù)據(jù)清晰,易于分類管理。排版系統(tǒng)針對(duì)上部組塊的托板和加強(qiáng)板等板材構(gòu)件,設(shè)計(jì)快速可行的排版算法,經(jīng)初步應(yīng)用,排版的結(jié)果較為滿意。
參考文獻(xiàn):
[1]張國(guó)寶.AutoCAD 2000 VBA 開(kāi)發(fā)技術(shù)[M].北京:清華大學(xué)出版社,2000.
[2]孫振綺等.最優(yōu)化方法[M].北京:機(jī)械工業(yè)出版社,2004.