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

📄 balance.pas

📁 《SESyetem节能模拟系统(版本:1.01a Final)》为自由软件,对热风炉进行 热平衡计算、传热模拟、燃烧优化、操作优化等设计。 本软件用Dephi6.0编写
💻 PAS
📖 第 1 页 / 共 3 页
字号:
unit Balance;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Menus, StdCtrls, ComCtrls, TeEngine, Series, ExtCtrls, TeeProcs,
  Chart, AxCtrls,StrUtils;

type
  TBalanceForm = class(TForm)
    BalanceMenu: TMainMenu;
    Balance: TMenuItem;
    BalanceFile: TMenuItem;
    BalanceSave: TMenuItem;
    BalanceClose: TMenuItem;
    G1: TMenuItem;
    I1: TMenuItem;
    O1: TMenuItem;
    Compute: TMenuItem;
    BalanceSaveas: TMenuItem;
    BalanceOpen: TMenuItem;
    BalanceOpenDialog: TOpenDialog;
    BalanceMemo: TMemo;
    BalanceSaveDialog: TSaveDialog;
    Display: TMenuItem;
    InHeatDisplay: TMenuItem;
    OutHeatDisplay: TMenuItem;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure BalanceCloseClick(Sender: TObject);
    procedure G1Click(Sender: TObject);
    procedure I1Click(Sender: TObject);
    procedure O1Click(Sender: TObject);
    procedure ComputeClick(Sender: TObject);
    procedure BalanceOpenClick(Sender: TObject);
    procedure BalanceSaveClick(Sender: TObject);
    procedure BalanceSaveasClick(Sender: TObject);
    procedure InHeatDisplayClick(Sender: TObject);
    procedure OutHeatDisplayClick(Sender: TObject);
    
   
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  BalanceForm: TBalanceForm;

implementation

{$R *.dfm}

uses SESytemMDI, Gas,InHeat, OutHeat,Declare,DisplayBalance;

procedure TBalanceForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
SESystemMDIForm.CommandRichEdit.Lines.Add('命令:关闭CLOSE'+chr(13));
Action:=caFree;
end;

procedure TBalanceForm.BalanceCloseClick(Sender: TObject);
begin
Close;
end;







procedure TBalanceForm.G1Click(Sender: TObject);
begin
SESystemMDIForm.CommandRichEdit.Lines.Add('命令:气体成分GAS'+chr(13));
GasForm:=TGasForm.Create(Self);
GasForm.ShowModal;
end;

procedure TBalanceForm.I1Click(Sender: TObject);
begin
SESystemMDIForm.CommandRichEdit.Lines.Add('命令:热平衡收入热参数INHEAT'+chr(13));
InHeatForm:=TInHeatForm.Create(Self);
InHeatForm.ShowModal;
end;

procedure TBalanceForm.O1Click(Sender: TObject);
begin
SESystemMDIForm.CommandRichEdit.Lines.Add('命令:热平衡支出热参数OUTHEAT'+chr(13));
OutHeatForm:=TOutHeatForm.Create(Self);
OutHeatForm.ShowModal;
end;

procedure TBalanceForm.ComputeClick(Sender: TObject);
var  Qdws,Vm,Tr,Vf,Tf,B,WaterofAir,a,bw,log,V0,Vns,Vy,tm,
     te,Cm,Cme,Los,tk,Ck,Cke,tf1,Cf1,Cfe,
     Qs,Q1s,Q2s,Q3s,Q4s,
     tf2,Cf2,Cfe2,ty2,Cy2,Cye,Qdwsh,gmj,Cq,Gs,T,Vf0,ts2,ts1,
     e,tb6,A6,Af6,ad6,q6,tb71,A71,Af71,ad71,q71,tb72,A72,Af72,ad72,q72,
     tb8,A8,Af8,ad8,q8,tb9,A9,Af9,ad9,q9,tb10,Vfy,A10,Af10,ad10,q10,
     tb11,A11,Af11,ad11,q11,
     Qz,Q1z,Q2z,Q3z,Q4z,Q5z,Q6z,Q71z,Q72z,Q7z,Q8z,Q9z,Q10z,Q11z,
     Qc,Qsr,HEF1,HEF2,
     ty:Real;
     ps1,ps2,ps3,ps4,pz1,pz2,pz3,pz4,pz5,pz6,pz7,pz8,pz9,pz10,pz11,pc:String;
begin
   SESystemMDIForm.CommandRichEdit.Lines.Add('命令:热平衡计算COMPUTE'+chr(13));
   WaterofAir:= DryAirtoHumidityAir(SESystemElement.tm_coal);
   SESystemElement.process_heatcompute[1]:=WaterofAir;
   BalanceForm.BalanceMemo.Lines.Add('干空气中的含水量:'+FloatToStr(WaterofAir));
   a:=int((AirExpendCoefficient(SESystemElement.o2_fume[1],SESystemElement.co_fume[1],
                            0,SESystemElement.ch4_fume[1],SESystemElement.n2_fume[1],
                            SESystemElement.n2_coal[2],SESystemElement.co2_fume[1],
                            SESystemElement.co2_coal[2],SESystemElement.co_coal[2],
                            SESystemElement.ch4_coal[2],2,SESystemElement.cmhn_coal[2],0))*100)/100;
   SESystemElement.process_heatcompute[2]:=a;
   BalanceForm.BalanceMemo.Lines.Add('空气消耗系数:'+FloatToStr(a));
   bw:=int((IncompleteComparecomplete(a,SESystemElement.co_fume[1],0,
                                 SESystemElement.ch4_fume[1],SESystemElement.o2_fume[1]))*100)/100;
   SESystemElement.process_heatcompute[3]:=bw;
   BalanceForm.BalanceMemo.Lines.Add('(Vn)不/(Vn)完:'+FloatToStr(bw));
   Log:=int((TheoryDryAirQ(SESystemElement.h2_coal[2],SESystemElement.co_coal[2],
                        SESystemElement.ch4_coal[2],2,4,SESystemElement.cmhn_coal[2],
                        0,SESystemElement.o2_coal[2]))*100)/100;
   SESystemElement.process_heatcompute[4]:=Log;
   BalanceForm.BalanceMemo.Lines.Add('理论干空气量(m^3/m^3):'+FloatToStr(Log));
   V0:=int((TheoryHumidityFumeQ(SESystemElement.co_coal[2],SESystemElement.ch4_coal[2],
                            2,4,SESystemElement.cmhn_coal[2],SESystemElement.co2_coal[2],
                            SESystemElement.h2_coal[2],0,SESystemElement.n2_coal[2],
                            SESystemElement.h2_coal[2],Log))*100)/100;
   SESystemElement.process_heatcompute[5]:=V0;
   BalanceForm.BalanceMemo.Lines.Add('理论湿烟气量(m^3/m^3):'+FloatToStr(V0));
   Vns:=int((FactHumidityFumeQ(V0,a,WaterofAir,Log))*100)/100;
   SESystemElement.process_heatcompute[6]:=Vns;
   BalanceForm.BalanceMemo.Lines.Add('实际湿烟气量(m^3/m^3):'+FloatToStr(Vns));
   Qdws:=int((QdwEnergy(SESystemElement.co_coal[2],SESystemElement.h2_coal[2],
                   SESystemElement.ch4_coal[2],0,SESystemElement.cmhn_coal[2],0))*100)/100;
   SESystemElement.process_heatcompute[7]:=Qdws;
   BalanceMemo.Lines.Add('低位发热量(kcal/m3):'+FloatToStr(Qdws));
   Vm:=SESystemElement.q1_inheat[1];
   Vf:=SESystemElement.q1_inheat[2]; //燃烧期
   Tr:=SESystemElement.q1_inheat[3];  //热风流量Vf
   Tf:=SESystemElement.q1_inheat[4];
   B:=int((CoalNeedQ(Vm,Tr,Vf,Tf))*100)/100;
   SESystemElement.process_heatcompute[8]:=B;
   BalanceMemo.Lines.Add('煤气用量(m^3/m^3):'+FloatToStr(B));  //单位:m^3煤气/m^3热风
   Vy:=int(( Vns*B*Vf)*100)/100;    //烟气量 单位:m^3烟气
   SESystemElement.process_heatcompute[9]:=Vy;
   BalanceMemo.Lines.Add('烟气量(m^3/m^3):'+FloatToStr(Vy)); 
   SESystemElement.q1_inheat[5]:=int((B*Qdws)*100)/100;    //燃料的化学热
   BalanceMemo.Lines.Add('燃料的化学热低位发热量(kcal/m3):'+FloatToStr(SESystemElement.q1_inheat[5]));

   te:=SESystemElement.q2_inheat[1];
   Cm:=SESystemElement.q2_inheat[2];
   Cme:=SESystemElement.q2_inheat[3];
   tm:=SESystemElement.tm_coal;
   SESystemElement.q2_inheat[4]:=int((FuelPhysicsEnergy(B,Cm,tm,Cme,te))*100)/100; //燃料的物理热量
   BalanceMemo.Lines.Add('燃料的物理热量(kcal/m3):'+FloatToStr(SESystemElement.q2_inheat[4]));

   Los:=int((TheoryHumidityAirQ(Log,WaterofAir))*100)/100;       //理论湿空气量
   SESystemElement.process_heatcompute[10]:=Los;
   BalanceMemo.Lines.Add('理论湿空气量(m3/m3):'+FloatToStr(Los));
   tk:=SESystemElement.q3_inheat[1];
   Ck:=SESystemElement.q3_inheat[2];
   Cke:=SESystemElement.q3_inheat[3];
   SESystemElement.q3_inheat[4]:=int((HelpAirPhysicsEnergy(B,a,Los,Ck,tk,Cke,te))*100)/100; //助燃空气的物理热
   BalanceMemo.Lines.Add('助燃空气的物理热(kcal/m3):'+FloatToStr(SESystemElement.q3_inheat[4]));

   tf1:=SESystemElement.q4_inheat[1];
   Cf1:=SESystemElement.q4_inheat[2];
   Cfe:=SESystemElement.q4_inheat[3];
   SESystemElement.q4_inheat[4]:=int((CoolWindEnergy(Cf1,tf1,Cfe,te))*100)/100; //冷风带入的热量
   BalanceMemo.Lines.Add('冷风带入的热量(kcal/m3):'+FloatToStr(SESystemElement.q4_inheat[4]));
   
   tf2:=SESystemElement.q1_outheat[1];
   Cf2:=SESystemElement.q1_outheat[2];
   Cfe2:=SESystemElement.q1_outheat[3];
   SESystemElement.q1_outheat[4]:=int((HotStoveEnergy(Cf2,tf2,Cfe2,te))*100)/100; //热风炉带出的热量
   BalanceMemo.Lines.Add('热风炉带出的热量(kcal/m3):'+FloatToStr(SESystemElement.q1_outheat[4]));

   ty2:=SESystemElement.q2_outheat[1];
   Cy2:=SESystemElement.q2_outheat[2];
   Cye:=SESystemElement.q2_outheat[3];
   SESystemElement.q2_outheat[4]:=int((FumePhysicsEnergy(B,bw,Vns,Cy2,ty2,Cye,te))*100)/100; //烟气带出的物理热量
   BalanceMemo.Lines.Add('烟气带出的物理热量(kcal/m3):'+FloatToStr(SESystemElement.q2_outheat[4]));

   Qdwsh:=QdwEnergy(SESystemElement.co_fume[2],0,SESystemElement.ch4_fume[2],0,0,0);
   SESystemElement.q3_outheat[1]:=int((ChemistryIncompleteEnergy(B,bw,Vns,Qdwsh))*100)/100;  //化学不完全燃烧热损失的热量
   BalanceMemo.Lines.Add('化学不完全燃烧热损失的热量(kcal/m3):'+FloatToStr(SESystemElement.q3_outheat[1]));

   gmj:=SESystemElement.q4_outheat[1];
   Cq:=SESystemElement.q4_outheat[2];
   SESystemElement.q4_outheat[3]:=int((CoalMachineWaterEnergy(B,gmj,tm,Cq,ty2))*100)/100;   //煤气机械水的吸热量
   BalanceMemo.Lines.Add('煤气机械水的吸热量(kcal/m3):'+FloatToStr(SESystemElement.q4_outheat[3]));

   Gs:=SESystemElement.q5_outheat[1];
   T:=SESystemElement.q5_outheat[2];
   Vf0:=SESystemElement.q5_outheat[3];
   ts2:=SESystemElement.q5_outheat[4];
   ts1:=SESystemElement.q5_outheat[5];
   SESystemElement.q5_outheat[6]:=int((CoolWaterEnergy(Gs,T,Vf0,Tf,ts2,ts1))*100)/100;  //冷却水的吸热量
   BalanceMemo.Lines.Add('冷却水的吸热量(kcal/m3):'+FloatToStr(SESystemElement.q5_outheat[6]));

   tb6:=SESystemElement.q6_outheat[1];
   e:=SESystemElement.q6_outheat[2];
   A6:=SESystemElement.q6_outheat[3];
   Af6:=SESystemElement.q6_outheat[4];
   ad6:=ConvectionEnergy(Af6,tb6,te);
   q6:=RadiateEnergy(e,tb6,te,ad6);
   SESystemElement.q6_outheat[5]:=int((CoolPipeEnergy(T,Vf0,Tf,q6,A6))*100)/100; //冷风管道表面散热量

⌨️ 快捷键说明

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