官方博客  中文版 | ENGLISH

客服热线:0517-86930968;
               13951262528

当前位置:首页 > 技术文章 
Turbo C 2.0编程软件实现孔板流量计的精确加工
更新时间:2017-3-27 9:37:40 浏览:1636 关闭窗口 打印此页
 一、 C语言的起源 
  C 语言是1972年由美国的Dennis Ritchie设计发明的, 并首次在UNIX操作系统 的 DEC PDP-11 计算机上使用。 它由早期的编程语言 BCPL( Basic Combind Programming Language) 发展演变而来。在1970年, AT&T 贝尔实验室的 Ken Thompson根据BCPL语言设计出较先进的并取名为 B的语言, 最后导了C 语言的问世。 随着微型计算机的日益普及, 出现了许多C 语言版本。由于没有统一的标准, 使得这些C 语言之间出现了一些不一致的地方。为了改变这种情况, 美国国家标准 研究所(ANSI)为C 语言制定了一套ANSI标准, 成为现行的C语言标准[1]。 
  二、C 语言的特点  
  C 语言发展如此迅速, 而且成为最受欢迎的语言之一, 主要因为它具有强大的功能。许多著名的系统软件, 如DBASE Ⅲ PLUS、DBASE Ⅳ 都是由C 语言编写的。用C 语言加上一些汇编语言子程序, 就更能显示C 语言的优势了, 象PC- DOS 、WORDSTAR等就是用这种方法编写的。归纳起来C 语言具有下列特点:  
  1. C是中级语言  
  它把高级语言的基本结构和语句与低级语言的实用性结合起来。C 语言可以象汇编语言一样对位、字节和地址进行操作, 而这三者是计算机最基本的工作单元。  
  2. C是结构式语言  
  结构式语言的显著特点是代码及数据的分隔化, 即程序的各个部分除了必要的信息交流外彼此独立。这种结构化方式可使程序层次清晰, 便于使用、维护以及调试。C 语言是以函数形式提供给用户的, 这些函数可方便的调用, 并具有多种循环、条件语句控制程序流向, 从而使程序完全结构化。  
  3. C语言功能齐全  
  C 语言具有各种各样的数据类型, 并引入了指针概念, 可使程序效率更高。另外C 语言也具有强大的图形功能, 支持多种显示器和驱动器。而且计算功能、逻辑判断功能也比较强大, 可以实现决策目的。  
  4. C语言适用范围大  
  C 语言还有一个突出的优点就是适合于多种操作系统, 如DOS、UNIX,也适用于 多种机型[1]。 
  三、 Turbo C 2.0集成编程环境  
  Turbo C 2.0最好安装在硬盘特定的目录下,如“D:\ TC(下依次为例),可再以章为单位建立下级目录,如D1、D2。DOS下键入TC↙(回车)第一次运行,显示主屏暮如图1-1所示。  
 
  进入 Turbo C 2.0集成编程界面。(注:第一次进入Turbo C 2.0集成编程界面时,需要对Turbo C 2.0集成编程界面进行必要的设置。按下F10键激活菜单,进入Options子菜单,有7项。第4项Directories中。修改3处:“Include directories::D:\ TC \ TC20 \ INCLUDE”,“Library directories:D:\ TC \ TC20 \ LIB”,“Turbo C directory:D:\ TC \ TC20 ”。按ESC键退回。选择“Save options”,在“Config File”窗口中选择“D:\ TC \ TC20 \ TCCONFIG.TC “,覆盖存盘。最后还提醒一点:FILES中的Change dir(改变当前目录)中应设置为当前程序所在目录。) 
四、利用Turbo C 2.0编程软件编写孔板流量计孔径的计算程序 
求:20℃情况下孔板节流孔直径d20 
  已知条件: 
  质量流量Qmax,Qcom,Qmin(kg/h);操作密度M (kg/m3); 动力黏度N (mPa?s); 20℃情况下工艺管道内径D20(m); 正常操作压力P MPa(G);正常操作温度T (℃);管道材质的线膨胀系数rD; 孔板材质的线膨胀系数rd ; 
  通过计算后所得的数据: 
  正常操作温度T情况下工艺管道内径D(m);雷诺数ReD;计算差压上限值CPcom 和CPmax; 
  计算A2[2] ;计算孔板流量计的流出系数C[2] 
  在知道了相应的工艺条件后,下面我就利用Turbo C 2.0编程软件编写孔板流量计孔径的计算程序。首先,在开始前,我还要先介绍一下Turbo C 2.0相关的几个基本函数,然后通过应用这些函数来编写孔板流量计孔径的计算程序。 
  1 数学函数 包含在如表1-1所示:(注:使用时在源文件前加命令行: 
# include) 
 
  2 由上面的已知条件和Turbo C 2.0的数学函数,通过Turbo C 2.0编程软件编写孔板流量计孔径的计算程序如下: 
#include 
main() 
{ int n; 
const float pai=3.141592653289; 
const float b0=0.500000; 
const float C0=0.606000; 
float Qmax,Qcom,Qmin,M,N,D20,rD,rd,T=0.0,b,D,ReD,CPmax,CPcom,A2, 
L,C,C1,b1,b2,d,d20; 
printf("Qmax,Qcom,Qmin,M,N,D20,rD,rd,T=\n"); 
scanf("%f%f%f%f%e%f%e%e%f",&Qmax,&Qcom,&Qmin,&M,&N,&D20,&rD,&rd,&T); 
/*输入已知的工艺参数*/ 
D=D20*(1+rD*(T-20)); 
ReD=4*Qcom/(3600*pai*N*D); 
CPcom=pow(4*Qcom*sqrt(1-pow(b0,4))/(3600*pai*b0*b0*D*D*C0),2)*1/(2*M); 
CPmax=CPcom*pow((Qmax/Qcom),2); 
A2=4*Qcom/(3600*pai*D*D*sqrt(2*25e3*M)); 
printf("CPcom=%6.10f\n",CPcom); 
printf("CPmax=%6.10f\n",CPmax); 
if(ReD>2e5) /*利用Turbo C的if判断语句对雷诺数进行判断计算*/ 
{b=pow(1+pow((0.60/A2),2),-0.25);} 
if(ReD<2e5) 
{b=pow(1+pow((0.60/A2+0.06),2),-0.25);} 
L=0.0254/D; 
C=0.5961+ 
0.0261*pow(b,2)- 
0.216*pow(b,8)+ 
0.000521*pow(((pow(10,6)*b)/ReD),0.7)+ 
((0.0188+0.0063*pow((19000*b/ReD),0.8)))*pow(b,3.5)*pow((pow(10,6)/ReD),0.3)+ 
(0.043+0.080*exp(-10*L)-0.123*exp(-7*L))*(1-0.11*pow((19000*b/ReD),0.8))* 
(pow(b,4)/(1-pow(b,4)))- 
0.031*(2*L/(1-b)-0.8*pow(2*L/(1-b),1.1))*pow(b,1.3); 
b1=pow(1+pow((C/A2),2),-0.25); 
C1=0.5961+ 
0.0261*pow(b1,2)- 
0.216*pow(b1,8)+ 
0.000521*pow(((pow(10,6)*b1)/ReD),0.7)+ 
((0.0188+0.0063*pow((19000*b1/ReD),0.8)))*pow(b1,3.5)*pow((pow(10,6)/ReD),0.3)+ 
(0.043+0.080*exp(-10*L)-0.123*exp(-7*L))*(1-0.11*pow((19000*b1/ReD),0.8))* 
(pow(b1,4)/(1-pow(b1,4)))- 
0.031*(2*L/(1-b1)-0.8*pow(2*L/(1-b1),1.1))*pow(b1,1.3); 
b2=pow(1+pow((C1/A2),2),-0.25); 
for(n=2;fabs(b2-b1)>1.0e-10;n++) /*利用Turbo C的for循环语句进行迭代计算*/ 
{ 
b=b1; 
C=0.5961+ 
0.0261*pow(b,2)- 
0.216*pow(b,8)+ 
0.000521*pow(((pow(10,6)*b)/ReD),0.7)+ 
((0.0188+0.0063*pow((19000*b/ReD),0.8)))*pow(b,3.5)*pow((pow(10,6)/ReD),0.3)+ 
(0.043+0.080*exp(-10*L)-0.123*exp(-7*L))*(1-0.11*pow((19000*b/ReD),0.8))* 
(pow(b,4)/(1-pow(b,4)))- 
0.031*(2*L/(1-b)-0.8*pow(2*L/(1-b),1.1))*pow(b,1.3); 
b1=pow(1+pow((C/A2),2),-0.25); 
C1=0.5961+ 
0.0261*pow(b1,2)- 
0.216*pow(b1,8)+ 
0.000521*pow(((pow(10,6)*b1)/ReD),0.7)+ 
((0.0188+0.0063*pow((19000*b1/ReD),0.8)))*pow(b1,3.5)*pow((pow(10,6)/ReD),0.3)+ 
(0.043+0.080*exp(-10*L)-0.123*exp(-7*L))*(1-0.11*pow((19000*b1/ReD),0.8))* 
(pow(b1,4)/(1-pow(b1,4)))- 
0.031*(2*L/(1-b1)-0.8*pow(2*L/(1-b1),1.1))*pow(b1,1.3); 
b2=pow(1+pow((C1/A2),2),-0.25); 
} 
printf("C1=%6.10f\n",C1); /*输出计算孔板流量计的流出系数C1*/ 
printf("b2=%6.10f\n\n",b2); /*输出计算孔板流量计的直径比b2*/ 
d=D*b2; 
d20=d/(1+rd*(T-20)); 
printf("d20=%6.10f\n\n",d20);  
/*输出计算孔板流量计在20℃情况下孔板节流孔直径d20*/ 
} 
以上就是计算孔板流量计孔径的计算程序。通过此程序可以很快的计算出孔板流量计在20℃情况下孔板节流孔孔径的大小。 
五 应 用 
实例一: 
① 被测流体 :水; 
② 流体流量:最大流量Qmax=500t/h;正常流量Qcom=400t/h;最小流量Qmin=200t/h 
③ 正常操作压力:P=14.6 MPa(G); 
④ 正常操作温度:T=220 ℃; 
⑤ 20℃情况下工艺管道内径:D20=233㎜; 
⑥ 管道材质的线膨胀系数:rD=11.16e-6㎜/㎜?℃; 
⑦ 孔板材质的线膨胀系数:rd=16.60e-6 ㎜/㎜?℃; 
⑧ 操作密度:M=850.9082 (kg/m3); 
⑨ 动力黏度:N=0.124 (mPa?s) ; 
按下Ctrl+F9运行计算程序:(注意单位换算) 
要求输入已知的工艺参数:Qmax, Qcom, Qmin, M, N, D20, rD, rd, T = 
500000 400000 200000 850.9082 124e-6 .233 11.16e-6 16.60e-6 233↙(回车) 
经过程序的运算得到如下的结果:(按下Alt+F5查看结果) 
CPcom=166259.4432591512 
CPmax=257980.3725675625 
C1=0.6023605334 
b2=0.5024122240 
d20=0.116966338 
实例二: 
① 测流体 :汽油; 
② 流体流量:最大流量Qmax=40000 kg/h;正常流量Qcom=31250 kg/h; 
最小流量Qmin=20000 kg/h 
③ 正常操作压力:P=0.80 MPa(G); 
④ 正常操作温度:T=40 ℃; 
⑤ 20℃情况下工艺管道内径:D20=102㎜; 
⑥ 管道材质的线膨胀系数:rD=11.16e-6㎜/㎜?℃; 
⑦ 孔板材质的线膨胀系数:rd=16.60e-6 ㎜/㎜?℃; 
⑧ 操作密度:M=720 (kg/m3); 
⑨ 动力黏度:N=0.3000 (mPa?s) ; 
按下Ctrl+F9运行计算程序:(注意单位换算) 
要求输入已知的工艺参数:Qmax, Qcom, Qmin, M, N, D20, rD, rd, T = 
40000 31250 20000 720 300e-6 .102 11.16e-6 16.60e-6 40↙(回车) 
经过程序的运算得到如下的结果:(按下Alt+F5查看结果) 
CPcom=31982.3496093750 
CPmax=52399.8828125000 
C1=0.6041094065 
b2=0.5007327199 
d20=0.051069240 
实例三: 
① 测流体 :碱液; 
② 流体流量:最大流量Qmax=6000 kg/h;正常流量Qcom=5000 kg/h; 
最小流量Qmin=3000 kg/h 
③ 正常操作压力:P=0.65 MPa(G); 
④ 正常操作温度:T=40 ℃; 
⑤ 20℃情况下工艺管道内径:D20=52㎜; 
⑥ 管道材质的线膨胀系数:rD=11.16e-6㎜/㎜?℃; 
⑦ 孔板材质的线膨胀系数:rd=16.60e-6 ㎜/㎜?℃; 
⑧ 操作密度:M=1112 (kg/m3); 
⑨ 动力黏度:N=2.0000 (mPa?s) ; 
按下Ctrl+F9运行计算程序:(注意单位换算) 
要求输入已知的工艺参数:Qmax, Qcom, Qmin, M, N, D20, rD, rd, T = 
6000 5000 23000 1112 2000e-6 .052 11.16e-6 16.60e-6 40↙(回车) 
经过程序的运算得到如下的结果:(按下Alt+F5查看结果) 
CPcom=7848.1137695312 
CPmax=11301.2841796875 
C1=0.6153961420 
b2=0.5284164548 
d20=0.027457322 
  六:结束语 
  通过上述实例对孔板流量计孔径的计算程序进一步的做了验证,可以得到如下结论:一,利用此程序可以精确的计算出不同介质、不同温度、不同流量等条件下的孔板流量计孔径的大小;二:利用此程序计算孔板流量计孔径的特点是快速,简单、计算量小;三:利用此程序为今后的设计提供了一套有序的计算方法。 
参 考 文 献  
[1] 郭继展.新编C语言程序设计[M].北京:机械工业出版社,2004. 2-3. 
[2] 孙淮清,王建中,流量测量节流装置设计手册[M].化学工业出版社,2006. 13.
上一篇文章: 孔板流量计特点介...
下一篇文章: 涡街流量计的安装...
在线客服系统