<nav id="w0g0m"><code id="w0g0m"></code></nav>
  • <xmp id="w0g0m">
    <xmp id="w0g0m"><nav id="w0g0m"></nav><menu id="w0g0m"><strong id="w0g0m"></strong></menu>
  • <xmp id="w0g0m">
  • <nav id="w0g0m"></nav>
    <menu id="w0g0m"><menu id="w0g0m"></menu></menu>
    1. 網站地圖
    2. 設為首頁
    3. 關于我們
    ?

    基于BIM的土木工程結構 試驗信息管理系統研究

    發布時間:2023-07-13 09:59
    摘 要 II
    ABSTRACT III
    插圖清單 VII
    表格清單 IX
    第一章 緒論 1
    1.1研究背景及意義 1
    1.2國內外研究現狀 2
    1.2.1BIM 的國內外研究現狀 2
    1.2.2試驗信息管理系統的國內外研究現狀 5
    1.3 研究內容與技術路線 7
    第二章 基于 BIM 的土木工程結構試驗信息管理方法研究 9
    2.1土木工程結構試驗信息 9
    2.1.1土木工程結構試驗類型 9
    2.1.2土木工程結構試驗信息內容 10
    2.1.3土木工程結構試驗信息特點 11
    2.1.4土木工程結構試驗信息分類與編碼 12
    2.2土木工程結構試驗信息模型 15
    2.2.1BIM 概念 15
    2.2.2土木工程結構試驗信息模型 16
    2.3 基于 BIM 的土木工程結構試驗信息管理方法 18
    2.3.1傳統土木工程結構試驗信息管理現狀 18
    2.3.2基于 BIM 的土木工程結構試驗信息管理方法 19
    2.4本章小結 20
    第三章 基于 BIM 的土木工程結構試驗信息管理框架構建 21
    3.1需求分析 21
    3.1.1功能性需求 21
    3.1.2非功能性需求 22
    3.2框架設計 22
    3.2.1設計原則 22
    3.2.2總體架構 23
    3.2.3數據庫設計 24
    3.3功能模塊設計 28
    3.3.1虛擬仿真模塊設計 28
    3.3.2監測預警模塊設計 32
    3.3.3數據應用模塊設計 35
    3.4本章小結 39
    第四章 基于BIM的土木工程結構試驗信息管理系統開發 40
    4.1Revit 二次開發技術 40
    4.1.1開發工具 40
    4.1.2開發方式 4 1
    4.1.3開發流程 42
    4.2系統總體開發 44
    4.2.1系統界面開發 44
    4.2.2數據庫開發 46
    4.2.3試驗信息模型參數化創建 48
    4.3功能模塊開發 5 1
    4.3.1虛擬仿真模塊開發 5 1
    4.3.2監測預警模塊開發 57
    4.3.3數據應用模塊開發 65
    4.4本章小結 7 1
    第五章 基于BIM的土木工程結構試驗信息管理系統應用 73
    5.1試驗概況 73
    5.2應用情況 73
    5.2.1試驗計劃與準備階段 74
    5.2.2試驗實施階段 79
    5.2.3試驗分析與總結階段 83
    5.3應用效果分析 86
    5.4本章小結 88
    第六章 結論與展望 89
    6.1結論 89
    6.2展望 90
    參考文獻 I
    攻讀碩士學位期間的學術活動及成果情況 IV
    插圖清單
    圖 1.1 技術路線圖 8
    圖 2.1 土木工程結構試驗類型 9
    圖 2.2 土木工程結構試驗結構信息內容 10
    圖 2.3 試驗信息編碼結構 13
    圖 2.4 BIM 信息管理模式 16
    圖 2.5 土木工程結構試驗信息模型增長趨勢圖 17
    圖 2.6 土木工程結構試驗信息模型 17
    圖 2.7 傳統試驗信息管理系統界面 19
    圖 2.8 基于 BIM 的土木工程結構試驗信息管理方法 19
    圖 3.1 基于 BIM 的土木工程結構試驗信息管理系統總體架構 24
    圖 3.2 基于 BIM 的土木工程結構試驗信息管理系統 E-R 圖 25
    圖 3.3 虛擬仿真模塊 28
    圖 3.4 模型管理流程圖 29
    圖 3.5 方案模擬流程圖 30
    圖 3.6 仿真模擬流程圖 31
    圖 3.7 監測預警模塊 32
    圖 3.8 數據采集流程圖 33
    圖 3.9 實時顯示流程圖 34
    圖 3.10 危險預警流程圖 35
    圖 3.11 數據應用模塊 36
    圖 3.12 數據處理流程圖 37
    圖 3.13 數據輸出流程圖 38
    圖 3.14 數據管理流程圖 39
    圖 4.1 Revit SDK 文檔 41
    圖 4.2 Revit 調用外部命令和外部應用方式 42
    圖 4.3 Revit 二次開發流程 43
    圖 4.4 土木工程結構試驗信息管理系統界面 46
    圖 4.5 ADO.NET 結構體系 46
    圖 4.6 土木工程結構試驗信息管理系統數據庫 47
    圖 4.7 試驗信息模型(部分) 50
    圖 4.8 族參數類型 50
    圖 4.9 試件模型參數設置界面 51
    圖 4.10 場地布置檢查對話框 55
    圖 4.11 加載數據采集界面一 58
    圖 4.12 加載數據采集界面二 60
    圖 4.13 數據圖表界面 62
    圖 4.14 試驗數據對比界面 66
    圖 4.15 試驗數據管理界面 71
    圖 5.1 試驗現場圖片 73
    圖 5.2 含 BRB 的鉸支剪力墻模型 74
    圖 5.3 普通剪力墻模型 74
    圖 5.4 含 BRB 的現澆剪力墻模型 74
    圖 5.5 試件立面圖 75
    圖 5.6 試件分析報告 75
    圖 5.7 位移傳感器模型 75
    圖 5.8 試驗大綱信息 76
    圖 5.9 試驗加載方案 77
    圖 5.10 試驗量測方案 77
    圖 5.11 試驗現場布置 78
    圖 5.12 仿真模擬與數據顯示 79
    圖 5.13 試驗數據采集 80
    圖 5.14 數據圖表顯示 81
    圖 5.15 模型參數顯示 81
    圖 5.16 模型高亮顯示 82
    圖 5.17 危險預警發布 82
    圖5.18 試驗數據處理 83
    圖 5.19 試驗數據對比 84
    圖 5.20 試驗數據輸出 84
    圖5.21 試驗數據管理 85
    圖5.22 數據庫管理 86
    表格清單
    表 2.1 土木工程結構試驗信息分類表 12
    表 2.2 土木工程結構試驗信息編碼表(部分) 14
    表 3.1 試驗儀器表設計 26
    表 3.2 測量數據表設計 26
    表 3.3 文檔信息表設計 26
    表 3.4 試驗人員表設計 27
    表 3.5 危險預警表設計 27
    表 5.1 傳統試驗信息管理系統與基于 BIM 的土木工程結構試驗信息管理系統對
    86
    第一章 緒論
    1.1研究背景及意義
    土木工程結構試驗是采用科學合理的組織方法,制定試驗實施計劃,借助各種 儀器設備,通過施加一定的荷載作用,測量關于結構性能方面的試驗參數,從剛度、 強度以及實際破壞形態等多個角度對試驗現象進行分析,進而判斷和了解試驗對 象的結構性能,驗證結構是否滿足設計需求和質量規范,并用以檢驗和發展土木工 程專業的理論知識[1]。土木工程結構試驗是土木工程專業最具實踐性的創新資源之 一,不斷推動著許多新方法、新技術和新材料在重大項目工程中得以運用,對加強 項目管理、提高施工效率、節約物質資源和保障人員安全起到了一定的作用。
    伴隨著我國經濟從高速發展轉向穩定發展,土木工程行業步入從量到質的跨 越式發展階段,同時也對土木工程理論和試驗提出更高的要求。隨著試驗內容的不 斷深入,試驗涉及的各種技術難度進一步加大,所需的試驗設備、材料及人力投入 也增大,試驗數據和信息內容越來越繁雜,并且由于試驗數量的不斷增加,試驗數 據信息也呈現快速增長的趨勢。當前的試驗信息管理模式暴露出以下幾個問題: (1)試驗各階段之間沒有建立有效的信息傳遞和共享機制,使得試驗數據出現信 息“孤島”的現象,與實際需求脫節;(2)試驗各參與方沒有形成協同工作的機制, 每個人只專注于自己所負責的工作,相互之間缺乏直接有效的信息溝通;(3)試 驗數據缺乏科學合理的信息采集和處理方式,導致試驗過程中產生的測量數據、視 頻照片等重要信息未得到規范化存儲,容易出現丟失;(4)整個試驗過程的可視 化程度低,試驗方案依靠文字內容和二維圖紙描述,試驗數據的顯示不夠直觀簡潔, 試驗現象的表達不夠形象具體。由此可見,傳統的土木工程結構試驗信息管理模式 已經不能滿足日益增長的試驗信息管理需要,同時也在很大程度上制約著土木工 程結構試驗效率的進一步提高。
    在我國最新頒布的《信息化發展戰略》中,明確提出“充分發揮信息化技術所 具備的巨大優勢,通過信息化的手段促進我國現代化產業升級發展”;在住建部頒 布的《建筑業信息化發展綱要》中,堅持實施“推廣BIM技術及應用”的戰略方 向,同時要求“建筑企業掌握BIM技術并建設信息化系統” [2]。BIM(Building Information Modeling)即建筑信息模型,在計算機系統中建造一個虛擬的三維空間, 通過幾何信息和非幾何信息等數據形式模擬建筑的各種實際情況,采用虛擬建造 技術對工程項目全壽命周期進行實時控制和可視化顯示,實現信息在項目全壽命 周期的傳遞和共享。而且BIM技術還具有參數化、可視化、協調性、模擬性、優 化性等特點,為各參與方的科學決策和工程項目的順利實施提供了強大的支撐[3]。 土木工程結構試驗作為土木工程行業重要的研究領域,也應利用BIM技術來實現 土木工程結構試驗信息的科學化管理,進而推動整個土木工程行業完成BIM技術 信息化管理的升級。
    因此,本文圍繞現階段試驗信息管理模式中存在的問題,將BIM與計算機技 術相結合引入試驗信息管理領域,探索基于BIM的土木工程結構試驗信息管理方 法,構建試驗信息管理的總體框架,開發基于BIM的土木工程結構試驗信息管理 系統。通過該系統完成試驗模型、數據等信息在各階段、各參與方之間的傳遞和共 享,滿足各參與方對于試驗信息管理的需求,為實現土木工程結構試驗信息管理科 學化和提高試驗管控能力提供技術支持,本文的研究思路為其他BIM信息管理系 統的開發提供了一條新的途徑,具有一定的創新價值,同時應用基于BIM的土木 工程結構試驗信息管理系統為試驗帶來了較好的管理效益,對BIM理念在今后實 際項目試驗信息管理的應用具有重要的借鑒意義。
    1.2國內外研究現狀
    1.2.1BIM的國內外研究現狀
    BIM 從首次提出經歷了幾十年的漫長時間才得到了如今的普遍認可。發展初 期,在挪威、新加坡和芬蘭等國家流行,隨后進入美國,經過許多美國學者的深入 研究,BIM逐漸完善發展并得到應用[4]。美國總務管理局從二十一世紀初陸續制定 關于從 3D 到 4D 再到 BIM 三個階段實施的一系列發展計劃,從項目全生命周期 的角度積極探索BIM的應用等[5],美國建科院也在2007年發布美國國家BIM標 準[6];2008 年新加坡政府通過建筑管理署和房地產建設系統這兩個組織強制實施 建設項目BIM電子交付制度,成為亞洲第一個采用BIM技術和實現BIM電子交 付的國家[7];日本在2010年開始引進和推廣BIM技術,現已在全國范圍內進行使 用,國土交通省也相繼出臺一系列BIM技術手冊[8]。
    BIM 在我國的研究起步相比于國外發達國家來說較晚,由 Autodesk 公司在 2003年首次將BIM概念引入我國,同時有少量學者開始研究;中國建科院于2008 年在國際IFC標準的基礎上根據國內情況進行修改,發布我國第一部有關BIM的 國家標準《工業基礎類平臺規范》[9];隨即由清華大學軟件學院在2009年提出我 國建筑信息模型標準框架(CBIMS),主要是從信息語義標準、信息傳遞標準、數 據儲存標準三個方面闡述[10];由北京市工程勘察設計行業協會在 2014 年撰寫完成 的北京市地方標準《民用建筑信息模型設計標準》正式開始實施,同時其他省市和 企業也在逐步編制 BIM 標準[11];住房和城鄉建設部在 2017 年發布我國首部 BIM 國家標準《建筑信息模型施工應用標準》,對BIM的概念進行定義,明確實施各 個階段應達到的目標[12];隨即再次發布第三部BIM國家標準《建筑信息模型分類 和編碼標準》 ,提出我國建筑信息模型分類要求和編碼準則,明確要求從2018年 5月1日起實施[13]。
    在BIM平臺架構方面,Zhang闡述BIM的內涵和基于BIM服務器的特點, 提出分布式的 BIM 平臺架構,有分布式數據存儲模塊、分布式數據集成模塊和子 模型提取模塊,平臺能完成子模型的集成和利用,具有三維可視化的功能[14]。Vishal 詳細介紹基于BIM技術的管理平臺框架,闡述BIM數據庫的特點和使用要求,重 點是關于方案審查、構件管理、安全保障和數據管理等方面[15]。Rob研究基于IFC 標準構建BIM協同管理信息平臺,在IFC交互標準的基礎上順利實現BIM協同 管理信息平臺,由此實現了合同、進度等一系列項目信息的集成管理[16]。 Halfawy 在BIM平臺的構建方面進行深入的研究,成功開發BIM集成管理平臺,該平臺的 設計模塊可以輔助設計人員建立BIM模型,而且還添加算量模塊用來輔助造價人 員統計項目的工程量[17]。焦奔康提出了一種基于BIM技術的有限元模型構建新方 法,利用 RevitAPI 二次開發技術,設計出 Revit 軟件與 Abaqus 軟件的轉換接口, 完成單樁、群樁等構件在Abaqus中的建模任務,并進行相關的有限元分析[叭李 妍君在文中收集各個專業設計師對BIM的需求,設計出個性化拓展包滿足使用, 例如設計圖紙、三維視圖、標高軸網和建筑幕墻等一系列功能,具有操作方便、嵌 入性好、適用性好等特點,給其他二次開發者提供了思路[19]。馬晉超研究了基于 BIM 技術的監測信息可視化方法,增強監測數據和 BIM 模型的交互性,以 SQL Server為手段開發了數據管理、數據處理、數據傳遞三個功能模塊,達到對監測數 據的查看、報警和可視化的效果,最后通過實例論證系統的可行性[20]。劉訓房提出 了基于BIM模型的隧道參數化建模方法,建立地質體VTK模型,基于SQL數據 庫開發C/S和B/S兩種客戶端的隧道施工監測信息云平臺,通過WEB的方式管理 數據,在發生危險時可以及時發布危險信息,實現安全監測功能[21]。唐清東提出了 橋梁施工模型的內容和特點,從不同階段和不同維度對BIM模型進行分析,并構 建了監控信息管理實施框架和所包含的各種技術,設計出懸索橋施工信息管理系 統,主要包括數據查詢、力學分析、模型瀏覽等功能,為懸索橋施工信息管理帶來 一定的作用[22]。
    在BIM平臺標準方面,Liu對比分析BIM方面的一系列標準,然后搭建由存 儲層、功能層、應用層和用戶層組成的BIM施工管理平臺,可以集成施工計劃、 施工質量以及招投標等信息,使用戶方便獲得和更新信息[23]。Khanzode提出4D- BIM 模型的概念,并把該模型應用到實際項目中,其原理是在原有三維模型的基 礎上再加入進度信息,實現4D-BIM模型的創建。通過4D-BIM模型來管控工程項 目的進度,優化施工流程,實現項目的精細化管理[24]。Howard闡述了 BIM應用的 可行性和所具備的應用條件,在 IFC 開放性的標準等方面進行深入的研究,認為 由于BIM所提供的解決方案較多且復雜,因此現階段只能在有限的范圍內采用[25]。 Zhang介紹了建筑環境的安全規則,并將BIM技術引入其中進行二次開發,用以 實現BIM模型中安全危險源的分析和識別,并在系統中提供相應的安全措施,最 后順利實現基于BIM技術建筑環境的安全風險自動化分析[26]。薛松分析了工程項 目信息如何在BIM技術下進行傳遞和共享,并總結當前大型工程信息的復雜性以 及出現的問題,構建基于BIM技術的信息管理框架,通過實際案例論證該框架可 有效改善信息傳遞過程,給大型工程帶來了良好的效果[27]。
    在BIM平臺開發方面,Raiz將BIM技術與測量儀器相結合,開發測量儀器與 BIM模型之間的數據接口,完成在BIM模型上查看測量儀器的模型和數據,支持 數據的實時顯示功能,在實際工程建立預警機制,為參與方的科學決策提供技術支 持[28]。Korman提出了 BIM模型的信息集成化,設計基于BIM技術的工程項目管 理知識庫,實現在設計方案中能夠自動完善和自動檢測的目標,為決策者在方案設 計優化時提供精準數據,進一步提高協同設計的工作效率[29]。李小玲運用SQL數 據庫軟件和 VS 開發環境實現基于 Revit 的監測信息數據庫的建立,此外還集成 Windows文件操作系統和MATLAB軟件到監測信息系統中進行分析和處理,實現 結構健康監測數據的可視化[30]。李文奇提出一種集成構件幾何信息、監測信息和 安全信息的 BIM 方法,將監測數據通過超鏈接的方法集成到系統中,還利用 MATLAB 軟件完成數據的分析和處理,構建結構安全實時顯示和預警的框架[31]。 李亞克對 Revit 軟件的不足進行研究,然后開發像設計文件中必備的設計說明以及 所需的詞庫文檔、 DWG 格式的個性化導出、 PDF 文件的個性化導出等功能,為 BIM軟件朝著個性化開發奠定堅實的基礎[32]。石韻提出在BIM基礎上開發出結構 健康監測管理系統,分析系統的各種需求,設計五個功能模塊,闡述整個系統的運 行流程,構建一個完整的結構監測平臺,最后通過實際項目驗證系統的可行性,能 夠實現全過程的信息傳遞與共享[33]。陳焱介紹BIM的發展和主流軟件,通過查閱 相關規范對剪力墻進行參數化設計,包含 U 型、 L 型等復雜截面的剪力墻和內部 鋼筋建模,通過 RevitAPI 二次開發技術設計出相對應的插件完成墻體的繪制,最 后導入Navisworks進行模擬[34]。王淘主要研究了密肋復合板結構的BIM軟件設 計,利用C#和WPF技術進行二次開發,設計出界面Ribbon和對話框,實現模型 與數據的傳遞,達到實時顯示、導出 Excel 表格等功能,并繪制墻體正截面承載力 的Nu-Mu曲線圖[35]。王繹凱結合BIM技術在構件設計方面的優勢,提出裝配式結 構的設計流程和實施要點,并根據試驗結果校核構件參數,再根據不同的階段將構 件分類與編碼,建立混凝土模型和節點構件模型,通過Dynamo軟件進行可視化編 程實現自動建模[36]。蔣小凡研究了基于BIM-SHM集成的結構安全預警管理方法, 介紹Revit二次開發環境和技術,然后運用SQL Server開發結構安全預警平臺,實 現監測數據查看、數據動態顯示、安全預警顯示等功能,并開發 APP 移動程序彌 補了 PC 端的不足[37]。
    在BIM平臺應用方面,Campbell認識到如今BIM已經給全球建筑業帶來了 巨大的變化,特別是在消除數據冗余、完善協同工作、促進溝通交流和提高工作效 率等方面,最后介紹了 BIM-Web3D在目前實際工程中的應用方式[38]。Francisco采 用問卷收集、人物訪問、實地調研多種形式深入研究BIM在物業管理中的應用, 通過對結果分析得出, BIM 技術在物業管理中發揮著重要的作用,特別是在信息 查詢,數據可視化等方面,大大提升工作的管理效率[39]。Nour設計出動態化更新 的 BIM 數據庫系統,該系統不僅可以加強各個部門之間信息的溝通交流,還能準 確地獲得建筑信息和材料清單,形成整個供應鏈體系的協同管理[40]。 Hamid 綜合 運用 BIM 技術與先進建筑施工技術相結合的方法,通過多種維度實時管理工程項 目的重要信息數據,并在項目實際應用過程中不斷豐富和完善,為其他研究者提供 思路HU。Johnny Wong認為云-BIM是BIM漫長發展歷程中的一個重要階段,并制 定關于云-BIM技術的實施框架,同時對云-BIM的資料進行綜述,提出目前的應用 主要在設計和施工兩個階段,還需要大力發展云-BIM在其他各專業和過程的應用 [42]。范凌翰利用Revit軟件建立了斜拉橋的構件族庫,結合MATLAB軟件模擬的 風荷載影響和Abaqus軟件計算的結果,導入Unity3D中仿真模擬在大風狀態下的 真實施工環境,用以指導現場安裝和施工優化,降低安全風險[43]。方睿主要研究了 基于Revit軟件在放樣和變形監測中的應用,利用C#和MATLAB為編程語言、 Access為數據庫軟件開發變形監測信息可視化插件,通過BIM模型將數據上傳至 測量機器人中,最后對變形監測數據進行算法預測[44]。牛文榀從Revit軟件操作入 手,創建深基坑的構件族庫,利用RevitAPI二次開發技術完成插件的界面設計和 功能實現,實現模型載入到軟件中,并以外部命令為方法創建監測管理插件,實現 監測數據的可視化和管理操作[45]。
    1.2.2試驗信息管理系統的國內外研究現狀
    國外試驗信息管理系統最早出現在二十世紀六十年代,比國內使用較早,但是 受到計算機的條件限制,試驗信息管理系統的自動化程度無法滿足實際需求。隨著 個人微型計算機硬件的開發成熟, C/S 架構的試驗信息管理模式走上舞臺,結合 SQL 數據庫管理系統,極大地提高了試驗數據的處理能力。由于近年來互聯網技 術的高速發展,基于Web網絡平臺開發的試驗信息管理系統開始出現,其系統具 有統一界面和分布式管理模式的特點,同時將最新的計算機網絡技術應用在試驗 信息管理系統中。在國外發達國家中,試驗信息管理系統得到廣泛使用,有大量的 商業公司專門提供試驗信息管理系統的產品和服務[46]。
    目前國外的試驗信息管理系統以法國和美國的系統最為先進、管理最為成熟, 配套的軟硬件設施可以集成試驗測試系統、數據服務器和用戶終端[47]。在美國應 用最廣的試驗數據管理系統是由 Newtera 公司開發 newtera TDM 軟件,該系統以 workflowstudio 技術為基礎,不僅可以應用于計算機制造行業,還可以應用于航空、 汽車制造等行業,用戶在使用的過程中,以該系統為手段監督和控制試驗的全部流 程,利用任務流程圖的方式全面了解具體的任務執行情況。該試驗信息管理系統還 有一個特點就是將試驗流程辦理和試驗數據處理相結合,以數據驅動的方式構建 一個高效合理的試驗管理機制,還能根據實際需求調整系統的功能模塊,參與試驗 的人員可以通過試驗管理系統來完善試驗數據管理流程,脫離對計算機軟件的依 賴,提高數據的操作和實施,因此更為方便用戶的使用[48]。
    我國的試驗信息管理系統主要是在局域網內以數據庫為基礎的系統,具有一 定的交互性和開放性,可以進行試驗日常任務的管理,減少管理人員的工作量,在 一定程度上提高試驗管理的信息化應用水平[49]。但是過去一段時間,在企業中應 用試驗信息管理系統的界定不是十分明顯,經常被納入企業0A系統中,作為配合 企業綜合管理、資產設備管理和日常任務管理的輔助性工具。高校的試驗信息管理 系統也是處于邊緣化的地位,常常與教務管理系統和資產管理系統相結合,幫助教 師開展試驗教學工作和資產清查入庫等內容。這些試驗信息管理系統可以解決管 理職能分散、任務分配不均、資產核算不準的問題,沒有突出其對于試驗數據處理 的重點功能[50]。
    近年來,為了滿足試驗精細化管理的需要,國內很多企業和高校都紛紛建立了 自己的試驗信息管理系統,這些系統大多數都采用了 B/S 架構,通過將管理功能 與系統數據庫進行分離的方式,方便用戶隨時隨地使用。從試驗管理的需求出發, 利用自身具備的優勢和特點,結合當前試驗管理的現狀,開發出面向對象的試驗信 息管理系統,將日常任務、數據處理和培養人才等內容串聯起來,在最優化的硬軟 件設施下,將試驗涉及的各種信息全面整合起來[51]。
    在試驗信息管理系統開發方面,張淇淳開發了一個網絡化實時控制實驗系統, 該系統是基于計算機網絡機制,利用快速原型的思想,對實時控制系統進行總體設 計,設計出數據監控、數據存儲、軟件交互等多個模塊,最后以機械工程試驗的案 例進行試驗驗證[52]。唐呈欣從航空航天企業的角度出發,總結當前數據管理模式 存在的問題,針對企業需求進行試驗數據管理系統的設計,簡要描述系統的總體實 現方案,然后對重點功能模塊進行詳細介紹,采用 B/S 架構開發出該系統并進行 測試[53]。竇琳璟設計了仿真實驗管理系統,該系統分為仿真實驗操作和管理兩個 部分,以電子電路實驗為研究對象,進行虛擬的電子電路實驗,基于B/S架構,以 MySQL為數據庫,利用C++軟件成功開發出仿真實驗平臺,控制實驗各階段[54]。 褚南峰分析了不同架構的特點和應用模式,重點研究 JSP 技術,針對傳統實驗教 學模式出現的問題,采用 B/S 架構和 SQL 2000 數據庫開發工程實驗中心管理系 統,該系統在WEB技術下運行,滿足工程實驗中心的各種需求[55]。劉惠珠通過對 學校各個部門的調查研究,總結實驗室管理平臺的各種需求,基于這些需求采用 ASP.NET 技術和 SQL 數據庫,開發出基于 B/S 架構的實驗教學與實驗室管理平 臺,設計儀器設備管理、實驗人員管理等多個模塊[56]。
    綜上所述,可以看出國內外學者對于BIM平臺的架構、標準、開發和應用等 方面已經進行大量研究,但是這些研究大多數都集中在建筑領域或橋梁領域,并未 涉及到試驗信息的管理和應用方面上,缺乏關于BIM和試驗管理結合的研究。而 試驗信息管理系統則主要以日常工作管理和試驗教學管理工作為主,沒有重視對 試驗信息的處理和利用。傳統的試驗信息管理模式存在許多不足,且探究基于BIM 的試驗信息管理模式的文獻較少,因此基于BIM的土木工程結構試驗信息管理具 有重要的研究價值,有必要結合BIM理念與試驗信息管理進行理論研究和實際應 用,推動信息化技術在土木工程結構試驗信息管理方面的應用。
    1.3研究內容與技術路線
    本文以土木工程結構試驗信息為研究對象,結合BIM理念、計算機技術和信 息管理等專業知識,通過調研實際需求、具體案例應用等方法,對基于BIM的土 木工程結構試驗信息管理方法進行研究,設計并開發基于BIM的土木工程結構試 驗信息管理系統。本文共分為六章,具體安排如下:
    第一章首先介紹基于BIM的土木工程結構試驗信息管理的研究背景及意義, 然后從BIM和試驗信息管理系統兩個方面闡述國內外研究現狀,最后說明本文的 研究內容與技術路線。
    第二章首先介紹土木工程結構試驗信息的內容、特點以及分類編碼,然后總結 BIM 的相關概念,對土木工程結構試驗信息模型進行定義,分析當前試驗信息管 理存在的問題,提出基于BIM的土木工程結構試驗信息管理方法。
    第三章以功能性和非功能性的需求分析為出發點,構建基于BIM的土木工程 結構試驗信息管理框架,并設計系統的數據庫,然后對系統的虛擬仿真、監測預警 和數據應用三個功能模塊進行詳細的設計。
    第四章首先介紹Revit二次開發技術的工具、方式和流程,然后闡述基于BIM 的土木工程結構試驗信息管理系統的界面和數據庫的開發過程,列舉三個模塊中 重要功能的開發思路和核心代碼。
    第五章以含BRB鉸支墻抗震性能試驗為案例,介紹基于BIM的土木工程結 構試驗信息管理系統在該試驗中的應用與實現過程,對比分析傳統試驗信息管理 與基于BIM的土木工程結構試驗信息管理的應用效果。
    第六章總結本文主要的研究內容和取得的研究結論,說明本文研究存在的不 足,同時展望基于BIM的土木工程結構試驗信息管理系統后續的研究方向。
    技術路線圖如圖 1.1 所示。
     
     
    圖 1.1 技術路線圖
    Fig1.1 Technology roadmap
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
    第二章基于BIM的土木工程結構試驗信息管理方法研究
    在整個土木工程結構試驗過程中會產生多種多樣的試驗信息,并且土木工程 結構試驗信息具有典型的特點;BIM作為當前土木工程行業的熱門概念,能夠在 信息管理領域發揮巨大的優勢。本章通過對傳統土木工程結構試驗信息模式進行 研究,發現其存在許多問題,為了解決這些問題引入BIM理念來建立土木工程結 構試驗信息模型,提出基于BIM的土木工程結構試驗信息管理方法。
    2.1土木工程結構試驗信息
    由于土木工程結構試驗的特殊性,所采用的試驗方法、儀器設備有所區別,研 究目的各不相同,由此產生的試驗信息類型和內容也豐富多樣,正是這些原因導致 土木工程結構試驗信息十分復雜。因此在對試驗信息管理方法進行研究前,本節先 對土木工程結構試驗信息內容和特點進行研究。
    2.1.1土木工程結構試驗類型
    土木工程結構試驗的分類通常從試驗目的、荷載類型、對象類型和時間長短等 因素考慮,而且試驗所涉及的方法和技術較多,也增加了土木工程結構試驗的復雜 性。因此需要明確土木工程結構試驗的類型,從而按照試驗類型對試驗信息進行組 織和存儲。本文結合試驗信息管理的需要,將土木工程結構試驗劃分為靜力試驗、 偽靜力試驗、擬動力試驗、動力特性試驗、動力響應試驗、疲勞試驗、原位荷載試 驗、振動臺試驗、非破損檢測試驗、其他試驗共十個類型,如圖 2.1 所示。
    土木工程結構試驗
     
    圖 2.1 土木工程結構試驗類型
     
    Fig2.1 Type of civil engineering structure test
     
    2.1.2土木工程結構試驗信息內容
    土木工程結構試驗在整個過程中會產生數量巨大、種類多樣的數據,這些數據 不僅是評判結構的實際工作性能的重要依據,也是確定新的研究方向、推動應用技 術發展的寶貴資源,因此需要對土木工程結構試驗信息進行科學地描述。土木工程 結構試驗信息如圖2.1所示,主要包含以下內容:
    (1)空間幾何信息:試件、試驗儀器和試驗場地的尺寸信息(長寬高、半徑 等)以及所處的空間坐標信息(XYZ坐標)。
    (2) 材料性能信息:材料類型(鋼筋混凝土、鋼材、實木等)、物理性能(質 量、密度等)、力學性能(抗拉強度、抗壓強度、彈性模量等)。
    (3) 計算分析信息:荷載類型(風荷載、溫度荷載等)、測量數據(應力、 應變、位移等)、數值模擬信息(單元、邊界條件、本構關系等)。
    (4) 試驗方案信息:試驗實施步驟、加載量測方案、場地布置方案、試驗儀 器安裝、試驗進度計劃、試驗成本預算、人員組織分工等。
    (5) 試驗人員信息:試驗全過程的各參與方(試驗負責人員、儀器操作人員、 試件制作人員等)。
    (6) 試驗處理信息:危險預警信息、數據對比結果、試驗偏差信息等。
    (7) 試驗文檔信息:試驗大綱、試件圖紙、試驗報告、材料采購報表等。
     
    土木工程結構試驗信息
     
     
    圖 2.2 土木工程結構試驗結構信息內容
    Fig2.2 Civil engineering structure test information content
    對上述土木工程結構試驗信息按照數據結構的不同可劃分成結構化數據與非 結構化數據。
    (1)結構化數據 土木工程結構試驗信息模型中設置的參數大部分都是結構化數據,這些數據 擁有相對固定的數據結構,且每個結構層都有試驗信息模型中存儲的信息與之對 應,并可由計算機直接提取試驗信息模型中的數據到對應的數據庫中,根據幾何屬 性的不同還可以分為幾何與非幾何模型數據。
    1) 幾何模型數據
    過去的二維模型都是基于大量矢量數據而建立的圖形,由點、線、面等幾何要 素構成其實體邊界,并通過這些要素組成特定的實體空間,借助幾何坐標描述其中 的信息。而BIM建立的三維模型則是基于一系列族構件所組合的實體,具有一定 的數據結構,能夠面向實體信息拓展矢量數據,由點、線、面、體等幾何要素構成 模型內容,并通過這些要素構建更為復雜的實體對象。
    2) 非幾何模型數據
    土木工程結構試驗信息的非幾何模型數據最主要的就是試驗項目信息及試驗 信息模型的屬性參數。例如試件模型的材料類型、力學性能、邊界條件、生產信息 等信息,試驗儀器模型的量程、精確度等信息,試驗場地模型的空間布局等信息。
    (2)非結構化數據
    非結構化數據是試驗過程中存在無明確邏輯關系的一系列數據,包括試驗報 告、設計說明、現場圖片、加載視頻等數據。由于缺乏明確的邏輯關系,因此這些 數據不具備結構化的特征。但是隨著科技的不斷發達,非結構化數據在試驗信息中 所占的比例越來越大。
    2.1.3土木工程結構試驗信息特點
    通過對土木工程結構試驗信息內容進行總結與分析,可以看出土木工程結構 試驗信息與其他領域的信息有很大的區別,呈現出以下幾個特點:
    (1) 信息數量巨大
    隨著試驗內容的不斷深入,試驗涉及的各種技術難度進一步加大,所需的試驗 設備、材料及人力投入也增大,試驗信息的數量呈現指數級別的上升趨勢,在試驗 每個階段都產生大量的信息,對試驗的管理水平提出更高的要求。
    (2) 信息存儲分散
    試驗信息一般由試驗負責人員、儀器操作人員、試件制作人員等參與方進行記 錄和提供,信息的來源十分廣泛,因此許多試驗信息還存儲在個人的手機、電腦等 設備中,并沒有及時溝通交流和數據互換,這就容易產生信息“孤島”的現象。
    (3) 信息類型復雜 土木工程結構試驗信息的種類和形式較多。某些數據既屬于這種類型也屬于
    另一種類型,同時在內容上還需要保持一致;某些數據因為各參與方軟件的不同, 會產生不同的數據標準和格式,這些都給試驗信息的管理帶來了很大的挑戰。
    (4) 信息時效性強
    試驗的實施是一個動態變化的過程,在每個階段所產生的信息都是不同的,并 隨著過程的逐步推進,信息需要不斷更新、累積和完善。信息可以反饋給上一個階 段也可以提供給下一個階段,因此必須保持一個實時更新的狀態。
     
    2.1.4土木工程結構試驗信息分類與編碼
    土木工程結構試驗信息的分類與編碼在試驗信息管理中占據十分重要的地位, 它可以增強計算機提取和處理數據信息的能力,快速統計多個同類型的試驗數據, 提高試驗信息管理的自動化程度。因此需要對土木工程結構試驗信息的名稱、描述、 分類和編碼建立一定的標準和規范,保證信息在數據交換中能夠保持一致性,提升 在試驗過程中信息傳遞和共享的速度。
    (1)土木工程結構試驗信息的分類 信息分類的基本方法有三種:線分類法、面分類法和混合分類法[57]。線分類法 是根據研究對象的某種屬性將所包含的信息逐層分解下去,處于同一層級的不同 類目屬于并列關系,位于上下連續的兩個層級則屬于隸屬關系,且互不重復交叉。 面分類法是將研究對象的不同屬性看作信息的一個個面,每個面都是彼此獨立的 平行關系,使用時只需要根據選定的面與面進行組合即可。混合分類法是在進行分 類時既采用線分類法也采用面分類法,先將信息劃分為許多個面,在每個面內部再 使用線分法,這樣既保留一定的層次性也具有相對的獨立性。
    目前土木工程結構試驗領域還沒有建立統一的試驗信息分類與編碼標準,為 了加強BIM在試驗全過程中的管理和應用效果,同時滿足國際標準和現有規范的 要求,綜合考慮試驗信息的特點與系統的功能需求,本文參照 ISO 12006-2 和 OmniClass 的分類框架[58],采用面分法與線分法相結合的混合分類法,提出基于 BIM 的土木工程結構試驗信息分類方法,將試驗不同階段各個參與方所產生的所 有試驗信息劃分為“試驗成果”、 “試驗過程”、 “試驗資源”、 “試驗屬性”四個分類對 象和“按專業分試驗”、 “按類型分試驗”、 “元素”、 “成果”、 “階段”、 “行為”、 “組織 角色”、 “工具”、 “材質”、 “屬性”十個分類表,土木工程結構試驗信息分類表如表
    2.1所示,每個分類表與分類表之間是“面”與“面”的平行關系,然后在每個分類表 下再根據實際需求按線分法進行分類。
    表 2.1 土木工程結構試驗信息分類表
    Tab2.1 Classification of civil engineering structure test information
    分類對象 表格代碼 分類名稱
    10按專業分試驗
    11按類型分試驗 試驗成果
    12元素
    13工作成果
    20 階段
    試驗過程
    行為
    續上表 2.1
    分類對象 表格代碼 分類名稱
    30 組織角色
    試驗資源 31 工具
    40 材質
    試驗屬性 41 屬性
    2)土木工程結構試驗信息的編碼
    對前文分類框架中的各個分類表采取更進一步的細分,并參照《建筑信息模型 分類和編碼標準》中的編碼表,以“按專業分試驗”、“按類型分試驗”、“元素”、“成 果”、“階段”、“行為”、“組織角色”、“工具”、“材質”、“屬性”十個分類表為模板, 完成這十個表的構建和說明。
    1) 試驗信息編碼采用目前國際標準的全數字編碼形式,由表格代碼、一級代 碼、二級代碼、三級代碼組成,表格代碼與層級代碼之間用“-”連接,各級代碼之間 采用“.”連接,試驗信息編碼結構如圖 2.2 所示;
    2) 一級代碼采用六位數字表示,前兩位為一級代碼,其余四位用零補齊;二 級代碼采用六位數字表示,前兩位為一級代碼,中間兩位為二級代碼,剩余兩位用 零補齊;三級代碼在表格代碼、一級代碼、二級代碼的基礎上,在最后增加兩位數 字代碼作為補充。
    XX-XX.XX.XX
    三級代碼
    二級代碼
    一級代碼
    圖 2.3 試驗信息編碼結構
    Fig2.3 Coding structure of test information
    3)為了在復雜情況下精確描述對象,采用運算符號“+”、“/”、“<”、“>”聯合多 個編碼一起按照對應規則使用。其中, “+”用于將同一表格或不同表格中的編碼聯 合在一起,以表示兩個或兩個以上編碼含義的集合; “/” 表示用于將單個表格中的 編碼聯合在一起,定義一個表內的連續編碼段落,以表示適合對象的分類區間。 “<”、 “>”用于將同一表格或不同表格中的編碼聯合在一起,以表示兩個或兩個以上編碼 對象的從屬或主次關系,開口背對是開口正對編碼所表示對象的一部分。例如“10- 01.02.30+11-01.20.00+20-02.00.00”代表“處于試驗實施階段的懸索橋結構疲勞試驗” “20-01.10.00/20-02.10.00”代表“從構件設計階段到試驗準備階段”。以部分編碼表內
    容來介紹試驗信息分類與編碼體系的編碼思路,如表 2.2。
    表 2.2 土木工程結構試驗信息編碼表(部分)
    Tab2.2 Code table of civil engineering structure test information (part)
    編碼 名稱 編碼 名稱
    10-01.00.00 建筑工程 20-01.00.00 試驗前期階段
    10-01.10.00 框架結構 20-01.10.00 構件設計階段
    10-01.20.00 剪力墻結構 20-01.20.00 方案設計階段
    10-01.30.00 框剪結構 20-02.00.00 試驗實施階段
    10-02.00.00 橋梁工程 20-02.10.00 試驗準備階段
    10-02.10.00 梁式橋 21-01.00.00 設計需求
    10-02.20.00 拱式橋 21-01.10.00 論證設計質量
    10-02.30.00 懸索橋 21-02.00.00 施工需求
    10-03.00.00 道路工程 21-03.00.00 科研需求
    10-04.00.00 巖土工程 21-03.10.00 推斷承載能力
    10-05.00.00 水利工程 30-01.00.00 試驗負責角色
    10-06.00.00 機電工程 30-01.10.00 公司實體
    11-01.00.00 動力試驗 30-02.00.00 設計角色
    11-01.10.00 動力特性試驗 30-02.00.00 管理角色
    11-01.20.00 結構疲勞試驗 30-03.00.00 生產角色
    11-02.00.00 擬動力試驗 30-04.00.00 使用角色
    11-03.00.00 靜力試驗 31-01.00.00 信息工具
    11-04.00.00 偽靜力試驗 31-01.10.00 筆記本電腦
    11-05.00.00 風洞試驗 31-01.20.00 移動設備
    12-01.00.00 地基基礎 31-02.00.00 設計工具
    12-01.10.00 基礎 31-02.10.00 Revit 軟件
    12-01.10.10 獨立基礎 31-03.00.00 測量工具
    12-01.10.20 條形基礎 31-03.10.00 全站儀
    12-01.20.00 基坑圍護 40-01.00.00 金屬
    12-01.20.10 地下連續墻 40-01.10.00 堿金屬
    12-01.20.20 錨桿 40-02.00.00 類金屬
    12-02.00.00 混凝土結構 40-03.00.00 非金屬
    12-02.10.00 混凝土板 40-04.00.00 礦物質化合物
    12-02.20.00 混凝土梁 40-04.10.00 花崗巖
    12-02.30.00 混凝土柱 40-05.00.00 金屬合金
     
    續上表 2.2
    編碼 名稱 編碼 名稱
    12-03.00.00 鋼結構 40-04.10.10 不銹鋼
    12-03.10.00 鋼柱 41-01.00.00 識別特征
    12-03.20.00 鋼桁架 41-01.10.00 工業基礎類別
    12-04.00.00 木結構 41-01.20.00 無線射頻 ID
    12-03.00.00 組合結構 41-02.00.00 位置特征
    13-01.00.00 試驗總體要求 41-02.10.00 大地坐標系
    13-02.00.00 試驗實施步驟 41-02.20.00 安裝高度
    13-03.00.00 試驗危險預警 41-03.00.00 時間特征
    13-04.00.00 試驗進度計劃 41-04.00.00 物理特征
    13-05.00.00 試驗成本預算 41-05.00.00 性能特征
    2.2 土木工程結構試驗信息模型
     
    BIM是土木工程行業正在推廣的一項新技術,基于BIM進行試驗信息管理的 前提是要構建土木工程結構試驗信息模型,但是目前缺乏關于土木工程結構試驗 信息模型的研究。本節首先介紹BIM的概念,然后闡述土木工程結構試驗信息模 型的定義以及特點,總結試驗信息模型所包含的內容。
    2.2.1BIM 概念
    BIM(Building Information Modeling)即建筑信息模型,由美國的 Chuck Eastman 博士在 1975 年正式提出,他將其定義為“建筑信息模型集合了對象所有的幾何信 息、功能要求和性能特征,并將整個建筑項目全生命周期內的信息整合到一個建筑 三維模型之中,其中包含施工進度、建造過程、維護管理等重要信息” [59]。
    之后美國建筑科學研究院發布的國家BIM標準(NBIMS)對BIM的定義是由 三部分組成:(1) BIM是一個建設項目所有物理和功能特性的數字化信息模型表 達方式;(2)BIM是一個共享開放的知識資源,可以交換有關這個項目的所有信 息,為此項目在全生命周期中的所有決策和計劃提供可靠依據;(3)在項目的不 同階段,不同參與方可以通過在BIM中更新、查詢、提取和分析信息,以幫助完 成各自任務和目標的協同作業[60]。BIM信息管理模式如圖2.3所示。
     
    Fig2.4 BIM information management pattern
     
    如今BIM已經在全球建筑業掀起了一場新的技術革命,這也是在普及CAD技 術之后又一突破性事件, BIM 技術即將成為每個建筑從業人員必備的技能。但是 要對BIM概念有一個正確的認識,它不是某一款軟件,更不是一個簡單的三維模 型,BIM的核心在于信息的集成、共享和傳遞。BIM是一種先進科學的管理模式, 給傳統的項目管理模式帶來了一種全新的管理思路和方式。在項目實施的各個階 段,各參與方都可以利用BIM對模型信息數據進行更新,也能從中獲取自己所需 要的各種信息,共同搭建出一個信息傳遞和共享的高效平臺,提高人員的工作效率 和溝通能力,滿足各參與方對于信息的實際需求。
    2.2.2土木工程結構試驗信息模型
    基于BIM的核心思想,土木工程結構試驗信息模型的定義為集成整個試驗項 目幾何、材料、結構等所有信息的數字化模型,是一個共享開放的信息體,涵蓋從 前期規劃設計到后期資料歸檔全過程,并且為相關的決策部署提供科學可靠的數 據,所有參與方都可以在此基礎上發揮各自的優勢共同完成試驗目標和任務。
    因此土木工程結構試驗信息模型與BIM模型的特點類似,也具備參數化、可 視化、協調性、模擬性、優化性等優勢,在試驗信息管理過程中體現出的應用價值 有以下幾點:(1)試驗信息高度集成;(2)動態關聯同步更新;(3)數據無縫 傳遞和共享;(4)信息管理過程可視化;這些應用價值可有效改善“信息孤島”、 “信息斷鏈”等問題。試驗信息的存儲、傳遞和共享是一個循環累積的過程,但是隨 著試驗進度的不斷推進,越來越多的參與方加入到試驗信息管理當中, BIM 所具 備的容量越來越大,承載的信息呈現爆炸式的增長,土木工程結構試驗信息模型增 長趨勢如圖 2.5 所示,如何管理這么龐大的信息數據成為一個愈發重要的關注點。
     
     
     
    Fig2.5 Growth trend of civil engineering structure test information model
    所有土木工程結構試驗信息按照前文提到的結構化數據和非結構化數據兩種 形式分別存儲在以 BIM 模型為載體的數據庫中,然后針對不同階段和不同需求, 還可衍生出相應的土木工程結構試驗信息子模型,滿足需要的信息模型深度,降低 信息模型的冗余度,方便對于信息的提取和利用,例如試件子模型、試驗儀器子模
     
    Fig2.6 Civil engineering structure test information model
    2.3基于BIM的土木工程結構試驗信息管理方法
    本節深入分析傳統土木工程結構試驗信息管理模式中存在的許多問題和不足, 提出基于BIM的土木工程結構試驗信息管理方法,應用該方法對試驗信息數據進 行高效傳遞與共享。
    2.3.1傳統土木工程結構試驗信息管理現狀
    針對土木工程結構試驗信息的特點,在分析大量具有代表性的試驗數據和試 驗報告后,發現傳統土木工程結構試驗信息管理模式有如下問題:
    (1)試驗各階段之間沒有建立有效的信息傳遞和共享機制,使得試驗數據出 現信息“孤島”的現象,與實際需求脫節;
    (2)試驗各參與方沒有形成協同工作的機制,每個人只專注于自己所負責的 工作,相互之間缺乏直接有效的信息溝通;
    (3)試驗數據缺乏科學合理的信息采集和處理方式,導致試驗過程中產生的 測量數據、視頻照片等重要信息未得到規范化存儲,容易出現丟失;
    (4)整個試驗過程的可視化程度低,試驗方案依靠文字內容和二維圖紙描述, 試驗數據的顯示不夠直觀簡潔,試驗現象的表達不夠形象具體。
    雖然檢測公司和高校也采用了試驗信息管理系統來進行管理,嘗試解決上述 出現的問題,但是這些試驗信息管理系統都是基于局域網的,主要用于試驗任務管 理、試驗數據管理、試驗綜合查詢、試驗資源管理等,是完全基于數據庫進行試驗 管理,只適用于試驗業務的管理和試驗數據的存儲,未能實現對整個試驗過程的全 方位管理。傳統試驗信息管理系統如圖 2.4 所示,其不足主要體現在以下幾點:
    (1)對試驗信息的管理未實現真正的數字化,試驗信息的錄入、更新、發布 等工作依靠人工手寫完成,并且得到的測量數據大多還是以紙質版的形式進行存 檔,試驗人員可以隨意修改試驗數據,降低了試驗數據的真實性。
    (2)試驗信息傳遞和共享的局限性大,因為各個檢測公司和高校的試驗管理 系統都不完全一樣,也沒有采用統一的數據標準格式,難以實現對試驗數據、技術 文檔等資源的傳遞和共享,導致試驗數據的可復用性較差。
    (3)系統界面和內容的可視化程度較低,無法顯示試驗的三維信息模型,對 于試驗現象和結論的展示不夠直觀,試驗數據的可對比性不足,試驗歸檔時只是單 純的文檔內容,后期未參與試驗的人員不便于理解前期開展的工作。
    (4)試驗信息管理的流程不夠規范,試驗負責人對于試驗工作的管控主要還 停留在依靠現場試驗人員的匯報,沒有做到實時動態的管理,且由于流程的不規范 導致試驗過程可追溯性不強,一旦出現問題,無法快速找到負責的人員。
     
    首頁試驗任務管理試驗數據管理試驗綜合查訶試驗資源管理基礎數據管理試驗建模管理
     
     
    Fig2.7 Interface of traditional test information management system
    2.3.2基于BIM的土木工程結構試驗信息管理方法
    在創建土木工程結構試驗信息模型的基礎上,為了更高效地利用試驗信息,解 決不斷增大的信息管理難度,本文提出一種基于BIM的土木工程結構試驗信息管 理方法,該方法是指試驗各參與方以BIM試驗信息模型為載體,通過BIM試驗信 息管理系統,對試驗信息數據進行高效傳遞與共享,提高試驗信息管理的水平,實 現試驗全過程全方位的精細化、科學化管理,基于BIM的土木工程結構試驗信息 管理方法圖如圖 2.7 所示。
     
    圖2.8基于BIM的土木工程結構試驗信息管理方法
    Fig2.8 Method of civil engineering structure test information management based on BIM
    (1) 試驗各參與方——主體
    土木工程結構試驗信息管理的主體是試驗負責人員、儀器操作人員、試件制作 人員等眾多參與方。這些參與方需要掌握信息管理的主動權,承擔起各自所處于的 崗位職責,對于試驗過程出現的偏差和問題要保持警惕,積極探索試驗信息的科學 管理流程,利用好 BIM 這個強大工具來管理試驗信息。
    (2) 試驗信息模型——基礎
    土木工程結構試驗信息模型是試驗數據的載體,是試驗信息管理的基礎。試驗 各參與方可以根據自己的實際需求創建不同深度的模型,從中提取出所需的信息 數據,然后完成各自任務后再將模型及時更新到試驗管理系統中,方便他人使用, 此外試驗信息模型的創建需要遵循BIM標準和現有規范。
    (3) 試驗信息數據——核心 試驗信息管理的核心是土木工程結構試驗信息的全部內容。在采用統一的信
    息分類與編碼方式下,試驗各參與方可以保證數據形式上的一致性,避免在信息交 換時出現錯誤和遺漏,同時建立起BIM數據庫和對應的映射關系來存儲數據,保 證對信息的采集、處理等正常功能,為試驗決策分析提供準確無誤的數據。
    (4) 試驗信息管理系統——手段
    為了順利進行試驗信息管理的流程,需要擁有一個能夠支持BIM數據傳遞和 共享機制并基于BIM模型進行操作的試驗信息管理系統,作為各參與方管理的重 要手段。但是目前還沒有這樣的試驗管理系統,因此有必要設計并開發出完整的試 驗管理系統以滿足使用要求,在該系統上利用各種功能模塊完成管理操作。
    2.4本章小結
    本章首先介紹土木工程結構試驗信息的內容、特點和分類編碼,然后總結土木 工程結構試驗信息模型的定義和特點,分析當前試驗信息管理的現狀,提出一種基 于BIM的土木工程結構試驗信息管理方法,可以得到以下結論:
    (1) 土木工程結構試驗信息內容包含空間幾何信息、材料性能信息等七個方 面,可分為結構化數據和非結構化數據,具有信息數量巨大、存儲分散、類型復雜、 時效性強的特點,并分為“按專業分試驗”、 “按類型分試驗”等十個分類表。
    (2) 土木工程結構試驗信息模型的定義為集成整個試驗項目幾何、材料、結 構等所有信息的數字化模型,在試驗信息管理過程中體現出重要的應用價值,并且 針對不同階段和不同需求,還可衍生出相應的土木工程結構試驗信息子模型。
    (3) 傳統試驗信息管理模式存在很多問題和不足,且未得到很好的解決,在 創建土木工程結構試驗信息模型的基礎上,本文提出一種基于BIM的土木工程結 構試驗信息管理方法,該方法是指試驗各參與方以BIM試驗信息模型為載體,通 過 BIM 試驗信息管理系統,對試驗信息數據進行高效傳遞與共享。
    第三章基于BIM的土木工程結構試驗信息管理框架構建
    在第二章土木工程結構試驗信息管理方法中提到,試驗信息管理系統是重要 的手段,因此如何構建土木工程結構試驗信息管理框架成為迫切需要解決的問題。 本章首先從需求分析出發,明確框架設計的三大原則,構建包含五個層次的系統總 體架構,闡述數據庫的設計思路與主要數據表,并對各個模塊的功能和應用流程展 開詳細的敘述。
    3.1需求分析
    需求分析是設計基于BIM的土木工程結構試驗信息管理系統的起點,直接影 響到后面各個階段的成果和應用,因此在進行設計之前需要對其需求做詳盡的分 析,為試驗信息管理框架的構建指明研究方向。本節主要從功能性需求和非功能性 需求兩個方面分析。
    3.1.1功能性需求
    功能性需求是系統設計和開發的核心動力,重點在于滿足各參與方對試驗信 息管理系統的實際需要,從而提供更加全面、智能、快捷的功能供用戶使用。經過 調研分析后主要有以下幾點:
    (1) 試驗實施前對試驗過程的仿真模擬
    系統可以實現土木工程結構試驗信息模型的快速導入,并能對該模型進行三 維瀏覽和參數編輯等操作;將試驗方案以BIM模型的形式展示出來,包括試驗現 場布置、試驗加載制度和量測方案等內容;系統與仿真模擬軟件進行交互,并將計 算分析的數據在模型中進行顯示和使用。
    (2) 試驗實施時對試驗現象和數據的監測
    采集試驗實施時產生的加載數據、測量數據和圖片文檔等數據,并存儲到數據 庫中對應的數據表;系統能以圖表可視化的形式動態顯示采集到的數據,在試驗信 息模型中也能查到最新的數據;當某個測量數據超過設置的預警閾值時,系統會發 布危險預警信息。
    (3) 試驗實施后對試驗數據的利用
    系統可以與數據分析軟件進行交互,將采集到的原始數據經過分析處理后存 儲到數據庫,并在系統中對處理前后的數據進行對比分析,輔助用戶判斷;能將試 驗模型和數據以CAD圖紙、Excel表等多種格式進行輸出,方便在其他軟件中進 一步的利用;可以對數據進行查詢、修改和刪除等操作;
    3.1.2非功能性需求
    非功能性需求不像功能性需求體現的那么直接,更多的是在其他詳細功能模
    塊的應用服務得以體現,本文提出的非功能性需求如下:
    (1) 試驗信息存儲的規范化 試驗信息管理系統涉及的試驗類型較多,輸入系統的信息格式復雜。為了提升
    系統的工作效率,要求試驗數據一方面需要符合國家和行業的標準規范,另一方面 也需要考慮公司和高校業務系統已有的規范。采用標準化的試驗信息存儲模式,能 避免因為數據不規范而發生的錯誤和遺漏,提高數據的通用性和完整性。
    (2) 試驗管理系統的可擴展性 試驗信息管理系統是一個由各種軟硬件組成的龐大系統,需要對各種設施資
    源進行整合,各參與方在應對不同問題時能夠順利將試驗信息以不同的格式輸出 到各種設備中,方便與其他軟件進行交互。此外還要對未來的技術發展有一定的預 見性,保證試驗管理系統經過較長一段時間而不被淘汰,滿足用戶的長期使用。
    (3) 試驗管理系統的安全性 試驗過程產生的許多數據是十分機密的,系統的安全性甚至直接影響試驗的
    正常開展,所以需要注重對于數據的保護,不容許未經負責人私自篡改數據等行為, 還有個人的隱私數據也可能因他人的隨意操作導致泄漏,因此系統需要根據不同 用戶的崗位職責設置一定的數據訪問權限和用戶登錄控制等功能。
    3.2框架設計
    基于BIM的土木工程結構試驗信息管理系統的目的是將正確的信息在正確的 時間提供給正確的用戶,實現試驗信息管理科學高效化,因此需要構建一個完善的 試驗管理系統框架。
    3.2.1設計原則
    基于BIM的土木工程結構試驗信息管理系統的框架設計涉及土木工程、信息 管理、計算機技術等多個學科,需要明確設計原則進而用于指導該試驗信息管理系 統的設計和后期的開發。系統主要遵循以下原則:
    (1) 實用性原則 系統的實用性是系統設計和開發首要考慮的因素,是否滿足各參與方在試驗
    信息管理過程的實際需要成為系統推廣和應用發展的基石,系統開發者不應一味 地追求界面的美觀和技術的先進,更多地需要考慮功能的使用效果和操作的簡潔 易懂,盡量減少系統漏洞的發生。
    (2) 模塊化原則
    按照功能需求的不同,可將試驗信息管理系統劃分為多個小模塊,每個模塊與 模塊間都是有功能聯系的,但也是相對獨立的。不同的參與方根據自身需求可以靈 活地選擇和使用系統相應的功能模塊。當系統需要變更或新增功能時,只需要修改 對應的模塊即可,不會影響其他模塊,從而保證系統運行地更加平穩可靠。
    (3)易維護性原則 系統的設計還要以易維護為出發點,不應對于使用者的軟硬件設施提出太高 的要求,要以最低的成本獲得最大的價值;其次系統管理員可以獨立對系統進行管 理和控制,降低日常維護的難度;最后要保證各參與方輸入的信息數據在數據庫中 可以方便的管理和維護。
    3.2.2總體架構
    在明確系統的功能需求和設計原則后,下一步對系統的總體架構進行設計。為 了優化整個土木工程結構試驗信息管理的流程,參考軟件工程的設計思路,結合現 有試驗信息管理系統的模式,本文提出基于BIM的土木工程結構試驗信息管理系 統總體架構,采用C/S結構模式,編程語言是C#語言,開發環境是Visual Studio2019, 利用ADO.NET體系實現對SQL Server2017數據庫的操作,其系統框架的層級結 構可以分為表示層、業務外觀層、功能邏輯層、資源管理層、存儲層五個部分,從 而實現試驗信息管理系統的“集中管理、模塊聯動、運行優化”的目標。系統總體架 構如圖 3.1 所示。
    (1) 存儲層 存儲層是試驗信息管理系統的基礎層,它采用最新的數據庫管理系統,將整個
    試驗過程不同階段產生的大量試驗信息存儲起來,形成一個虛擬化的數據緩沖池, 避免在使用時出現信息丟失等不良情況,通常使用SQL語言進行數據操作,主要 包括BIM數據庫、IFC數據庫、XML文件庫及其他數據類型。
    (2) 資源管理層 資源管理層是把資源查詢、資源更新、資源保存、資源導出等一系列管理操作
    整合到一起,利用文件管理系統、計算機操作系統等手段對資源進行不同程度的過 濾,然后將經過處理后的數據加載到存儲層對應的數據庫中,再根據功能邏輯層的 需求從中提取和傳遞到對應的界面中,因此資源管理層起到了重要的支撐作用。
    (3) 功能邏輯層
    功能邏輯層是整個系統的核心層,一般是通常計算機編程來實現其功能,由許 多綜合的邏輯對象組成,通過這些功能邏輯對象達到系統所需要的各項功能。此外 功能邏輯層還需要具備一定的擴展性,各參與方可在此基礎上根據各自特點開發 相應的業務接口,提供更多的功能服務。
    (4) 業務外觀層
    業務外觀層是用戶直接操作和直觀感受的界面,也是用戶與系統各功能模塊
     
    Fig5.19 Comparison of test data
    (3)試驗數據輸出
    為了增強對外輸出功能,系統設置了輸出CAD圖紙與Excel文件的兩大功能, 可以將試件圖紙、試驗荷載方案、試驗儀器布置等導出為DWG圖紙,采用系統設 置的試驗圖紙模板,用戶不需要自己手動選擇即可導出試驗所需的方案格式,例如 本例中導出的DWG圖紙,包括構件的正、狽0、俯視圖和構件明細表內容。系統能 夠根據用戶指定的類型篩選出需要的數據類型,還能將經過處理后的數據導出為 Excel 文件,并且匯總數據并將匯總統計的結果進行展現,實現試驗數據在全階段 的流動與共享,試驗數據輸出應用情況如圖 5.20所示。
     
    圖 5.20 試驗數據輸出
    Fig5.20 Test data output
    (4)試驗數據管理
    試驗數據管理主要是查詢、修改和刪除三個,在序號、分類編碼、類型、數值、
    時間和屬性輸入要查詢的信息單擊查詢即可,選中要修改的數據,整行數據都會顯
    示在上面的文本框中,在文本框中重新輸入數據單擊修改就完成修改的操作,在刪 除功能,選中需要刪除的整行數據然后單擊刪除,整行數據就會被刪除,試驗數據
    管理應用情況如圖 5.21 所示。
     
     
     
     
    (5)數據庫管理
    試驗數據庫管理有備份、還原、附加和分離四個操作,首先輸入要操作的數據 庫名稱單擊備份選擇要備份的文件夾完成操作,還原操作需要首先輸入數據庫名 稱然后找到備份的數據庫路徑即可,附加與分離則不需要輸入數據庫名稱,只要找 到相應的文件路徑就可完成,數據庫管理應用情況如圖 5.22 所示。
     
     
     
    Fig5.22 Database management
    5.3 應用效果分析
    從試驗信息管理的應用角度上,將傳統試驗信息管理系統與基于 BIM 的土木 工程結構試驗信息管理系統進行對比,如表5.1所示。
    表5.1傳統試驗信息管理系統與基于BIM的土木工程結構試驗信息管理系統對比
    Tab5.1 Comparison between traditional test information management system and civil
    engineering structure test information management system based on BIM
     
     
     
     
     
    以導出到任何三維設計軟件中
    續上表 5.1
    應用角度 傳統試驗信息管理系統 基于BIM的土木工程結構試驗信息管
    理系統
    系統應用流程 沒有統一標準的流程 設計并采用統一規范的應用流程,方
    便用戶理解使用
    通過以上對比,可以看出基于BIM的土木工程結構試驗信息管理系統在信息 傳遞方式、可視化程度、軟件交互性、系統應用流程多個應用角度上有巨大的優勢, 給土木工程結構試驗信息管理帶來了較好的效益,提高了試驗管理的水平。試驗信 息管理系統的使用能夠優化試驗信息管理的流程,降低試驗的成本投入,為試驗各 參與方提供可靠的數據存儲功能和強大的數據管理功能。
    采用基于BIM的土木工程結構試驗信息管理系統對試驗過程產生的信息進行 管理,有以下幾點價值:
    (1) 實現試驗信息在各個階段間的傳遞和共享 在試驗信息管理系統中,可以參數化設計試件、試驗儀器和試驗場地模型并賦
    予參數信息,通過現場布置這一功能與試驗方案緊密聯系起來,并開發與仿真模擬 軟件的接口,在 BIM 模型轉化到有限元模型的過程中實現數據傳遞,而且通過 ADO.NET與數據庫鏈接,以模型參數的方式將試驗數據實時共享在Revit軟件中, 使試驗信息在全過程充分流動和體現,避免了各個階段間可能出現的“信息孤島”。
    (2) 增強試驗各參與方在工作上的協同性 試驗各參與方在系統上不僅可以完成自己所負責的工作,還能借助系統看到
    其他參與方所完成的工作成果,與自己的工作內容對比,如果出現與實際情況不符 或者與計劃偏差較大時,可以及時反饋給試驗負責人,幫助試驗人員更好地融入試 驗協同工作的良好氛圍中,促進試驗各參與的溝通交流。
    (3) 有效保存并利用得到的試驗數據 引入科學合理的數據采集方式,將大量的試驗數據保存到試驗信息管理系統
    數據庫中,并且重視圖片、文本等非結構化數據的存儲,在實時顯示、危險預警、 數據分析、數據管理等功能中從多個角度有效利用了采集到的試驗數據,既減少了 信息損失的程度,又加強了信息利用的效率。
    (4) 提高試驗信息管理的可視化程度 在模型管理中可以瀏覽試驗三維模型,在方案模擬中可以進行現場三維布置,
    在實時顯示中可以查看數據圖表和通過模型參數查看數據,在危險預警中能夠以 模型高亮顯示的方式反映危險,這些都是試驗信息可視化的應用方面,降低了用戶 對試驗信息的理解難度,使試驗數據更加直觀具體。
    5.4本章小結
    本章首先對含BRB的鉸支剪力墻的試驗概況進行介紹,然后以該試驗為案例 詳細闡述從試驗開始到結束全過程的系統應用情況,最后將傳統試驗信息管理系 統與基于BIM的土木工程結構試驗信息管理系統進行對比。可以得到以下結論:
    (1)在試驗的計劃與準備階段、實施階段、分析與總結階段三個階段中應用 試驗信息管理系統,以含BRB的鉸支剪力墻為案例,可以看出系統的應用情況良 好,基本實現試驗預先設置的管理目標,驗證了試驗信息管理系統的可行性。
    (2)與傳統土木工程結構試驗信息管理模式相比,基于BIM的土木工程結構 試驗信息管理系統給試驗帶來較好的效益,并且在信息傳遞與共享、協同工作、科 學存儲和利用以及可視化程度上有很大的應用價值。
    深度交互的重要渠道,在虛擬仿真、監測預警和數據應用模塊下有許多對應的業務 界面,可以在 Visual Studio 中對界面進行設計,以滿足功能邏輯層的調用。
    ( 5 )表示層 表示層是整個系統架構的最高層,用戶通過自己的軟硬件設施進入到系統中, 各參與方只需在各自的設備上進行操作就可以完成對信息的傳遞與共享,因此表
    示層屬于功能服務的終端口,常見的設備有臺式計算機、便攜式計算機等。
     
    使用設備
    I
    臺式計算機 便攜式計算機 I
     
     
     
     
     
    圖 3.1 基于 BIM 的土木工程結構試驗信息管理系統總體架構
    Fig3.1 General framework of civil engineering structure test information management system
    based on BIM
    3.2.3數據庫設計
    基于BIM的土木工程結構試驗信息管理系統的數據都是存儲在數據庫中,因 此需要在滿足系統需求和使用的前提下,經過科學合理的方案設計,降低數據的冗 余度,盡量縮小所占用的空間。為了提高試驗數據的存儲效率,借鑒比較著名的新 奧爾良(New Orleans)方法對土木工程結構試驗信息管理系統數據庫進行設計, 定義E-R圖、數據表等數據庫對象,為下文數據庫的開發奠定基礎。
    數據庫的概念結構設計是通過實體-聯系圖(Entity Relationship Diagram,簡稱 E-R 圖)的方式將試驗信息管理的需求清晰呈現出來, E-R 圖常用來描述關系型數 據庫的類型、屬性和關聯,由矩形、菱形、橢圓和實線四種元素組成,分別代表不 同的類型和聯系,通過對試驗信息管理系統各個功能模塊的調研和抽象分析構建 E-R圖,因涉及的實體較多且關系復雜,本文選取較為重要的實體構成E-R圖進 行描述,如圖 3.2所示。
     
    圖 3.2 基于 BIM 的土木工程結構試驗信息管理系統 E-R 圖
     
    Fig3.2 E-R diagram of civil engineering structure test information management system based on
    BIM
    進行數據庫操作就是利用數據庫的表來操作數據,數據庫的表是具有行列結 構的對象,通常用來存儲和管理數據,是關系型數據庫重要的實體形式。通過對E- R 圖可以得到土木工程結構試驗信息管理系統的數據庫表結構,由于系統的功能 模塊和數據類型較多,本文只列出試驗儀器表、測量數據表、文檔信息表、試驗人 員表、危險預警表等主要數據庫表的設計內容。
    ( 1 )試驗儀器表 試驗儀器包括應變儀、位移計等模型,試驗儀器表用來存儲這些儀器模型在軟 件中的相關信息,主要有ID、分類編碼、類型、幾何參數、材質、屬性等字段, ID 作為主鍵索引,幾何參數包含長寬高尺寸參數,試驗儀器表設計如表 3.1 所示
     
    表 3.1 試驗儀器表設計
    Tab3.1 Design of test model table
    字段名稱 數據類型 允許空 說明
    ID int No 主鍵
    分類編碼 nvarchar(50) Yes
    類型 nvarchar(50) Yes
    幾何參數 float Yes 尺寸
    材質 nvarchar(50) Yes
    屬性 nvarchar(50) Yes
    2)測量數據表
    測量數據表是用來存儲試驗儀器所采集到的數據,主要有ID、分類編碼、類 型、數值、時間、屬性等字段。 ID 作為表的主鍵索引,類型是指數據類型,數值 是指儀器采集到數據的具體數值,測量數據表設計如表3.2所示。
    表 3.2 測量數據表設計
    Tab3.2 Design of test data table
    字段名稱 數據類型 允許空 說明
    ID int No 主鍵
    分類編碼 nvarchar(50) Yes
    類型 nvarchar(50) Yes
    數值 float Yes 測量值
    時間 datetime Yes
    屬性 nvarchar(50) Yes
    3)文檔信息表
    文檔信息表是用來存儲試驗文檔的基本信息,是對文檔管理的必要手段,主要 字段有ID、分類編碼、名稱、類型、時間、存儲路徑,其中存儲路徑是指文檔在 硬盤中的完整路徑,便于后期存儲和調用,文檔信息表設計如表3.3所示。
    表 3.3 文檔信息表設計
    Tab3.3 Design of document information table
    字段名稱 數據類型 允許空 說明
    ID int No 主鍵
    分類編碼 nvarchar(50) Yes
    名稱 nvarchar(50) Yes
     
     
    續上表 3.3
    字段名稱 數據類型 允許空 說明
    類型 nvarchar(50) Yes
    時間 datetime Yes
    存儲路徑 char(100) Yes 完整路徑
    4)試驗人員表
    試驗人員表是用來存儲系統用戶的基本信息,對使用系統數據庫的用戶進行 管理,設置不同的權限等級,需經過身份認證后才可登入系統,可有效保證數據庫 中試驗信息的安全性,防止被隨意篡改或泄露,包括 ID 、分類編碼、姓名、登錄 名、登錄密碼和權限等級,試驗人員表設計如表 3.4 所示。
    表 3.4 試驗人員表設計
    Tab3.4 Design of test personnel table
    字段名稱 數據類型 允許空 說明
    ID int No 主鍵
    分類編碼 nvarchar(50) Yes
    姓名 nvarchar(50) Yes 可不唯一
    登錄名 nvarchar(50) Yes
    登錄密碼 nvarchar(50) Yes
    權限等級 nvarchar(50) Yes
    5)危險預警表
    危險預警表在發生危險情況能夠記錄試驗數據并發布出去,因此需要包含危 險狀況的ID、分類編碼、類型、數值、時間和屬性等重要信息,并將危險預警表 中的數值與試驗數據表的數值進行比較,判斷是否超過閾值,若超過則會自動報警, 危險預警表設計如表 3.5 所示。
    表 3.5 危險預警表設計
    Tab3.5 Design of hazard warning table
    字段名稱 數據類型 允許空 說明
    ID int No 主鍵
    分類編碼 nvarchar(50) Yes
    類型 nvarchar(50) Yes
    數值 float Yes 閾值
    時間 datetime Yes
    試驗人員 nvarchar(50) Yes
     
     
    結構化查詢語言 (Structured Query Language,間稱SQL)是操作數據庫的專 用命令集,其支持多用戶在線、多線程處理和多語言編程,應用時使用者只需發出 命令而不需考慮命令的實現過程, SQL 具有操作簡單、命令齊全、應用靈活等優 點。SQL Server 2017是由Microsoft開發的關系數據庫系統的最新版本,支持數據 新建、查詢、更新、刪除等管理操作,具備功能強大、運行快速的優勢。本文采用 該軟件操作試驗信息管理系統的數據庫,可以把大量試驗數據通過數據庫表建立 關系明確、組織簡潔的結構進行存儲,當出現信息變化時,可以快速定位實時更新, 實現為用戶提供科學可靠的信息。
    3.3功能模塊設計
    在構建系統總體架構的基礎上,綜合考慮用戶的需求分析,對系統各功能實現 的要素進行更為明確的設計。為支持土木工程結構試驗信息共享和傳遞的機制,本 節對基于BIM的土木工程結構試驗信息管理系統的虛擬仿真、監測預警、數據應 用三個模塊進行詳細的介紹。
    3.3.1虛擬仿真模塊設計
    虛擬仿真模塊主要是在試驗實施前對試驗過程進行模擬,通過試驗信息模型 的導入和編輯,在系統中添加試驗方案的相關信息,然后進行試驗場地的布置,最 后與仿真模擬軟件交互,并將計算分析后得到的數據顯示在模型中。虛擬仿真模塊 包括模型管理、方案模擬和仿真模擬三個功能,如圖 3.3 所示。
     
    圖 3.3 虛擬仿真模塊
    Fig3.3 Virtual simulation module
    (1)模型管理 模型管理功能包含試件模型、試驗儀器模型、試驗場地模型三個方面。因為系
    統的大多數功能都是基于試驗模型操作的,所以模型的創建十分重要。首先需要對 試驗需要的各種實體進行參數化設計,構建出試件族、試驗儀器族、試驗場地族, 并添加后期需要的參數信息,形成完整的試驗模型,然后根據實際需求選擇合適的 模型族載入系統中,若不存在則需重新設計后再載入,若存在只需在彈出的界面中 設置相應的參數值,就可完成模型的創建。用戶可以在系統中通過鼠標操作來全方 位地瀏覽模型的二維和三維效果,并通過單擊模型查詢相應的參數,還可以對不符 合實際的參數再次進行編輯修改,模型管理流程圖如圖 3.4 所示。該功能將試件設 計過程進行可視化,不再是依靠傳統的二維圖紙進行設計,給試驗人員更加直觀的 展示,參數化的特點也減輕了試件設計修改的工作量,只要更改一處參數便可實現 其余地方同步更改。
     
    圖 3.4 模型管理流程圖
    (2)方案模擬
    方案模擬功能有試驗大綱、加載量測制度、現場布置檢查三個方面。在該模塊 中添加試驗大綱內容,對試驗的試驗名稱、試驗概況、試驗人員和試驗時間等基礎 信息進行添加。對于試驗方案中的加載制度可以通過儀器安裝和試驗加載儀器的 參數信息進行設置,量測制度可以通過測點布置和試驗測量儀器的參數信息進行 設置。對前期已經布置好的試件模型、試驗儀器模型和導入的試驗場地模型進行現 場布置檢查,按設置的碰撞距離和工作面寬度等參數,對試驗現場中各個模型間距 離與參數進行比較,若出現不滿足的情況則會彈出對話框提示,若滿足則可基本確 定試驗方案,方案模擬流程圖如圖 3.5 所示。通過現場布置檢查的功能可以在試驗 準備開始前,就在系統提前模擬好試驗現場布置情況,若出現不滿足試驗要求的情 況可以在試驗實施前避免,節省試驗的投入成本,提高了試驗信息的傳遞效率。
     
    圖 3.5 方案模擬流程圖
    (3)仿真模擬 仿真模擬功能有軟件交互、計算數據顯示兩個方面。仿真模擬的應用流程如下, 第一步選中要導出分析的試件模型或結構模型,可以是單個構件也可以是由多個 構件組成的組合構件,然后通過與仿真模擬軟件進行交互,可以將試件模型的幾何 信息和物理信息分別導出至仿真模擬軟件中組合形成完整的分析模型,然后進行 計算分析相關操作后,提取計算分析后得到的數據,以 Excel 文件的形式回傳到系 統中,確認無誤后保存至數據庫,再調用數據庫中的計算分析數據以試件模型參數 的形式顯示出來,仿真模擬流程圖如圖 3.6 所示。通過該模塊可減少分析模型的建 模難度,達到一個模型多處使用的目標,通過試驗信息模型的方式將仿真模擬過程 與試驗實施過程串聯起來,真正做到先模擬后試驗的目的。
     
    圖 3.6 仿真模擬流程圖
     
    3.3.2監測預警模塊設計
    監測預警模塊主要是在試驗實施時對試驗數據進行監測,首先需要對加載數 據、測量數據等試驗數據進行采集,然后將采集到的數據以數據圖表的形式展現給 用戶,并在試驗信息模型的參數中體現,當某個測量數據出現超過預警閾值時,模 型會高亮顯示危險區域,同時將危險信息輸入到模型參數中。監測預警模塊包括數 據采集、實時顯示和危險預警三個功能,如圖3.7所示。
    監測預警模塊
     
    Fig3.7 Monitoring and early warning module
    (1)數據采集 數據采集功能是整個土木工程結構試驗管理系統的核心功能,主要包括加載 數據、測量數據和非結構化數據三個方面的采集,加載數據采集是采集加載儀器設 備在加載時所使用的荷載值,測量數據采集是指對測量儀器設備在實施過程中顯 示的測量值,非結構化數據主要是在試驗過程中的現場圖片和文字信息等內容的 記錄。數據采集模塊的主要功能是在試驗開始加載后,通過現場試驗數據采集人員 將例如MTS、油壓千斤頂等加載儀器設備的施加荷載值根據所選擇的加載儀器類 型添加到本系統數據庫中進行保存,采集人員將例如位移計、應變儀等測量儀器設 備的顯示數值成功保存至數據庫中,對于不能直接保存的現場圖片、文本文檔等非 結構化數據,本系統通過數據庫記錄其完整的存儲路徑,然后在需要查看時根據存 儲路徑打開文件,數據采集流程圖如圖 3.8 所示。通過數據采集功能可將大量的試 驗數據存儲到數據庫中,為其他模塊提供基礎性數據,確保數據的長期保存,減少 信息流失、遺漏、破壞等意外情況的發生。
     
     
    圖 3.8 數據采集流程圖
     
    Fig3.8 Data collection flow chart
    (2)實時顯示 實時顯示功能的主要作用是將采集到的數據進行可視化并融入到試驗信息模 型中,包括數據圖表和模型參數顯示兩種方式。將采集到的試驗數據從數據庫提取 出來,選擇要顯示的加載數據或測量數據類型,例如測量的位移數據,然后選擇要 查看的圖表類型(例如柱狀圖、折線圖等),在系統界面中就能可視化所要顯示的 數據。通過把數據添加到對應的模型參數中這種方式,將試驗數據與試驗模型一一 關聯起來,當單擊模型時就可通過查看模型參數看到采集數據。實時顯示的一個關 鍵問題是定期更新數據,根據系統默認的更新速度定期判斷當前數據是否為最新 數據,若為是則無需更新,若為否則需從數據庫中提取最新的數據替換原有的數據, 同時更新相應的數據圖表和模型參數,實時顯示流程圖如圖3.9所示。BIM的一大 特點就是可視化,通過實時顯示功能可以將基于BIM的土木工程結構試驗信息管 理系統的可視化效果完美展現出來,讓試驗人員更好的了解和把控現場情況,直觀 地發現數據的變化情況和趨勢,并與預期計劃數據進行對比,實現對于試驗過程的 動態化管理。
     
     
    圖 3.9 實時顯示流程圖
     
    Fig3.9 Real time display flow chart
    (3)危險預警 危險預警功能的目的是為了提前對試驗現場可能出現的危險進行防范和控制, 由模型高亮提示、危險預警發布兩個方面組成。危險預警模塊是在數據采集的基礎 上進行的預警管理,首先試驗人員需要根據國家技術規范或者試驗安全方案對可 能發生危險的測量數值進行設置,然后從數據庫中提取采集到的位移、應力、應變 等測量數據,將測量數據與預警閾值進行比較,此時有三種預警情況,當測量值達 到預警值的 50%時模型顯示黃色,當測量值達到預警值的 70%時模型顯示紅色, 當測量值達到預警值的 100%時模型顯示紫色,并提示當前危險試驗區域。然后現 場試驗人員將可能發生危險的試件位置、測量值、預警值、預警時間等關鍵信息錄 入模型中,若需上報危險信息,可以通過即時通訊的方式發送至試驗負責人或聯系 人的手中,危險預警流程圖如圖 3.10 所示。本系統的危險預警功能可以快速定位 至試驗信息模型中發生危險的區域,并在系統中隨時查看試件的測量數據、預警閾 值和時間等信息,方便用戶第一時間了解情況,危險預警的發布有利于及時通知試
    驗負責人,組織相關專家對整體試驗危險進行綜合評估,避免現場試驗人員的虛報、
    瞞報等情況的發生,從而保證試驗目標的順利完成。
     
    圖 3.10 危險預警流程圖
     
    Fig3.10 Hazard warning flow chart
    3.3.3數據應用模塊設計
    數據應用模塊主要是在試驗實施后對試驗數據進行利用,先對試驗采集到的 原始數據通過調用數據分析軟件進行處理,將處理前后的數據進行對比分析,然后 根據使用的需要將數據以不同的格式輸出,在系統中還可以對試驗數據進行查詢、 修改、刪除等操作,如圖 3.11 所示。
    數據應用模塊
     
     
     
    Fig3.11 Data application module
    (1)數據處理 在得出試驗結論之前需要先對試驗數據進行處理和分析,數據處理功能主要 是選定合適的數據處理方法,調用強大的外部數據分析軟件,例如常用的MATLAB 軟件等,對采集到的試驗數據進行處理,從外部分析軟件中提取處理好的試驗數據, 初步判斷是否滿足本次試驗的需要,若滿足則保存至數據庫,若不滿足則需要重新 選擇方法進行分析直到滿足為止。然后將處理后的試驗數據與處理前的試驗數據 從多個方面進行對比分析,幫助試驗人員得到更加正確、全面的結論,數據處理流 程圖如圖 3.12 所示。數據處理的功能更多是輔助試驗人員進行判斷、決策和分析, 利用本系統可以提高試驗分析人員的數據處理效率,在一個系統中就可以完成數 據的采集、分析和管理等連續操作,實現數據的充分利用和流動。
     
     
    圖 3.12 數據處理流程圖
     
    Fig3.12 Data processing flow chart
    (2)數據輸出
    數據輸出功能是系統對外輸出成果的主要方式,有輸出Excel文件和CAD圖 紙兩個功能。當前大多數試驗軟件和系統都是以.xls格式的文件進行信息的傳遞, 因此本系統也設計導出Excel文件以支持此項功能,可以將原始數據或處理后數據 導出至Excel,增強試驗人員對試驗數據的利用率。例如在試驗負責人與構件加工 廠交流時或進行試驗數據歸檔時,可能還需要使用二維 CAD 圖紙,系統可按照預 先設置好的圖紙模板,將需要導出的圖紙和明細表插入至圖紙模板中,形成完整的 試驗方案圖紙,最后導出 CAD 圖紙。系統的數據輸出功能可以避免反復繪制 CAD 圖紙的重復性工作,而且用戶在同時有了二維圖紙和三維模型的基礎上,能夠更好 地理解試驗方案和過程,數據輸出流程圖如圖3.13所示。
     
    圖 3.13 數據輸出流程圖
     
    Fig3.13 Data output flow chart
    (3)數據管理
    數據管理功能是系統一項重要的管理功能,基于BIM的土木工程結構試驗信 息管理系統的重點在于數據的傳遞和共享上,數據管理提供了對于單個數據和整 個數據庫的多個操作,其中試驗數據管理有試驗數據查詢、試驗數據修改、試驗數 據刪除三個操作,數據庫管理則是面向整個數據庫,提供數據庫備份、數據庫還原、 數據庫附加、數據庫分離四個操作。試驗人員可以在系統中根據ID查詢具體的單 個數據或根據分類編碼查詢具有相同類別的多個數據,依據試驗實際情況對數據 進行修改,刪除不正確或者重復的數據。為了避免意外情況的發生,系統提供了數 據庫備份還原和附加分離的功能,試驗人員如果需要更換設備或者遇到系統故障, 可以將數據庫整體移動,確保數據的安全性和共享性,數據管理流程圖如圖 3.14 所示。由于試驗技術越來越復雜,所產生的試驗數據也越來越多,依靠人工手寫統 計保存很可能出現遺漏和錯誤,本系統的數據管理功能是基于SQL Server2017軟 件而設計的,試驗人員在使用時結合系統簡潔實用的窗體界面可以很方便地管理 數據,提高信息管理的效率,增強數據的可維護性。
     
    圖 3.14 數據管理流程圖
     
    Fig3.14 Data management flow chart
    3.4本章小結
    本章參考軟件工程的設計思路,以需求分析為出發點,詳細闡述系統的總體架 構和數據庫設計兩個方面內容,重點介紹基于BIM的土木工程結構試驗信息管理 系統的三大功能模塊,可以得到以下結論:
    (1) 系統的需求有兩個方面,一方面是功能性需求,有實施前的過程模擬、 實施時的數據監測和實施后的數據利用三個用戶關注的需求,另一方面是非功能 性需求,包括試驗信息存儲的規范化、試驗管理系統的可擴展性和安全性。
    (2) 系統的設計與開發應遵循實用性、模塊化、易維護性的原則,本文所提 出的基于BIM的土木工程結構試驗信息管理系統是由存儲層、資源管理層、功能 邏輯層、業務外觀層、表示層五個層次組成,采用新奧爾良法對系統數據庫進行設 計,展示了試驗儀器表、測量數據表、文檔信息表、試驗人員表、危險預警表等五 個主要數據庫的表。
    (3) 試驗信息管理系統的三大功能模塊分別是虛擬仿真、監測預警和數據應 用,詳細介紹每個模塊所包含的主要功能,然后采用流程圖的方式說明各個功能的 應用過程,使用戶能直觀了解到系統各個模塊的運行原理。
    第四章基于BIM的土木工程結構試驗信息管理系統開發
    在完成土木工程結構試驗信息管理框架的構建后,本章旨在對前文設計的試 驗管理系統進行具體開發。本文所采用的系統開發是基于 Revit 軟件的二次開發, 因此需要遵循Revit二次開發技術的方式和流程,先從系統總體界面開發入手,以 數據庫開發為系統支撐,參數化創建所需的試驗信息模型,最后列舉三個模塊中重 點功能的實現過程和核心代碼。
    4.1Revit 二次開發技術
    本文所設計的基于 BIM 的土木工程結構試驗信息管理系統是建立在 BIM 核 心軟件Revit基礎上的插件系統,因此系統的實現需要依賴于Revit API( Application Programming Interfaces,簡稱應用程序編程接口)的二次開發技術。Revit API提供 了大量關于Revit的命名空間和類庫,方便使用者基于Revit平臺進行二次開發工 作,例如重新定義系統原有功能,或者根據用戶自身需求開發更多的功能[61]。通過 Revit API的接口,使用者無需訪問程序源代碼即可訪問應用程序的數據,類似于 應用程序和使用者的一座橋,方便了使用者對于模型深度信息的挖掘和利用。
    4.1.1開發工具
    Revit不涉及程序核心代碼的情況下提供了形式多樣的API接口給使用者,這 些API都是.net API,只要在Microsoft.Net Framework2.0以上可以兼容的編程語言 都能調用 Revit API。Visual Studio 是微軟開發的 IDE 軟件(Integrated Development Environment,簡稱集成開發環境),微軟在其中封裝了大量的類和方法方便開發 者使用。C#語言是在C語言和C++語言的基礎上演變而來,貫徹了當前流行的面 向對象程序設計思想,在 Winform 窗體設計和 SQL Server 數據庫管理開發等方面 越來越得到開發者的青睞。因此本文采用Visual Studio 2019為開發軟件,以C#為 開發語言,靈活運用Winform窗體進行可視化表達,并建立相應的SQL數據庫作 為數據支撐,在 Revit 軟件基礎上開發土木工程結構試驗信息管理系統。
    Revit為了更好地支持使用者的二次開發,直接整合了二次開發所需要眾多資 料和文檔打包成Revit SDK( Software Development Kit,簡稱軟件開發工具包), 如圖4.1所示,其中包含了 Add-In-Manager插件、Revit Lookup工具、API幫助文 檔和大量的Sample實例代碼,大大提高了使用者的開發效率[62]。開發者可以通過 Add-In-Manager 插件加載外部插件,這樣做的好處是不需要重啟軟件即可完成對 插件代碼的修改;Revit Lookup工具可以不用編寫任何代碼直接查看Revit軟件的 所有對象屬性和參數;API幫助文檔包含命名開發需要的命名空間和各種API類 
    庫、方法等的解釋說明,開發者可以隨時打開查閱,Sample實例代碼中有多達140 個代碼.cs文件,是開發者重要的參考資源。
    B.1 SDK
    查看
    電腦 > 軟件(D:) > Revit 2018.1 SDK
    名稱 修改日期 大小
    Add-In Manager 2020/2/26 10:29 文磁
    Macro Samples 2020/2/26 10:29
    Revit Server SDK 2020/2/26 10:29 文磁
    Revit Structure 2020/2/26 10:29
    REX SDK 2020/2/26 10:29
    Samples 2020/2/26 10:29 文磁
    Structural Analysis SDK 2020/2/26 10:29 文磁
    固 Autodesk Icon Guidelines 2017/7/2715:21 Adobe Acrobat... 4,960 KB
    畫 Getting Started with the Revit API 2017/7/2715:21 Microsoft Word... 160 KB
    國 Read Me First 2017/7/2715:21 Microsoft Word... 38 KB
    昌 Revit Platform API Changes and Addi... 2017/7/2715:21 Microsoft Word... 53 KB
    會 RevitAddlnUtility 2017/7/27 17:48 編譯的HTML幫… 223 KB
    □ RevitAddlnUtility.chw 2020/2/26 10:55 CHW文件 36 KB
    if RevitAPI 2017/7/27 18:02 編譯的HTML幫… 46,937 KB
    0 RevitAPl.chw 2020/2/26 10:55 CHW文件 5,599 KB
    © RevitAPISDK_Eula 2017/7/2715:23 RTF1S式 8 KB
     
    圖 4.1 Revit SDK 文檔
    Fig4.1 Revit SDK document
    4.1.2開發方式
    Revit 二次開發共有兩種開發方式,第一種是借助 Visual Studio 軟件工具進行 開發,第二種是采用軟件自帶的VSTA (Visual Studio Tools for Application)進行 開發。本文采用的是第一種方式,首先在Visual Studio軟件中引用Revit API.dll和 Revit APIUI.dll兩個文件獲得其封裝的函數,通過IExternal Command(外部命令)、 IExternal Application (外部應用)和 IExternal DBApplication (數據庫級別的外部應 用)中的接口來實現開發,如圖4.2所示。本文采用IExternal Command添加應用, 采用 IExternal Application 添加界面,然后在 addin 中注冊文件加載插件,最后通過 工具菜單觸發外部命令。外部命令的接口必須要調用 Execute 函數,包含了 Command Data 獲取當前模型對象、 message 傳出參數、 elements 將返回的信息顯 示在模型中。如果要使用IExternal Application接口,則需要調用On Startup和On Shut Down 兩個函數來實現所需要的功能。
     
     
    Revit API.dll
    Revit APIUI.dll
    圖 4.2 Revit 調用外部命令和外部應用方式
    Revit invokes external commands and external applications
    4.1.3開發流程
    Revit二次開發流程如圖4.3所示,具體步驟如下:
    (1)在Visual Studio 2019軟件中新建類庫項目并命名。
    (2)在項目中添加引用 Revit API.dll 和 Revit APIUI.dll 兩個鏈接庫,并在屬 性中將"復制本地”改為“False”,減少運行內存的負擔,如果需要外部應用時還需要 添加 PresentationCore.dll 等程序集的引用。
    (3)在程序代碼的頭部添加Revit API using namespace (命名空間),例如 using System 、 using System.Collections.Generic 、 using System.Linq 、 using Autodesk.Revit.DB、using Autodesk.Revit.UI 等命名空間。
    (4)指定API事務模式和模型更新模式,通常選用Manual (手動)模式, [Autodesk.Revit.Attributes.Transaction(Autodesk.Revit.Attributes.Transaction Mode.Manual)][Autodesk.Revit.Attributes.Regeneration(Autodesk.Revit.Attributes.Reg eneration Option.Manual)]。
    ( 5)編寫主程序函數,主要有兩種方式,第一種從 IExternal Command 外部 命令接口派生類,重載Execute()函數方法,另一種從IExternal Application外部應 用接口派生類,重載On Startup()函數和重載On Shutdown()函數方法。
    (6)判斷編譯是否成功,如果失敗返回上一步重新編寫代碼,如果成功則編 譯生成 dll 文 件 , 復 制 解 決 方 案 里 的 addin 文 件 到 C:\Program Data\Autodesk\Revit\Addins\2018目錄下,完成注冊插件并順利加載到Revit中。
    (7)在Revit軟件中運行加載的程序,查看達到的效果。
    (8)判斷開發出的程序是否滿足系統需求,如果不滿足則返回編寫代碼,若 滿足則完成整個程序的開發。
     
     
    圖 4.3 Revit 二次開發流程
    Fig4.3 Revit secondary development process
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
    4.2系統總體開發
    在系統框架構建完成后,就進入到土木工程結構試驗信息管理系統的總體開 發階段,即通過編程方式來實現系統的界面和功能,具體內容有界面開發、數據庫 開發兩個方面,此外為了保證后面各項功能的正常使用,還需要對試驗信息模型進 行參數化創建。
    4.2.1系統界面開發
    在 Revit 軟件上開發基于 BIM 的土木工程結構試驗信息管理系統,首先需要 在菜單欄中添加“土木工程結構試驗信息管理系統”界面,按照二次開發的流程,在 Visual Studio2019 中編寫界面程序,還需要引用“Windows Base.dll”,“Presentation Core.dll”,“System.Xaml.dll”三個鏈接庫,然后開發土木工程結構試驗信息管理系 統的 Ribbon 界面,在此界面中添加模型管理、方案管理等功能按鈕集成各種外部 應用。其部分核心代碼如下所示:
    ( 1) 設置事務模式為手動, 并啟動外部應用 IExternalApplication 的 OnShutdown 和 OnStartup 兩個函數。
    [TransactionAttribute(TransactionMode.Manual)]
    [RegenerationAttribute(RegenerationOption.Manual)]
    public class Class1 : IExternalApplication
    {
    public Result OnShutdown(UIControlledApplication application)
    {
    return Result.Succeeded;
    }
    public Result OnStartup(UIControlledApplication application)
    {
    return Result.Succeeded;
    }
    }
    (2)在 OnStartup 函數中創建土木工程結構試驗信息管理系統選型卡頁,用 于在菜單欄中進行功能區擴展,繼續創建模型管理選項卡面板,用于放置所需要的 各種按鈕、組合框等控件。
    application.CreateRibb onTab(" 土木工程結構試驗信息管理系統");
    RibbonPanel panel1 = applicati on.CreateRibbonPanel ("土木工程結構試驗信息 管理系統", "模型管理");
    (3)在面板中創建試件的下拉按鈕,下拉按鈕可以放置許多單獨的命令按鈕
     
    在下拉列表中,并為下拉按鈕添加一系列描述信息,方便用戶對于下拉按鈕內容的 理解,鼠標懸停時可以顯示信息。
    PulldownButtonData pulldownBtnData1 = new PulldownButtonData("PulldownButton1", "試件");
    PulldownButton pulldownBtn1 = panel1.AddItem(pulldownBtnData1) as PulldownButton;
    pulldownBtn1.LongDescription = "<p> 規范化構件 </p><p > 自定義構件 </p>"; pulldownBtn1.Image = new BitmapImage(new Uri(@"圖片 path")); pulldownBtn1.LargeImage = new BitmapImage(new Uri(@"圖片 path ")); pulldownBtn1.ToolTipImage = new BitmapImage(new Uri(@"圖片 path "));
    (4)創建各個功能的命令按鈕,用于執行具體的功能命令,并設置三個命令 按鈕的圖片,用于在界面上顯示按鈕的圖標方便用戶進行區分。
    PushButtonData pushButtonData1 = new PushButtonData("name1", "預留洞口的 剪力墻",@"外部程序path ","外部程序Class1");
    pushButtonData1.LargeImage = new BitmapImage(new Uri(@"圖片 path "));
    (5)最后將三個命令按鈕添加到模型管理下拉按鈕的下拉列表里,為了實現 分割的效果需要設置水平分割線。
    PushButton button1 = pulldownBtn1.AddPushButton(pushButtonData1); pulldownBtn1.AddSeparator();
    以上程序代碼通過成功編譯會在VS系統目錄中生成.dll文件,利用Add-InManager 插件生成.addin文件載入到Revit軟件目錄中,重啟Revit軟件就可以得 到土木工程結構試驗信息管理系統界面,如圖4.4所示。
    般結構系統 JSA 注釋分析休量和場地瞬視圖管理附加模塊
    D “ 輛碣咳 謝 ? 3
    試驗構件 試驗儀器 輕場地 輕大綱加載量測方案場地布置方案模擬軟件交互數值模擬顯示
    刪仿真模塊
    (a)虛擬仿真模塊界面
    工程結構輕信息管理系統修改 E) ”
    g § a t q * 冃
    加載數據 測量數據m湃構化數據 數據圖表 模型參數顯示 模型高亮顯示 危險預警發布
    監測預警模塊
    (b)監測預警模塊界面
     
     
    圖 4.4 土木工程結構試驗信息管理系統界面
    Fig4.4 Interface of civil engineering structure test information management system
    4.2.2數據庫開發
    第三章中已經采用新奧爾良方法對數據庫進行了分析與設計,在此基礎上以 SQL Server Management Studio為數據庫管理軟件,利用C#與T-SQL語言的混合 編程,在Visual Studio2019開發數據庫前臺界面,將數據庫功能嵌入到Revit軟件 中進行調用,實現Revit與SQL Server數據庫之間的信息交互。
    ADO.NET是微軟向開發者提供的一系列關于數據訪問服務的類,用于支持對 SQL Server和XML等數據源進行訪問,其對象主要有連接數據庫Connection、執 行SQL語句Command、讀取數據DataReader、數據適配器DataAdapter、數據集 DataSet五個部分,結構體系如圖4.5所示。應用程序可以使用ADO.NET連接并 管理所包含的數據,并且能最大化的減輕系統負擔,而開發者只需要利用一個組件 就可以管理所有類型的數據,具有極大的便捷性。因此本文采用ADO.NET體系來 訪問和管理 SQL 數據庫。
    連接數據庫)〔讀取數據]|
    數據集 " 應用程序
    DataSet sj 1—' Visual Studio
    DataReader |
    — 數據適配器]| DataAdapter
    圖 4.5 ADO.NET 結構體系
    Fig4.5 Structural system of ADO.NET
    開發土木工程結構試驗信息管理系統數據庫首先需要在 SQL Server Management Studio2017軟件中創建系統數據庫,然后根據前文設計的數據表建立 相應的數據表,并設置字段、數據類型和主鍵等內容,最后在Visual Studio2019中 添加C#類庫和Winform窗體,添加數據庫的命名空間using System.DataSqlClient, 利用窗體設計器設計數據庫窗體界面并編寫控件的程序代碼。其開發過程如下:
     
    ( 1)建立數據庫連接并打開。
    string ConStr = "server=服務器名稱;database="數據庫名稱";uid=登錄名;pwd= 登錄密碼";//聲明一個字符串,用于存儲連接數據庫字符串
    SqlConnection conn = new SqlConnection(ConStr); //創建一個 SqlConnection 對 象
    conn.Open();〃 打開連接
    (2)根據不同需要編寫SQL命令語句。
    SqlCommand cmd = new SqlCommand();〃創建一個 SqlCommand 對象
    cmd.Connection = conn; //設置 Connection 屬性
    cmd.CommandText = "select count(*) from 數據表名稱";//設置 CommandText 屬 性,以及SQL語句
    cmd.CommandType = CommandType.Text; //設置 CommandType 屬性為文本,
    使其只執行SQL語句文本形式
    (3)將數據庫中的數據填充到DataSet數據集中。
    SqlDataAdapter sda = new SqlDataAdapter();//創建一個 SqlDataAdapter 對象
    sda.SelectCommand = cmd; //設置 SelectCommand 屬性為 cmd
    DataSet ds = new DataSet();//創建一個 DataSet 對象
    sda.Fill(ds, "cs");//使用 SqlDataAdapter 對象的 Fill 方法填充 DataSet 數據集
    (4)關閉數據庫連接并清理所占用的資源。
    conn.Dispose();
     
    圖 4.6 土木工程結構試驗信息管理系統數據庫
    Fig4.6 Database of civil engineering structure test information management system
    4.2.3試驗信息模型參數化創建
    土木工程結構試驗中涉及許多的實體類型,有試驗的研究對象——試件,試驗 加載和測量的試驗儀器,還有提供試驗場所的試驗場地,這些都需要依據實際物體 進行參數化建模,為試驗信息數據的傳遞提供載體。
    試驗信息模型的參數化創建都是在Revit軟件完成的,“族”是Revit軟件中 的一個獨特概念,族包含了模型所有的幾何信息和非幾何信息,可分為系統族、內 建族、自定義族, BIM 模型就是通過一個個族參數進行參數化驅動的。試驗信息 模型的管理都是依靠試驗模型族進行組織和管理的,下面簡要介紹一下試驗信息 模型的參數化建模過程:
    (1)選擇合適的族樣板文件;
    (2)根據設計圖紙設置相應的參照平面;
    (3)利用拉伸、融合、旋轉、放樣等命令創建實體;
    (4)對創建出來的實體使用對齊命令放置尺寸標注;
    (5)在尺寸標簽中添加參數,可以添加類型參數、實例參數或者共享參數等;
    (6)在族類型中編輯參數,可以使用數學公式進行設計;
    (7)導出.rfa文件即形成試驗模型族文件,根據試驗的需要載入相應的試驗 項目中。
    在此過程中,最為關鍵的一步是對模型賦予各種參數信息,不僅包括尺寸、坐 標等幾何信息,更重要的是材質性能、結構分析、試驗方案、試驗人員等信息,這 些信息不一定都能通過系統默認的族參數賦予,這時可以采用共享參數的形式進 行賦予,對于前期暫時沒有錄入的信息,可以先賦予空參數,待后期數據更新時進 行補充。
    目前參數化建模有兩種方式,第一種是直接在Revit軟件中新建族文件利用面 板功能進行操作,第二種是利用 RevitAPI 開發的方式編寫代碼完成。本文主要采 用第二種方式建模,以預留洞口剪力墻為例,其實現代碼如下所示,編譯成功后模 型如圖所示,其余創建的部分試驗模型族如圖4.7所示,設置的族參數類型如圖4.8 所示:
    ( 1)設置事務模式為手動,并啟動外部命令 IExternalCommand 的 Execute 函 數。
    [TransactionAttribute(TransactionMode.Manual)]
    [RegenerationAttribute(RegenerationOption.Manual)]
    public class Class1 : IExternalCommand
    {
    public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)
    {
    return Result.Succeeded;
    }
    }
    (2)獲取當前活動文檔的所有對象,新建并啟動事務,因為Revit里所有對 模型的修改都必須通過事務方式。
    UIDocument uidoc = commandData.Application.ActiveUIDocument;
    Document doc = uidoc.Document;
    Transaction trans = new Transaction(doc, "CSW");
    trans.Start();
    (3)創建需要設計的線,并添加到線組中去,因為Revit里的單位都是英制 的,所以都要除以 304.8。
    Curve c1 = Line.CreateBound(new XYZ(0, 0, 0), new XYZ(1000 / 304.8, 0, 0)); CurveArray curveArray1 = new CurveArray();
    curveArray1.Append(c1);
    CurveArrArray curveArr = new CurveArrArray(); curveArr.Append(curveArray1);
    ( 4)創建拉伸,確定拉伸平面和拉伸長度。
    doc.FamilyCreate.NewExtrusion(true, curveArr, SketchPlane.Create(doc,
    Plane.CreateByNormalAndOrigin(new XYZ(0, 1, 0), XYZ.Zero)), 200 / 304.8);
    (5)創建尺寸標注、族參數、族類型。
    Dimension newDimension = doc.FamilyCreate.NewDimension(doc.ActiveView, Line1, referenceArray);
    doc.FamilyManager.AddParameter(” 剪力墻長",
    BuiltInParameterGroup.PG_LENGTH, ParameterType.Length, false);
    doc.FamilyManager.NewType("1000*200*2000 剪力墻");
    ( 6)提交事務,完成全部創建。
    trans.Commit();
     
    Fig4.8 Family parameter type
    4.3功能模塊開發
    4.3.1虛擬仿真模塊開發
    ( 1)模型管理
    要實現模型管理模塊的功能,除了要引用 SDK 文件下的動態鏈接庫 Revit API.dll和Revit APIUI.dll以獲取其封裝的函數,同時還要引用Windows窗體控件 文件 System.Windows.Forms 以獲取其封裝的窗體函數。程序代碼主要分為兩部分: 第一部分是主程序(Program.cs),程序是從這里通過Main函數(或Revit中的 Excute函數)開始的。另一部分是窗體程序(Form1.cs),Winform的圖形用戶界 面都是通過這些Form控件實現的,本質上窗體程序也只是一個類,僅僅是主程序 在運行時調用它。首先對模型管理模塊的UI界面進行設計,如圖4.9所示,然后 在窗體程序賦予各控件的功能代碼,最后在主程序中實例化窗體類調用,并啟動事 務模式完成載入族、創建族實例和修改族參數等操作。
     
    圖 4.9 試件模型參數設置界面
     
    Fig4.9 Test component model parameter setting interface
    1、窗體程序部分核心代碼 設置載入按鈕的點擊事件為窗體確定結果。
    this.DialogResult = DialogResult.OK;
    this.Close();
    設置關閉按鈕的點擊事件為窗體取消結果。
    this.DialogResult = DialogResult.Cancel;
    this.Close();
    設置重設按鈕的點擊事件,還原 numericUpDown 初始值并清空文本框內容。
    this.numericUpDown1.DecimalPlaces = 0;
    textBox1.Clear();
    定義窗體各個參數的類型,獲取 numericUpDownx 數據和獲取 textBox 數據的 方式。
    public string 剪力墻長 {
    get {return this.DialogResult == DialogResult.OK ? numericUpDown1.Value.ToString() : ""; }
    }
    public string 質量密度
    {
    get { return this.DialogResult == DialogResult.OK ? textBox1.Text : ""; } }
    2、主程序代碼 設置事務模式為手動,并啟動外部命令 IExternalCommand 的 Execute 函數, 在 Execute 函數中實例化模型管理窗口界面,并獲取當前活動文檔的所有對象。
    Form1 form1 = new Form1();
    UIDocument uidoc = commandData.Application.ActiveUIDocument; Document doc = uidoc.Document;
    如果窗體返回確定結果,則獲取窗體中填寫的參數。
    double a = Convert.ToDouble(form1.剪力墻長); string s1 = form1. 質量密度;
    新建并啟動事務,載入試驗構件族。
    Transaction trans = new Transaction(doc, "試驗構件"); trans.Start(); doc.LoadFamily(@ "族保存路徑”);
    過濾族類型,遍歷族類型獲得所需要的族類型,如果未激活則激活族類型。
    FilteredElementCollector fec1 = new FilteredElementCollector(doc); ElementClassFilter ecf1 = new ElementClassFilter(typeof(FamilySymbol)); fec1.WherePasses(ecf1);
    FamilySymbol fs1 = null; foreach (var ele in fec1) {
    if (ele.Name == "1000*200*2000")
    {
    fs1 = ele as FamilySymbol;
    break;
    }
    }
    if (!fs1.IsActive)
    {
    fs1.Activate();
    }
    創建試驗構件族實例,根據獲取窗體的參數值修改試驗構件族參數。
    FamilyInstance fi1 = doc.Create.NewFamilyInstance(new XYZ(0, 0, 0), fs1, StructuralType.NonStructural);
    IList<Parameter> list1 = fs1.GetParameters("剪力墻長");
    Parameter p1 = list1[0];
    p1.Set(a / 304.8);
    IList<Parameter> list9 = fs1.GetParameters("質量密度");
    Parameter p9 = list9[0];
    p9.Set(s1); trans.Commit();
    上述是以試件模型為例介紹模型管理開發的過程,試驗儀器模型和試驗場地 模型的界面設計與實現代碼類似。
    ( 2)方案模擬 在場地布置方案完成后需要對系統中的試驗模型進行檢查,通過場地檢查按 鈕可以對選中的元素對象進行自動檢查,首先通過元素過濾器遍歷元素及ID,以 元素為中心創建設置一定距離的輪廓框,通過與輪廓框是否相交的條件過濾元素, 并彈出相應的對話框反饋檢查結果。其實現的核心代碼如下:
    設置事務模式為手動,并啟動外部命令 IExternalCommand 的 Execute 函數, 在 Execute 函數獲取當前活動文檔的所有對象。
    UIDocument uiDoc = commandData.Application.ActiveUIDocument;
    Document doc = commandData.Application.ActiveUIDocument.Document; 新建事務并啟動。
    Transaction tran = new Transaction(doc, "現場布置檢查"); tran.Start();
    創建過濾器,遍歷所有元素找到需要檢查的元素。
    FilteredElementCollector collector = new FilteredElementCollector(doc);
    ElementCategoryFilter category = new
    ElementCategoryFilter(BuiltInCategory.OST_GenericModel);
    collector = collector.WherePasses(category);
    Element element = null;
    foreach (Element ele in collector)
    {
    if (ele.Name == "1000*200*2000")
    {
    element = ele;
    }
    }
    獲取元素中心的XYZ坐標,以元素為中心創建輪廓框,提交事務,完成輪廓 框的創建。
    XYZ xyz = new XYZ();
    FamilyInstance fi = element as FamilyInstance;
    LocationPoint fipoint = fi.Location as LocationPoint;
    xyz = fipoint.Point;
    XYZ xyzmin = new XYZ(xyz.X - 1000 / 304.8, xyz.Y - 600 / 304.8, xyz.Z - 1500 / 304.8);
    XYZ xyzmax = new XYZ(xyz.X + 1000 / 304.8, xyz.Y + 600 / 304.8, xyz.Z + 1500 / 304.8);
    Outline Outln = new Outline(xyzmin, xyzmax); tran.Commit();
    再創建一個元素收集器收集文檔內所有的元素,利用與輪廓相交的邊界框圖 元快速過濾器過濾元素。
    FilteredElementCollector collector2 = new FilteredElementCollector(doc); BoundingBoxIntersectsFilter filter = new BoundingBoxIntersectsFilter(Outln); 收集所有相交的元素,并進行判斷,若不為空則說明有相交,否則沒有相交的 元素。
    IList<Element> Element = collector2.WherePasses(filter).ToElements(); if(Element!=null)
    {
    TaskDialog.Show(”現場布置檢查","現場布置有問題,請重新調整!");
    }
    else TaskDialog.Show ("現場布置檢查","現場布置無問題!");
    經過編譯后單擊現場布置檢查按鈕,即可彈出對話框,如圖 4.10 所示。
    Classi -現場布置撿查
    現場布置無問題!
    關閉(C)
    圖 4.10 場地布置檢查對話框
     
    Fig4.10 TaskDialog of site layout inspection
    ( 3)仿真模擬
    通常在 Abaqus 軟件有兩種建模方式。一是通過 AbaqusCAE 面板可視化的方 式操作,另一種是通過 INP 文件的方式完成模型的創建。但是遇到較為復雜的模 型時,采用以上方式就會比較麻煩,要重復類似點擊的無用工作,工作效率也有所 降低,而且修改起來也不方便。因此本文利用前期建立的BIM試驗模型,轉化為 Abaqus 有限元模型,這樣不僅能縮短在創建有限元模型上所花費的時間,提高了 模型的計算精度,而且還能實現試驗信息數據在多個軟件間的無縫傳遞和高效流 動,充分發揮了 BIM在一致性和可視化的優勢。本文通過RevitAPI二次開發的方 式設計了 BIM試驗模型向Abaqus有限元模型轉化的數據接口,實現BIM模型直 接導入到有限元軟件中進行結構計算,主要編程思路是提取出BIM模型中的物理 信息和幾何信息,通過 Python 代碼的方式直接導入 Abaqus 有限元軟件,進行相應 的有限元計算。導出至Abaqus核心代碼如下:
    設置事務模式為手動,并啟動外部命令 IExternalCommand 的 Execute 函數, 在 Execute 函數中獲取當前活動文檔的所有對象,實例化元素集。
    UIDocument uiDocument = commandData.Application.ActiveUIDocument;
    Document doc = uiDocument.Document; ElementSet selections = new ElementSet();
    獲取所有元素的ID,并放入元素集中,遍歷元素物理材質,建立材質集。
    foreach (ElementId elementID in uiDocument.Selection.GetElementIds())
    {
    selections.Insert(doc.GetElement(elementID));
    }
    foreach (Element element in selections)
    {
    ICollection<ElementId> matID = element.GetMaterialIds(false);
    在材質集中獲得元素的材質,提取物理屬性信息。
    foreach (var item in matID)
    {
    Material mat2 = doc.GetElement(item) as Material;
    PropertySetElement structualAsset =
    doc.GetElement(mat2.StructuralAssetId) as PropertySetElement;
    double para1 = structualAsset.GetStructuralAsset().YoungModulus.X /
    304800;
    } 創建元素過濾器,下一步提取幾何信息。
    FilteredElementCollector collector = new FilteredElementCollector(doc);
    ElementCategoryFilter category = new
    ElementCategoryFilter(BuiltInCategory.OST_GenericModel);
    collector = collector.WherePasses(category);
    遍歷所有元素找到需要導出的元素,獲取構件的幾何信息及幾何參數值。
    Element Ele =null; foreach(Element ele in collector)
    {
    if(ele.Name=="1000*200*2000")
    {
    Ele = ele;
    }
    }
    Options opt = new Options();
    opt.ComputeReferences = true;
    opt.DetailLevel = ViewDetailLevel.Fine;
    GeometryElement geometry = Ele.get_Geometry(opt);
    ParameterSet ps = Ele.Parameters; foreach(Parameter p1 in ps)
    {
    if(p1.Definition.Name=="剪力墻長
    "&&p1.StorageType==StorageType.Double)
    {
    double l1 = p1.AsDouble();
    }
    }
    將上述提取出來的信息用Python語言編寫腳本導入Abaqus軟件即可完成模 型的創建。
    4.3.2監測預警模塊開發
    (1)數據采集
    數據采集模塊主要是將加載數據、測量數據和圖片、文本等非結構化數據存儲 到土木工程結構試驗信息管理系統數據庫中,對于加載數據和測量數據,本文開發 了兩種方式進行采集和存儲,第一種方式是直接在系統的數據采集界面中輸入數 據,單擊采集即可存儲至指定數據表中,第二種方式是考慮到大多數用戶習慣以.xls 文件格式保存試驗數據,為了提高數據錄入效率,實現由Excel采集到的試驗數據 直接存儲到數據表中。對非結構化數據則通過 OpenFileDialog 控件選擇采集的圖 片和文本以在硬盤中存儲的完整路徑作為數據值,然后再存儲到數據表中進行保 存。下面以試驗中重要的加載數據采集為例,說明數據采集模塊的實現方法。
    本文為了提高與用戶的交互程度,設計出加載數據采集的界面,然后對采集 button 按鈕賦予代碼,并在 Revit 外部應用程序調用此窗口,因此代碼主要分為窗 體代碼和主程序代碼兩部分。
    1、第一種方式是直接在系統界面中輸入數據然后單擊采集,其核心代碼如下: 在窗體加載程序,建立數據庫連接并打開,然后創建Command命令,執行SQL 查詢語句,并新建數據適配器設置其屬性為Command命令,使用Fill方法填充到 創建的 DataSet 中。
    conn = new SqlConnection("server=@ 服務器名;database=@ 數據庫名;uid= 登錄名稱;pwd=登錄密碼");
    conn.Open();
    SqlCommand cmd = new SqlCommand("select * from 加載數據表", conn); sda = new SqlDataAdapter(); sda.SelectCommand = cmd;
    ds = new DataSet();
    sda.Fill(ds, "cs");
    創建DataTable提取DataSet中的數據表到內存中,為了保證后期采集時不會 引起主鍵錯誤,所以刪去 ID 列,最后將數據表輸出到 DataGridView 中進行顯示和 操作。
    DataTable dt2 = ds.Tables["cs"];
    dt2.Columns.Remove("ID");
    dataGridView1.DataSource = dt2;
    在采集按鈕單擊中,首先需要提取DataSet的數據表內容,然后新建DataTable 的行,并將文本框的值賦予給對應的列值,數據類型的不一致的需進行強制轉化, 再添加到新建的行,新建一個CommandBuilder,然后調用數據適配器的Update方 法,將DataTable的內容更新到數據庫中保存。
    DataTable dt = ds.Tables["cs"];
    DataRow dr = dt.NewRow();
    dr["類型"]=textBox2.Text.Trim();
    dr["數值"]=Convert.ToDouble(textBox3.Text.Trim());
    dr["時間"]=dateTimePicke門.Value;
    dr["屬性"]=textBox5.Text.Trim();
    dt.Rows.Add(dr); SqlCommandBuilder cmdbuider = new SqlCommandBuilder(sda); sda.Update(dt);
    his.DialogResult = DialogResult.OK;
    第一種加載數據采集界面如圖 4.11 所示。
     
    圖 4.11 加載數據采集界面一
     
    Fig4.11 Loading data collection No.1 interface
    2、第二種方式是先在 Excel 軟件中輸入數據,然后一鍵導入到數據庫中: 在選擇導入按鈕中,新建OpenFileDialog控件選擇需要導入的.xls格式文件, 并保存其路徑名。
    private void button1_Click(object sender, EventArgs e)
    {
    System.Windows.Forms.OpenFileDialog fd = new OpenFileDialog();
    if (fd.ShowDialog() == DialogResult.OK)
    {
    string fileName = fd.FileName; bind(fileName);
    }
    }
    對于前面獲取的路徑名,定義導入所需要的完整命令,包括導入方式、數據源 和版本等,并建立 OleDbDataAdapter 數據適配器。
    string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" +"Data Source=" + fileName + ";" +"Extended Properties='Excel 8.0; HDR=Yes; IMEX=1'";
    OleDbDataAdapter da = new OleDbDataAdapter("SELECT * FROM [sheet1$]", strConn);
    DataSet ds = new DataSet();
    設置try-catch方式輸出錯誤信息,如果順利執行則使用Fill方法填充DataTable, 并通過 DataGridView 顯示數據。
    try
    {
    da.Fill(ds);
    dt = ds.Tables[0]; this.dataGridView1.DataSource = dt;
    }
    catch (Exception err)
    {
    MessageBox.Show ("操作失敗!" + err.ToString());
    }
    在更新數據庫按鈕中,打開數據庫連接,遍歷DataGridView的所有數據,通 過DataRow行方式插入到SQL數據庫中更新,關閉數據庫連接。
    conn = new SqlConnection(connString);
    conn.Open();
    if (dataGridView1.Rows.Count > 0)
    {
    DataRow dr = null;
    for (int i = 0; i < dt.Rows.Count; i++)
    {
    dr = dt.Rows[i]; insertToSql(dr);
    }
    conn.Close();
    MessageBox.Show("導入成功! ”);
    }
    else
    {
    MessageBox.Show("沒有數據!");
    }
    自定義DataRow插入到SQL數據庫的方法,將Row的列名與Excel表的列名 一一對應起來,執行Command命名的ExecuteNonQuery方法提交到數據庫中,完 成更新。
    string 應力 =dr["應力"].ToString(); string 位移=dr["位移"].ToString(); string sql = "insert into 應力位移表 values('" +應力 + "','" +位移 + "')"; SqlCommand cmd = new SqlCommand(sql, conn); cmd.ExecuteNonQuery();
    第二種加載數據采集界面如圖4.12所示。
     
    圖 4.12 加載數據采集界面二
     
    Fig4.12 Loading data collection No.2 interface
    (2)實時顯示
    試驗過程中所采集的數據是實時更新的,是一個動態變化的過程,實時顯示模 塊是以Winform界面可視化控件和BIM模型的可視化效果為手段,以SQL數據 庫為數據源,將試驗數據多種角度的展現出來,降低數據理解的難度,使用戶直觀 便捷地獲取到所需要的信息。實時顯示功能的實現思路是通過ADO.NET體系提取 出數據庫中的試驗數據,通過Mschart控件完成的曲線圖顯示,達到數據可視化的 效果,然后將數據庫中最新的數據關聯到BIM試驗信息模型中,打開試驗信息模 型的屬性即可看到最新的試驗數據。數據圖表的核心代碼如下:
    在窗體加載程序中,設置ComboBox下拉列表內容。 comboBox1.DropDownStyle = ComboBoxStyle.DropDownList; comboBox1.Items.Add ("應力位移圖"); comboBox1.Items.Add ("應力圖"); comboBox1.Items.Add ("位移圖");
    打開數據庫連接,新建Command命令,根據選擇不同的圖設置不同的SQL查 詢命令,并新建數據適配器,使用Fill方法填充到DataSet和DataTable中。
    conn = new SqlConnection("server=@ 服務器名;database=@ 數據庫名;uid= 登錄名稱;pwd=登錄密碼");
    conn.Open();
    SqlCommand cmd = new SqlCommand("select * from 數據表名稱", conn); sda = new SqlDataAdapter();
    sda.SelectCommand = cmd;
    ds = new DataSet();
    sda.Fill(ds, "cs");
    dt = ds.Tables["cs"];
    在加載按鈕中,根據選擇不同的圖執行不同的結果,先新建DataTable,設置 位移和應力兩個列名,添加到 Colums 中。
    if (comboBox1.Text == "應力位移圖")
    {
    DataTable dt4 = new DataTable();
    DataColumn dc1 = new DataColumn("位移",typeof(double)); DataColumn dc2 = new DataColumn("應力",typeof(double)); dt4.Columns.Add(dc1);
    dt4.Columns.Add(dc2);
    遍歷 DataTable 所有行,將查詢到的 DataTable 復制到新建的 DataTable 中, 完成內容的填充。
    DataRow dr = null;
    foreach (DataRow row in dt.Rows)
    {
    dr = dt4.NewRow();
    dr[0] = row["位移"];
    dr[1] = row["應力”]; dt4.Rows.Add(dr);
    }
    新建一個Series,對MsChart中的線名、圖表類型、圖例可見性、線條顏色、 X軸、Y軸等進行設置,應用到MsChart中,最后設置MsChart的數據源為新建的 DataTable。
    Series series = new Series("test");
    series.ChartType = SeriesChartType.Spline; series.IsVisibleInLegend = true;
    series.Color = Color.Blue; series.XValueMember = "位移"; series.YValueMembers = "應力";
    chart1.Series.Add(series); chart1.DataSource = dt4;
    數據圖表界面如圖4.13所示。
     
    圖 4.13 數據圖表界面
     
    Fig4.13 Data chart interface
    (3)危險預警
    試驗過程中常根據某些測量值判斷結構的安全狀態,進而對可能發生的危險 情況做好應對工作。本文通過C#提取SQL數據庫中的測量數據,然后提取系統設 置的預警閾值,將采集到的測量值與設定的閾值進行比較,實現預警的功能。用戶 只需在模型參數中設置對應的預警閾值,然后單擊模型高亮按鈕即可顯示當前可 能出現危險的試驗區域,還可根據系統的危險預警發布功能將危險信息和相關數 據通過即時通訊的方式發送出去。模型高亮顯示的實現代碼如下:
    設置事務模式為手動,并啟動外部命令 IExternalCommand 的 Execute 函數, 在 Execute 函數獲取當前活動文檔的所有對象。
    UIDocument uiDoc = commandData.Application.ActiveUIDocument; Document doc = commandData.Application.ActiveUIDocument.Document;
    建立數據庫連接并打開,新建 Command 命令,執行 SQL 查詢語句,因為可 能出現的危險數據應該是數值最大的數據,所以可直接使用SQL中Max方法找出 測量值最大的數據,然后通過ExecuteScalar快速返回所需要的值,進行強制轉化 為 Double 類型。
    SqlConnection conn = new SqlConnection("server=@ 服務器名;database=@ 數據庫名;uid=登錄名稱;pwd=登錄密碼");
    conn.Open();
    SqlCommand cmd = new SqlCommand("select max(數值)from 位移表", conn);
    double max = Convert.ToDouble(cmd.ExecuteScalar());
    創建過濾器過濾出文檔中種類為常規模型的元素,遍歷過濾器中的所有元素, 根據元素名稱找到需要的元素。
    FilteredElementCollector collector = new FilteredElementCollector(doc); ElementCategoryFilter category = new
    ElementCategoryFilter(BuiltInCategory.OST_GenericModel);
    collector = collector.WherePasses(category);
    Element element = null;
    foreach (Element ele in collector)
    {
    if (ele.Name == "120mm 位移計")
    {
    element = ele;
    第六章 結論與展望
    6.1結論
    土木工程結構試驗的信息管理水平直接影響著試驗目標的實現和試驗結果的 產生,隨著土木工程行業各領域BIM理念的廣泛應用,以BIM技術為手段對建筑 全壽命周期的管理已逐漸成為未來的發展趨勢。針對傳統試驗信息管理模式中存 在的許多問題,本文創新性地將BIM理念引入到土木工程結構試驗信息管理當中, 提出一種基于BIM的土木工程結構試驗管理方法,通過Revit二次開發的方式, 設計并開發基于BIM的土木工程結構試驗信息管理系統,并通過具體案例驗證了 該系統的可行性。本文的主要研究內容和成果如下:
    (1) 土木工程結構試驗信息內容可分為結構化數據和非結構化數據,具有信 息數量巨大、存儲分散、類型復雜、時效性強的特點,并參考 ISO 12006-2 和 OmniClass的分類方法對土木工程結構試驗信息進行分類與編碼。分析了傳統試驗 信息管理模式存在很多的問題和不足,并利用BIM的優勢建立土木工程結構試驗 信息模型來承載所有信息。在此基礎上,本文提出一種基于BIM的土木工程結構 試驗信息管理方法,該方法是指試驗各參與方以BIM試驗信息模型為載體,通過 BIM試驗信息管理系統,對試驗的BIM信息數據進行高效傳遞與共享。
    (2) 以需求分析為出發點,系統設計遵循實用性、模塊化、易維護性的原則, 本文構建了基于BIM的土木工程結構試驗信息管理框架,總體架構是由存儲層、 資源管理層、功能邏輯層、業務外觀層、表示層五個層次組成,采用新奧爾良法對 系統數據庫進行設計,設計了試驗儀器表、測量數據表、文檔信息表、試驗人員表、 危險預警表等五個主要數據庫的表。試驗信息管理系統的三大功能模塊分別是虛 擬仿真、監測預警和數據應用,詳細介紹每個模塊所包含的主要功能,然后采用流 程圖的方式說明各個功能的應用過程,使用戶能直觀了解到系統各個模塊的運行 原理。
    (3)本文采用Visual Studio 2019為開發軟件,以C#為開發語言,靈活運用 Winform窗體進行可視化表達,并開發相應的SQL數據庫作為系統的支撐。在Revit 軟件基礎上進行二次開發,完成了土木工程結構試驗信息管理系統的總體界面實 現,利用ADO.NET體系管理土木工程結構試驗信息管理系統數據庫,采用計算機 編程的方式對試驗中涉及例如試件等許多實體類型進行參數化建模。從界面設計 和程序代碼兩個角度,詳細說明虛擬仿真模塊、監測預警模塊以及數據應用模塊這 三個模塊下重點功能的實現過程,并提供程序開發的部分核心代碼,為其他 BIM 信息管理系統的開發提供了一條新的思路。
    (4)以含BRB的鉸支剪力墻性能試驗為案例,在試驗計劃與準備階段、實施 階段、分析與總結階段三個階段中應用試驗信息管理系統,可以看出試驗信息管理 系統的應用情況良好,基本實現試驗預先設置的管理目標,驗證了試驗信息管理系 統的可行性。與傳統試驗信息管理模式相比,基于BIM的土木工程結構試驗信息 管理系統具有巨大的優勢,并且在信息傳遞與共享、協同工作、科學存儲和利用以 及可視化程度上有較高的應用價值。
    6.2展望
    在系統設計、開發和應用的過程中,本文還有許多不足的地方需要進一步優化 和完善,主要有以下幾個方面:
    (1) 系統功能的通用性較差,本文是以工程結構試驗為例來介紹和說明的, 目前設計開發出的功能模塊也是以工程結構試驗為主,對于其他土木工程專業的 試驗適用性較差,系統功能尚未成熟,不能滿足其他專業的試驗管理需要。
    (2) 程序的算法和結構還有很大的提高空間,由于作者不是計算機專業出身, 對于功能模塊中涉及的算法不夠合理和簡潔,程序執行的效率不是很高,還可以進 一步優化程序的算法和結構,提高試驗信息處理的速度。
    (3) 系統的界面不夠人性化和美觀,給用戶的使用過程帶來了一定的不便, 存在部分不符合用戶習慣的地方,后期通過對用戶使用體驗的調研,了解用戶的使 用訴求與建議,完善系統的布局和界面,增強與用戶交互的程度。
    基于BIM的土木工程結構試驗信息管理系統具有廣闊的研究前景,通過對相 關領域的了解與思考,對下一步的研究方向進行展望,可以從以下幾個方面考慮:
    (1) 將以前產生的試驗數據信息以更自動、更高效的方式錄入試驗信息管理 系統中,對于分析已有的試驗數據和制定創新的研究內容具有積極作用,并且通過 建立全面的試驗數據庫為相關研究人員提供支持。
    (2) 建立云計算網絡協同管理系統,與基于BIM的土木工程結構試驗信息管 理系統相結合,實現試驗數據在全網的數據傳遞與共享,最大程度地減少和避免重 復性試驗。
    (3) 以試驗信息管理系統為基礎,搭建試驗教學管理系統,將系統中存儲描 述結構試驗全貌的數據開放給學校和培訓機構,使研究內容和成果應用于培養人 才,為其提供豐富的教學內容和形象的教學手段。
    參考文獻
    [I]易偉建,何慶鋒,肖巖.工程結構試驗數據庫模型設計研究[J].湖南大學學報(自然科 學版),2006(02):22-25.
    ⑵ 李犁.基于BIM技術建筑協同平臺的初步研究[D].上海交通大學,2012.
    [3]陳相勇.基于BIM技術的信息共享平臺對促進AEC項目協同管理的實證研究[D]. 天津理工大學,2018.
    [4]劉鷹翔.古建筑基本信息模型在保護工程中的應用研究[D].蘭州交通大學,2016.
    [5]美 國 總 務 署 .General Services Administration(GSA)3D-4D-B I M
    Program[EBOL].http://www.gsa.gov/bim.
    [6]美國建筑科學研究院下屬機構 building SMART聯盟網站[EB/OL]. http://www.building smart alliance.com/.
    [7]BCA's Building Information Modeling Roadmap[Z]. 2014.
    [8]神鳥博俊.BIM最新動向官庁営繕事業BIM導入口聲工夕卜
    T (BIM2014 特集)卩].建築設備士 = Building mechanical and electrical engineer. 2014, 46.
    ⑼住房和城鄉建設部.2011-2015年建筑業信息化發展綱要[J].土木建筑工程信息技 術. 2011, 28(2): 52-57.
    [10]清華大學軟件學院BIM課題組.中國建筑信息模型標準框架研究[J]. 土木建筑工程 信息技術.2010,02:1-5.
    [II]張亞婷.基于BIM的特大懸索橋施工管控平臺研究與應用[D].重慶大學,2016.
    [12]GB/T51235-2017,建筑信息模型施工應用標準⑸.住房和城鄉建設部.2017
    [13]GB/T 51269-2017,建筑信息模型分類和編碼標準[S].住房和城鄉建設部.2017
    [14]J.P.Zhang, Q.Liu, Z.Z.Hu,et al. A Framework of Cloud-computing-based BIM Service for Building Lifecycle. Computer In Civil And Building Engineering,2014:1514-1521
    [15]Vishal Singh, Ning Gu, Xiangyu Wang. A theoretical framework of a BIM-based multidisciplinary collaboration platform. Automation in Construction,2011,20(02):134-144
    [16]Rob H., Christer B. Building Information Modeling-Experts' Views on, Standardization and Industry Deployment[J]. Advanced Engineering Informatics,2008,22(2):271-280.
    [17]Halfawy,Mahmoud M. R, Froese,Thomas M. Component-based framework for implementing integrated architectural/engineering /construction project sustems[J].Journal of Computing in Civil Engineering,2007(21):441-452.
    [18]焦奔康.樁基承載過程對臨近既有地鐵隧道影響機制研究[D].長安大學,2019.
    [19]李妍君.基于Revit的建筑信息模型功能拓展包的設計與實現[D].華中科技大 學,2014.
    [20]馬晉超.基于BIM的橋梁結構健康監測信息可視化管理及預警研究[D].廣西科技 大學,2018.
    [21]劉訓房.基于BIM和WEB的隧道動態施工監測信息系統研究[D].大連海事大 學,2017.
    [22]唐清東.基于BIM的大跨度懸索橋施工監控研究[D].西南交通大學,2017.
    [23]Liu Qing, Gao Tao, Wang-Jian Ping. Study on Building Lifecycle Information Management Platform Based on BIM. Research Journal of Applied
    Sciences,Engineering and Technology,2014,7(1):1-8
    [24]Khanzode A, Fischer M, Reed D. Benefits and lessons learned of implementing Building Virtual Design and Construction (VDC) technologies for coordination of Mechanical, Electrical, and Plumbing (MEP) systems on a large Healthcare project[J]. Electronic Journal of Information Technology in Construction,2008(13):324-342.
    [25]Howard R, Bjork B C. BUILDING INFORMATION MODELS—EXPERTS' VIEWS ON BIM/IFC DEVELOPMENTS[J]. 2007.
    [26]Zhang Y, Bai L. Rapid Structural Condition Assessment Using Radio Frequency I dentification( RFID )Based Wireless Strain Senso r[J]. Automation in Construction, 2015, 54: 1-11.
    [2 7]薛松.基于BIM的大型復雜工程信息管理研究[D]•江蘇大學,2016.
    [28]Riaz Z, Arslan M, Kiani A K, et al. Co SMo S:A BIM and Wireless Sensor Based IntegratedSolution for Worker Safety in Confined Spaces[J].Automation in Construction,2014, 45(10) :96-106.}
    [29]Korman T M, Fischer M A, Tatum C B. Knowledge and Reasoning for MEP Coordination[J]. Journal of Construction Engineering & Management, 2003, 129(6):627-634.
    [30]李小玲.基于建筑信息模型的結構健康監測可視化研究[D].哈爾濱工業大學,2016.
    [31]李文奇.基于建筑信息模型的結構安全監測方法[D].哈爾濱工業大學,2018.
    [32]李亞克.基于Revit平臺的BIM應用系統二次開發研究[D].河北科技大學,2019.
    [33]石韻,韓鵬舉,劉軍生,張煜敏.基于BIM技術的結構健康監測管理系統設計與應用[J]. 建筑鋼結構進展,2019,21(02):107-114.
    [34]陳焱.基于Revit的剪力墻結構參數化設計[D].大連理工大學,2018.
    [35]王淘.基于建筑信息模型(BIM)技術的密肋復合板結構應用研究[D].北京交通大 學 ,2017.
    [36]王繹凱.裝配式約束混凝土梁柱結構BIM技術研究[D].西安建筑科技大學,2018.
    [37]蔣小凡.基于BIM-SHM集成的結構安全預警管理方法研究[D].武漢理工大學,2016.
    [38]Dace A. Campbell, AIA. Building Information Modeling: The Web3D Application for AEC. the Association for Computing Machinery,2007(5):173-176,219
    [39]Foms-Samso F, Bogus S M, Migliaccio G C.Use of Building Information Modeling(BIM)infacilities management. Ottawa Canada 2011.
    [40]Nour M. A dynamic open access construction product data platform[J]Automation in Construction. 2010(19) : 407-418.
    [41]Eastman, Teicholz, Sackset, BIM handbook:a guide to building information modeling forowners, managers, designers, engineers and contractors[M]. Wiley: Hoboken, 2011: 293-295.
    [42]Johnny Wong, Xiangyu Wang, Heng Li, et al. A review of cloud-bsaed BIM technology in the construction sector. Journal of Information Technology in Construction, 2014,19(06):281-291
    [43]范凌翰.橋梁信息化(BIM)施工技術應用研究[D].重慶交通大學,2018.
    [44]方睿.基于Revit二次開發在放樣及變形監測中的應用研究[D].合肥工業大學,2019.
    [45]牛文榀.基于BIM技術深基坑工程監測信息化管理研究[D].西安工業大學,2018.
    [46]伏昕,劉惠.基于B/S結構的實驗教學平臺管理系統的設計與實現[J].高校實驗室 工作研究,2016(2):118-120.
    [47]Jon Galloway, Phil Hack, Brad Wilson. Professional ASP.NET MVC 3[M].(孫陽遜譯). 北京.機械工業出版社,2013,85-86.
    [48]丁建新,樊江濱,郭強等.全周期實驗數據管理系統研究[J].車輛與動力技術,2010, 03:4-9.
    [49]孫仕云,基于B/S三層架構的高校網絡教學管理系統設計[J].電子技術與軟件工 程,2017(5):197-197.
    [50]程志強.基于.NET的高校資產管理系統的研究與實現[J].信息系統工程,2017(1):77- 77.
    [51]鄭仁明.基于B/S模式的實驗教學管理系統的分析與設計[J].電腦知識與技 術,2016,12(17):85-87.
    [52]張淇淳.網絡化實時控制實驗軟件平臺的設計與開發[D].東北大學,2010.
    [53]唐呈欣.工程實驗數據管理系統的設計與實施[D].電子科技大學,2015.
    [54]竇琳璟.仿真實驗管理系統的設計與開發[D].電子科技大學,2012.
    [55]褚南峰.工程實驗中心管理系統的研究與實現[D].河海大學,2005.
    [56]劉惠珠.實驗教學與實驗室管理平臺的設計與實現[D].山東大學,2013.
    [57]吳雙月.基于BIM的建筑部品信息分類及編碼體系研究[D].北京交通大學,2015.
    [58]朱殷橋.面向結構行為的鋼橋BIM信息管理研究[D].西南交通大學,2018.
    [59]Eastman C, Eastman C, Eastman C, et al. BIM Handbook[M]. Wiley John + Sons, 2011.
    [60]J. Wong, X. Wang, H. Li, G. Chan, H. Li, A review of cloud-based BIM technology in the con structi on sector[J]. Electr on. J. I nf. Tech nol. Con str. 2014,19 (16):281-291.
    [61]沙名欽.基于BIM技術的橋梁工程參數化建模及二次開發應用研究[D].華東交通 大學,2019.
    [62]韋智儀.基于BIM技術的數據驅動建模方法研究[D].廣東工業大學,2018.
    【本文地址:http://www.bzhlmm.com//guanlilei/gongshangguanli/xixinguanli/8850.html

    上一篇:某煤企出貨業務信息管理系統設計與實現

    下一篇:沒有了

    相關標簽: