張宜
(南京消防器材股份有限公司,江蘇 南京 211112)
在高壓CO2滅火系統(tǒng)的設計過程中,先根據(jù)保護區(qū)凈體積和滅火濃度等參數(shù)確定CO2藥劑用量和需要的鋼瓶數(shù)量,再根據(jù)藥劑用量確定噴放流量。已知主干管流量、管網(wǎng)布置和管路長度后,可確定管網(wǎng)參數(shù),如各管段流量、管徑、終端壓力和噴頭等效孔口面積等,最終得到管道公稱直徑和噴頭型號。
依據(jù)GB 50193—93 《二氧化碳滅火系統(tǒng)設計規(guī)范(2010年版)》[1]和美標規(guī)范[2],在計算過程中需要根據(jù)計算結果多次查找管道附件當量表、管道規(guī)格表、高程校正系數(shù)、等效孔口面積等,如果是均衡管網(wǎng),則計算過程可以適當簡化,如果是非均衡管網(wǎng),則計算過程非常煩瑣。本文利用VB和Access數(shù)據(jù)庫技術實現(xiàn)了對管網(wǎng)中管網(wǎng)參數(shù)的計算,以及管道公稱直徑和噴頭型號的自動選取,大大提高了CO2滅火系統(tǒng)設計和計算的效率,減小了工程設計人員的工作量。
管網(wǎng)中干管的流量計算公式為
Q=M/t
(1)
式中:
Q為干管流量,kg/min;
M為藥劑用量,kg;
t為噴放時間,min。
管網(wǎng)中支管的設計流量計算公式為
(2)
式中:
Ng為安裝在計算支管流程下游的噴頭數(shù)量;
Qi為單個噴頭的設計流量,kg/min。
管道內徑的計算公式為
(3)
式中:
D為管道內徑,mm;
Kd為管徑系數(shù)。
GB 50193—93 《二氧化碳滅火系統(tǒng)設計規(guī)范(2010年版)》給出的Kd取值范圍是1.41~3.78,推薦范圍是2~2.5,本文取2.2。
根據(jù)計算出的管道內徑值,通過查找規(guī)范中二氧化碳滅火系統(tǒng)管道規(guī)格表來確定管道的公稱直徑。
管段計算長度包括管段長度、管接件當量長度和其他管道附件當量長度:
L=Lg+Lj+Ld
(4)
式中:
L為管段計算長度,m;
Lg為管段長度,m;
Lj為管接件當量長度,m;
Ld為其他附件當量長度,m。
管段長度是實際管子長度;管接件是三通、彎頭、變徑接頭等,不同公稱直徑的管接件的當量長度也不同,具體數(shù)值要參照規(guī)范中管道附件的當量長度表;其他附件如虹吸管、金屬軟管等的當量長度應根據(jù)具體項目去取值,這些長度的總和為管段計算長度,管段計算長度用于計算管段壓力降。
采用規(guī)范中的壓力損失計算方法非常煩瑣,而且需要多次查找壓力系數(shù)和密度系數(shù)表。
管段壓力降的計算公式為
(5)
根據(jù)該式求取管道壓力降是非常困難的,因此將式(5)變換成下面的形式:
Y2=Y1+ALQ2+B(Z2-Z1)Q2
(6)
式中:
A=1/(0.872 5×10-4D5.25)
(7)
B=4 950/D4
(8)
Y1為管段起點Y值;
Y2為管段終端Y值;
Z1為管段起點Z值;
Z2為管段終端Z值。
管段壓力損失的計算流程為:根據(jù)管段起點壓力,通過壓力系數(shù)和密度系數(shù)表,確定Y1和Z1的值;根據(jù)公式(6)求出含未定項Z2的Y2,忽略未定項,根據(jù)Y2在壓力系數(shù)表和密度系數(shù)表中找出對應的Z2;將Z2代入(6)式中求最終的Y2;由Y2值在壓力系數(shù)表和密度系數(shù)表中插值求終端壓力,計算得到的終端壓力還要減去高程壓力損失才能得到最后的管段終端壓力。
噴頭孔口尺寸通過等效孔口噴射率求出,其計算公式如下:
F=Q/q0
(9)
式中:
F為等效孔口面積,mm2;
Q為噴頭流量,kg/min;
q0為單位等效孔口面積的噴射率,kg/(min·mm2)。
根據(jù)計算得到噴頭入口壓力,通過查單位等效孔口面積的噴射率表,經過線性插值計算得到噴射率,再由噴射率和流量計算等效孔口面積,由等效孔口面積值通過查噴頭等效孔口尺寸表來確定噴頭規(guī)格代號。
可見僅僅要計算出一個管段的管徑、終端壓力和選取噴頭,就要進行多次查表和插值運算,以及若干次公式計算,工作量非常大,煩瑣且容易出錯,因此有必要將計算過程交由計算機程序完成。
在管網(wǎng)計算的過程中,需要頻繁查詢規(guī)范中的表,然后進行插值或者其他操作以確定各值,本文將所有要查詢的表分別在Access中建立數(shù)據(jù)表,用VB連接并調用,由程序進行查找和插值等操作。并且Access數(shù)據(jù)庫可以將計算結果保存到數(shù)據(jù)庫中方便以后查看和修改[3-5]。
需要建立的表包括GB 501933—93 《二氧化碳滅火系統(tǒng)設計規(guī)范(2010年版)》附錄中的管道附件當量長度表、壓力系數(shù)和密度系數(shù)表、高程校正系數(shù)表、噴頭入口壓力與單位面積的噴射率表、噴頭等效孔口尺寸表、系統(tǒng)管道規(guī)格表等,數(shù)據(jù)庫文件格式為mdb格式。
在VB中使用ADO對象模型訪問Access數(shù)據(jù)庫,首先要引用“Microsoft ActiveX Data Object 2.5 Library”[6-10]。VB訪問Access數(shù)據(jù)庫的代碼如下:
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset
Set conn=New ADODB.Connection
Set rs=New ADODB.Recordset
conn.ConnectionString=″provider=& microsoft.jet.oledb.4.0;data source=″ && App.Path& ″Database1.mdb″
conn.Open
對計算數(shù)據(jù)的操作等同于對建立好的Access數(shù)據(jù)庫進行操作。管網(wǎng)計算程序應具備新建工程、工程計算參數(shù)修改和更新、保存計算結果、刪除工程數(shù)據(jù)、查詢項目、查看已保存項目的計算數(shù)據(jù)等一系列功能。
Open方法用于打開數(shù)據(jù)庫,使用Recordset對象的AddNew方法可以增加新的計算項目,Update方法可以實現(xiàn)計算數(shù)據(jù)的保存和修改更新功能,Delete方法可以用來刪除已保存的計算數(shù)據(jù),Select方法用來根據(jù)關鍵字對已保存項目數(shù)據(jù)進行精確查詢和模糊查詢。
2.4.1 管路流量計算
根據(jù)流量計算公式(1)和(2),可以知道干管流量等于支管流量的和。本文采用逆向計算的方式求主干管和所有支管流量,即首先計算出各個保護區(qū)噴頭的流量,根據(jù)噴頭的流量倒推出噴頭上一交匯節(jié)點處的流量,再根據(jù)該節(jié)點流量倒推出此節(jié)點上一節(jié)點干管流量,直至計算出主干管流量。關鍵代碼如下:
t=rs.RecordCount-1
For i=0 To t
For j=0 To t
If rs.State=1 Then rs.Close
If rs3.State=1 Then rs3.Close
rs3.Open ″select sum(流量)as & sFlow
from tempPiping where & 段1=″& j+1
& ″ ″,conn,1,3
rs.Open ″select*from & tempPiping
where 段2=″ & & j+1 & ″ ″,conn,1,3
If rs3!sFlow>0 Then
rs!流量=rs3!sFlow
rs.Update
End If
Next j
Next i
2.4.2 線性插值計算
在計算壓力系數(shù)和密度系數(shù)的時候,需要根據(jù)給定的中值,在相應的表中找到其位置,有對應的值則直接取值,沒有相應的值則提取表中相鄰上下兩個值,進行線性插值計算[11]。
以求解壓力系數(shù)和密度系數(shù)為例,在數(shù)據(jù)表中確定插值區(qū)間的算法代碼如下:
Set rs11=New ADODB.Recordset
Set rs12=New ADODB.Recordset
Dim x0,y0,x(1 To 2),y(1 To 2)As Double
x0=pp1
For i=1 To 17
If rs11.State=1 Then rs11.Close
If rs12.State=1 Then rs12.Close
rs11.Open″select * from & 高壓YZ表
where 序號=″ & i & ″″,& cnSTD,1,3
rs12.Open ″select * from & 高壓YZ表
where 序號=″ & i+1 & & ″″,cnSTD,1,3
If x0<=rs11!壓力 And x0 >& rs12!
壓力 Then
x(1)=rs11!壓力
x(2)=rs12!壓力
y(1)=rs11!Y值
y(2)=rs12!Y值
y0=interF(x,y,x0)
Y1=y0
End If
Next i
找到插值區(qū)間后,構造一元線性插值的數(shù)學模型,進行插值計算:
Private FunctioninterF(x,y,x0)
interF=y(1)+(y(2)-y(1))/&
(x(2)-x(1))*(x0-x(1))
End Function
程序主界面如圖1所示,計算程序主要有以下模塊:新建項目、打開項目、查找項目等。程序主界面從上至下依次為菜單欄、工具欄、項目信息欄、狀態(tài)欄。可以通過單擊按鈕進入相應功能模塊,例如通過單擊新建按鈕進入CO2系統(tǒng)設計計算界面,輸入相應參數(shù)進行藥劑用量計算和管網(wǎng)參數(shù)計算;或者通過單擊項目信息欄的項目,對已經保存的項目進行查看和修改。
圖1 程序主界面
為了驗證計算程序的準確性和有效性,以實際工程項目為例進行計算。某電信大樓的CO2滅火系統(tǒng)設計參數(shù)如表1,該管網(wǎng)是均衡管網(wǎng),管網(wǎng)布置和管網(wǎng)編號如圖2所示,管網(wǎng)共有6段,保護機房的噴頭共有32只,由于管網(wǎng)均衡布置,因此采用相同規(guī)格的噴頭。
表1 設計參數(shù)
首先用程序計算出保護區(qū)需要的藥劑用量,然后按照表2所示輸入管網(wǎng)計算的必要參數(shù)。每個管段的段數(shù),如果是均衡管網(wǎng),則直接輸入對稱管段的數(shù)量;如果是非均衡管網(wǎng)則段數(shù)為1。接著輸入噴頭保護體積、管長、高程差、管接件(如彎頭、三通、直通等)個數(shù),輸入完畢后點擊計算,得到計算結果。程序可以自動根據(jù)輸入的管段參數(shù)計算出流量、支管流量、選取的管段通徑、管道長度、起點壓力、終端壓力、等效孔口面積和噴頭型號等。
通過對比程序計算和手工計算結果可以知道(見表3),兩者在流量計算和管道公稱直徑選取上結果完全相同,最終噴頭型號選取也完全相同,在起點和終端壓力、噴頭等效空口面積的計算結果上有小的誤差。綜合來看,程序滿足工程設計精度要求,計算迅速、結果可靠。
圖2 CO2滅火系統(tǒng)管網(wǎng)布置圖
表2 管網(wǎng)參數(shù)輸入
本文使用VB和Access技術編寫了用于高壓二氧化碳管網(wǎng)計算的程序,主要工作和結論如下:
1)采用逆向計算的算法求解支管流量等參數(shù),該算法不僅適用于求解均衡管網(wǎng)參數(shù),也適用于復雜非均衡管網(wǎng)參數(shù)的計算;使用線性插值算法處理設計規(guī)范中的各類圖表。
2)程序能夠計算流量、起點和終端壓力等參數(shù),并自動選取公稱直徑和噴嘴型號。管網(wǎng)計算程序計算結果準確,滿足工程計算的精度要求,大大提高了計算效率。
3)本文的線性插值計算方法以及管路支管和總管流量計算方法具有普遍的適用性,可以應用到其他表類數(shù)據(jù)的線性插值計算以及各類氣體和流體的流量計算中。
[參考文獻]
[1]住房和城鄉(xiāng)建設部,國家質量監(jiān)督檢驗檢疫總局.GB 50193—93 二氧化碳滅火系統(tǒng)設計規(guī)范(2010年版)[S].北京:中國計劃出版社,2010.
[2]National Fire Protection Association.NPFA 12 standard on carbon dioxide extinguishing system[S/OL].[2017-01-05].http://www.doc88.com/p-9079793712862.html.
[3]張勇,陳海泉,孫玉清,等.基于液壓和VB技術的船舶細水霧滅火噴嘴的設計計算[J].液壓氣動與密封,2006,32(4):1-3.
[4]姜增如.Access2010數(shù)據(jù)庫技術及應用[M].北京:北京理工大學出版社,2012.
[5]周文,葉國軍,黃誠蔚,等.基于VB的竹木加工蒸汽烘房熱工計算[J].林業(yè)機械與木工,2014,42(2):44-46.
[6]萬迪華,湯彬,許志文.ADO數(shù)據(jù)訪問技術及其在VB中的實現(xiàn)[J].計算機與現(xiàn)代化,2001(5):56-58.
[7]劉彬彬,安劍.Visual Basic從入門到精通[M].北京:清華大學出版社,2010.
[8]李戰(zhàn)明,趙靜.基于VB與研華數(shù)據(jù)采集卡的數(shù)據(jù)采集系統(tǒng)設計[J].計算機與現(xiàn)代化,2012(7):236-238.
[9]蘇文萍.基于VB.NET的在線考試系統(tǒng)設計與實現(xiàn)[J].計算機與現(xiàn)代化,2012(8):218-222.
[10]基于VB與Access數(shù)據(jù)庫的電纜快速設計系統(tǒng)[J].計算機工程與設計,2012(12):4282-4285.
[11]李慶揚.數(shù)值分析[M].北京:清華大學出版社,2008.