孫東坡
(中鐵十九局集團華東工程有限公司,浙江 余姚 315499)
連續剛構橋受力較復雜,目前大部分連續剛構橋建模均利用有限元軟件來實現,如ANSYS,MIDAS、橋梁博士等,但這些有限元軟件無法實現自動建模,同時橋梁受力狀態的監控數據也無法實現可視化。近年來,國內外學者提出了基于BIM技術的二次開發來實現橋梁監控數據的可視化,并取得了一定研究成果,但對于連續剛構橋自動建模及監控數據可視化的研究相對較少。為此本文提出利用Dynamo軟件對Revit進行二次開發,實現連續剛構橋自動建模,確定施工監控數據與模型的關聯方式,研究主梁線形監控可視化與應力監控可視化2大模塊的可視化方式。
通過Excel,錄入連續剛構橋關鍵數據,以單箱梁為例,橫截面數據包括梁高度、底板厚度、腹板厚度、頂板厚度及倒角尺寸;縱截面數據包括里程及各梁段長度。“梁序號/名稱”自動建模時的意義為起始截面,相應行數據的意義為該截面尺寸,且為方便自動建模與之后施工監控部分數據的處理,各梁段梁名稱格式要統一,如“1號墩-10號塊-小樁號”。
通過Dynamo軟件對Excel表格中數據進行處理,實現自動建模。可采用的建模方式有2種:①通過幾何方式,定點、連線、成面、成體的方式編輯Dynamo;②通過自建族方式及限制參數的方法,批量創建模型,以達到自動建模的目的。前一種方法優點在于可使模型拋物曲線更光滑,而后者則是以直代曲,但缺點在于模型不利于賦予參數,且操作自由度低,易遇到各類問題。2種建模方式分別如圖1,2所示。

圖1 幾何法自動建模示例

圖2 自建族法自動建模示例
1)Excel數據導入Dynamo軟件 Excel數據導入Dynamo軟件會產生空值,需用“List.Clean”節點處理。利用“List.Deconstruct”節點拆分各列值,包括起始里程、里程、箱梁長度、梁序號/名稱、梁高度、底板厚度、頂腹倒角、底腹倒角。通過一定運算統一單位,由于錄入時,部分為m,mm,而在BIM模型中使用cm更合適,也更貼合于實際項目。
2)字符拆分處理 如頂腹倒角數據為200× 40,屬于字符型數據,需通過“String.Split”節點將數據拆分為200,40。
3)自動建模及數據處理 Revit自建梁族參數調整好后,確定點位置,通過“FamilyInstance.ByPoint”節點在相應點批量放置自建族,通過“Element.SetParameterByName”節點賦予參數的同時即可完成自動建模。
以某實際連續剛構橋為例,主橋共3跨,跨度分別為50,80,50m,為預應力混凝土連續剛構橋,箱梁斷面采用單箱單室直腹板斷面,箱梁頂板寬16.5m、底板寬8.75m、懸臂長度3.875m。箱梁高度與一般情況下的梁高計量方法相同(箱梁頂面至底面距離),箱梁根部梁高為5.0m,跨中及邊跨合龍段、邊跨現澆段梁高處截面變為2.5m,其余梁底下緣按1.8次拋物線變化。0號塊底板厚100cm,各梁段底板厚從懸臂根部(1,2號墩0號塊)至懸澆(跨中合龍段或邊跨合龍段)最大懸臂由80~32cm按1.8次拋物線變化,跨中及邊跨合龍段底板厚為30cm,邊跨現澆段底板厚由30~80cm線性變化。對于箱梁頂板厚度,0號塊為50cm,其余為30cm。對于箱梁腹板厚度,0號塊為110cm,1~4號梁段腹板厚度為85cm,6~7號梁段腹板厚度為70cm,9~10號梁段腹板厚度為50cm,5號梁段腹板厚度由85~70cm按線性變化,8號梁段腹板厚度由70~50cm按線性變化,現澆段腹板厚度為80cm。1,2號墩采用雙薄壁墩,2個薄壁截面尺寸相同,均為縱截面方向長1.3m,橫截面方向長8.75m,2個薄壁中心距為2.4m。承臺厚度為4.0m,基礎采用10根直徑為1.8m鉆孔灌注樁,主墩樁基按摩擦樁設計。該連續剛構橋施工監控組進場時,施工方已進入到2號塊施工,因此,后續施工監控數據會從2號塊開始,采用掛籃施工。某連續剛構橋導入Dynamo軟件中的Excel部分數據如圖3所示,自動建模效果如圖4所示。

圖3 某連續剛構橋Excel數據

圖4 某連續剛構橋自動建模效果
2.1.1線形監控測點布置
在每個施工節段上布置2個對稱的高程觀測點和1個軸線高程觀測點,不僅可測量箱梁撓度,還可同時測量箱梁是否發生扭轉變形。各節段標高測點平面及橫斷面布置如圖5所示。

圖5 標高測點平面及橫斷面布置
2.1.2應力監控測點布置
由于施工監控組進場時,施工方已進入2號塊施工,因此,應力監控從最靠近0號塊的2號塊開始,選取2號塊前段(C,D,H,I截面)、6號塊前段(B,E,G,J截面)、邊跨合龍段(A,K截面)、中跨合龍段(F截面)處布置應力監測斷面,傳感器布置在各截面上,如圖6所示。

圖6 應力監控測點布置
2.2.1Excel數據提取及Revit模型數據提取至Dynamo軟件
Revit模型中數據均通過“Parameter.ParameterByName”節點提取,主要包括梁段名稱及各族位置數據。通過“String.Remove”節點對字符格式調整。從Revit提取模型信息時,提取出的數據按自動建模時建模順序排列,而線形監控數據與其順序、涉及的梁段均不同,因此,需通過一定處理,使數據相互匹配。以模型數據順序為基準,將線形監控數據進行逐個比對,利用“List.ContainsItem”節點篩選出線形監控數據中涉及到的梁段,利用“If”節點、“List.Reverse”節點返回正確順序的值。
2.2.2應力監控數據篩選分類
與線形監控不同的是,應力監控需改動數據的節段較少,55個梁段中只有11個節段(1號墩-2號塊-大樁號、1號墩-2號塊-小樁號、1號墩-6號塊-大樁號、1號墩-6號塊-小樁號、1號墩-邊跨合龍段、中跨合龍段、2號墩-邊跨合龍段、2號墩-2號塊-大樁號、2號墩-2號塊-小樁號、2號墩-6號塊-大樁號、2號墩-6號塊-小樁號),因此,所有數據可置于Excel同一工作表內處理。通過“String.Contains”節點與“List.FilterByBoolMask”節點數據區分為1號墩、中跨合龍段、2號墩數據。
篩選應力監控數據并調整順序,以匹配Revit模型中數據順序。上一步篩選完成后,繼續將應力監控數據按“工況”進行篩選并排序。
數據處理完成后,通過簡單的自建族,賦予監控數據。所包含的參數與Excel中參數相同,包括監測梁段、測點編號、澆筑前標高、澆筑后標高、張拉后標高、澆筑前后差值、張拉前后差值、張拉前后理論計算差。線形監控自建族及參數如圖7所示。

圖7 線形監控自建族及參數
應力監控數據直接關聯至相應梁段中,且分為頂板和底板,自建族中也應按頂板和底板將12種工況排列,將外部數據賦入模型內部,應力監控自建族及參數如圖8所示。

圖8 應力監控自建族及參數
對處理好的數據進行篩選,通過雙If結構判定3種顏色的賦予情況,并通過“Element.OverrideColorInView”節點賦予測點紅、橙、綠3種顏色,實現主梁線形監控可視化。按圖6中測點布置,在相應位置放置“監測點族”,自建族向上偏移一定距離,防止與模型重合的同時可具有一定操作性。
對數據進行一定處理,按顏色辨別合格與否,按設置數值或規范將數據分為3個等級,合格、中等、不合格,分別對應綠色、橙色、紅色,其中合格與否的判定主要通過“張拉前后差值”一欄是否符合“張拉前后理論差值”一欄中的數值,而中等的判定則是將“張拉前后差值”精確到0.1后是否與“張拉前后理論差值”相等,若相等則為橙色,這樣可避免特殊測點數據被忽視。
該連續剛構橋1,2號墩線形監控可視化效果分別如圖9,10所示,各測點合格與否顯而易見。

圖9 1號墩線形監控可視化效果

圖10 2號墩線形監控可視化效果
對處理好的數據進行篩選,對于每個測控截面(測控梁段),各種工況下均符合要求才判定為合格。編碼思路為各工況下符合要求則返回布爾值ture,且所有工況下均返回ture值時,該梁段輸出ture值,表示合格。
在顏色判別及賦予部分利用“Element.GetParameterValueByName”節點,完成開關可視化選項卡的功能,利用“Element.OverrideColorInView”節點完成顏色賦予,實現主梁應力監控可視化。
由于應力點在內部,無法直觀地看出來,可在BIM模型中,通過相應梁段顏色變化,來實現應力監控數據可視化。應力監控數據較重要,因此只有合格與不合格兩種等級,分別通過綠色和紅色進行可視化,區分應力情況,如圖11所示。

圖11 應力監控可視化效果
線形監控可視化可通過刪除“監控點族”來取消可視化效果,但應力監控可視化通過改變梁段顏色來實現可視化效果,需關閉可視化選項卡。在自動建模時使用的參數梁中添加“應力監控數據可視化”一欄來開啟和關閉可視化效果。由于要應用到所有梁,則選擇“類型”,而不選擇“實例”。關閉應力監控可視化后,將以灰色顯示,可輔助梁段之間的區分。
1)利用Dynamo軟件對Revit進行二次開發,比較幾何法自動建模及自建族法自動建模兩種方法,并引入工程實例驗證了自建族法自動建模可行性。
2)研究了施工監控數據在Excel,Dynamo中的處理方法,確定了施工監控數據與模型的關聯方式,并實現了數據與模型關聯。
3)從可視化方式和實現相應可視化方式的Dynamo編碼2部分進行探討研究,確定線形監控通過放置自建族并覆蓋顏色可視化,而應力監控通過直接覆蓋箱梁顏色可視化。