Химический состав и удельный расход демеркуризационных растворов
Поможем в ✍️ написании учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой

 

Тип раствора   Состав и удельный расход на одну лампу демеркуризационного раствора   Состав и удельный расход на одну лампу демеркуризационного раствора
Раствор №1, Температура Раствора 280°   Перманганат калия Ктп04-0.00025г/л Соляная кислота НС1 -0,000125г/л Техническая вода-0,0375г/л Ионы в перечете на металлическую ртуть:  KMn04-0.5* 10г/л  НС1-0.25* 10г/л  
Раствор №2, Температура Раствора 28° Хлорное железо Fed * 6Н20 - 0.0025г/л Карбонат кальция СаСОз-0,0015г/л Техническая вода -0,0375 г/л   Ионы в пересчете на металлическую ртуть: Fed * 6Н2О - 0.25 * 10г/л,  СаСОз -3.75* 10г/л    

 

Операция установки контейнера на лотке преследует цель стока демеркуризационного раствора.

Операция сбора демеркуризационного раствора производится в приемный бак емкостью 1,6м3.

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

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

Наряду с основными операциями имеются дополнительные.       Отработанный демеркуризационный раствор может быть направлен в бак емкостью 1,6м3 для повторного приготовления демеркуризационного раствора или в системы хозяйственно-фекальной канализации предприятия.

Массу подвергают обработке (отделению металлической арматуры от боя стекла).

Бой стекла ламп направляют для переработки на предприятие по производству ламп или на предприятие стеклянных изделий.

Металлическую арматуру направляют для переплава на машиностроительные и металлургические предприятия.

Общее количество ртути, которое может быть извлечено при демеркуризации люминесцентных ламп определяют по формуле:

М = m * N,

где М - общее количество ртути, которое может быть извлечено из люминесцентных ламп.

m - количество ртути, которое может быть извлечено из одной лампы, г;

Количество ртути в одной люминесцентной лампе - 0,05-0,12г.

После подстановки известных значений получаем :

M = 0.12 * 12 = 1.44 г

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

Заключение

 

В разделе «Безопасность жизнедеятельности» проведен анализ вредных факторов, оказывающих влияние на органы зрения пользователя ПЭВМ.

Сформированы общие требования к помещению и произведен расчет искусственного освещения.

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

 



Приложения

Листинг основного файла-проекта

program deports;

 

uses

Forms,

sysutils,

mainform in 'mainform.pas' {form1},

PasswordsDB in '..\library\PasswordsDB.pas' {Passwords_: TDataModule},

PasswordChange in '..\library\PasswordChange.pas' {PasswordChange_},

Login in '..\library\Login.pas' {Login_},

NEUser in '..\library\NEUser.pas' {NEUser_},

Variables in '..\library\Variables.pas',

utils in '..\library\utils.pas',

keygenDB in '..\library\keygenDB.pas' {keygen_: TDataModule},

JornalDB in '..\library\JornalDB.pas' {Jornal_: TDataModule},

ViewJornal in '..\library\ViewJornal.pas' {ViewJornal_},

BureausDB in '..\library\BureausDB.pas' {Bureaus_: TDataModule},

viewBureaus in '..\library\viewBureaus.pas' {ViewBureaus_},

NewBureau in '..\library\NewBureau.pas' {NewBureau_},

MainBD in '..\library\MainBD.pas' {MainDB: TDataModule},

mailer in '..\library\mailer.pas' {Mailer_},

UsersMonitor in '..\library\UsersMonitor.pas' {UsersMonitor_},

educationDB in '..\library\educationDB.pas' {edu_: TDataModule},

ViewEdu in '..\library\viewedu.pas' {ViewEdu_},

NewEdu in '..\library\Newedu.pas' {Newedu_},

InstitutesDB in '..\library\InstitutesDB.pas' {Institutes_: TDataModule},

ViewInstitutes in '..\library\viewInstitutes.pas' {ViewInstitutes_},

NewInstitute in '..\library\NewInstitute.pas' {NewInstitute_},

DipSpcDB in '..\library\DipSpcDB.pas' {DipSpc_: TDataModule},

ViewDipSpc in '..\library\viewDipSpc.pas' {ViewDipSpc_},

NewDipSpc in '..\library\NewDipSpc.pas' {NewDipSpc_},

qualifDB in '..\library\QualifDB.pas' {qualif_: TDataModule},

Viewqualif in '..\library\viewQualif.pas' {Viewqualif_},

Newqualif in '..\library\NewQualif.pas' {Newqualif_},

WkSpcDB in '..\library\wkSpcDB.pas' {WkSpc_: TDataModule},

ViewWkSpc in '..\library\viewwkSpc.pas' {ViewWkSpc_},

NewWkSpc in '..\library\NewwkSpc.pas' {NewWkSpc_},

ITRSpcDB in '..\library\ITRSpcDB.pas' {ITRSpc_: TDataModule},

ViewITRSpc in '..\library\viewITRSpc.pas' {ViewITRSpc_},

NewITRSpc in '..\library\NewITRSpc.pas' {NewITRSpc_},

AroundsDB in '..\library\AroundsDB.pas' {Arounds_: TDataModule},

ViewArounds in '..\library\viewArounds.pas' {ViewArounds_},

NewAround in '..\library\NewAround.pas' {NewAround_},

NewStreet in '..\library\Newstreet.pas' {NewStreet_},

WarBursDB in '..\library\WarBursDB.pas' {WarBurs_: TDataModule},

ViewWarBurs in '..\library\viewWarBurs.pas' {ViewWarBurs_},

NewWarBur in '..\library\NewWarBur.pas' {NewWarBur_},

WarGrpsDB in '..\library\WarGrpsDB.pas' {WarGrps_: TDataModule},

ViewWarGrps in '..\library\viewWarGrps.pas' {ViewWarGrps_},

NewWarGrp in '..\library\newWarGrp.pas' {NewWarGrp_},

ContsDB in '..\library\ContsDB.pas' {Conts_: TDataModule},

ViewConts in '..\library\viewConts.pas' {ViewConts_},

NewCont in '..\library\NewCont.pas' {NewCont_},

NewWarName in '..\library\NewWarName.pas' {NewWarName_},

NeedDB in '..\library\NeedDB.pas' {Needs_: TDataModule},

ViewQuestions in '..\library\viewQuestions.pas' {ViewQuestions_},

NewQuestion in '..\library\NewQuestion.pas' {NewQuestion_},

Answer in '..\library\Answer.pas' {Answer_},

NationsDB in '..\library\NationsDB.pas' {Nations_: TDataModule},

ViewNations in '..\library\viewNations.pas' {ViewNations_},

NewNation in '..\library\NewNation.pas' {NewNation_},

CountrysDB in '..\library\CountrysDB.pas' {Countrys_: TDataModule},

viewCountrys in '..\library\viewCountrys.pas' {ViewCountrys_},

NewCountry in '..\library\NewCountry.pas' {NewCountry_},

FamalysDB in '..\library\FamalysDB.pas' {Famalys_: TDataModule},

ViewFamalys in '..\library\viewFamalys.pas' {ViewFamalys_},

NewFamaly in '..\library\NewFamaly.pas' {NewFamaly_},

ViewExcesses in '..\library\viewExcesses.pas' {ViewExcesses_},

ExcessesDB in '..\library\ExcessesDB.pas' {Excesses_: TDataModule},

NewExcess in '..\library\NewExcess.pas' {NewExcess_},

MeedsDB in '..\library\MeedsDB.pas' {Meeds_: TDataModule},

ViewMeeds in '..\library\viewMeeds.pas' {ViewMeeds_},

NewMeed in '..\library\NewMeed.pas' {NewMeed_},

emeritusDB in '..\library\emeritusDB.pas' {emeritus_: TDataModule},

viewemeritus in '..\library\viewemeritus.pas' {Viewemeritus_},

Newemeritus in '..\library\Newemeritus.pas' {Newemeritus_},

CardsDB in 'CardsDB.pas' {Cards_: TDataModule},

LoadLed in '..\library\LoadLed.pas' {LoadLed_},

ViewCards in 'viewcards.pas' {ViewCards_},

ViewCard in 'viewcard.pas' {ViewCard_},

NewChild in 'Newchild.pas' {NewChild_},

NewCardsEdu in 'newcardsedu.pas' {NewCardsEdu_},

NewWorkMove in 'Newworkmove.pas' {NewWorkMove_},

NewcommonWork in 'Newcommonwork.pas' {NewcommonWork_},

lockScreen_ in 'lockScreen_.pas' {lockScreen__},

Newleaf in 'Newleaf.pas' {Newleaf_},

NewPunishment in 'Newpunishment.pas' {NewPunishment_},

  DisPunishment in 'Dispunishment.pas' {DisPunishment_},

NewOutCountry in 'NewOutCountry.pas' {NewOutCountry_},

Newplantmeed in 'Newplantmeed.pas' {Newplantmeed_},

Newcardmeed in 'Newcardmeed.pas' {Newcardmeed_},

search in 'search.pas' {Search_},

Newcardemeritus in 'Newcardemeritus.pas' {Newcardemeritus_},

MainTable in 'MainTable.pas' {MainTable_: TQuickRep},

PRNTitle in 'PRNTitle.pas' {PRNTitle_},

cards_Main in 'cards_Main.pas' {cards_main_: TQuickRep},

MainPFTable in 'MainPFTable.pas' {MainPFTable_: TQuickRep},

viewcdpf in 'viewcdpf.pas' {viewcdpf_},

viewcdedu in 'viewcdedu.pas' {viewcdedu_},

Statedu in 'Statedu.pas' {StatEdu_},

MaineduTable in 'MaineduTable.pas' {MaineduTable_: TQuickRep},

Statqual in 'Statqual.pas' {Statqual_},

viewcdqual in 'viewcdqual.pas' {viewcdqual_},

MainqualTable in 'MainqualTable.pas' {MainqualTable_: TQuickRep},

StatAround in 'Stataround.pas' {StatAround_},

Statbur in 'Statbur.pas' {Statbur_},

s13_thpayment in 's13_thpayment.pas' {s13_thpayment_: TQuickRep},

PRNSTG13 in 'PRNSTG13.pas' {PRNSTG13_},

viewWarNames in '..\library\viewWarNames.pas' {ViewWarNames_},

megastat in 'megastat.pas' {megaStat_},

MaininvalTable in 'MaininvalTable.pas' {MaininvalTable_: TQuickRep},

viewcdinval in 'viewcdinval.pas' {viewcdinval_},

viewarchive in 'viewarchive.pas' {viewarchive_},

wait in 'wait.pas' {Wait_},

setingsdb in '..\library\setingsdb.pas' {Setings_: TDataModule},

s14_thpayment in 's14_thpayment.pas' {s14_thpayment_: TQuickRep},

Warreport in 'Warreport.pas' {WarReport_: TQuickRep},

MedTable in 'MedTable.pas' {MedTable_: TQuickRep},

helper in '..\library\helper.pas' {Form2};

 

{$R *.RES}

begin

Application.Initialize;

Application.CreateForm(Tform1, form1);

Application.Run;

end.

 

Листинг созданного VCL-компонента.

 

unit DBSearchEdit;

interface

uses

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, DBTables,

DB,stdctrls;

type

TDBSearchEdit = class(TEdit)

procedure onchange_ (sender : TObject);

procedure onkeypress_ (Sender: TObject; var Key: Char);

private

needsearch_ : boolean;

table1_ : Ttable;

keyFieldName_,textFieldName_ : TField;

indexname_ : string;

onchange2 : tnotifyevent;

srch,ch : integer;

onkeypress2 : TKeyPressEvent;

{ Private declarations }

protected

{ Protected declarations }

public

constructor Loaded;

constructor Create(aOwner: TComponent); override;

destructor destroy;

 

{ Public declarations }

published

property needsearch : boolean read needsearch_ write needsearch_;

property Dataset : Ttable read table1_ write table1_;

property KeyFieldName : TField read keyfieldname_ write keyfieldname_;

property TextFieldName : TField read textfieldname_ write textfieldname_;

property indexname : string read indexname_ write indexname_;

property newonkeypress : TKeyPressEvent read onkeypress2 write onkeypress2;

property newonchange : TNotifyEvent read onchange2 write onchange2;

{ Published declarations }

end;

 

procedure Register;

 

implementation

function compress(s : shortstring):shortstring;

var

s2 : shortstring;

x : integer;

begin

s2 :='';

for x:=1 to length(s) do if s[x]<>' ' then s2:=s2+s[x];

s2:=s2+#0;

s2:=ansistrupper(@s2[1]);

compress:=s2;

end;

 

constructor TDBSearchEdit.Loaded;

begin

inherited loaded;

end;

 

procedure TDBSearchEdit.onchange_(sender : tobject);

var

s1,s : shortstring;

poz : integer;

begin

if srch=0 then exit;

srch:=0;

if ch=1 then exit;

ch:=1;

if assigned(onchange2) then onchange2(sender);

if not TDBSearchEdit(sender).needsearch_ then exit;

try

s1:=table1_.Indexname;

table1_.indexname:=indexname_;

s:=compress(TDBSearchEdit(sender).text);

table1_.findnearest([s]);

if pos(s,table1_.fieldbyname(keyfieldname_.fieldname).asstring)=1 then

begin

    poz:=length(TDBSearchEdit(sender).text);

    TDBSearchEdit(sender).text:=Table1_.fieldbyname(textfieldname_.fieldname).asstring;

    TDBSearchEdit(sender).perform(em_setsel,poz,length(TDBSearchEdit(sender).text));

end

else begin beep; beep; beep; beep; beep; beep; end;

finally

try

    ch:=0;

    table1_.indexname:=s1

except

end;

end;

end;

 

procedure TDBSearchEdit.onkeypress_(Sender: TObject; var Key: Char);

begin

if assigned(onkeypress2) then onkeypress2(sender,key);

if key<>#8 then srch:=1;

end;

 

constructor TDBSearchEdit.Create(aOwner: TComponent);

begin

inherited create(aOwner);

needsearch:=true;

onchange:=onchange_;

onkeypress:=onkeypress_;

end;

 

destructor TDBSearchEdit.destroy;

begin

inherited destroy;

end;

 

procedure Register;

begin

RegisterComponents('Diplom',[TDBSearchEdit]);

end;

 

 

end.

Дата: 2019-05-28, просмотров: 193.