自流系统装车工艺计算.docx
《自流系统装车工艺计算.docx》由会员分享,可在线阅读,更多相关《自流系统装车工艺计算.docx(13页珍藏版)》请在冰豆网上搜索。
![自流系统装车工艺计算.docx](https://file1.bdocx.com/fileroot1/2023-1/3/b8165ab3-3f1b-484d-aaf9-961b8ad9d99a/b8165ab3-3f1b-484d-aaf9-961b8ad9d99a1.gif)
自流系统装车工艺计算
油库设计与管理
题目自流系统装车工艺计算
专业年级
指导教师
姓名学号
姓名学号
姓名学号
姓名学号
姓名学号
姓名学号
1、题目
装卸系统,如图2所示,装油管设置在集油管中部,且两侧鹤管同时装油,两侧鹤管对称布置。
油库油料为车用汽油,操作条件下车用汽油的粘度为0.6×10-6m2/s,鹤管采用Φ108×4的钢管,鹤管计算长度为25m,鹤管间距为12.5m,集油管为Φ219×6,输油管为Φ159×5,输油管计算长度为1500m,油库库容为30000m3,单个罐的容量为3000m3,油罐内径为16m,罐壁高度为15.85,罐出油口与装油鹤管出口之间的高差为30m。
(1)计算鹤分别管数为20和30,液位高度为3m和10m时所对应的各鹤管流量?
(2)操作鹤管数为30,发油量为1500m3,开始发油时液位高度为12m,计算发油时间?
2、原理分析
2.1自流装车系统的数学模型分析
为求得在罐内液位高度一定时各鹤管流量,需建立自流装车系统水力计算的数学模型。
如图1所示的自流装车系统,设装车系统的位能为Z+H0,Z为罐内液位高度,H0为罐出口与装油鹤管出口之间的高差。
qi、Qi;di、Di;li、Li;λi、Λi、和ui、Ui分别为第i根鹤管和i段集油管的流量、管径、长度、摩阻系数和流速。
Q0、D0、L0、λ0和U0分别为输油管的流量、管径、管长、摩阻系数和流速。
图2自流装车系统
如图1所示,从流体力学的基本方法可以得出,鹤管2和集油管的交汇点2的能量,必然是供给流经鹤管2和鹤管1及集油管1的流量q2和q1的能量,在此点上两个系统的摩阻和动能之和必须相等,即
(2)
以此类推
(3)
因各鹤管流速分别为u1,…,ui,…,un,其流量分别为q1,…,qi,…,qn,则可求得各段集油管的流速为
,
,
输油管的流速为
设计自流装车系统时,一般可先假设鹤管和集油管的直径和长度。
这样在方程
(2)中,若知道u1就能求出u2,由方程(3)类推下去,便可求出ui直到un,同时也求出了U1,…,Ui,…,Un和U0。
因此,鹤管、集油管和输油管的直径和长度已确定后,对应油罐内的液位高度Z,方程式
(1)成为关于u1的一元非线性方程,可运用弦截法求解方程
(1)可得出某时刻一定油罐液位高度Z对应的第一根鹤管流速u1,再由方程(3)求得其余鹤管的流速,从而计算出各段集油管及输油管的流速和流量。
2.2自流装车时间的计算
在设计自流装车系统时,必须满足装车时间的要求。
即在一定的位差(H0+Z)下,所选装油系统的管径必须满足预定的流量。
由于油罐的液位高度的变化,油品装车时间是油品液位高度的函数。
设油罐的横截面积为F,输油管流量为Q0,在dτ时间内,流向油罐车的油品为Q0dτ,油罐液位下降为dZ,流出油品为FdZ,它们必然相等,即
(4)
在自流装车系统的各管段直径和长度、鹤管数确定后,输油管流量Q0与油罐内的液位高度Z的函数关系可用下式表达。
(5)
将式(5)代入式(4)积分得
(6)
式中τ—自流装车时间,s;
Z1—装车前罐内的液位高度,m;
Z2—装车后罐内的液位高度,m。
如果需要装车的油品体积为Vr,Z2可按下式计算:
(7)
由于式(5)无法用解析式表达,式(6)可采用数组插植计算自流装车时间τ。
3、程序框图
4、程序变量声明
4.1鹤管变量
鹤管内径d1,长度l1,总根数n,流速v1()、v1(n),假设的摩阻系数λ1()、λ1(n),雷渃数Re1()、Re1(n),相对粗糙度ξ1()、ξ1(n),计算的摩阻系数λ10()、λ10(n),划界雷渃数Re11()、Re11(n),划界雷渃数Re12()、Re12(n),第一根鹤管的假设流量q,每根鹤管流量qq(j,i)
4.2集油管变量
集油管内径d2,长度l2,流速v2()、v2(n),摩阻系数λ2()、λ2(n),雷渃数Re2()、Re2(n),相对粗糙度ξ2()、ξ2(n),划界雷渃数Re21()、Re21(n),划界雷渃数Re22()、Re22(n),总的摩阻损失hl
4.3输油管变量
输油管内径d0,长度l0,流速v0,假设的摩阻系数λ0,雷渃数Re0,相对粗糙度ξ0,划界雷渃数Re01,划界雷渃数Re02,平均流量Qe
4.4储油罐变量
储油罐直径D,液位初始高度z1,发油后高度z2,第一根鹤管流量下所对应的液位高度z(j)
4.5其他变量
发油量V,油品黏度ν,管道绝对粗糙度Δ,油罐出口与鹤管出口间的高差H0
5、程序代码
5.1窗体设置程序
PrivateSubForm_Load()
Label14.Visible=False
Text13.Visible=False
Text15.Visible=False
IfText12.Text=12Then'注Text12.Text的输入需在属性窗口输入
Label14.Visible=True
Text13.Visible=True
Text15.Visible=True
Text14.Visible=False
EndIf
EndSub
5.2第一根鹤管流速v1
(1)和λ1
(1)的计算
PrivateSubCommand1_Click()
Dimv1(),λ1(),Re1(),ξ1(),λ10(),Re11(),Re12(),v2(),λ2(),Re2(),ξ2(),Re21(),Re22()
DimQ0(20000),z(20000),qq(20000,30)AsSingle
ν=Val(Text1.Text):
ν=ν*10^-6'对输入数据赋值,并化为国际单位
Δ=Val(Text2.Text):
Δ=Δ*10^-3
n=Val(Text3.Text)
d1=Val(Text4.Text):
d1=d1*10^-3
l1=Val(Text5.Text)
l2=Val(Text6.Text)
d2=Val(Text7.Text):
d2=d2*10^-3
d0=Val(Text8.Text):
d0=d0*10^-3
l0=Val(Text9.Text)
D=Val(Text10.Text)
H0=Val(Text11.Text)
z1=Val(Text12.Text)
V=Val(Text13.Text)
ReDimv1(n),λ1(n),Re1(n),ξ1(n),λ10(n),Re11(n),Re12(n),v2(n),λ2(n),Re2(n),ξ2(n),Re21(n),Re22(n)
π=3.14
Forq=0.000001To0.02Step0.000001'假设第一根鹤管流量为0.000001m3/s,该鹤管每次增量也为0.000001m3/s
v1
(1)=4*q/(π*d1^2)'第一根鹤管流速的计算
Re1
(1)=v1
(1)*d1/ν
ξ1
(1)=2*Δ/d1
Re11
(1)=59.7/(ξ1
(1)^(8/7))
Re12
(1)=(665-765*(Log(ξ1
(1))/Log(10)))/ξ1
(1)
IfRe1
(1)<=2000Then'第一根鹤管λ1
(1)的计算
λ1
(1)=64/Re1
(1)
ElseIfRe1
(1)>2000AndRe1
(1)<3000Then
λ1
(1)=0.16/Re1
(1)^0.25
ElseIfRe1
(1)>=3000AndRe1
(1)<=Re11
(1)Then
λ1
(1)=0.3164/Re1
(1)^0.25
ElseIfRe1
(1)>Re11
(1)AndRe1
(1)<=Re12
(1)Then
λ1
(1)=(1.8*Log(6.8/Re1
(1)+(ξ1
(1)/7.4)^1.11)/Log(10))^-2
ElseIfRe1
(1)>Re12
(1)Then
λ1
(1)=1/(1.74-2*Log(ξ1
(1))/Log(10))^2
EndIf
5.3第一根集油管流速v2
(1)和λ2
(1)的计算
v2
(1)=4*q/(π*d2^2)'第一根集油管流速的计算
Re2
(1)=v2
(1)*d2/ν
ξ2
(1)=2*Δ/d2
Re21
(1)=59.7/(ξ2
(1)^(8/7))
Re22
(1)=(665-765*(Log(ξ2
(1))/Log(10)))/ξ2
(1)
IfRe2
(1)<=2000Then'第一根集油管λ2
(1)的计算
λ2
(1)=64/(Re2
(1))
ElseIfRe2
(1)>2000AndRe2
(1)<3000Then
λ2
(1)=0.16/Re2
(1)^0.25
ElseIfRe2
(1)>=3000AndRe2
(1)<=Re21
(1)Then
λ2
(1)=0.3164/Re2
(1)^0.25
ElseIfRe2
(1)>Re21
(1)AndRe2
(1)<=Re22
(1)Then
λ2
(1)=(1.8*Log(6.8/Re2
(1)+(ξ2
(1)/7.4)^1.11)/Log(10))^-2
ElseIfRe2
(1)>Re22
(1)Then
λ2
(1)=1/(1.74-2*Log(ξ2
(1))/Log(10))^2
EndIf
5.4第i根鹤管流速v1(i)和λ1(i)的计算
Fori=2Ton'第i根鹤管的计算
λ1(i)=0.001:
g=9.8
Do'第i根鹤管λ1(i)的计算
v1(i)=Sqr((v1(i-1)^2/(2*g)+λ1(i-1)*l1*v1(i-1)^2/(d1*2*g)+λ2(i-1)*l2*v2(i-1)^2/(d2*2*g))/(1/(2*g)+λ1(i)*l1/(d1*2*g)))'第i根鹤管流速的计算
λ1(i)=λ1(i)+0.001
Re1(i)=v1(i)*d1/ν
ξ1(i)=2*Δ/d1
Re11(i)=59.7/(ξ1(i)^(8/7))
Re12(i)=(665-765*(Log(ξ1(i))/Log(10)))/ξ1(i)
IfRe1(i)<=2000Then
λ10(i)=64/Re1(i)
ElseIfRe1(i)>2000AndRe1(i)<3000Then
λ10(i)=0.16/Re1(i)^0.25
ElseIfRe1(i)>=3000AndRe1(i)<=Re11(i)Then
λ10(i)=0.3164/Re1(i)^0.25
ElseIfRe1(i)>Re11(i)AndRe1(i)<=Re12(i)Then
λ10(i)=(1.8*Log(6.8/Re1(i)+(ξ1(i)/7.4)^1.11)/Log(10))^-2
ElseIfRe1(i)>Re12(i)Then
λ10(i)=1/(1.74-2*Log(ξ1(i))/Log(10))^2
EndIf
LoopWhile(Abs(λ1(i)-λ10(i))>0.001)'第i根鹤管假设值λ1(i)与计算值λ10(i)的比较
5.5第i根集油管流速v2(i)、λ2(i)和每根鹤管流量qq(j,i)的计算
v2(i)=(d1^2*v1(i)+d2^2*v2(i-1))/d2^2''第i根集油管流速的计算
Re2(i)=v2(i)*d2/ν
ξ2(i)=2*Δ/d2
Re21(i)=59.7/(ξ2(i)^(8/7))
Re22(i)=(665-765*(Log(ξ2(i))/Log(10)))/ξ2(i)
IfRe2(i)<=2000Then'第i根集油管λ2(i)的计算
λ2(i)=64/(Re2(i))
ElseIfRe2(i)>2000AndRe2(i)<3000Then
λ2(i)=0.16/Re2(i)^0.25
ElseIfRe2(i)>=3000AndRe2(i)<=Re21(i)Then
λ2(i)=0.3164/Re2(i)^0.25
ElseIfRe2(i)>Re21(i)AndRe2(i)<=Re22(i)Then
λ2(i)=(1.8*Log(6.8/Re2(i)+(ξ2(i)/7.4)^1.11)/Log(10))^-2
ElseIfRe2(i)>Re22(i)Then
λ2(i)=1/(1.74-2*Log(ξ2(i))/Log(10))^2
EndIf
j=q*1000000
qq(j,i)=1/4*π*d1^2*v1(i)'第i根鹤管流量的计算
Nexti
5.6输油管流量Q0(j)、流速v0和λ0的计算
Q0(j)=1/4*π*d2^2*v2(n)*2'输油管流量的计算
V0=4*Q0(j)/(π*d0^2)'输油管流速的计算
Re0=V0*d0/ν
ξ0=2*Δ/d0
Re01=59.7/(ξ0^(8/7))
Re02=(665-765*(Log(ξ0)/Log(10)))/ξ0
IfRe0<=2000Then'输油管λ0的计算
λ0=64/Re0
ElseIfRe0>2000AndRe0<3000Then
λ0=0.16/Re0^0.25
ElseIfRe0>=3000AndRe0<=Re01Then
λ0=0.3164/Re0^0.25
ElseIfRe0>Re01AndRe0<=Re02Then
λ0=(1.8*Log(6.8/Re0+(ξ0/7.4)^1.11)/Log(10))^-2
ElseIfRe0>Re02Then
λ0=1/(1.74-2*Log(ξ0)/Log(10))^2
EndIf
5.7所需油罐液位高度z(j)的计算
Fori=1Ton'集油管摩阻的计算
hl=hl+λ2(i)*l2*v2(i)^2/(d2*2*g)
Nexti
z(j)=λ0*l0*V0^2/(d0*2*g)+hl+λ1
(1)*l1*v1
(1)^2/(d1*2*g)+v1
(1)^2/(2*g)-H0'所需液位高差的计算
Nextq
5.8插值法找到初始液位高度z1与发油后的液位高度z2下所对应的第一根鹤管的流量
A=1/4*π*D^2
j=1
DoWhile(Abs(z(j)-z1)>1)'用插值的方法查出末端鹤管在油罐液位z1下所对应的流量q1=j1/1000000
j=j+1
Loop
j1=j
IfText12.Text=12Then
z2=z1-V/A'发出油品后油罐所对应的液位z2
j=1
DoWhile(Abs(z(j)-z2)>1)'用插值的方法查出末端鹤管在油罐液位z2下所对应的流量q2=j2/1000000
j=j+1
Loop
j2=j
5.9平均流量与装车时间的计算
Forj=j1Toj2Step-1
Qz=Q0(j)+Qz'利用无穷分割累加求其平均流量Qe,进而计算出装车时间T
Nextj
Qe=Qz/(j1-j2)
T=V/Qe'根据平均流量Qe,计算出装车时间T
T=T/3600
EndIf
5.10程序的输出
Text14.Text="鹤管编号鹤管流量(m3/s)"&vbCrLf&Space(3)'输出计算结果
Fori=1Ton
Text14.Text=Text14.Text&Format(i,"00")&Space(6)&Format(qq(j1,i),"0.000000")&vbCrLf&Space(3)
Nexti
Text15.Text="装车时间:
"&vbCrLf&"T="&Format(T,"0.00")&"小时"
EndSub
6、运行界面
6.1鹤管数20、液位高度为3m时所对应的各鹤管流量
6.2鹤管数30、液位高度10m时所对应的各鹤管流量
6.3鹤管数为30,发油量为1500m3,开始发油时液位高度为12m所对应的发油时间
7、上机实验总结
编程确定自流装车系统的工艺参数,这道题感觉确实有难度。
尽管书上讲解的内容思路比较清晰,但真正动手编程时我们小组还是遇到了重重阻碍,此时才发现自己的VB知识还学得不够扎实。
我们编完过后,试了很多次,也修改了很多次,总会出现一些问题,这些问题也促使我们在此过程中不断请教老师和同学。
这次上机实验不仅让我们更加清楚地了解了自流装车系统的工艺计算,而且还温习了VB知识,我们都感觉在VB编程方面的能力得到了很大地提升。
同时,通过这次实验充分展现出了我们组每个成员各自的强项,大家相互学习,共同进步,并充分体现出了团队协作精神。