Кинетика растворения кусковых материалов в кипящем слое

Автор работы: Пользователь скрыл имя, 15 Декабря 2015 в 09:13, курсовая работа

Описание работы

Целью данной курсовой работы является создание математической модели растворения кусковых материалов в кипящем слое. На первом этапе моделирования помимо постановки задачи, необходимо накопление априорных знаний об объекте исследования. Необходимо выделить существенные стороны объекта и описать их.
Во-первых, в данном пункте работы надо разобраться в терминологии.

Файлы: 1 файл

Абрамов Пояснительная записка.docx

— 693.24 Кб (Скачать файл)
      1. Диффузия углерода в пограничный прогревающийся слой

Взаимодействие на поверхности раздела многокомпонентных систем характеризуется чаще всего изменением состава пограничного слоя, при этом общая скорость процесса определяется скоростью выравнивания концентрации в пограничном слое, т.е. скоростью диффузии. Диффузионный пограничный слой, представляет собой слой, прилегающий к каждой фазе системы.

 

На рисунке приведен пример плавления твердого вещества.  Под цифрой 1 - обозначено твердое вещество, под цифрой 2 - пограничный слой, цифрой 3 – представлена жидкость.

 

 В системах, для которых характерно последовательное  протекание химических и физических  процессов, скорость всего процесса  определяется более медленной  стадией. В связи с этим реакция  может находиться в кинетической  или диффузионной области. Если  скорость химической реакции  и диффузии соизмеримы, процесс  является сложной функцией кинетических  и диффузионных явлений и считается  протекающим в переходной области.

 

            Рисунок 2 – Нагрев диффузионного пограничного слоя

Восстановление твердым углеродом называется прямым восстановлением. Оно происходит при температурах выше 950-1000 oC по реакции:

FeO + C = Fe + CO – Q                                        (1)

Следует отметить, что эта реакция отражает лишь конечный результат процесса прямого восстановления, который протекает в две стадии:

FeO + CO = Fe + CO2 + Q                                    (2)

CO2 + C = 2CO – Q                                               (3)

FeO + C = Fe + CO2 - Q                                        (4)

Таким образом, при прямом восстановлении расходуется только углерод кокса, хотя реагентом, взаимодействующим с FeO, является оксид углерода CO. Непосредственное восстановление оксидов железа при контакте с углеродом кокса практически не происходит.

 

      1. Реакция восстановления железа из оксида

При температурах выше 400-500 oC наряду с восстановлением железа происходит и его науглероживание за счет оксида углерода CO по реакции:

3Fe + 2CO = Fe3C + CO2 + Q                                        (5)

Карбид железа Fe3C хорошо растворяется в твердом железе и постепенно образуется сплав железа с углеродом.

Рисунок 3 – Реакция в слое

С увеличением  содержания углерода температура плавления сплава значительно понижается и достигает минимального значения 1147 oC при содержании углерода 4,3%.

 

      1. Смыв прореагировавшего расплавленного слоя с выделением газообразных продуктов реакции.

В определенный момент, когда температура плавления науглероженного железа становится равной температуре в печи, железо плавится (примерно при содержании углерода 2,5% и температуре около 1200 oC).

Рисунок 4 – Смыв слоя

 

      1. Математическое описание структурных блоков.

 

 

    1.  
      2.3  Вычислительный алгоритм

 

В данном примере мы рассмотрели процесс «плавление – восстановление», т.е. восстановлению оксидов железа предшествует плавление материалов, а железо восстанавливается из расплава. Таким образом, процесс плавления куска руды зависит от количества подаваемой энергии на его поверхность.

Количество энергии, необходимое на получение 1 т железа, 4052 кДж или 1,1253 кВт*ч., при этом на получение 1 т железа уходит 1,59 т руды с высоким содержанием железа, т.е. на расплавление 1 т руды требуется:

1,1253/1,59= 0,7077 кВт*ч.                                    (1)

Скорость расплавления руды прямо – пропорциональна потоку тепла, который находим по формуле:

qt=A *(Tокр. ср. -Tсл),                                             (2)

где: Т — температура расплава;

   А — коэффициент теплопередачи.

Тсл=1540-86*С,                                                     (3)

Тсл — температура плавления слоя, которая зависит от степени науглероживания слоя - С.

Диапазон концентрации С: 1-4 %;

Диапазон температуры окружающей среды: 1600-2000 ºС;

Коэффициент теплопередачи находится по формуле исходя из формул потока тепла:

qt=A *( Tокр. ср. - Tсл)  Rк                                      (4)

A=2λ/Rк                                                                 (5)

где λ–коэффициент теплопроводности куска руды – 0,38379 Вт/(м*К)[4];     Rк – радиус куска руды.

qt=2λ/Rк *( Tокр. ср. - Tсл)                                     (6)

Скорость расплавления куска руды υ с единицы поверхности рассчитываем по формуле:

υ = qt /0,7077,                                                                            (7)

υ = ((2*0,38379/Rз) *(T-Tсл)/ 0,7077)/3600 кг/(м2*с)       (8)

Скорость расплавления руды m высчитываем по формуле:

m = υ *S= υ *4πRк2    (кг/с)                                                     (9)

Данная формула является не точной, поскольку не учитываются трещины и форма шероховатости поверхности.

Определяя скорость расплавления руды следует учитывать изменение объема ΔV:      

ΔV = m/p,                                                                                   (10)

где р – плотность гематита – 5,24 г/см2.

При проектировании плавления куска руды  в среде Delphi можно вычислять радиус куска через каждую секунду по формуле:

Rк = ((V- ΔV)*3/4π)-3  (м).                                                      (11)

Таким образом, на процесс плавления руды могут влиять температура расплава, и концентрация углерода в расплаве. Скорость расплавления падает пропорционально уменьшению радиуса куска руды.

 

    1. Реализация программы на ЭВМ.

Реализация вычислительного алгоритма и построение графиков-зависимостей по результатам вычислений произведена в среде Borland Delphi на языке Pascal.

Рисунок 5 – Основное окно приложения перед началом работы

На панели справа пользователь задает начальные параметры эксперимента: концентрацию углерода, температуру среды, радиус куска руды. Нажатием кнопки «Считать» пользователь запускает моделируемый процесс и расчеты по эксперименту.

 

Условия реализации:

 

  • Такие параметры, как температура среды, концентрация углерода и начальный радиус куска задаёт пользователь.
  • Для того, чтобы найти скорость плавления руды, представим, что за 1 сек. тает слой n-ой площадью.
  • Для вычисления скорости необходимо найти количество слоёв.
  • Для нахождения количества слоёв, необходимо найти объем каждого смываемого слоя, при этом каждый раз необходимо пересчитывать радиус куска.
  • Для нахождения площади смываемого слоя нам необходимо найти поток тепла (он прямо - пропорционален скорости).
  • Поток тепла зависит от температуры слоя, температуры среды и коэффициента теплопередачи. Температуру среды задаёт пользователь, температура слоя зависит от науглероживания стали, коэффициент теплопередачи находим из начального радиуса.

В данных расчётах не учитывается шероховатость и пористость куска.

Для удобства расчета принимаем, что кусок руды имеет форму шара.

Рисунок 6 – Работа приложения, моделирование процесса

После введения данных пользователем, программа рассчитывает необходимые параметры, эмитирует процесс растворения металла на области рисования, рассчитывает время процесса, а также строит графики зависимостей и отображает их в диалоговом окне, вызываемом нажатием кнопки «Графики». А также пользователь может ознакомиться с краткой теорией по моделируемому процессу нажатием кнопки «Теория».

Построив графики и рассмотрев их, можно сделать вывод, что при расплавлении куска с уменьшением радиуса скорость плавления руды на квадратный метр увеличивается, а скорость плавления куска уменьшается. 
Скорость плавления куска прямо - пропорциональна температуре среды и концентрации углерода, но углерод влияет на скорость плавления незначительно. Он необходим в большей степени для качественных показателей.


Рисунок 7 – Диалоговое окно «Графики»

Рисунок 8 – Диалоговое окно «Теоретический материал» 
Ниже приведен код основной формы приложения:

unit Unit1;

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, StdCtrls, ComCtrls, ExtCtrls, XPMan, Unit2;

 

type

  TForm1 = class(TForm)

    GroupBox1: TGroupBox;

    TrackBar1: TTrackBar;

    TrackBar3: TTrackBar;

    Label1: TLabel;

    Label3: TLabel;

    Label4: TLabel;

    Label6: TLabel;

    Timer1: TTimer;

    TrackBar4: TTrackBar;

    Label7: TLabel;

    Label2: TLabel;

    Button1: TButton;

    Button2: TButton;

    Image1: TImage;

    Label5: TLabel;

    Timer2: TTimer;

    Button3: TButton;

    procedure TrackBar1Change(Sender: TObject);

    procedure TrackBar3Change(Sender: TObject);

    procedure FormCreate(Sender: TObject);

    procedure TrackBar4Change(Sender: TObject);

    procedure Button1Click(Sender: TObject);

    procedure Button2Click(Sender: TObject);

    procedure FormDestroy(Sender: TObject);

    procedure Timer1Timer(Sender: TObject);

    procedure Image1MouseMove(Sender: TObject; Shift: TShiftState; X,

      Y: Integer);

    procedure Timer2Timer(Sender: TObject);

    procedure Button3Click(Sender: TObject);

  private

    { Private declarations }

    procedure XY;

  public

    pl: TSh;{ Public declarations }

    times,it:integer;

  NewX,NewY:Integer; //Новые координаты

  end;

 

var

  Form1: TForm1;

 

implementation

 

uses Unit3, Unit4;

 

{$R *.dfm}

 

procedure TForm1.TrackBar1Change(Sender: TObject);

begin

  Label4.Caption:=IntToStr(TrackBar1.Position)+' %'; //Вывод концентрации углерода

  Button2.Enabled:=False;

end;

 

procedure TForm1.TrackBar3Change(Sender: TObject);

begin

  Label6.Caption:=IntToStr(TrackBar3.Position)+ ' *C'; //Вывод концентрации углерода

  Button2.Enabled:=False;

end;

 

procedure TForm1.FormCreate(Sender: TObject);

begin

  XY;

  pl:=TSh.Create(Image1.ClientWidth div 2,Image1.ClientHeight div 2,0,0,Image1.Canvas);

end;

 

procedure TForm1.TrackBar4Change(Sender: TObject);

begin

  Label7.Caption:=FloatToStr(TrackBar4.Position / 1000)+' м'; //Вывод на экран радиуса

  Button2.Enabled:=False;

end;

 

procedure TForm1.Button1Click(Sender: TObject);

begin

  Image1.Canvas.Pen.Color:=clWhite;

      Image1.Canvas.Brush.Color:=clWhite;

      Image1.Canvas.Rectangle(0,0,Image1.ClientWidth,Image1.ClientHeight);

  times:=calculation(TrackBar3.Position,TrackBar1.Position/100,TrackBar4.Position/1000);

  it:=0;

  Label5.Caption:='Время: '+IntToStr(times+1)+' сек.';

  pl.R:=(Trunc(TrackBar4.Position / 1000*10000 )*2) div 2;

  pl.RR:= Trunc(pl.R / times);

  Button2.Enabled:=True;

  Timer1.Enabled:=True;

end;

 

procedure TForm1.Button2Click(Sender: TObject);

var

  i:Integer;

begin

  with Form3 do

  begin

    Chart1.Series[0].Clear;

    Chart2.Series[0].Clear;

    Chart3.Series[0].Clear;

    for i:=0 to high(Vrr) do

      Chart1.Series[0].AddXY(i+1,Vrr[i],'',clblue);

    for i:=0 to high(Vrk) do

      Chart2.Series[0].AddXY(i+1,Vrk[i],'',clRed);

    for i:=0 to high(Rs) do

      Chart3.Series[0].AddXY(i+1,Rs[i],'',clGreen);

    Show;

  end;

end;

 

procedure TForm1.FormDestroy(Sender: TObject);

begin

  if pl <> nil then

    pl.Destroy;

end;

 

procedure TForm1.Timer1Timer(Sender: TObject);

begin

  if pl <> nil then

  begin

    pl.Hide;

    pl.Speed;

    if pl.it = 0 then

    begin

      Timer1.Enabled:=False;

      Timer2.Enabled:=True;

    end;

    pl.Show;

    inc(it);

    if (it = times) or (pl.R = 0) then

    begin

      it:=0;

      Timer2.Enabled:=False;

      ShowMessage('Процес успешно завершен');

      Button1.Click;

    end;

  end;

end;

 

procedure TForm1.XY;

var

  i,j,n:Integer;

begin

  with Image1 do

  begin

    Canvas.Pen.Color:=clBlack;

  Canvas.MoveTo(ClientWidth div 2,0);

    Canvas.LineTo(ClientWidth div 2,ClientHeight);

    Canvas.MoveTo(0,ClientHeight div 2);

    Canvas.LineTo(ClientWidth,ClientHeight div 2);

    Canvas.TextOut(ClientWidth div 2,0,'Y');

    Canvas.TextOut(ClientWidth-Canvas.TextWidth('X'),ClientHeight div 2,'X');

    j:=20;

    for i:=0 to ClientWidth do

      if i = j then

      begin

        Canvas.TextOut(i-Canvas.TextWidth(IntToStr(i- ClientWidth div 2))div 2,ClientHeight div 2+10,IntToStr(i- ClientWidth div 2));

        j:=j+Canvas.TextWidth(IntToStr(i- ClientWidth div 2))+5;

      end;

    n:=20;

    for i:=0 to ClientHeight do

      if i = n then

      begin

        Canvas.TextOut(ClientWidth div 2+10,i-Canvas.TextWidth(IntToStr(i- ClientHeight div 2))div 2,IntToStr(ClientHeight div 2-i ));

        n:=n+Canvas.TextWidth(IntToStr(i- ClientHeight div 2))+5;

      end;

  end;

end;

 

procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,

  Y: Integer);

 

begin

  with Image1 do

  begin

    NewX:=X - ClientWidth div 2;

    NewY:=ClientHeight div 2 - Y;

    Caption:= 'X = '+IntToStr(NewX)+', Y = '+IntToStr(NewY);

  end;

end;

 

procedure TForm1.Timer2Timer(Sender: TObject);

begin

  pl.Hide;

  pl.Speed;

  if pl.it = 1 then

  begin

    Timer1.Enabled:=True;

    Timer2.Enabled:=False;

  end;

  pl.Show;

end;

 

procedure TForm1.Button3Click(Sender: TObject);

begin

  with Form4 do

  begin

    Caption := 'Теоретический материал';

    ShowModal;

  end;

end;

 

end.

 

3  Исследование модели

Для исследования модели мной были проведены три эксперимента. При этом во входных параметрах мною были взяты отличные друг от друга начальные радиусы частиц, температура и концентрация углерода в расплаве.

В ходе исследования составленной модели мной были получены результаты многих расчетов кинетики растворения твердых частиц в ходе гетерогенной реакции куска руды в кипящем слое и были установлены следующие зависимости от их входных параметров:

Информация о работе Кинетика растворения кусковых материалов в кипящем слое