⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 balance.pas

📁 《SESyetem节能模拟系统(版本:1.01a Final)》为自由软件,对热风炉进行 热平衡计算、传热模拟、燃烧优化、操作优化等设计。 本软件用Dephi6.0编写
💻 PAS
📖 第 1 页 / 共 3 页
字号:
   BalanceMemo.Lines.Add('冷风管道表面散热量(kcal/m3):'+FloatToStr(SESystemElement.q6_outheat[5]));
   
   tb71:=SESystemElement.q7_1_outheat[1];
   A71:=SESystemElement.q7_1_outheat[2];
   Af71:=SESystemElement.q7_1_outheat[3];
   ad71:=ConvectionEnergy(Af71,tb71,te);
   q71:=RadiateEnergy(e,tb71,te,ad71);
   SESystemElement.q7_1_outheat[4]:=int((CoolPipeEnergy(T,Vf0,Tf,q71,A71))*100)/100;
   BalanceMemo.Lines.Add('炉顶表面散热量(kcal/m3):'+FloatToStr(SESystemElement.q7_1_outheat[4]));


   tb72:=SESystemElement.q7_2_outheat[1];
   A72:=SESystemElement.q7_2_outheat[2];
   Af72:=SESystemElement.q7_2_outheat[3];
   ad72:=ConvectionEnergy(Af72,tb72,te);
   q72:=RadiateEnergy(e,tb72,te,ad72);
   SESystemElement.q7_2_outheat[4]:=int((CoolPipeEnergy(T,Vf0,Tf,q72,A72))*100)/100; //Q7z:=Q71z0+Q72z0; 炉顶、炉体表面散热量Qz70
   BalanceMemo.Lines.Add('炉墙表面散热量(kcal/m3):'+FloatToStr(SESystemElement.q7_2_outheat[4]));


   tb8:=SESystemElement.q8_outheat[1];
   A8:=SESystemElement.q8_outheat[2];
   Af8:=SESystemElement.q8_outheat[3];
   ad8:=ConvectionEnergy(Af8,tb8,te);
   q8:=RadiateEnergy(e,tb8,te,ad8);
   SESystemElement.q8_outheat[4]:=int((CoolPipeEnergy(T,Vf0,Tf,q8,A8))*100)/100;  //竖管散热量Q8z0
   BalanceMemo.Lines.Add('竖管散热量(kcal/m3):'+FloatToStr(SESystemElement.q8_outheat[4]));

   tb9:=SESystemElement.q9_outheat[1];
   A9:=SESystemElement.q9_outheat[3];
   Af9:=SESystemElement.q9_outheat[3];
   ad9:=ConvectionEnergy(Af9,tb9,te);
   q9:=RadiateEnergy(e,tb9,te,ad9);
   SESystemElement.q9_outheat[4]:=int((CoolPipeEnergy(T,Vf0,Tf,q9,A9))*100)/100;  //热风管道表面散热量Q9z0
   BalanceMemo.Lines.Add('热风管道表面散热量(kcal/m3):'+FloatToStr(SESystemElement.q9_outheat[4]));

   tb10:=SESystemElement.q10_outheat[1];
   Vfy:=SESystemElement.q10_outheat[2];
   A10:=SESystemElement.q10_outheat[3];
   Af10:=SESystemElement.q10_outheat[4];
   ad10:=ConvectionEnergy(Af10,tb10,te);
   q10:=RadiateEnergy(e,tb10,te,ad10);
   SESystemElement.q10_outheat[5]:=int((CoolPipeEnergy(T,Vf0,Tf,q10,A10))*100)/100;   //烟道表面散热量Q10z0
   BalanceMemo.Lines.Add('烟道表面散热量(kcal/m3):'+FloatToStr(SESystemElement.q10_outheat[5]));

   tb11:=SESystemElement.q11_outheat[1];
   A11:=SESystemElement.q11_outheat[2];
   Af11:=SESystemElement.q11_outheat[3];
   ad11:=ConvectionEnergy(Af11,tb11,te);
   q11:=RadiateEnergy(e,tb11,te,ad10);
   SESystemElement.q11_outheat[4]:=int((CoolPipeEnergy(T,Vf0,Tf,q11,A11))*100)/100;   //预热装置表面散热量Q11z0
   BalanceMemo.Lines.Add('预热装置表面散热量(kcal/m3):'+FloatToStr(SESystemElement.q11_outheat[4]));

   Q1s:=SESystemElement.q1_inheat[5];
   Q2s:=SESystemElement.q2_inheat[4];
   Q3s:=SESystemElement.q3_inheat[4];
   Q4s:=SESystemElement.q4_inheat[4];

   Q1z:=SESystemElement.q1_outheat[4];
   Q2z:=SESystemElement.q2_outheat[4];
   Q3z:=SESystemElement.q3_outheat[1];
   Q4z:=SESystemElement.q4_outheat[3];
   Q5z:=SESystemElement.q5_outheat[6];
   Q6z:=SESystemElement.q6_outheat[5];
   Q71z:=SESystemElement.q7_1_outheat[4];
   Q72z:=SESystemElement.q7_2_outheat[4];
   Q7z:=Q71z+q72z;
   SESystemElement.q7_outheat[1]:=Q7z;
   Q8z:=SESystemElement.q8_outheat[4];
   Q9z:=SESystemElement.q9_outheat[4];
   Q10z:=SESystemElement.q10_outheat[5];
   Q11z:=SESystemElement.q11_outheat[4];

   Qs:=Q1s+Q2s+Q3s+Q4s;
   SESystemElement.Result_heatcompute[1]:=int(Qs*100)/100;
   BalanceMemo.Lines.Add('收入热量(kcal/m3):'+FloatToStr(Qs));
   Qz:=Q1z+Q2z+Q3z+Q4z+Q5z+Q6z+Q7z+Q8z+Q9z+Q10z+Q11z;
   SESystemElement.Result_heatcompute[2]:=int(Qz*100)/100;
   BalanceMemo.Lines.Add('支出热量(kcal/m3):'+FloatToStr(Qz));
   Qc:=Qs-Qz;  //差值
   SESystemElement.Result_heatcompute[3]:=int(Qc*100)/100;
   BalanceMemo.Lines.Add('差值(kcal/m3):'+FloatToStr(Qc));
   Qsr:=Q6z+Q7z+Q8z+Q9z+Q10z+Q11z; //各种表面散热之和
   SESystemElement.Result_heatcompute[4]:=int(Qsr*100)/100;
   BalanceMemo.Lines.Add('各种表面散热之和(kcal/m3):'+FloatToStr(Qsr));
   Qz:=Qs;   
   HEF1:=int(((Q1z-Q4s+Q6z+Q9z)*100/(Qs-Q4s))*100)/100;  //热风炉本体热效率
   SESystemElement.Result_heatcompute[5]:=int(HEF1*100)/100;
   BalanceMemo.Lines.Add('热风炉本体热效率%:'+FloatToStr(HEF1));
   HEF2:=int(((Q1z-Q4s)*100/(Qs-Q4s))*100)/100;          //热风炉系统及全系统的热效率
   SESystemElement.Result_heatcompute[6]:=int(HEF2*100)/100;
   BalanceMemo.Lines.Add('热风炉系统及全系统的热效率%:'+FloatToStr(HEF2));

   //计算理论燃烧温度
   ty:=2000;
   t:=800;
   while  abs(ty-t)>0.1  do
       begin
          t:=(ty+t)/2;
          ty:=(Q1s+Q2s+Q3s)*4.2/(Vns*B*Cpy(SESystemElement.co2_fume[2],
                                           SESystemElement.n2_fume[2],
                                           SESystemElement.o2_fume[2],
                                           SESystemElement.ch4_fume[2],
                                           SESystemElement.co_fume[2],
                                           SESystemElement.h2o_fume,t)*0.95);
       end;
  ty:=int(100*ty)/100;
  SESystemElement.Result_heatcompute[7]:=ty;
  BalanceMemo.Lines.Add('理论燃烧温度(℃):'+FloatToStr(ty));

  SESystemElement.q1_inheat[6]:=int((Q1s*100/Qs)*100)/100;
  SESystemElement.q2_inheat[5]:=int((Q2s*100/Qs)*100)/100;
  SESystemElement.q3_inheat[5]:=int((Q3s*100/Qs)*100)/100;
  SESystemElement.q4_inheat[5]:=int((Q4s*100/Qs)*100)/100;

  ps1:=FormatFloat('0.00',Q1s*100/Qs);
  ps2:=FormatFloat('0.00',Q2s*100/Qs);
  ps3:=FormatFloat('0.00',Q3s*100/Qs);
  ps4:=FormatFloat('0.00',Q4s*100/Qs);

  SESystemElement.q1_outheat[5]:=int((Q1z*100/Qz)*100)/100;
  SESystemElement.q2_outheat[5]:=int((Q2z*100/Qz)*100)/100;
  SESystemElement.q3_outheat[2]:=int((Q3z*100/Qz)*100)/100;
  SESystemElement.q4_outheat[4]:=int((Q4z*100/Qz)*100)/100;
  SESystemElement.q5_outheat[7]:=int((Q5z*100/Qz)*100)/100;
  SESystemElement.q6_outheat[6]:=int((Q6z*100/Qz)*100)/100;
  SESystemElement.q7_outheat[2]:=int((Q7z*100/Qz)*100)/100;
  SESystemElement.q8_outheat[5]:=int((Q8z*100/Qz)*100)/100;
  SESystemElement.q9_outheat[5]:=int((Q9z*100/Qz)*100)/100;
  SESystemElement.q10_outheat[6]:=int((Q10z*100/Qz)*100)/100;
  SESystemElement.q11_outheat[5]:=int((Q11z*100/Qz)*100)/100;

  pz1:=FormatFloat('0.00',Q1z*100/Qz);
  pz2:=FormatFloat('0.00',Q2z*100/Qz);
  pz3:=FormatFloat('0.00',Q3z*100/Qz);
  pz4:=FormatFloat('0.00',Q4z*100/Qz);
  pz5:=FormatFloat('0.00',Q5z*100/Qz);
  pz6:=FormatFloat('0.00',Q6z*100/Qz);
  pz7:=FormatFloat('0.00',Q7z*100/Qz);
  pz8:=FormatFloat('0.00',Q8z*100/Qz);
  pz9:=FormatFloat('0.00',Q9z*100/Qz);
  pz10:=FormatFloat('0.00',Q10z*100/Qz);
  pz11:=FormatFloat('0.00',Q11z*100/Qz);
  pc:=FormatFloat('0.00',Qc*100/Qz);

BalanceMemo.Lines.Add(space(50)+'热平衡计算表');
BalanceMemo.Lines.Add(space(15)+'收入热量'+space(45)+'支出热量');
BalanceMemo.Lines.Add(space(5)+'符号'+space(2)+'项 目'+space(9)+' kcal/m3'+space(5)+'%'+space(10)+'符号'+space(5)+'项    目'+space(10)+'  kcal/m3'+space(5)+'%');
BalanceMemo.Lines.Add(space(5)+'Q1s'+space(2)+'燃料化学热'+space(7)+FormatFloat('0.00',Q1s)+space(5)+ps1+space(8)+'Q1z'+space(2)+'热风带出热量'+space(12)+FormatFloat('0.00',Q1z)+space(5)+pz1);
BalanceMemo.Lines.Add(space(5)+'Q2s'+space(2)+'燃料物理热'+space(9)+FormatFloat('0.00',Q2s)+space(5)+ps2+space(9)+'Q2z'+space(2)+'烟气带出物理热'+space(11)+FormatFloat('0.00',Q2z)+space(5)+pz2);
BalanceMemo.Lines.Add(space(5)+'Q3s'+space(2)+'助燃空气物理热'+space(5)+FormatFloat('0.00',Q3s)+space(5)+ps3+space(9)+'Q3z'+space(2)+'化学不完全燃烧损失热量'+space(4)+FormatFloat('0.00',Q3z)+space(5)+pz3);
BalanceMemo.Lines.Add(space(5)+'Q4s'+space(2)+'冷风带入的热量'+space(4)+FormatFloat('0.00',Q4s)+space(5)+ps4+space(8)+'Q4z'+space(2)+'煤气机械水吸热量'+space(10)+FormatFloat('0.00',Q4z)+space(5)+pz4);
BalanceMemo.Lines.Add(space(49)+'Q5z'+space(2)+'冷却水吸热量'+space(13)+FormatFloat('0.00',Q5z)+space(5)+pz5);
BalanceMemo.Lines.Add(space(49)+'Q6z'+space(2)+'冷风管道表面散热量'+space(8)+FormatFloat('0.00',Q6z)+space(5)+pz6);
BalanceMemo.Lines.Add(space(49)+'Q7z'+space(2)+'炉体表面散热量'+space(12)+FormatFloat('0.00',Q7z)+space(4)+pz7);
BalanceMemo.Lines.Add(space(49)+'Q8z'+space(2)+'竖管表面散热量'+space(12)+FormatFloat('0.00',Q8z)+space(5)+pz8);
BalanceMemo.Lines.Add(space(49)+'Q9z'+space(2)+'热风管道表面散热量'+space(8)+FormatFloat('0.00',Q9z)+space(5)+pz9);
BalanceMemo.Lines.Add(space(49)+'Q10z'+space(2)+'烟道表面散热量'+space(11)+FormatFloat('0.00',Q10z)+space(5)+pz10);
BalanceMemo.Lines.Add(space(49)+'Q11z'+space(2)+'预热装置表面散热量'+space(7)+FormatFloat('0.00',Q11z)+space(5)+pz11);
BalanceMemo.Lines.Add(space(49)+'ΔQ'+space(4)+'差    值'+space(14)+FormatFloat('0.00',Qc)+space(4)+pc);
BalanceMemo.Lines.Add(space(5)+'∑Q'+space(2)+'合  计'+space(9)+FormatFloat('0.00',Qs)+space(5)+'100.00'+space(7)+'∑Qz'+space(2)+'合    计'+space(15)+FormatFloat('0.00',Qz)+space(5)+'100.00');

BalanceMemo.Lines.Add(space(5)+'空气消耗系数a='+FormatFloat('0.00',a)+space(13)+'煤气用量B='+FormatFloat('0.00',B));
BalanceMemo.Lines.Add(space(5)+'(Vn)不/(Vn)完bw='+FormatFloat('0.00',bw)+space(14)+'理论干空气量Log='+FormatFloat('0.00',Log));
BalanceMemo.Lines.Add(space(5)+'理论湿烟气量V0='+FormatFloat('0.00',V0)+space(13)+'实际湿烟气量Vns='+FormatFloat('0.00',Vns));
BalanceMemo.Lines.Add(space(5)+'低位发热量Qdws='+FormatFloat('0.00',Qdws)+space(9)+'理论湿空气量Los='+FormatFloat('0.00',Los));
BalanceMemo.Lines.Add(space(5)+'ad6='+FormatFloat('0.00',ad6)+space(11)+'q6='+FormatFloat('0.00',q6));
BalanceMemo.Lines.Add(space(5)+'ad71='+FormatFloat('0.00',ad71)+space(10)+'q71='+FormatFloat('0.00',q71));
BalanceMemo.Lines.Add(space(5)+'ad72='+FormatFloat('0.00',ad72)+space(11)+'q72='+FormatFloat('0.00',q72));
BalanceMemo.Lines.Add(space(5)+'ad8='+FormatFloat('0.00',ad8)+space(11)+'q8='+FormatFloat('0.00',q8));
BalanceMemo.Lines.Add(space(5)+'ad9='+FormatFloat('0.00',ad9)+space(12)+'q9='+FormatFloat('0.00',q9));
BalanceMemo.Lines.Add(space(5)+'ad10='+FormatFloat('0.00',ad10)+space(11)+'q10='+FormatFloat('0.00',q10));
BalanceMemo.Lines.Add(space(5)+'ad11='+FormatFloat('0.00',ad11)+space(11)+'q11='+FormatFloat('0.00',q11));

BalanceMemo.Lines.Add(space(5)+'热风炉本体热效率ηt1='+FormatFloat('0.0',HEF1)+'%');
BalanceMemo.Lines.Add(space(5)+'热风炉系统热效率ηt2='+FormatFloat('0.0',HEF2)+'%');

BalanceMemo.Lines.Add(space(5)+'理论燃烧温度ty='+FormatFloat('0.0',ty));

end;

procedure TBalanceForm.BalanceOpenClick(Sender: TObject);
begin
BalanceOpenDialog.Title:='数据文件';
BalanceOpenDialog.Filter:='数据文件(*.hsd)|*.hsd';
BalanceOpenDialog.FileName:='';
if BalanceOpenDialog.Execute then
  with BalanceOpenDialog do
     begin
       FileName:=LeftStr(FileName,Length(FileName)-4);
       ReadSESystemFile(FileName+'.hsd');
       BalanceMemo.Lines.Add('日期:'+DateToStr(Date)+',时间:'+TimeToStr(Time));
       BalanceMemo.Lines.Add('打开文件'+FileName+'.hsd'+'...');

    BalanceForm.BalanceMemo.Lines.Add('煤气成分(%,温度:℃)');
    BalanceForm.BalanceMemo.Lines.Add('干成分');
    BalanceForm.BalanceMemo.Lines.Add('CO2:'+FloatToStr(SESystemElement.co2_coal[1])+','+
                                        'CO:'+FloatToStr(SESystemElement.co_coal[1])+','+
                                        'N2:'+FloatToStr(SESystemElement.n2_coal[1])+','+
                                        'O2:'+FloatToStr(SESystemElement.o2_coal[1])+','+
                                        'H2:'+FloatToStr(SESystemElement.h2_coal[1])+','+
                                        'CH4:'+FloatToStr(SESystemElement.ch4_coal[1])+','+
                                        'CmHn:'+FloatToStr(SESystemElement.cmhn_coal[1])+','+
                                        '煤气温度Tm:'+FloatToStr(SESystemElement.tm_coal));
    BalanceForm.BalanceMemo.Lines.Add('湿成分');
    BalanceForm.BalanceMemo.Lines.Add(  'CO2:'+FloatToStr(SESystemElement.co2_coal[2])+','+
                                        'CO:'+FloatToStr(SESystemElement.co_coal[2])+','+
                                        'N2:'+FloatToStr(SESystemElement.n2_coal[2])+','+
                                        'O2:'+FloatToStr(SESystemElement.o2_coal[2])+','+
                                        'H2:'+FloatToStr(SESystemElement.h2_coal[2])+','+
                                        'CH4:'+FloatToStr(SESystemElement.ch4_coal[2])+ ','+

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -