文/瞿 燕
與普通貨架相比,立體貨架的空間利用率較高。目前,常見的立體式鋼貨架有多種,主要分為橫梁式、牛腿式、穿梭式等。鋼貨架結(jié)構(gòu)的設(shè)計有一定的過程。首先,有必要建立一個模型,以確保模型在幾何上不變,明確連接節(jié)點是鉸接的還是剛性的,并確保結(jié)構(gòu)的穩(wěn)定性,這就涉及到結(jié)構(gòu)力學。其次建立模型后,必須輸入載荷,這是鋼結(jié)構(gòu)設(shè)計的重要部分。它將外部載荷轉(zhuǎn)化為結(jié)構(gòu)的內(nèi)力效應(yīng)(剪力、彎矩、軸力等),當進行結(jié)構(gòu)設(shè)計時,一定要清楚荷載取值和如何組合,荷載取值的準確與否,直接影響計算內(nèi)力的準確性。鋼結(jié)構(gòu)的設(shè)計,有一定的結(jié)構(gòu)體系。它不是以結(jié)構(gòu)軟件為主的,軟件只是服務(wù)于結(jié)構(gòu)工程師,在大多數(shù)情況下,結(jié)構(gòu)工程師需要對結(jié)構(gòu)的概念設(shè)計做出判斷,假設(shè)輸入了一個載荷,軟件無法判斷它是什么載荷,需要結(jié)構(gòu)工程師做出轉(zhuǎn)化并輸入。
目前,結(jié)構(gòu)設(shè)計和分析面臨的新問題是:復雜的結(jié)構(gòu)體系,大量的計算和分析,由于設(shè)計時間不足,現(xiàn)有功能不能完全滿足工程要求,傳統(tǒng)結(jié)構(gòu)分析模式通常采用圖形界面下的手動操作,工作效率低下等;對此,本文提出的解決方案是通過編程方式處理大量數(shù)據(jù),完成復雜結(jié)構(gòu)的建模。例如,將API與編程結(jié)合使用就可以大大取代手動操作。實際上,工程師的主要任務(wù)是將復雜的工程問題轉(zhuǎn)化為簡單的數(shù)學模型,用VBA語言組織命令,編寫參數(shù)化設(shè)計程序,與SAP2000連接,并完成有限元建模。
本文以橫梁式立體式貨架為例,橫梁式立體式貨架又分為單深和雙深。按類型選項可分為:橫梁式單深邊列、橫梁式單深中列、橫梁式雙深邊列、橫梁式雙深中列等,如圖1、2。如果是橫梁式單深邊列,還要設(shè)置加強柱,保證結(jié)構(gòu)的穩(wěn)定性。貨架立柱片橫斜撐布置常見的類型有W型、X型、Z型等,如圖3。常用的步距(橫斜撐高差)600mm、750mm,一般下立柱采用步距較小的600mm,上立柱采用750mm,貨架立柱長度規(guī)范一般為12m,所以超過12m就要分段。
圖1:橫梁式單深邊列、中列布置圖
圖2:橫梁式雙深邊列、中列布置圖
圖3:貨架立柱片橫斜撐布置圖(從左到右依次為X型、W型、Z型)
圖4:背拉桿布置圖
圖5:水平拉桿布置圖
橫梁式貨架沿巷道方向的布置分為有支撐體系和無支撐體系。無支撐結(jié)構(gòu)體系,沿巷道方向的穩(wěn)定性由梁柱節(jié)點轉(zhuǎn)動剛度提供。有支撐結(jié)構(gòu)體系,作用于前部和背部平面內(nèi)的作用力傳至貨架背拉桿,背拉桿的穩(wěn)定效應(yīng)一般通過平面支撐傳遞給位于貨架前部和后部的各無支撐立柱,一般貨架沿高度方向全高設(shè)置支撐,有背拉布置的位置均設(shè)置水平拉桿,形成空間傳力體系,以橫梁式雙深中列為例,如圖4、5。有支撐體系和無支撐體系,垂直于巷道方向的穩(wěn)定性均由立柱組提供支撐,橫梁立體式貨架節(jié)點剛度設(shè)置原則,如表1。建模分析時節(jié)點剛度設(shè)置的準確性,會直接影響構(gòu)件選型。
橫梁式貨架的荷載類型分為直接荷載、間接荷載。例如作用在貨架上的直接荷載有恒載(自重)、活載(托盤貨物荷載)、 水平靜荷載(由初始彎曲、安裝偏差等所引起的水平力)等。間接荷載,例如:地震荷載等。 地震常用的計算方法有底部剪力法、振型分解反應(yīng)譜法,按照中國建筑設(shè)計規(guī)范,重力荷載代表值中的質(zhì)量源一般取1.0恒荷載+0.8活荷載。
基于以上荷載,鋼貨架結(jié)構(gòu)設(shè)計通常采用的荷載組合包含8 種(D 表示縱向,C 表示橫向;1 表示靜力,2 表示動力;-Ser表示正常使用極限狀態(tài)組合),詳見表2。
將參數(shù)化建模的思想引入有限元分析工程,可以大幅提升工作效率。根據(jù)實際工程輸入貨架設(shè)計參數(shù)(立柱片高度、立柱片深度、橫梁長度、約束條件、單個托盤貨物重量、地震參數(shù)、立柱、橫梁截面初選等),立體式貨架的相關(guān)參數(shù)(幾何參數(shù)、加載參數(shù))自動保存在Excel中,通過調(diào)用VBA編譯的代碼,由映射算法,將其轉(zhuǎn)化成SAP2000可識別的接口文件 ,在VBA二次開發(fā)的平臺上,成功完成Excel和SAP2000無縫對接,快速高效地完成立體式貨架參數(shù)化建模。
SAP2000是由美國CSI公司開發(fā)的通用結(jié)構(gòu)分析設(shè)計軟件。SAP2000的優(yōu)勢在于提供了開放的接口,SAP2000的API接口語言有很多種,其中最容易上手的是VBA,因為VBA可以直接連接到微軟的Excel。用戶不僅可以用圖形界面來建模,還可以通過編寫接口語言來建模。對于復雜結(jié)構(gòu),采用后者可以減少大量的工作量,從而縮短設(shè)計工期,在行業(yè)內(nèi)形成競爭優(yōu)勢。
貨架結(jié)構(gòu)設(shè)計流程的有限元前處理,第一步是定義參數(shù):貨架類型(String)、截面類參數(shù)(String)、荷載參數(shù)(Double)、 地震計算方法(String)、荷載組合(Double)、節(jié)點剛度(D o u b l e)、質(zhì)量源(Double)等。第二步是數(shù)據(jù)導入:通過Cells定位到Excel對應(yīng)的單元格,讀取橫梁式貨架的輸入?yún)?shù),并賦值給相應(yīng)的參數(shù);如果參數(shù)對應(yīng)的單元格很多時,逐一添加很耗時,可以通過循環(huán)語句來實現(xiàn)賦值。第三步是把輸入數(shù)據(jù)轉(zhuǎn)化為模型參數(shù),通過循環(huán)語句實現(xiàn)幾何尺寸的累加并計數(shù),這個步驟很重要;如果數(shù)據(jù)轉(zhuǎn)化成模型參數(shù)時有問題,直接影響建模的準確性,所以需要添加數(shù)據(jù)校核,通過Debug.Print自行校核模型參數(shù)轉(zhuǎn)化的準確性,此時需要打開立即窗口來檢查結(jié)果。
通過上述輸入數(shù)據(jù),可以完成鋼貨架的有限元前處理。VBA提供了大量函數(shù)來完成前處理。結(jié)構(gòu)分析前處理,如約束類型、載荷模式、載荷組合、截面參數(shù)和分析條件等,都可以通過VBA實現(xiàn)。不同立體式鋼貨架的結(jié)構(gòu)建模有很大差異,鋼貨架建模可以從三個方面完成主體結(jié)構(gòu)、支撐結(jié)構(gòu)和部件特性;以橫梁貨架為例,貨架結(jié)構(gòu)參數(shù)模型的層次結(jié)構(gòu)分析,如圖6。
考慮到橫梁式貨架建模的復雜性,VBA程序相對較大,為了使VBA程序易于編寫、理解和更改,有必要有序地執(zhí)行結(jié)構(gòu)化編碼。我們所需要做的就是將大問題分成若干個小問題,這些小問題可以同時存在,本文通過VBA創(chuàng)建一個主過程和多個子過程來實現(xiàn)它,用關(guān)鍵字sub來聲明它們;主過程可以調(diào)用子過程并將參數(shù)傳遞給它們。其中子過程大致分為幾何模塊和加載模塊兩類。幾何模塊的子過程以單個部件為模塊劃分為柱、橫梁、背拉桿、連桿、水平拉桿、斜補等,加載模塊的子過程里包含荷載及組合等。幾何模塊的子工程編程的一般思路大致為:通過循環(huán)語句快速實現(xiàn)單個部件的幾何建模,賦予桿件截面屬性FrameObj.SetSection、材料屬性PropMaterial.SetMaterial,并設(shè)置節(jié)點剛度FrameObj.SetReleases,完成單部件的定義;其中,單部件背拉桿由于只拉不壓,可以采用命令FrameObj.SetTCLimits("1", True, 0, False, 0, 2)進行控制。
加載模塊編程大致思路如下:第一步,添加荷載模式LoadPatterns.Add,自重Dead,托盤荷載Live,水平靜荷載Live(兩個方向),地震荷載Quake(兩個方向),當計算方法采用底部剪力法時,通過LoadPatterns.AutoSeismic.SetChinese2010賦值。第二步,添加荷載工況,模態(tài)工況Modal,自重工況(Linear Static)、托盤荷載工況(Linear Static),水平靜荷載工況 (Linear Static),地震工況 (Linear S t a t i c)。第三步,添加荷載組合RespCombo. SetCaseList,通過給荷載工況賦予對應(yīng)的分項系數(shù),完成荷載組合定義,通過矩陣函數(shù)array實現(xiàn)。第四步,給荷載工況賦值,托盤荷載按分布荷載FrameObj.SetLoadDistributed添加,水平靜荷載按點荷載FrameObj.SetLoadPoint添加;當計算方法采用振型分解反應(yīng)譜法時,通過Func.FuncRS.SetUser賦值。 第五步,添加分析模式,復雜結(jié)構(gòu)一般采用非線性分析,通過LoadCases. StaticNonlinear.SetGeometricNonlinearity賦值。
主過程通過調(diào)用子過程實現(xiàn)單個部件組裝成三維模型,在VBA平臺上,完美地實現(xiàn)了EXCEL與SAP2000的無縫連接,把復雜的建模參數(shù)化,大大提高了工作效率。
表1:節(jié)點剛度
表2: 荷載組合
圖6:貨架參數(shù)化模型
最后在這里分享一小段柱片橫斜撐的小程序,之前有提到過常用的橫斜撐的三種形式:W、X、Z,具體通過FrameObj.AddByCoord函數(shù)來實現(xiàn),部分代碼如下:
工程結(jié)構(gòu)設(shè)計過程是靈活運用各種知識解決實際問題的過程,所有的軟件只是結(jié)構(gòu)工程師的工具,只有熟練掌握結(jié)構(gòu)的概念設(shè)計,并且邏輯非常清楚,軟件才能輕松地用于工程應(yīng)用中供自己使用,從而提高工作效率。通過通用辦公程序Excel的VBA,結(jié)合項目的實際需要,進行簡單的二次開發(fā),避免了大量重復操作,實現(xiàn)了參數(shù)化建模,大大提高了工作效率。