龐 達(dá),溫家銘,武延鑫,杜 彬,馬 遙
[1.海洋石油工程股份有限公司設(shè)計院 天津 300457;2.海洋石油工程(青島)有限公司 山東青島 266400]
甲板片的主結(jié)構(gòu)包含節(jié)點及組合梁,是甲板片的“骨架”和主要承力結(jié)構(gòu),在預(yù)制中最先開始施工;次級結(jié)構(gòu)主要為梁等,其作為局部結(jié)構(gòu)支撐及傳導(dǎo)應(yīng)力作用存在;三級結(jié)構(gòu)作為最小單位,主要作為支架、板等結(jié)構(gòu)。甲板片建造過程的第一階段為節(jié)點組合梁預(yù)制階段,在該階段,節(jié)點及組合梁單獨預(yù)制。完成后,將其運送至開片場地,并開始甲板片預(yù)制。甲板片預(yù)制時,首先將場地清理完畢,擺放并預(yù)處理開片墊墩,用于墊高相應(yīng)節(jié)點。所有桿件經(jīng)過下料—運輸—組對—焊接—報檢—釋放6 項處理過程,按照先主結(jié)構(gòu)、再次結(jié)構(gòu)、最后三級結(jié)構(gòu)的順序依次組合,最終形成甲板片。
在第一階段,單個節(jié)點、組合梁的形式均不同,每個部件又需要由不用板材等經(jīng)過預(yù)制、組對、焊接、NDT等過程才能完成。據(jù)經(jīng)驗,甲板片的全部節(jié)點組合梁預(yù)制周期約為2 個月,且一般節(jié)點預(yù)制梁在外場較多,不便于管理人員及時了解情況。甲板片預(yù)制階段,可能存在由于材料排產(chǎn)問題導(dǎo)致的桿件不能及時下料、鉚工不足導(dǎo)致桿件不能及時組對等一系列問題。以上問題均需要通過數(shù)據(jù)進(jìn)行判斷甲板片預(yù)制過程的進(jìn)度和制約條件等,并有針對性地安排相應(yīng)工作。
當(dāng)前的管理方式主要是通過分包商日報和PCMS 系統(tǒng)進(jìn)行分析。由于日報表格格式不統(tǒng)一且重復(fù)使用易出現(xiàn)偏差,經(jīng)常導(dǎo)致匯總信息混亂且分散,管理人員不能及時獲取全部有用信息,不能滿足目前數(shù)據(jù)化需求;PCMS 基于系統(tǒng)數(shù)據(jù)目前制作的信息數(shù)據(jù)平臺,直接可用性較差,不能滿足項目管理人員對于數(shù)據(jù)實用性和管理便捷性的要求。開發(fā)的平臺只是滿足了簡單的數(shù)據(jù)顯示功能,沒有信息處理、分析及BI 界面,不能更好地貼合管理人員的需求。
若要做到使管理人員足不出戶了解建造情況,則需要滿足以下幾點:①定期采集項目進(jìn)度數(shù)據(jù),并將其記錄在項目管理軟件中;②進(jìn)度數(shù)據(jù)需要進(jìn)行分析和實時報告,以便于項目管理人員對項目進(jìn)展情況實時掌握,且最好生成圖表報告,包括甘特圖、時間軸、資源分配等,幫助項目管理人員了解項目的進(jìn)展情況,發(fā)現(xiàn)問題并及時進(jìn)行調(diào)整;③進(jìn)度數(shù)據(jù)需要得到項目團(tuán)隊和利益相關(guān)者的認(rèn)可和支持,項目管理人員可以通過項目管理軟件或其他工具將進(jìn)度數(shù)據(jù)共享給項目團(tuán)隊及利益相關(guān)者,共享進(jìn)度數(shù)據(jù)可以幫助團(tuán)隊成員了解項目的實時進(jìn)展情況,協(xié)調(diào)任務(wù)分配和資源分配,以確保項目的進(jìn)展符合計劃。
在系統(tǒng)設(shè)計層面,使用PCMS系統(tǒng)進(jìn)行數(shù)據(jù)收集,將其作為底層數(shù)據(jù)存儲至MySQL中,使用Python中Pandas處理包進(jìn)行數(shù)據(jù)的清洗和篩選,利用Django框架來實現(xiàn)。主要采用Django中應(yīng)用MVC模式,其中模型(Model)負(fù)責(zé)管理數(shù)據(jù),模板(Template)負(fù)責(zé)定義用戶界面,視圖(View)則負(fù)責(zé)協(xié)調(diào)模型、模板之間的交互和響應(yīng)用戶請求。這種分層結(jié)構(gòu)可以使應(yīng)用程序更加易于維護(hù)和擴(kuò)展。模型(Model)層通常與數(shù)據(jù)庫打交道,負(fù)責(zé)處理數(shù)據(jù)的存儲、讀取和數(shù)據(jù)之間的關(guān)系;模板(Template)層負(fù)責(zé)定義應(yīng)用程序的用戶界面,通過將動態(tài)數(shù)據(jù)插入到靜態(tài)模板中,生成動態(tài)網(wǎng)頁;視圖(View)層負(fù)責(zé)處理用戶請求和響應(yīng),以及調(diào)用模型和模板完成數(shù)據(jù)和界面的展示。業(yè)務(wù)邏輯與用戶界面分離,使代碼更加清晰簡潔。該模式作為項目整體骨架,擴(kuò)展性強,易于進(jìn)行代碼整體重構(gòu),且維護(hù)成本低[1]。系統(tǒng)總體分為訪問層、UI層、展示層、業(yè)務(wù)層及數(shù)據(jù)庫,展示層通過提供頁面、使用Ajax交互請求完成相應(yīng)動作,前端UI使用Bootstrap框架進(jìn)行編寫,以保證整體功能性和美觀性。最上層為HTTP,為用戶提供實時響應(yīng)[2]。
在本項目中,數(shù)據(jù)以規(guī)定格式上傳至PCMS系統(tǒng)中,用來統(tǒng)計每根桿件對應(yīng)的方案號、桿件號、所屬高度、所屬甲板片編號、總面積、重量等信息,同時對應(yīng)每個完成的工步及其完成時間。
數(shù)據(jù)匯總至MySQL 服務(wù)器后,使用Pandas 模塊進(jìn)行讀取。首先進(jìn)行數(shù)據(jù)清洗,篩除雜亂數(shù)據(jù)(如焊接時間在組對時間之前、桿件重量不符合桿件定義等),再根據(jù)需求對數(shù)據(jù)進(jìn)行篩選分析,分別對ALIMENTSTA、WEDSTA、WEDFIN、NTDFIN 等參數(shù)進(jìn)行篩選,并針對DATETIME/DATETIME32 等格式進(jìn)行處理[3]。為減少數(shù)據(jù)篩選量和提高系統(tǒng)反饋效率,將清洗完成的數(shù)據(jù)分不同模塊進(jìn)行重新存儲。根據(jù)管理人員需求,對目前完成工作的桿件重量、完成情況進(jìn)行綜合計算,按周、月、天等格式進(jìn)行篩選分類,使用基于Python語言設(shè)計的全自動進(jìn)度算法進(jìn)行計算,精確得到管理人員需求的進(jìn)度數(shù)據(jù),并對后續(xù)工藝時間進(jìn)行智能化預(yù)測。
為解決因數(shù)據(jù)總量過大、數(shù)據(jù)較為復(fù)雜而產(chǎn)生的加載速度慢等問題,在系統(tǒng)設(shè)計階段共采用3 種方法:①將總體數(shù)據(jù)根據(jù)模塊、甲板片等進(jìn)行分區(qū),并分別建立索引,以優(yōu)化MySQL 數(shù)據(jù)庫的查詢速度;②在對數(shù)據(jù)集分析過程中,只通過Sample 方式選取需要的部分?jǐn)?shù)據(jù)進(jìn)行加載處理,對于多個數(shù)據(jù)塊的處理,使用迭代方式進(jìn)行逐個加載,以避免一次性加載大文件導(dǎo)致的性能問題;③所有數(shù)據(jù)使用Memcached分布式存儲技術(shù),將數(shù)據(jù)緩存至內(nèi)存中,以加快數(shù)據(jù)訪問速度。
數(shù)據(jù)展示模塊根據(jù)管理人員需求,集中展示了預(yù)制完成總量、預(yù)制完成平均值、上周完成總量等,每個顯示板分別對應(yīng)一個算法,基于該板塊,管理人員可在第一時間內(nèi)對甲板片預(yù)制進(jìn)度進(jìn)行掌握,同時判斷預(yù)制工作進(jìn)度,及時對現(xiàn)場發(fā)布相應(yīng)指令,如圖1 所示。其中本周及上周完成進(jìn)度總量數(shù)據(jù)根據(jù)對PCMS中輸入數(shù)據(jù)進(jìn)行篩選分類,對完成數(shù)據(jù)進(jìn)行提取,之后根據(jù)桿件大小、重量進(jìn)行劃分,對不同大小、不同形狀桿件賦予固定系數(shù),以修正現(xiàn)場施工難度,隨后進(jìn)行匯總。預(yù)測數(shù)據(jù)根據(jù)焊工人數(shù)、桿件重量、施工難度等進(jìn)行綜合統(tǒng)計,對之前輸入項目進(jìn)行分析,并引入插值計算的方式,從而實現(xiàn)綜合預(yù)測。該數(shù)據(jù)與現(xiàn)場數(shù)據(jù)符合度較高。
圖1 管理數(shù)據(jù)展示模塊Fig.1 Management data display module
該模塊使用表格形式對甲板片桿件的具體信息進(jìn)行逐一顯示,每一個桿件的工步完成信息時間均顯示在表格中,以方便模塊負(fù)責(zé)人對單個桿件進(jìn)行篩選[4]、查找。在實際使用中,可通過該模塊查找關(guān)鍵桿件狀態(tài)與SQ等結(jié)合的最短時間進(jìn)行判斷,如圖2 所示。
圖2 桿件狀態(tài)展示模塊Fig.2 Member status display module
該模塊使用插件制作預(yù)制進(jìn)度折線圖,根據(jù)周分類對各工步每周完成重量進(jìn)行統(tǒng)計,繪制圖表,每5 周為一個X軸坐標(biāo)。該圖表可以查看目前預(yù)制數(shù)據(jù),同時,根據(jù)陰影區(qū)域的顏色及大小判斷每個工步對應(yīng)進(jìn)度及人力的需求問題。如圖3 所示,區(qū)域在2020 年5 月24 日左右有大量桿件焊接完成,但未進(jìn)行NDT測試,可就此判斷NDT測試人力不足,需補充NDT人力。
圖3 預(yù)制進(jìn)度圖表板塊Fig.3 Prefabrication progress chart section
信息化在海洋工程項目中的重要性日益突出,同時,海洋工程這種傳統(tǒng)類型行業(yè),對于信息化及科技化改造不足,現(xiàn)場管理仍然很大一部分依賴管理人員的經(jīng)驗。針對數(shù)據(jù)的利用度、收集度不夠,管理人員因日常的管理工作不能夠隨時在現(xiàn)場對狀況進(jìn)行查看和判斷,故對管理人員素質(zhì)要求較高。而使用信息化對數(shù)據(jù)進(jìn)行處理和過濾顯示后,使得管理人員“足不出戶”也能及時了解現(xiàn)場相關(guān)信息。該系統(tǒng)采用Web端對數(shù)據(jù)進(jìn)行顯示,擴(kuò)展性較強。后期開發(fā)可根據(jù)現(xiàn)場情況拓展管線模塊、試壓模塊、總裝模塊、計劃模塊等。
目前,該系統(tǒng)正在試用于海洋工程建造項目中。通過該系統(tǒng)的數(shù)據(jù)收集及數(shù)據(jù)分析功能,管理人員可以直觀地掌握現(xiàn)場施工狀態(tài),轉(zhuǎn)變現(xiàn)場“詢問式”溝通為“針對式”溝通,為合理安排工作提供良好的數(shù)據(jù)參考。該功能可以提升管理人員的工作效率,同時可以節(jié)省管理人力及進(jìn)度數(shù)據(jù)分析人力。相較于之前純粹依賴于分包商發(fā)送的表格日報,該系統(tǒng)將信息系統(tǒng)化、集成化、規(guī)范化,可以推廣至其他項目中進(jìn)行使用。
但隨著系統(tǒng)的使用,也發(fā)現(xiàn)存在一部分問題,如數(shù)據(jù)準(zhǔn)確度不足、收集數(shù)據(jù)的過程太過于煩瑣等。通過本文提出的思路可以看出,只要數(shù)據(jù)量充足且準(zhǔn)確,通過簡單的分析方法就足可以完成數(shù)據(jù)篩選、進(jìn)度計算等,可解放管理人力。所以筆者認(rèn)為,下一步的工作重點主要為探究在不增加甚至減少現(xiàn)場數(shù)據(jù)錄入人力的基礎(chǔ)上提高數(shù)據(jù)的準(zhǔn)確性??山梃b物流庫存管理中的方法,如利用二維碼掃碼進(jìn)行桿件的公布錄入或?qū)?shù)據(jù)采集與報檢相結(jié)合,在報檢的同時進(jìn)行數(shù)據(jù)錄入,以提高數(shù)據(jù)錄入的準(zhǔn)確性,最終提升工程質(zhì)量?!?/p>