楊鎧 鄧金濤 劉逸飛 杜國(guó)昌
(中海油石化工程有限公司 山東省濟(jì)南市 250101)
隨著數(shù)字化的不斷發(fā)展以及石油化工項(xiàng)目規(guī)模的不斷擴(kuò)大,越來(lái)越多的項(xiàng)目轉(zhuǎn)向了三維數(shù)字化設(shè)計(jì)。目前,三維設(shè)計(jì)軟件Smart3D(以下簡(jiǎn)稱S3D)、Plant Design Management System(PDMS)等被普遍地應(yīng)用于各類石油化工項(xiàng)目的設(shè)計(jì)中。管道支吊架設(shè)計(jì)是石油化工項(xiàng)目設(shè)計(jì)的重要內(nèi)容,合理的支吊架設(shè)計(jì)保證了管道的安全性[1]。在使用三維建模軟件進(jìn)行設(shè)計(jì)的項(xiàng)目中,通常是先完成物理支吊架建模,再添加邏輯支吊架并根據(jù)物理支吊架的類型及組合進(jìn)行編號(hào),消耗大量的時(shí)間和精力,還容易出錯(cuò)。
在利用S3D 軟件進(jìn)行支吊架設(shè)計(jì)時(shí),存在邏輯支吊架和物理支吊架兩層結(jié)構(gòu),邏輯支吊架包含一個(gè)或多個(gè)物理支吊架。在成品文件管道軸測(cè)圖中,應(yīng)標(biāo)注邏輯支吊架位置和編號(hào),并且在管道材料中寫(xiě)明其下對(duì)應(yīng)的物理支吊架。邏輯支吊架應(yīng)有其編號(hào)規(guī)則,且在一個(gè)項(xiàng)目中一個(gè)編號(hào)僅可對(duì)應(yīng)唯一的一個(gè)邏輯支吊架。在現(xiàn)今規(guī)模化的石油化工項(xiàng)目中,往往會(huì)架設(shè)成千上萬(wàn)個(gè)邏輯支吊架,而邏輯支吊架的編號(hào)一般由設(shè)計(jì)人根據(jù)其包含的物理支吊架的種類、安裝位置等信息確定。重復(fù)性的勞動(dòng)不僅拖慢設(shè)計(jì)進(jìn)度,當(dāng)出現(xiàn)編號(hào)重復(fù)或命名規(guī)則錯(cuò)誤等問(wèn)題時(shí)也難以發(fā)現(xiàn)。本文分析了《HG/T21629-2021管架標(biāo)準(zhǔn)圖》(以下簡(jiǎn)稱管架標(biāo)準(zhǔn)圖)中不同類型的支吊架及其組合,以S3D 為平臺(tái),搭建物理支吊架分類數(shù)據(jù)庫(kù),完成了邏輯支吊架編號(hào)自動(dòng)編制的解決方案,解決人工編制邏輯支吊架編號(hào)時(shí)易錯(cuò)、效率低下等問(wèn)題,將設(shè)計(jì)人的精力從重復(fù)性工作中解放出來(lái)。
管架標(biāo)準(zhǔn)圖作為化工行業(yè)標(biāo)準(zhǔn)對(duì)管道物理支吊架的類型和選用做出了指導(dǎo)。在實(shí)際項(xiàng)目中,多個(gè)支吊架因功能不同常常會(huì)組合使用,而這種組合使用的支吊架在數(shù)字化設(shè)計(jì)和交付的過(guò)程中應(yīng)視為同一個(gè)支吊架,且其編號(hào)應(yīng)體現(xiàn)支吊架信息。
不同設(shè)計(jì)院或項(xiàng)目對(duì)于邏輯支吊架編號(hào)組成會(huì)有不同的規(guī)定,但都應(yīng)該包含該邏輯支吊架的各類信息,如類型,即其實(shí)現(xiàn)的功能;邏輯支吊架所在區(qū)域的主項(xiàng)號(hào);邏輯支吊架的序號(hào);框架或構(gòu)筑物內(nèi)邏輯支吊架所在層;而按《HG/T 20519-2009 化工工藝設(shè)計(jì)施工圖內(nèi)容和深度統(tǒng)一規(guī)定》,管道布置圖中的邏輯支吊架都應(yīng)該有一個(gè)獨(dú)立的編號(hào),其規(guī)定的編號(hào)由邏輯支吊架類型、生根處結(jié)構(gòu)、主項(xiàng)號(hào)、管道布置圖尾號(hào)、邏輯支吊架序號(hào)組成。如圖1。
圖1:邏輯支吊架編號(hào)
若要實(shí)現(xiàn)自動(dòng)填寫(xiě)邏輯支吊架編號(hào)的功能,則應(yīng)完成S3D 數(shù)據(jù)讀取、數(shù)據(jù)分析處理、邏輯支吊架編號(hào)生成及輸出等功能。在探索如何實(shí)現(xiàn)時(shí),形成了兩種技術(shù)路線。第一種為效仿S3D 中對(duì)于物理支吊架名稱的處理方法,直接將邏輯支吊架的命名規(guī)則寫(xiě)入S3D 中,并建立龐大的邏輯支吊架庫(kù)。當(dāng)用戶在管道上設(shè)置一個(gè)邏輯支吊架時(shí)自動(dòng)獲取其下所有物理支吊架的信息并在分析處理后自動(dòng)生成邏輯支吊架編號(hào)。在這種解決思路下,設(shè)計(jì)人需要手動(dòng)添加物理支吊架以及邏輯支吊架,并且在實(shí)際項(xiàng)目中經(jīng)常面臨著設(shè)計(jì)輸入更改、調(diào)整或管道應(yīng)力不滿足要求等需要增添或刪改邏輯支吊架的情況。而在設(shè)計(jì)人再次添加或刪改邏輯支吊架時(shí)極易使管道布置圖上的編號(hào)出現(xiàn)不連續(xù)或無(wú)序等情況?;谶@樣問(wèn)題的出現(xiàn),本軟件采取第二條技術(shù)路線,即放棄手動(dòng)添加邏輯支吊架的操作,設(shè)計(jì)人僅需在模型中添加所需的物理支吊架。在建模工作完成后,設(shè)計(jì)人通過(guò)操作,在輸入所需邏輯支吊架編號(hào)形式后利用軟件一鍵式自動(dòng)添加邏輯支吊架,并由程序整理信息,寫(xiě)入、輸出邏輯支吊架編號(hào)。
為了實(shí)現(xiàn)上述技術(shù)路線,軟件依托于S3D 平臺(tái),建立了物理支吊架分類庫(kù),利用S3D 數(shù)據(jù)庫(kù)讀取模型中物理支吊架數(shù)據(jù),在添加邏輯支吊架后將每個(gè)邏輯支吊架分類處理,所獲得的編號(hào)重新寫(xiě)入S3D 中。程序的執(zhí)行框圖如圖2 所示。本文將分步介紹功能實(shí)現(xiàn)過(guò)程。
圖2:編號(hào)自動(dòng)生成程序框圖
在以S3D 作為三維設(shè)計(jì)軟件的項(xiàng)目中,工廠的各類信息存儲(chǔ)在不同的數(shù)據(jù)庫(kù)中。S3D 擁有七個(gè)不同的數(shù)據(jù)庫(kù),如圖3。Site 數(shù)據(jù)庫(kù)集有兩個(gè)數(shù)據(jù)庫(kù),其中包含S3D 項(xiàng)目的配置信息以及連接信息,并將所有數(shù)據(jù)庫(kù)關(guān)聯(lián)起來(lái)。Catalog 數(shù)據(jù)庫(kù)集包含兩個(gè)數(shù)據(jù)庫(kù),包含了項(xiàng)目中用到的所有參考數(shù)據(jù),以及設(shè)計(jì)模塊(程序集),如管道等級(jí)、閥門信息等。Model 數(shù)據(jù)庫(kù)記錄了工廠的設(shè)計(jì)信息,如模型信息、過(guò)濾器、樣式、交付用文件如管道布置圖等。Report 數(shù)據(jù)庫(kù)可以采集工廠、Site 和Catalog 數(shù)據(jù)庫(kù)的映像,生成各類報(bào)告。已添加的物理支吊架的各類信息可由Report 數(shù)據(jù)庫(kù)查得。
圖3:S3D 數(shù)據(jù)庫(kù)結(jié)構(gòu)
為方便用戶管理、訪問(wèn)數(shù)據(jù)庫(kù),S3D 內(nèi)置了大量的接口。各類接口信息可由S3D 內(nèi)置工具M(jìn)etaData Browser Tool 查得。通過(guò)不同的數(shù)據(jù)接口,我們可以由Report 數(shù)據(jù)庫(kù)中查得某一主項(xiàng)內(nèi)的所有物理支吊架,將坐標(biāo)唯一或多個(gè)擁有一致坐標(biāo)的物理支吊架判斷為同一支吊架后,在此坐標(biāo)添加邏輯支吊架并將這些物理支吊架轉(zhuǎn)移到其層級(jí)之下。在實(shí)現(xiàn)邏輯支吊架的添加后,可通過(guò)Report 數(shù)據(jù)庫(kù)首先查詢定位到同一主項(xiàng)下所有邏輯支吊架的對(duì)象標(biāo)識(shí)符(OID),以邏輯支吊架的OID 查詢到其下物理支吊架的OID 后重新查詢每一個(gè)物理支吊架的類型、所屬管道以及空間位置等信息,并以表格的形式輸出。部分查詢代碼如下。
from
JHgrPipeSupport x1
Join JNamedItem X2 on X1.oid = X2.oid
join XConnHasPorts x3 on x3.OidOrigin = x1.Oid
join XPathSpecification x5 on x5.OidDestination =x3.OidDestination
Join JNamedItem X6 on X6.oid = X5.OidOrigin
join XSupportHasComponents y1 on x1.oid =y1.OidDestination
join JHgrDesignSupport y2 on y2.oid = y1.OidOrigin
Join JNamedItem y3 on y3.oid = y2.oid
在生成圖1 所示邏輯支吊架編號(hào)時(shí),應(yīng)對(duì)數(shù)據(jù)庫(kù)查詢所得的數(shù)據(jù)進(jìn)行處理。為方便項(xiàng)目施工時(shí)支吊架的倉(cāng)儲(chǔ)、領(lǐng)取、安裝,防止出現(xiàn)管道軸測(cè)圖上邏輯支吊架序號(hào)的無(wú)序排列,應(yīng)將邏輯支吊架按照其編號(hào)規(guī)則順序添加序號(hào)。即按照邏輯支吊架所在主項(xiàng)、管道布置圖尾號(hào)以及邏輯支吊架的空間位置順序生成邏輯支吊架序號(hào)。邏輯支吊架生根結(jié)構(gòu)可由物理支吊架的屬性獲得并填入邏輯支吊架編號(hào)。邏輯支吊架類型則應(yīng)分析其所轄物理支吊架功能后生成。
2.2.1 物理支吊架種類
物理支吊架根據(jù)用途可分為限制、減震、承重三種類型[2],每種類型又可根據(jù)適用范圍細(xì)分,而當(dāng)一種物理支吊架單獨(dú)使用無(wú)法滿足相應(yīng)功能要求時(shí)常常會(huì)與其他物理支吊架組合使用。限制類支吊架根據(jù)限制管道不同方向的線位移和角位移的情況主要可以分為固定架、導(dǎo)向架、軸向限位架三種形式。有振動(dòng)產(chǎn)生的或承受沖擊荷載且不需要減震的管道宜在其支撐點(diǎn)處設(shè)置固定架以限制管道的線位移和角位移。在不同情況下,可以使用不同方法實(shí)現(xiàn)固定架功能。如管架標(biāo)準(zhǔn)圖中焊接型固定架K4 采取焊接在構(gòu)筑物上的形式固定管道;保冷管固定架L9 通過(guò)膨脹螺栓生根在地面上完成固定;U1-A、MA1、MA2 等通過(guò)螺栓螺母將管道固定在鋼結(jié)構(gòu)上的方式實(shí)現(xiàn)功能;E5-1 通過(guò)限制可調(diào)支吊架軸向和徑向位移實(shí)現(xiàn)對(duì)管道的固定。導(dǎo)向架通過(guò)如U 型螺栓、擋塊等方式實(shí)現(xiàn)對(duì)管道的導(dǎo)向作用。當(dāng)支吊架需要實(shí)現(xiàn)減震功能時(shí),可選用減震或阻尼裝置,如X 類的彈簧減震器和V 類的粘滯阻尼器。在構(gòu)筑物無(wú)法滿足對(duì)管道的支撐要求時(shí),還可以選擇相應(yīng)的承重支吊架承受管道的荷載。
2.2.2 邏輯支吊架類型確定
如果一個(gè)物理支吊架單獨(dú)使用,即邏輯支吊架層級(jí)下僅有一個(gè)物理支吊架,則其類型應(yīng)由物理支吊架功能決定。物理支吊架編號(hào)即管架標(biāo)準(zhǔn)圖中的管架編號(hào)由名稱、類型、子項(xiàng)、功能代碼等信息編制而成。管架標(biāo)準(zhǔn)圖中的不同的物理支吊架的管架編號(hào)并不完全相同。由S3D 查詢所得的物理支吊架編號(hào)與管架標(biāo)準(zhǔn)圖中的編號(hào)一致,憑借管架編號(hào)的首位可以分辨出大部分物理支吊架的種類及功能,但其中也有一定數(shù)量的物理支吊架需要通過(guò)其管架編號(hào)的子項(xiàng)或者功能代碼辨別功能。如管架編號(hào)E4-1-A-500 代表500 毫米長(zhǎng)槽鋼制成的導(dǎo)向架,如管架編號(hào)E4-3-A-500 代表500 毫米長(zhǎng)槽鋼制成的軸向限位架,物理支吊架的類型由管架編號(hào)第三位的子項(xiàng)確定。當(dāng)子項(xiàng)為A 時(shí),U1 為固定用U 型螺栓,子項(xiàng)為G 時(shí)U1 為導(dǎo)向用U 型螺栓。
在編寫(xiě)程序?qū)崿F(xiàn)單獨(dú)使用的物理支吊架分類時(shí),應(yīng)將管架編號(hào)分為三類。一類通過(guò)管架編號(hào)名稱區(qū)分其功能,如D8-1-A-100-200、G5-C-500-600 等;一類可通過(guò)名稱后一位編號(hào)確定功能,如U1-A-200-S 等;第三類作為例外,由管架編號(hào)的前兩位無(wú)法判斷物理支吊架功能時(shí)單獨(dú)分析,如E5-1-A-400-G。部分代碼如下所示。
有些支吊架如可變彈簧支吊架因?yàn)椴少?gòu)、倉(cāng)儲(chǔ)、施工等因素的影響,往往不會(huì)嚴(yán)格按照其作用進(jìn)行分類和編號(hào),或是直接當(dāng)做特殊架處理。分析管架標(biāo)準(zhǔn)圖可得到物理支吊架類型和管架編號(hào)對(duì)應(yīng)關(guān)系如表1 所示。
表1:物理支吊架類型
當(dāng)邏輯支吊架下轄兩個(gè)或多個(gè)物理支吊架,即物理支吊架組合使用時(shí)有可能發(fā)生功能的改變,邏輯支吊架的類型不應(yīng)由某一物理支吊架類型決定。如承重架D7和螺栓U1 的組合,其功能取決于U1 子項(xiàng)種類;焊接式管托J16 和井型架D16-2 完成對(duì)垂直管道的導(dǎo)向;導(dǎo)向架E1 和限位架K1 的組合應(yīng)視為固定架,若缺乏鋼結(jié)構(gòu)等構(gòu)筑物還應(yīng)搭配如D2 等承重架使用。在確定邏輯支吊架類型時(shí),如果為每一種物理支吊架的組合形式單獨(dú)編寫(xiě)程序,會(huì)造成程序的復(fù)雜度飆升,也極易產(chǎn)生組合類型的遺漏。在解決這個(gè)問(wèn)題時(shí),本軟件將管架標(biāo)準(zhǔn)圖中的每一種物理支吊架賦值。在程序判斷時(shí),不去考慮物理支吊架的組合形式,僅考慮邏輯支吊架所轄物理支吊架單一或組合后的值將落在數(shù)軸上的哪一個(gè)區(qū)間中,以此來(lái)判斷邏輯支吊架的類型,避免了程序上的冗雜與缺漏。解決方法在上文的程序中有體現(xiàn)。
在得到由Report 數(shù)據(jù)庫(kù)導(dǎo)出的邏輯支吊架信息報(bào)表后,軟件允許設(shè)計(jì)人自己定義邏輯支吊架的起始順序號(hào),并可規(guī)定每一個(gè)順序號(hào)之間的間隔。在設(shè)計(jì)人規(guī)定起始順序號(hào)后,將由整理過(guò)的報(bào)表的第一行開(kāi)始處理數(shù)據(jù),在完成所有邏輯支吊架的編號(hào)生成后,軟件會(huì)憑借邏輯支吊架的OID,將所有生成的編號(hào)重新錄入S3D 數(shù)據(jù)庫(kù)中,完成整個(gè)編號(hào)生成任務(wù)并彈出提示框提醒設(shè)計(jì)人邏輯支吊架編號(hào)生成的結(jié)束。
本軟件完成了邏輯支吊架編號(hào)的自動(dòng)生成和輸出,解放了大量的人力,并且極大地避免了低老壞等問(wèn)題的產(chǎn)生。在S3D 項(xiàng)目的實(shí)際應(yīng)用過(guò)程中,原本多個(gè)小時(shí)的工作時(shí)間被縮減到5 分鐘以內(nèi),體現(xiàn)了數(shù)字化的不斷發(fā)展在現(xiàn)在和將來(lái)的設(shè)計(jì)工作中所能帶來(lái)的越來(lái)越不可或缺的助力。軟件正在嘗試向其他如以PDMS 作為三維設(shè)計(jì)軟件的項(xiàng)目中移植,爭(zhēng)取擁有更好地普適性,解放更多生產(chǎn)力。