司文學 湯傳斌
(中國恩菲工程技術有限公司, 北京 100038)
在化工項目的設計過程中,化工工藝包的編制是其中一個重要的環(huán)節(jié),起承上啟下的作用。一般情況下,工藝包應至少包括[1-2]:Pfd流程圖及其附屬的各種數(shù)據(jù)表格,Pid流程圖及其附屬的各種數(shù)據(jù)表格。因此,設計者在編制工藝包時,除了繪制流程圖外,還需要對其附屬的大量數(shù)據(jù)進行計算和核算,最后根據(jù)需要修改流程圖?;すに囋O計過程中,繪圖、數(shù)據(jù)計算、核對數(shù)據(jù)和編制各種數(shù)據(jù)表等工作給設計者帶來的巨大壓力,尤其是大量數(shù)據(jù)的處理、流程圖修改和各種各樣數(shù)據(jù)表的編制都需要耗費大量的時間和精力,并且需進行反復地核對,當工藝流程發(fā)生變化時,更是需要花費更多的時間和精力進行檢查和核對,且仍有可能出現(xiàn)錯誤。
近年來,隨著計算機技術的發(fā)展,各種各樣的P&ID軟件逐漸發(fā)展起來,在一定程度上減少了設計工作者的勞動量,但是仍然有大量的數(shù)據(jù)需要設計者自己先計算處理后才能輸入P&ID軟件中。例如輸入管線信息時,管道的公稱直徑和管道等級都需要設計者直接輸入,若有變化時還需要逐一查找進行修改。
盡管這些P&ID商業(yè)軟件可以減輕設計工作者的勞動量,但它們都是與各自公司配套的3D建模軟件聯(lián)合使用,不但需要專人維護,而且價格較貴。若使用這些商業(yè)軟件,每年需要為每位設計者支出的軟件費用將近10萬元。
本文提出了一種利用VBA程序將AspenPlus、AutoCAD和Exccel有機地結合起來編制工藝包的方法,利用計算機替代人工處理除繪圖以外的與數(shù)據(jù)相關的大部分工作,例如Pfd物流表、Pid管線表、儀表條件表等,從而可以使設計者快速的完成Pid工藝包的制作。
按傳統(tǒng)的方法,一個流程的工藝包制作過程需要完成以下步驟:
1) 初步確定裝置的工藝過程。
2) 進行流程模擬,確定主要工藝物流參數(shù)。一般使用穩(wěn)態(tài)流程模擬軟件進行流程模擬,例如AspenPlus等。
3) 使用AutoCAD繪制Pfd圖,并編制管道表。
4) 進行換熱器、泵、壓縮機、塔器、儲罐、安全閥等設備的設計。
5) 使用AutoCAD繪制Pid圖,繪圖的同時計算管徑、管道等級、保溫類型及保溫厚度等信息,然后輸入Pid流程圖中。
6) 使用AutoCAD繪制設備配置圖。
7) 討論修改定型后,編制Pid管線表、設備表、安全閥表、各種條件表(主要是儀表條件表)等。
通常情況下,可以在第三步和第五步使用P&ID商業(yè)軟件替代AutoCAD繪制流程圖,并輸出一部分表格,從而減少一部分工作量。
本文所介紹的方法可以將第三步、第五步和第七步中除繪圖以外的絕大部分數(shù)據(jù)處理工作由計算機自動完成。
本文所述的方法是利用VBA將AspenPlus、AutoCAD和Exccel有機地結合起來,設計者在使用AutoCAD繪制Pfd、Pid流程圖時只需要命名管段號,然后運行程序即可完成剩余工作,使設計者擺脫大量數(shù)據(jù)的計算和核查工作。其主要功能如下:
1) 將流程模擬軟件的物流信息按照規(guī)定的格式輸出到Excel中。
2) 使用AutoCAD繪制Pfd流程圖后,使用本程序一鍵讀取Pfd流程圖中的物流號,然后從流程模擬結果的Excel表格中讀取相關數(shù)據(jù),經(jīng)過處理后輸出到Excel的Pfd管線表中。
3) 使用AutoCAD繪制Pid流程圖后,使用本程序一鍵讀取Pid流程圖中的管線號,然后從Pfd管線表中讀取相關數(shù)據(jù),經(jīng)過計算處理后將相關信息寫入Pid流程圖中,并可以根據(jù)需要生成Excel格式的Pfd管線表、儀表數(shù)據(jù)表、設備數(shù)據(jù)表、安全閥數(shù)據(jù)表等。
使用上述方法,設計者只需要在各個階段根據(jù)需要點擊相應的功能按鈕即可。因此,除了以上由計算機完成的工作外,設計者需要完成的工作簡化為以下幾個方面:
1) 進行流程設計,并進行流程模擬和優(yōu)化。
2) 使用AutoCAD和增強塊繪制Pfd流程圖。
3) 使用AutoCAD和增強塊繪制Pid流程圖,只需對管線進行命名,選擇合適的閥門、儀表等,輸入相關的信息。
4) 進行設備設計。
5) 繪制設備布置圖。
由此可以看出,通過利用VBA實現(xiàn)AspenPlus、AutoCAD與Excel之間數(shù)據(jù)的相互讀取、計算、寫入,實現(xiàn)計算機替代人工,節(jié)約設計時間,提高勞動效率,提高設計質(zhì)量。
盡管化工流程中存在管線、設備、閥、儀表等眾多不同對象,但在本文所述的方法中,利用不同的增強塊表示不同的對象,以便加以區(qū)別。這是因為使用增強塊可以描述更多的信息,而且增強塊的讀、寫方法基本相同,有利于維護。因此,本文僅對Pid管線的處理過程進行簡單描述。
2.2.1 插入塊“Pid_Pipe”
使用AutoCAD繪制Pid圖時,通過插入塊功能插入增強塊[3]“Pid_Pipe”,彈出對話框如圖1所示。
圖1 Pid管線塊輸入信息
由于采用的是增強塊,當關閉該窗口后,輸入的信息中只有“PG-1010101”是可見的,其他信息都是隱藏的。
2.2.2 讀取管線信息
完成繪制Pid流程圖后,執(zhí)行讀取管線號信息的程序(寫入信息的程序與此類似)。VBA讀取增強塊“Pid_Pipe”的核心代碼摘要[4-5]如下所示。
Dim cadent As AutoCAD.AcadEntity
Dim array1 As Variant
Dim sheet As Worksheet
Dim nh As Integer
Dim nv As Integer
nh=3
nv=1
For Each cadent In caddoc.ModelSpace
If StrComp(cadent.EntityName, “AcDbBlock-Reference”, 1) = 0 Then
If cadent.Name=“Pid_Pipe” Then
If cadent.HasAttributes Then
array1=cadent.GetAttributes
For i=LBound(array1) To UBound(array1)
sheet.Cells(nh, nv+i)=array1(i).TextString
Next i
nh=nh+1
End If
End If
End If
Next cadent
運行后讀取結果見表1。
表1 Pid管線塊信息
2.2.3 獲取Pid物流信息
執(zhí)行計算管徑的VBA程序。該步驟是獲取每個已經(jīng)讀取的Pid管線的物流信息,并通過計算得到完整的Pid管線表。推薦在Excel中進行操作,以便于過程檢查、修改。具體步驟如下:
1) 根據(jù)管段號的“參考Pfd物流名”,使用LookUp等函數(shù)將流量、溫度、壓力、組分含量、焓、密度、粘度、表面張力等在后續(xù)需要使用的Pfd物流信息復制過來(表2)。
表2 Pid管線物流信息
2) 計算設計溫度和設計壓力。
3) 計算管線公稱直徑。若已經(jīng)在增強塊中指定了PIPE_SPEI值,則直接將此值作為管道的公稱直徑,否則按照以下過程計算管道的公稱直徑DN。
① 根據(jù)管段號的“流量系數(shù)”,計算Pid管線的工況體積流量,計算公式為:
Pid管線工況體積流量=對應的Pfd物流工況體積流量×系數(shù)PIPE_REFⅡ
(1)
② 計算最大體積流量,其計算公式為:
最大工況體積流量=Pid管線工況體積流量×系數(shù)PIPE_FLOW
(2)
③ 計算管線公稱直徑,其計算公式為:
公稱直徑=SQRT(最大工況體積流量/時間/流速/3.14)×2
(3)
④ 向上圓整并按照規(guī)格取值。
4) 根據(jù)介質(zhì)類型、設計溫度、設計壓力、公稱直徑等信息,計算管線的管道等級和壓力管道的壓力等級。
5) 根據(jù)溫度計算保溫類型、保溫材料和保溫厚度。
6) 根據(jù)需要計算其他信息,如探傷比例等。
7) 使用函數(shù)CONCATENATE將前述字符按照格式“管段號-管道等級-DN-保溫類型-保溫厚度-保溫材質(zhì)-管線號”合并成標準管線號。結果見表3。
表3 Pid管線號
8) 檢查修改后的執(zhí)行程序,將上一步中得到的標準管線號寫入對應的管線號增強塊中,結果如圖2所示。
圖2 Pid管線塊寫入信息
9) 最后打印Pid管線表。
從Pid流程圖管線的處理過程可以看出,使用本文所介紹的方法,設計人員只需要在繪制Pid流程圖時填入少量且不涉及任何計算過程的基本信息,待繪制Pid流程圖結束后執(zhí)行相關的VBA程序,就可以完成管線號的自動計算和寫入Pid流程圖管線信息,并根據(jù)需要選擇是否打印Pid管線表。
本文以Pid管線的處理過程為例,說明如何利用VBA協(xié)同AspenPlus、AutoCAD和Excel編制工藝包。從文中可以看出,采用這種方法,設計者只需要在繪制流程圖時選用合適的增強塊,并填入一些基本信息,在繪圖完成后,點擊相應的功能按鈕即可完成所有信息的獲取、計算、寫入。
利用VBA協(xié)同AspenPlus、AutoCAD和Excel編制工藝包的方法,使設計者有足夠的時間和精力專注于工藝流程設計和優(yōu)化,擺脫查找信息、計算各種數(shù)據(jù)、制作管線表、修改Pid流程圖等繁重且不斷重復的工作;極大地提高設計工作者的勞動效率,減少人工投入,大量節(jié)省工藝包設計所需要的時間;節(jié)省在購買商業(yè)軟件方面的經(jīng)濟投入。
可以預見的是,越是大型項目,信息量越多,使用VBA協(xié)同AspenPlus、AutoCAD和Excel設計工藝包的方法節(jié)省的時間和人工越多,效果越明顯,因此,該方法具有較大的推廣價值。