РефератыХимияСиСинтез химико- технологической системы

Синтез химико- технологической системы

Санкт-Петербургский государственный технологический институт (Технический университет)


Физико-математическое отделение Факультет_______6
________


Кафедра математического моделирования Курс_________4
__________


и оптимизации химико-технологических


процессов Группа_______665
________


Учебная дисциплина СИСТЕМНЫЙ АНАЛИЗ ХИМИЧЕСКИХ ТЕХНОЛОГИЙ


КУРСОВОЙ ПРОЕКТ


Тема СИНТЕЗ ХИМИКО-ТЕХНОЛОГИЧЕСКОЙ СИСТЕМЫ


Студентка Дворникова Анастасия


Руководитель Гайков А.В.


Оценка за курсовой проект___________ _____________________


(подпись руководителя)


Дата защиты проекта______________


Санкт-Петербург, 2009 год Техническое задание


Тема: синтез химико-технологической системы.


Номер варианта: 4.


Цель: синтезировать ХТС, работающую по нижеописанной технологии.


Исходные данные:


m=4 n =1 Все реакторы идеального вытеснения


t0
=50 0
С, t1
=4150
С, t2
=4850
С, t3
=4100
С, t4
=4250
С, t5
=4050
С


ta
1
=1800
С, ta
2
= 1950
С


Расход смеси на входе в систему: 132000 м3
/час


Концентрация компонентов:


А=0,085 об.доли


В=0,08 об.доли


С=0,0001 об.доли


Объемы реакторов, м3


V1
=79, V2
=65, V3
=40, V4
=55, V5
=35


Объемы абсорберов, м3


v1
=25, v2
=28


Плотность орошения в 1ом абсорбере: 18 м3
/м2


Плотность орошения в 2ом абсорбере: 19 м3
/м2


Для получения значений k0
и Е в уравнении Аррениуса использовать данные Приложение 1 и метод наименьших квадратов.


Для нахождения значений Kp(t) использовать данные Приложение 2 и метод наименьших квадратов.


Для получения статистической модели абсорбера использовать данные Приложения 3 и метод Брандона.


ОГЛАВЛЕНИЕ


Введение. 5


1. Теоретическая часть. 6


1.1 Описание объекта исследования. 6


1.2 Постановка задачи оптимизации. 6


1.3 Описание метода наименьших квадратов. 7


1.4 Описание метода Брандона. 9


1.5 Реактор идеального вытеснения. 12


1.6 Синтез оптимальных систем теплообмена. 13


2. Расчетная часть. 17


2.1 Расчет k0
и E в уравнении Аррениуса с использованием метода наименьших квадратов. 17


2.2 Расчет зависимости kр
(t) с использованием метода наименьших квадратов 20


2.3 Расчет статистической модели абсорбера с использованием метода Брандона 23


2.4 Расчет реакторов идеального вытеснения. 33


2.5 Расчет абсорберов. 35


2.6 Синтез оптимальных систем теплообмена. 36


2.7 Расчет нагревателя. 41


3. Выводы.. 43


Список литературы.. 44


Приложение 1. 45


Приложение 2. 45


Приложение 3. 46


Введение


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


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


Основным методом исследования ХТС­ не случайно считается математическое моделирование, так как этот метод позволяет открыть новые возможности при разработке математических химико-технологических процессов, в том числе по их применению их для расчета и оптимизации ХТС.


Методы анализа, синтеза и оптимизации ХТС, реализованные в виде алгоритмов и программ, применяются в системах автоматизированного проектирования химических производств (САПР). Эти системы существенно повышают производительность труда проектировщиков и позволяют значительно улучшить качество проектов. Благодаря САПР ускоряется внедрение в производство технологических разработок.


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


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


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


Существуют различные методы синтеза оптимальных ТС. Основные ­– комбинаторные и эвристические. Комбинаторные методы (например, метод ветвей и границ) позволяют получить точное решение. С помощью эвристических методов находят близкие к оптимальным структуры ТС, при этом из рассмотрения исключается большая часть альтернативных вариантов.


1. Теоретическая часть


1.1 Описание объекта исследования


Химико-технологическая система (Х'ГС) представляет собой совокупность взаимосвязанных технологическими потоками и действующих как одно целое аппаратов в которых осуществляется определённая последовательность технологических операций -' подготовка сырья к химическим превращениям, химические превращения. выделение и очистка целевых продуктов.


Каждая технологическая операция протекает в отдельных аппаратах, которые являются элементами ХТС. Для исследования ХТС характерно. что при этом не изучаются внутренние свойства и структура элементов, а анализируются только такие свойства элементов. которые определяют его взаимосвязь с другими элементами Х'ГС и влияют на свойства системы в целом.


Состояние системы зависит от конструкционных параметров ХТС и технологического режима.


Конструкционные параметры ХТС - геометрические характеристики элементов системы – объём, диаметр, высота и т. д. Параметры технологического режима ХТС - совокупность параметров внутри элемента, влияющих на скорость технологического процесса, выход и качество продукции. К ним относится концентрации реагентов, температура, давление, активность катализатора, гидродинамика потока. От параметров ХТС зависит качество функционирования ХТС, которое определяют по показателям эффективности - количеству реализованной продукции, качеству продукции, эксплуатационным и капитальным затратам.


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


1.2 Постановка задачи оптимизации


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


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


Критерий оптимальности обычно является скалярной функцией нескольких переменных. Задача оптимизации сводится к поиску экстремума этой функции, то есть


f (e, a, u, z, t, r, α, d) → Extremum


где e ­– вектор входных переменных; a – вектор выходных переменных; u – вектор управляющих переменных; z – вектор возмущений; t – время; r – вектор режимных параметров; α – вектор структурных параметров; d – вектор конструктивных параметров.


Входными и выходными параметрами являются обычно состав, расход и температуры отдельных потоков. Управляющими воздействиями могут быть расход сырья на входе в химический реактор или расход пара в теплообменнике. Примеры возмущений – изменения температуры окружающей среды и состава исходного сырья за счет примесей, а также изменение активности катализатора за счет его закоксовывания. Под режимными параметрами понимаются температуры и давления в аппаратах, скорости вращения рабочих органов машин.


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


ХТС как объект оптимизации описывается математической моделью в виде системы уравнений:


= 0; j = 1, . . . , p.


Эту систему уравнений можно рассматривать кА первый вид ограничений на независимые переменные при поиске экстремума. Второй вид ограничений представляет собой система неравенств:


≥ 0; i = 1, . . . , m.


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


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


1.3 Описание метода наименьших квадратов


Пусть имеется некоторая выборка экспериментальных данных объемом m опытов, содержащая независимые переменные x1, x2,..., xk и зависимую переменную (отклик) y. В общем случае зависимых переменных может быть несколько, и их выбор часто зависит от целей исследования.


Наиболее общий тип линейной модели записывается в виде


y=b0+b1z1+b2z2+...+bkzk),


где каждая из переменных zj называемая в дальнейшем фактором, представляет собой функциональную зависимость произвольного вида от независимых переменных


zj=zj(x1, x2, ..., xn).


Параметр k определяет количество факторов в эмпирическом уравнении.


Задача определения коэффициентов уравнения регрессии по МНК сводится практически к определению минимума функции многих переменных: требуется выбрать b0, b1,..., bk так, чтобы сумма квадратов отклонений, рассчитанных по уравнению, и экспериментальных значений функции отклика была минимальной



(4)


Если функция дифференцируема, то необходимым условием минимума Ф b0, b1,..., bk является выполнение равенств:



(5)


При линейном характере зависимости



система уравнений принимает вид







Раскрывая скобки и перенося направо слагаемые, не содержащие неизвестных коэффициентов bJ, j=0,…,k, получим систему линейных алгебраических уравнений









Таким образом, задача оценки неизвестных коэффициентов уравнения линейной регрессии сводится к решению системы линейных алгебраических уравнений относительно коэффициентов bi,,i=0,1,...,k что легко выполнить, например, численными методами на ЭВМ.


1.4 Описание метода Брандона


Статистические модели создают на основании имеющихся экспериментальных данных, снятых на действующем объекте. Задачу формулируют следующим образом: по данной выборке объемом n (т.е. по заданному числу опытов) построить модель и оценить адекватность ее реальному объекту.


В общем случае современный технологический процесс представляется в виде многомерного объекта. На объект действуют вектор входных параметров Х, составляющие которого {х1
,х2
,…,хl
}, и вектор управления Z, составляющие которого {z1,
z2,
…zk
}. Выходные параметры {y1
,y2
,…,yp
} составляют вектор выходных параметров Y. Общий вид статистической модели многомерного технологического объекта можно записать в виде системы алгебраических уравнений или в векторной форме:


y1 =
F1
{x1
,x2
,…xm
}


y2 =
F2
{x1
,x2
,…xm
}


……………………


yp =
Fp
{x1
,x2
,…xm
}


Y=F(X), где X,Y – векторы входных и выходных параметров объекта.


В данной курсовой работе для построения модели многомерного технологического объекта используется метод Брандона.


Сущность метода заключается в следующем. Предполагается, что функция F1
{x1,
x2
,…,xm
} в предыдущей системе является произведением функций от входных параметров, то есть


ŷ = yf1
(x1
)f2
(x2
)…fm
(xm
)


или в более удобной форме:


ŷ = yПfk
(xk
)


где ŷ – расчетное значение i-го выходного параметра; y = Σ(y0i
/n) – средняя величина экспериментальных значений i-го выходного параметра; n – количество опытов в исходной выборке.


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


Оценить степень влияния к-го фактора на выходной параметр можно по величине частного коэффициента множественной корреляции:



где rxy/x1
,x2
,…,xm
- величина частного коэффициента корреляции, учитывающая влияние К-го фактора на выходной параметр у при условии, что влияние всех прочих факторов исключено; D – определитель матрицы, построенной из парных коэффициентов корреляции.


Матрица имеет вид:


, k=1,2,3.


Dm
+1,
m
+1
– определитель матрицы с вычеркнутыми m+1-ой строкой и m+1-м столбцом;


Dm
+1,
k
– определитель матрицы с вычеркнутыми m+1-ой строкой и k-м столбцом;


Dk
,
k
– определитель матрицы с вычеркнутыми k-ой строкой и k-м столбцом;


rxy
– парные коэффициенты корреляции определяемые по формуле:



Коэффициенты корреляции по абсолютной величине не превышает единицы. (-1 ≤ rxy
≤ 1).


Чем ближе абсолютное значение коэффициента | rxy
| к единице, тем сильнее линейная связь между величинами. Следует отметить, что коэффициент корреляции одинаково отмечает долю случайности и криволинейность связи между х и у. Зависимость х и у может быть близкой к функциональной, но существенно не линейной; коэффициент корреляции при этом будет значительно меньше единицы.


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


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


Прежде чем определять вид первой зависимости, следует представить исходные экспериментальные значения выходного параметра в каждом опыте yэj
в безразмерной форме yэ0j



где у – средняя величина выходного параметра.


Таким образом, исходными данными для поиска первой зависимости будут нормированные значения вектора выходных параметров ỹ0
и опытные значения первого влияющего фактора. Выбрав зависимость ỹ = f1
(x1
) с помощью метода наименьших квадратов, определяют остаточный показатель Yэ для каждого наблюдения.


Предполагая, что уэ1
не зависит от х1
, а зависит от х2,
…,
хm
, выбирают зависимость от второго фактора. Получив расчетную зависимость находят остаточный показатель уэ2
для каждого наблюдения:



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


Для оценки точности аппроксимации найденной функции вычисляют корреляционное отношение:



и среднюю относительную ошибку:



Совокупность зависимостей по каждому выходному параметру представляет собой статистическую модель, многомерно технологического объекта.


1.5 Реактор идеального вытеснения


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


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



,


где τ’
– время пребывания в реакторе любого элементарного объема; τ – среднее время пребывания; Vc
– расход смеси; υ – объем реактора.


Математическая модель – это система уравнений, которая устанавливает связь входных и выходных параметров реактора.


aA + bB → cC


v=K*CA
a
*CB
b



В нашем случае скорость реакции в реакторе описывается уравнением:



Для определения скорости реакции по каждому веществу для многоступенчатых химических реакций составляется стехиометрическая матрица размером m на n, где m – число стадий, n – число компонентов.


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











А


B


C


I


-2


-1


2



Скорость по i-му компоненту будет представлять собой сумму компонентов i – го столбца.


vA
= -2wI


vB
= -wI


vC
= 2wI


vD
= wII


Математическое описание:



К этой системе необходимо добавить уравнение теплового баланса:


,


где λ1
=q/Cp
– коэффициенты адиабатического разогрева.


Модель вытеснения можно применять для технических реагентов при проектировании жидкофазных трубчатых реакторов с большим отношением, длины трубы к его диаметру. Такие реакторы широко применяются в производствах органических веществ. К режиму вытеснения относят по газовой фазе полочные контактные аппараты с фильтрующими слоями катализатора, шахтные печи и конверторы.


Значительная часть применяемых в промышленности насадочных башен для взаимодействия газов с жидкостями работает при небольших скоростях газового потока и малых плотностях орошения.


1.6 Синтез оптимальных систем теплообмена


В наиболее традиционной постановке задача синтеза тепловых систем (ТС) формулируется следующим образом: имеются m горячих и n холодных технологических потоков, которые называют основными технологическими потоками. Для каждого из этих потоков заданы начальные температуры и , конечные температуры , и значения водяных эквивалентов (произведение расхода на удельную теплоемкость) ,. Здесь . Индексы "г" и "х" относят соответствующую величину к горячему и холодному потокам.


Необходимо определить структуру технологических связей между теплообменными аппаратами заданного типа, а также же площади поверхностей теплообмена каждого аппарата, которые обеспечивали бы заданные начальные и конечные температуры основных технологических потоков при минимально возможном значении приведенных технологических затрат 3пр, связанных с эксплуатацией синтезируемой ТС.


Для решения задачи синтезируемую ТС разделяют на две подсистемы: внутреннюю (рекуперативную), где в теплообмене участвуют только основные технологические потоки; и внешнюю, где при теплообмене используется вспомогательные теплоносители (вспомогательные технологические потоки) и вспомогательные теплообменники, осуществляющие теплообмен между основными и вспомогательными технологическими потоками.


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


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



- затраты на рекуперативные теплообменники, руб;


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


- затраты на вспомогательные теплоносители, руб;


- нормативный коэффициент эффективности (= 0,12).


Если во внутренней подсистеме используются К1 теплообменных аппаратов, а во внешней – , то:



При расчете стоимости i - го теплообменника любой подсистемы в данной работе используется зависимость



где F - площадь поверхности теплообмена соответствующего i- го теплообменника, м2


а - стоимостной коэффициент, зависящий от типа теплообменника. Затраты на вспомогательные теплоносители определяются по формуле:



Где - продолжительность годовой эксплуатации системы ч/год;


- стоимость i - го вспомогательного теплоносителя,


- расход p- го вспомогательного теплоносителя в 1- м вспомогательном теплообменнике, кг/ч.


При синтезе ТС используются формулы:



где Q - тепловая нагрузка теплообменника; k- соответствующий коэффициент теплопередачи.


Средняя разность температур для теплообменника:



где и - разности температур на концах теплообменника.


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


Если ()<0, то теплообмен невозможен.







;


Задача синтеза решается путем формирования множества возможных комбинаций исходных горячих и холодных потоков для проведения физически реализуемых операций теплообмена в теплообменном аппарате. для этой цели строят таблицу пар взаимодействующих потоков исходя из условия Qmax. Из таблицы пар выбирается пара потоков, вступающих во взаимный теплообмен. Если в результате теплообмена данные потоки достигли заданных конечных температур, то они исключаются из рассмотрения. Иначе, начальным температурам этих потоков присваиваются значения конечных температур результирующих потоков, после чего таблица пар перестраивается, и выбирается новая пара потоков. Данная операция производится до тех пор, пока не останется потоков, способных вступать во взаимный теплообмен, или все потоки достигнут требуемых конечных температур. При необходимости для достижения заданных конечных температур в теплообменных системах используются вспомогательные тепло - и хладагенты. Таким образом, задача синтеза является многоэтапной задачей, в которой на каждом этапе осуществляется выбор пары потоков, вступающих во взаимный теплообмен.


2. Расчетная часть


2.1 Расчет
k0
и E в уравнении Аррениуса с использованием метода наименьших квадратов


Расчет проводился на основе данных из Приложения 1 в программе, написанной в Visual Basic.


Код

программы

:


Option Explicit


Dim z As Integer


Dim i As Integer


Dim s1 As Single


Dim s2 As Single


Dim s3 As Single


Dim s4 As Single


Dim a As Single


Dim b As Single


Dim k0 As Single


Dim e As Single


Dim t() As Single


Dim k() As Single


Dim kr() As Single


Dim eps() As Single


Dim x() As Single


Dim y() As Single


Private Sub Command1_Click()


z = InputBox("Введите количество опытов", "Ввод экспериментальных данных")


MSFlexGrid1.Rows = z + 1


ReDim t(z) As Single


ReDim k(z) As Single


ReDim kr(z) As Single


ReDim eps(z) As Single


For i = 1 To z


MSFlexGrid1.Row = i


MSFlexGrid1.Col = 1


t(i) = Val(InputBox("Введите параметр T 'C", "Ввод экспериментальных данных"))


MSFlexGrid1.Text = CStr(t(i))


MSFlexGrid1.Col = 2


k(i) = Val(InputBox("Введите параметр K", "Ввод экспериментальных данных"))


MSFlexGrid1.Text = CStr(k(i))


Next i


Command2.Enabled = True


Command2.Visible = True


End Sub


Private Sub Command2_Click()


ReDim x(z) As Single


ReDim y(z) As Single


For i = 1 To z


x(i) = 1 / (t(i) + 273)


y(i) = Log(k(i))


Next i


s1 = 0


s2 = 0


s3 = 0


s4 = 0


For i = 1 To z


s1 = s1 + x(i)


s2 = s2 + x(i) * x(i)


s3 = s3 + x(i) * y(i)


s4 = s4 + y(i)


Next i


a = (z * s3 - s1 * s4) / (z * s2 - s1 * s1)


b = (s2 * s4 - s1 * s3) / (z * s2 - s1 * s1)


e = -8.315 * a


Text1.Text = CStr(e)


k0 = Exp(b)


Text2.Text = CStr(k0)


For i = 1 To z


kr(i) = k0 * Exp(-e / (8.315 * (t(i) + 273)))


eps(i) = Abs(k(i) - kr(i)) / Abs(k(i))


MSFlexGrid1.Row = i


MSFlexGrid1.Col = 3


MSFlexGrid1.Text = CStr(kr(i))


MSFlexGrid1.Col = 4


MSFlexGrid1.Text = CStr(eps(i))


Next i


End Sub


Private Sub Command4_Click()


End


End Sub


Private Sub Form_Load()


MSFlexGrid1.Col = 0


MSFlexGrid1.Row = 0


MSFlexGrid1.Text = "№ п.п."


For i = 1 To 13


MSFlexGrid1.Row = i


MSFlexGrid1.Text = CStr(i)


Next i


MSFlexGrid1.Row = 0


MSFlexGrid1.Col = 1


MSFlexGrid1.Text = "t 'C"


MSFlexGrid1.Col = 2


MSFlexGrid1.Text = "Kr, 1/c"


MSFlexGrid1.Col = 3


MSFlexGrid1.Text = "Krr, 1/c"


MSFlexGrid1.Col = 4


MSFlexGrid1.Text = "eps, %"


End Sub



Результат расчета:



Итак, получили: E=60457.93 и k0
=18525.68.


2.2 Расчет зависимости

(t) с использованием метода наименьших квадратов


Расчет проводился на основе данных из Приложения 2 в программе, написанной в Visual Basic.


Код

программы

:


Option Explicit


Dim z As Integer


Dim i As Integer


Dim s1 As Single


Dim s2 As Single


Dim s3 As Single


Dim s4 As Single


Dim a As Single


Dim b As Single


Dim k0 As Single


Dim e As Single


Dim t() As Single


Dim k() As Single


Dim kr() As Single


Dim eps() As Single


Dim x() As Single


Dim y() As Single


Private Sub Command1_Click()


z = InputBox("Введите количество опытов", "Ввод экспериментальных данных")


MSFlexGrid1.Rows = z + 1


ReDim t(z) As Single


ReDim k(z) As Single


ReDim kr(z) As Single


ReDim eps(z) As Single


For i = 1 To z


MSFlexGrid1.Row = i


MSFlexGrid1.Col = 1


t(i) = Val(InputBox("Введите параметр T 'C", "Ввод экспериментальных данных"))


MSFlexGrid1.Text = CStr(t(i))


MSFlexGrid1.Col = 2


k(i) = Val(InputBox("Введите параметр K", "Ввод экспериментальных данных"))


MSFlexGrid1.Text = CStr(k(i))


Next i


Command2.Enabled = True


Command2.Visible = True


End Sub


Private Sub Command2_Click()


ReDim x(z) As Single


ReDim y(z) As Single


For i = 1 To z


x(i) = 1 / (t(i) + 273)


y(i) = Log(k(i)) / 2.3025


Next i


s1 = 0


s2 = 0


s3 = 0


s4 = 0


For i = 1 To z


s1 = s1 + x(i)


s2 = s2 + x(i) * x(i)


s3 = s3 + x(i) * y(i)


s4 = s4 + y(i)


Next i


a = (z * s3 - s1 * s4) / (z * s2 - s1 * s1)


b = (s2 * s4 - s1 * s3) / (z * s2 - s1 * s1)


Text1.Text = CStr(a)


b = -b


Text2.Text = CStr(b)


For i = 1 To z


kr(i) = 10 ^ (a / (t(i) + 273) - b)


eps(i) = Abs(k(i) - kr(i)) / Abs(k(i))


MSFlexGrid1.Row = i


MSFlexGrid1.Col = 3


MSFlexGrid1.Text = CStr(kr(i))


MSFlexGrid1.Col = 4


MSFlexGrid1.Text = CStr(eps(i))


Next i


End Sub


Private Sub Command4_Click()


End


End Sub


Private Sub Form_Load()


MSFlexGrid1.Col = 0


MSFlexGrid1.Row = 0


MSFlexGrid1.Text = "№ п.п."


For i = 1 To 13


MSFlexGrid1.Row = i


MSFlexGrid1.Text = CStr(i)


Next i


MSFlexGrid1.Row = 0


MSFlexGrid1.Col = 1


MSFlexGrid1.Text = "t 'C"


MSFlexGrid1.Col = 2


MSFlexGrid1.Text = "Kr"


MSFlexGrid1.Col = 3


MSFlexGrid1.Text = "Krr"


MSFlexGrid1.Col = 4


MSFlexGrid1.Text = "eps, %"


End Sub


Результат расчета:



Итак, получили А=4789.031 и В=4.519998, следовательно:



2.3 Расчет статистической модели абсорбера с использованием метода Брандона


Расчет проводился на основе данных из Приложения 3 в программе, написанной в Visual Basic.


Код

программы

:


Dim a() As Single


Dim n As Integer, m As Integer


Sub mnk6(ftr As Integer, n1 As Integer, masX() As Single, masY() As Single, masYR() As Single, formula As String)


Dim matrYR() As Single, x() As Single, y() As Single, skwOtkl() As Single, i As Integer


Dim ka As Single, kb As Single, AB() As Single, minS As Single, indMin As Integer


ReDim matrYR(1 To n1, 1 To 6) As Single, x(1 To n1) As Single, y(1 To n1) As Single, skwOtkl(1 To 6) As Single


ReDim AB(1 To 6, 1 To 2) As Single


'1 --- Уравнение y=a*x+b


For i = 1 To n1


x(i) = masX(i): y(i) = masY(i)


Next i


Call KoefAB(n1, x(), y(), ka, kb)


AB(1, 1) = ka: AB(1, 2) = kb


skwOtkl(1) = 0


For i = 1 To n1


matrYR(i, 1) = ka * masX(i) + kb


skwOtkl(1) = skwOtkl(1) + (masY(i) - matrYR(i, 1)) ^ 2


Next i


'2 --- Уравнение y=1/(a*x+b)


For i = 1 To n1


x(i) = masX(i): y(i) = 1 / masY(i)


Next i


Call KoefAB(n1, x(), y(), ka, kb)


AB(2, 1) = ka: AB(2, 2) = kb


skwOtkl(2) = 0


For i = 1 To n1


matrYR(i, 2) = 1 / (ka * masX(i) + kb)


skwOtkl(2) = skwOtkl(2) + (masY(i) - matrYR(i, 2)) ^ 2


Next i


'3 --- Уравнение y=a/x+b


For i = 1 To n1


x(i) = 1 / masX(i): y(i) = masY(i)


Next i


Call KoefAB(n1, x(), y(), ka, kb)


AB(3, 1) = ka: AB(3, 2) = kb


skwOtkl(3) = 0


For i = 1 To n1


matrYR(i, 3) = ka / masX(i) + kb


skwOtkl(3) = skwOtkl(3) + (masY(i) - matrYR(i, 3)) ^ 2


Next i


'4 --- Уравнение y=b*x^a


For i = 1 To n1


x(i) = Log(masX(i)): y(i) = Log(masY(i))


Next i


Call KoefAB(n1, x(), y(), ka, kb)


AB(4, 1) = ka: AB(4, 2) = Exp(kb)


skwOtkl(4) = 0


For i = 1 To n1


matrYR(i, 4) = Exp(kb) * masX(i) ^ ka


skwOtkl(4) = skwOtkl(4) + (masY(i) - matrYR(i, 4)) ^ 2


Next i


'5 --- Уравнение y=b*exp(a*x)


For i = 1 To n1


y(i) = Log(masY(i)): x(i) = masX(i)


Next i


Call KoefAB(n1, x(), y(), ka, kb)


AB(5, 1) = ka: AB(5, 2) = Exp(kb)


skwOtkl(5) = 0


For i = 1 To n1


matrYR(i, 5) = Exp(kb) * Exp(ka * masX(i))


skwOtkl(5) = skwOtkl(5) + (y(i) - matrYR(i, 5)) ^ 2


Next i


'6 --- Уравнение y=a*log(x)+b


For i = 1 To n1


y(i) = masY(i): x(i) = Log(masX(i))


Next i


Call KoefAB(n1, x(), y(), ka, kb)


AB(6, 1) = ka: AB(6, 2) = kb


skwOtkl(6) = 0


For i = 1 To n1


matrYR(i, 6) = ka * Log(masX(i)) + kb


skwOtkl(6) = skwOtkl(6) + (y(i) - matrYR(i, 6)) ^ 2


Next i


indMin = 1


minS = skwOtkl(1)


For i = 2 To 6


If minS > skwOtkl(i) Then


indMin = i


minS = skwOtkl(i)


End If


Next i


If indMin = 1 Then


formula = CStr(AB(1, 1)) + "*x" + CStr(ftr) + "+" + CStr(AB(1, 2))


For i = 1 To n1


masYR(i) = matrYR(i, 1)


Next i


End If


If indMin = 2 Then


formula = "1/(" + CStr(AB(2, 1)) + "*x" + CStr(ftr) + "+" + CStr(AB(2, 2)) + ")"


For i = 1 To n1


masYR(i) = matrYR(i, 2)


Next i


End If


If indMin = 3 Then


formula = CStr(AB(3, 1)) + "/x" + CStr(ftr) + "+" + CStr(AB(3, 2))


For i = 1 To n1


masYR(i) = matrYR(i, 3)


Next i


End If


If indMin = 4 Then


formula = CStr(AB(4, 2)) + "*x" + CStr(ftr) + "^" + CStr(AB(4, 1))


For i = 1 To n1


masYR(i) = matrYR(i, 4)


Next i


End If


If indMin = 5 Then


formula = CStr(AB(5, 2)) + "*exp(" + CStr(AB(5, 1)) + "*x" + CStr(ftr) + ")"


For i = 1 To n1


masYR(i) = matrYR(i, 5)


Next i


End If


If indMin = 6 Then


formula = CStr(AB(6, 1)) + "*ln(x" + CStr(ftr) + ")+" + CStr(AB(6, 2))


For i = 1 To n1


masYR(i) = matrYR(i, 6)


Next i


End If


End Sub


Private Sub mnuComp_Click()


Dim stroka As String, i As Integer, ind() As Integer, rabA() As Single, eta As Single, eps As Single


Dim SrZnachY As Single, NormY() As Single, msX() As Single, msY() As Single, formul() As String


Dim j As Integer, YRASCH() As Single, formulka As String, s1 As Single, s2 As Single, s3 As Single


ReDim ind(1 To m) As Integer, rabA(1 To n, 1 To m + 1) As Single, NormY(1 To n, 1 To m) As Single


ReDim msX(1 To n) As Single, msY(1 To n) As Single, msyr(1 To n) As Single, formul(1 To m) As String


ReDim YRASCH(1 To n) As Single


For i = 1 To m


List1.ListIndex = i - 1


stroka = Mid(List1.Text, 2, 7): ind(i) = CInt(stroka)


Next i


For j = 1 To m


For i = 1 To n


rabA(i, j) = a(i, ind(j))


rabA(i,

m + 1) = a(i, m + 1)


Next i


Next j


SrZnach = 0


For i = 1 To n


SrZnachY = SrZnachY + rabA(i, m + 1)


Next i


SrZnachY = SrZnachY / n


formulka = "y=" + CStr(SrZnachY)


For i = 1 To n


YRASCH(i) = SrZnachY


NormY(i, 1) = a(i, m + 1) / SrZnachY


Next i


For j = 1 To m


For i = 1 To n


msX(i) = rabA(i, j)


msY(i) = NormY(i, j)


Next i


Call mnk6(ind(j), n, msX(), msY(), msyr(), formul(j))


For i = 1 To n


YRASCH(i) = YRASCH(i) * msyr(i)


Next i


If j < m Then


For i = 1 To n


NormY(i, j + 1) = NormY(i, j) / msyr(i)


Next i


End If


formulka = formulka + "*(" + formul(j) + ")"


Next j


Label1.Caption = "РЕЗУЛЬТАТЫ РАСЧЕТА:"


Label5.Caption = "ПОДОБРАНА МОДЕЛЬ: " + vbCrLf


Label5.Caption = Label5.Caption + formulka


Label5.Visible = True


With MSFlexGrid1


.Cols = .Cols + 1: .Col = .Cols - 1: .Row = 0: .Text = "YR"


For i = 1 To n


.Row = i: .Text = CStr(YRASCH(i))


Next i


End With


s1 = 0: s2 = 0: s3 = 0


For i = 1 To n


s1 = s1 + (a(i, m + 1) - YRASCH(i)) ^ 2


s2 = s2 + (a(i, m + 1) - SrZnachY) ^ 2


s3 = s3 + Abs(a(i, m + 1) - YRASCH(i)) / Abs(a(i, m + 1))


Next i


eps = 100 / n * s3


eta = Sqr(1 - s1 / s2)


Text1.Text = CStr(eta)


Text2.Text = CStr(eps)


End Sub


'm- кол-во факторов, N - колво опытов


Private Sub mnuExit_Click()


End


End Sub


Sub KoefAB(n As Integer, x() As Single, y() As Single, ka As Single, kb As Single)


Dim s1 As Single, s2 As Single, s3 As Single, s4 As Single


s1 = 0: s2 = 0: s3 = 0: s4 = 0


For i = 1 To n


s1 = s1 + x(i)


s2 = s2 + x(i) * x(i)


s3 = s3 + x(i) * y(i)


s4 = s4 + y(i)


Next i


ka = (n * s3 - s1 * s4) / (n * s2 - s1 * s1)


kb = (s2 * s4 - s1 * s3) / (n * s2 - s1 * s1)


End Sub


Private Function Opred(n1 As Integer, x1() As Single) As Single


Dim i As Integer, j As Integer, d As Single


Dim e As Single, k As Integer, b1 As Integer, c As Integer


Dim a As Single, s As Single, g As Single, z As Integer


ReDim x(1 To n1, 1 To n1) As Single


z = 1


d = 1


For i = 1 To n1


For j = 1 To n1


x(i, j) = x1(i, j)


Next j


Next i


For k = 1 To n1 - 1


e = 0


For i = k To n1


For j = k To n1


If Abs(e) >= Abs(x(i, j)) Then GoTo m90


e = x(i, j): b1 = i: c = j


m90:


Next j


Next i


If k = b1 Then GoTo m120


For j = k To n1


s = x(k, j)


x(k, j) = x(b1, j)


x(b1, j) = s


Next j


z = -z


m120:


If k = c Then GoTo m150


For i = k To n1


s = x(i, k)


x(i, k) = x(i, c)


x(i, c) = s


Next i


z = -z


m150:


For i = k + 1 To n1


g = x(i, k) / x(k, k)


For j = k To n1


x(i, j) = x(i, j) - g * x(k, j)


Next j


Next i


Next k


For i = 1 To n1


d = d * x(i, i)


Next i


d = d * z


Opred = d


End Function


Function Rxy(n As Integer, x() As Single, y() As Single) As Single


Dim i As Integer, s1 As Single, s2 As Single, s3 As Single


Dim s4 As Single, s5 As Single


s1 = 0: s2 = 0: s3 = 0: s4 = 0: s5 = 0


For i = 1 To n


s1 = s1 + x(i)


s2 = s2 + x(i) ^ 2


s3 = s3 + x(i) * y(i)


s4 = s4 + y(i)


s5 = s5 + y(i) ^ 2


Next i


Rxy = (n * s3 - s1 * s4) / Sqr((n * s2 - s1 * s1) * (n * s5 - s4 * s4))


End Function


Private Sub mnuOpen_Click()


Dim s As String, i As Integer


CommonDialog1.Action = 1


s = CommonDialog1.FileName


Open s For Input As #1


Input #1, m, n


With MSFlexGrid1


.Cols = m + 2: .Rows = n + 1


.Col = 0: .Row = 0: .Text = "№"


For i = 1 To m


.Col = i: .Text = "X" + CStr(i)


Next i


.Col = m + 1: .Text = "Y"


ReDim a(1 To n, 1 To m + 1) As Single


For i = 1 To n


.Col = 0: .Row = i: .Text = CStr(i)


For j = 1 To m + 1


Input #1, a(i, j)


.Col = j: .Text = CStr(a(i, j))


Next j


Next i


Close #1


End With


End Sub


Private Sub mnuRangir_Click()


Dim d() As Single, x1() As Single, y1() As Single


Dim dm1 As Single, dmk() As Single, dkk() As Single, KRxy() As Single


Dim i As Integer, j As Integer, a1() As Single, sz As String


ReDim d(1 To m + 1, 1 To m + 1) As Single, x1(1 To n) As Single, y1(1 To n) As Single


ReDim dmk(1 To m) As Single, dkk(1 To m) As Single, KRxy(1 To m) As Single


ReDim a1(1 To m, 1 To m) As Single, smassiv(1 To m) As String


For i = 1 To m


smassiv(i) = "X" + CStr(i)


Next i


For i = 1 To m + 1


d(i, i) = 1


Next i


For j = 1 To m


For k = j + 1 To m + 1


For i = 1 To n


x1(i) = a(i, j): y1(i) = a(i, k)


Next i


d(j, k) = Rxy(n, x1(), y1())


'транспонирование матрицы


d(k, j) = d(j, k)


Next k


Next j


'вывод матрицы D


With MSFlexGrid2


.Cols = m + 1: .Rows = m + 1


For i = 1 To m + 1


For j = 1 To m + 1


.Col = j - 1: .ColWidth(.Col) = 1500: .Row = i - 1: .Text = CStr(d(i, j))


Next j


Next i


End With


'частн коэфф множ коррел


For i = 1 To m


For j = 1 To m


a1(i, j) = d(i, j)


Next j


Next i


dm1 = Opred(m, a1())


For k = 1 To m


For i = 1 To m


k1 = 0


For j = 1 To m + 1


If j <> k Then


k1 = k1 + 1


a1(i, k1) = d(i, j)


End If


Next j


Next i


dmk(k) = Opred(m, a1())


Next k


For k = 1 To m


k1 = 0


For i = 1 To m + 1


If i <> k Then


k1 = k1 + 1: k2 = 0


For j = 1 To m + 1


If j <> k Then


k2 = k2 + 1


a1(k1, k2) = d(i, j)


End If


Next j


End If


Next i


dkk(k) = Opred(m, a1())


Next k


With MSFlexGrid3


.Rows = m: .Cols = 2: .FixedRows = 0: .FixedCols = 0


For i = 1 To m


.Row = i - 1


.Col = 0: .Text = "Ryx" + CStr(i) + "="


KRxy(i) = dmk(i) / Sqr(dm1 * dkk(i))


.Col = 1: .ColWidth(.Col) = 1500: .Text = CStr(KRxy(i))


Next i


End With


'сортировка


List1.Clear


For i = 1 To m - 1


k = i


For j = i To m


If Abs(KRxy(k)) > Abs(KRxy(j)) Then k = j


Next j


sz = smassiv(k)


smassiv(k) = smassiv(i)


smassiv(i) = sz


Next i


For i = m To 1 Step -1


List1.AddItem (smassiv(i))


Next i


End Sub


Результаты расчета:


1) для степени абсорбции:



В данных обозначениях Х1-начальная температура, Х2-плотность орошения, Х3-объем абсорбера, Y-степень абсорбции данная, YR-степень абсорбции рассчитанная.


2) для температуры:



В данных обозначениях Х1-начальная температура, Х2-плотность орошения, Х3-объем абсорбера, Y-данная конечная температура, YR- рассчитанная конечная температура.


2.4 Расчет реакторов идеального вытеснения


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


Расчет проводится в одной и той же программе с использованием исходных данных и получаемых результатов. Необходимо учесть, что:


данные, которые мы получили на выходе из 4го реактора, являются входными параметрами для 1го абсорбера;


данные, которые мы получили на выходе из 1го абсорбера, являются входными параметрами для 5го реактора;


данные, которые мы получили на выходе из 5го реактора, являются входными параметрами для 2го абсорбера.



Код

программы

:


Option Explicit


Dim tn As Single


Dim ca0 As Single


Dim cb0 As Single


Dim cc0 As Single


Dim vr As Single


Dim g As Single


Dim n As Integer


Dim q As Single


Dim cp As Single


Dim k0 As Single


Dim ea As Single


Dim a0 As Single


Dim b0 As Single


Dim tau As Single


Dim dtau As Single


Dim ca As Single


Dim cb As Single


Dim cc As Single


Dim tk As Single


Dim i As Integer


Dim x As Single


Dim a As Single


Dim d As Single


Dim c As Single


Dim l As Single


Dim k As Single


Dim kr As Single


Dim f2 As Single


Dim r As Single


Private Sub Command1_Click()


End


End Sub


Private Sub Command2_Click()


tn = Val(Text1.Text)


ca0 = Val(Text2.Text)


cb0 = Val(Text3.Text)


cc0 = Val(Text4.Text)


vr = Val(Text5.Text)


g = Val(Text6.Text)


n = Val(Text13.Text)


q = Val(Text7.Text)


cp = Val(Text8.Text)


k0 = Val(Text10.Text)


ea = Val(Text9.Text)


a0 = Val(Text11.Text)


b0 = Val(Text12.Text)


tau = vr * 3600 / g


dtau = tau / n


ca = ca0


tk = tn


For i = 1 To n


x = (ca0 - ca) / ca0


ca = ca0 * (1 - x)


cb = cb0 - ca0 * x


cc = cc0 + ca0 * x


k = k0 * Exp(-ea / 8.31 / (tk + 273.15))


kr = 10 ^ (a0 / (tk + 273.15) - b0)


a = ca + 0.8 * cc


d = kr * ca * Sqr(cb)


c = (cc / d) ^ 2


l = 1 - c


r = k * ca * cb / a * l


ca = ca - r * dtau


f2 = q * r / cp


tk = tk + f2 * dtau


Next i


Text14.Text = CStr(tk)


Text15.Text = CStr(ca)


Text16.Text = CStr(cb)


Text17.Text = CStr(cc)


Text18.Text = CStr(tau)


End Sub



Результаты расчета:


Из полученных результатов нам важны концентрации компонентов, чтобы ввести их в следующий реактор или абсорбер, а так же температуры на выходе (Тi
):


Т1
=577.06


Т2
=514.18


Т3
=414.34


Т4
=430.73


Т5
=411.87


2.5 Расчет абсорберов


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



Код

программы

:


Private Sub Command1_Click()


tn = Val(Text13.Text)


ro = Val(Text14.Text)


vabs = Val(Text15.Text)


tk = 47.44545 * (-0.05320523 * ro + 1.889979) * (-0.03595265 * vabs + 1.890018) * (0.004502005 * tn + 0.1782164)


Text12.Text = CStr(tk)


eta = 83.19818 * (0.03020197 * vabs + 0.2518149) * (0.03027636 * ro + 0.4635413) * (1 / (0.002109864 * tn + 0.6166517))


eta = eta / 100


Text5.Text = CStr(eta)


g0 = Val(Text1.Text)


ca0 = Val(Text2.Text)


cb0 = Val(Text3.Text)


cc0 = Val(Text4.Text)


dltg = g0 * cc0 * eta


g = g0 - dltg


ca = g0 * ca0 / g


cb = g0 * cb0 / g


cc = g0 * (1 - eta) * cc0 / g


w0 = g0 * 0.33


w = g * 0.33


prc = (g0 - g) / g0 * 100


Text6.Text = CStr(ca)


Text7.Text = CStr(cb)


Text8.Text = CStr(cc)


Text9.Text = CStr(g)


Text10.Text = CStr(w0)


Text11.Text = CStr(w)


End Sub


Private Sub Command2_Click()


Unload Me


End Sub


Результаты расчета:


Из результатов расчета первого абсорбера нам необходимо значение расхода на выходе (G) для ввода его в пятый реактор и второй абсорбер, значения водяных эквивалентов на входе (Wн
) и на выходе (Wк
).


Из результатов расчета обоих реакторов нам необходимы значения температур на выходе (Та1
и Та2
).


G=124146.814 м3
/час



=43.56



=40.97


Та1
=43.34


Та2
=38.91


2.6 Синтез оптимальных систем теплообмена


Для расчета используется программа, написанная в Visual Basic, исходные данные, приведенные в таблице ниже.


Исходные данные для проектирования тепловой системы:














































Холодные потоки


Горячие потоки



исходного потока


Начальная температура


ºС


Конечная темпера тура ºС


Значение водяного эквивалента, кВт/ºС



исходного потока


Начальная температура


ºС


Конечная темпера тура ºС


Значение водяного эквивалента, кВт/ºС


1


50


415


43,56


1


577,06


485


43,56


2


414,34


425


43,56


2


514,18


410


43,56


3


43,34


405


40,97


3


430,73


180


43,56


4


411,87


195


40,97



Код

программы

:


Dim nx As Integer, ng As Integer, n As Integer, n0 As Integer


Dim k As Single, c As Single, dt As Single, k0 As Single


Dim tn() As Single, tk() As Single, w() As Single


Dim tx() As Single, tg() As Single, nomx() As Integer


Dim nomg() As Integer, r() As Single, ne() As Single


Dim st() As Single


Private Sub Command1_Click()


st0 = 0


k = 0


m1:


With MSFlexGrid1


.Cols = 9: .Col = 0: .Row = 0: .Text = "L": .Col = 1: .Text = "х": .Col = 2: .Text = "Tнх"


.Col = 3: .Text = "Tхк": .Col = 4: .Text = "г": .Col = 5: .Text = "Tнг"


.Col = 6: .Text = "Tгк": .Col = 7: .Text = "Q": .Col = 8: .Text = "Стоимость"


l = 0


k = k + 1


For i = 1 To n


If tn(i) < tk(i) Then GoTo m2


For j = 1 To n


If tn(j) > tk(j) Then GoTo m3


tg0 = tn(i): tg1 = tk(i)


tx0 = tn(j): tx1 = tk(j)


a = tg0 - tx0 - dt


If a < 0 Then GoTo m3


If (tg1 - tx0) < dt Then tg1 = tx0 + dt


If (tg0 - tx1) < dt Then tx1 = tg0 - dt


qx = (tx1 - tx0) * w(j)


qg = (tg0 - tg1) * w(i)


q = qx


If qx > qg Then q = qg


If q < 1 Then GoTo m3


tx1 = tx0 + q / w(j)


tg1 = tg0 - q / w(i)


dt1 = tg0 - tx1


dt2 = tg1 - tx0


r0 = Log(dt1 / dt2)


dlt = (dt1 + dt2) / 2


If Abs(r0) > 0.639 Then dlt = (dt1 - dt2) / r0


f = q / k0 / dlt


l = l + 1


st(l) = c * f ^ 0.6


st0 = st0 + st(l)


nomg(l) = i: nomx(l) = j: tg(l) = tg1: tx(l) = tx1


.Rows = l + 1


.Col = 0: .Row = l: .Text = CStr(l)


.Col = 1: .Text = CStr(j): .Col = 2: .Text = CStr(tx0)


.Col = 3: .Text = CStr(tx1): .Col = 4: .Text = CStr(i): .Col = 5: .Text = CStr(tg0)


.Col = 6: .Text = CStr(tg1): .Col = 7: .Text = CStr(q): .Col = 8: .Text = CStr(st(l))


m3:


Next j


m2:


Next i


End With


If l = 0 Then GoTo m4


If ne(k) = 1 Then Label5.Caption = "Выберите вариант теплообмена между потоками i и j для которых начальные температуры максимальны"


If ne(k) = 2 Then Label5.Caption = "Выберите вариант теплообмена между потоками, который обеспечивает максимальное количество передаваемого тепла"


If ne(k) = 3 Then Label5.Caption = "Выберите для теплообмена горячий поток с наиболее высокой температурой на входе и холодный поток с наиболее высокой температурой на выходе из теплообменника"


If ne(k) = 4 Then Label5.Caption = "Выберите для теплообмена холодный поток с наиболее низкой температурой на входе и горячий поток с наиболее низкой температурой на выходе из теплообменника"


If ne(k) = 5 Then Label5.Caption = "Выберите для теплообмена пару потоков произвольным образом"


l = CInt(InputBox("Введите номер варианта теплообмена:"))


i = nomg(l): j = nomx(l): tn(i) = tg(l): tn(j) = tx(l)


MSFlexGrid1.Clear


GoTo m1


m4:


Label7.Visible = True: Text4.Text = CStr(st0): Text4.Visible = True


End Sub


Private Sub Form_Load()


Dim S As String, i As Integer


CommonDialog1.Action = 1


S = CommonDialog1.FileName


Open S For Input As #1


Input #1, nx, ng


n = nx + ng


Text1.Text = CStr(nx)


Text2.Text = CStr(ng)


n0 = nx * ng


Input #1, k0, c, dt


ReDim tn(1 To n) As Single, tk(1 To n) As Single, w(1 To n) As Single


ReDim tx(1 To n0) As Single, tg(1 To n0) As Single, nomx(1 To n0) As Integer


ReDim nomg(1 To n0) As Integer, r(1 To n0 + 2) As Single, ne(1 To n0 + 2) As Single


ReDim st(1 To n0) As Single


For i = 1 To n


Input #1, tn(i), tk(i), w(i)


Next i


Close #1


r0 = -100


dr0 = CInt(InputBox("Введите любое число из интервала 1-33:"))


For i = 1 To n0 + 2


r0 = r0 + dr0


r(i) = Rnd(r0)


Next i


Label4.Caption = ""


For i = 1 To n0 + 2


If r(i) >= 0 And r(i) < 0.2 Then ne(i) = 1


If r(i) >= 0.2 And r(i) < 0.4 Then ne(i) = 2


If r(i) >= 0.4 And r(i) < 0.6 Then ne(i) = 3


If r(i) >= 0.6 And r(i) < 0.8 Then ne(i) = 4


If r(i) >= 0.8 And r(i) < 1 Then ne(i) = 5


Label4.Caption = Label4.Caption + CStr(ne(i)) + " "


Next i


End Sub


Результаты расчета:


Таблица 1 Таблица пар исходных потоков ( I этап синтеза)



На основании таблицы 1 для теплообмена выбран 8 поток, так как необходимо было выбрать для теплообмена холодный поток с наиболее низкой температурой на входе и горячий поток с наиболее низкой температурой на выходе из теплообменника.


Таблица 2 Таблица пар результирующих и исходных потоков (II этап синтеза)



На основании таблицы 2 для теплообмена выбран 7 поток, так как необходимо было выбрать вариант теплообмена между потоками, который обеспечивает максимальное количество передаваемого тепла.


Таблица 3 – Таблица пар результирующих и исходных потоков (III этап синтеза)



На основании таблицы 3 для теплообмена выбран 2 поток, так как необходимо было выбрать вариант теплообмена между потоками i и j, для которых начальные температуры максимальны.


Таблица 4 – Таблица пар результирующих и исходных потоков (IV этап синтеза)



На основании таблицы 4 для теплообмена выбран 2 поток, так как необходимо было выбрать для теплообмена горячий поток с наиболее высокой температурой на входе и холодный поток с наиболее высокой температурой на выходе из теплообменника.


Таблица 5 – Таблица пар результирующих и исходных потоков (V этап синтеза)



На основании таблицы 5 для теплообмена выбран 2 поток, так как необходимо было выбрать поток произвольным образом.


В результате синтеза системы теплообмена все потоки, кроме 1го холодного, достигли заданной температуры. Следовательно, его необходимо нагреть до нужной температуры, используя нагреватель.


2.7 Расчет нагревателя


Для расчета используется программа, написанная в Visual Basic.



Код программы:


Private Sub Command1_Click()


Dim c As Single, dt As Single, qx As Single


Dim tx1 As Single, tx0 As Single, tg0 As Single


Dim tg1 As Single, Wx As Single, Wr As Single


Dim qg As Single, q As Single, dlt As Single, k0 As Single


Dim st As Single


c = 483: dt = 20: k0 = 0.01745


tg0 = CSng(Text3.Text)


tx0 = CSng(Text1.Text)


tx1 = CSng(Text2.Text)


Wx = CSng(Text6.Text)


Wr = CSng(Text7.Text)


tg1 = tx1 + dt


qx = (tx1 - tx0) * Wx


qg = (tg0 - tg1) * Wr


q = qx


If qx > qg Then q = qg


tx1 = tx0 + q / Wx


tg1 = tg0 - q / Wr: dtl = tg0 - tx1: dt2 = tg1 - tx0


dlt = (dt1 + dt2) / 2


f = q / k0 / dlt


st = c * f ^ 0.6


Text5.Text = CStr(st)


Text4.Text = CStr(tg1)


End Sub


Результаты расчета:



Тепловая схема будет иметь следующий вид:



577,06


414,34 425



430,73 566,4 514,18


43,34 309,92 396,47 405



411,87 506,15 435


180 485


50 253,98 350,129 415


460


195 410


Общая стоимость данной технологической схемы составляет 1192555.42, которая была получена в результате расчета оптимальных технологических схем (1154145), а также учитывает стоимость нагревателя (38410.42).


3. Выводы


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


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


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


3. С помощью метода Брандона получили статическую модель абсорбера, а также рассчитали все потоки на входе и выходе из реакторов.


Выбранная схема теплообмена, состоящая из 5 реакторов и 1 нагревателя, позволяет достичь заданных начальных и конечных температур основных технологических потоков наиболее оптимальным из рассмотренных вариантов.


Таким образом, рассчитанная в данной курсовой работе химико-технологическая система обеспечивает эффективную реализацию заданной технологии.


Список литературы


1. Методы и средства автоматизированного расчета химико-технологических систем / Кузичкин Н. В., Саутин С. Н., Пунин А. Е., Холоднов В.А., Шибаев В. А. – Л.: Химия, 1987. – 152с


2. Химико-технологические системы. Синтез, оптимизация и управление / Д. Бальцер, В. Вайсс, В. К. Викторов и др. / Под ред. И. П. Мухленова. – Л.: Химия, 1986. -424 с.


3. Синтез оптимальных тепловых систем. Метод. указания / ЛТИ им. Ленсовета. Л.,1985


Приложение 1


Зависимость константы скорости от температуры












































Tº, C


k, 1/c


400


0.4


405


0.4


415


0.5


435


0.6


455


0.8


485


1.3


505


1.6


515


1.8


530


2.2


575


3.5


595


4.3


605


4.7


615


5.2



Приложение 2


Зависимость константы равновесия от температуры






































Tº, C


kp


400


443


420


265


440


112


460


108


480


72


520


35


540


25


560


16


580


12


600


9.5


620


7.0



Приложение 3


Экспериментальные данные по работе абсорберов












































































































































Tвх
, ºC


Плотность орошения, м3
/м2


Объем абсорбера, м3


Tвых
, ºC


Степень абсорбции, %


170


13


22


58.9


69.06


180


14


25


52.4


77.10


170


13


30


44.0


87.15


160


18


21


46.1


80.40


188


17


27


43.8


88.45


200


16


24


54.1


76.63


210


19


22


53.3


76.72


150


20


25


32.1


99.12


174


21


26


33.6


98.57


182


21


26


35.3


96.81


190


21


26


37.0


95.16


170


18


26


39.5


92.11


160


17


29


35.4


99.54


170


15


24


49.8


79.19


180


15


24


52.1


77.40


190


15


24


54.3


75.74


210


15


24


58.7


72.77


225


16


22


64.3


68.49


210


18


29


43.0


91.87


150


18


19


47.8


76.54


186


14


25


53.7


76.09


190


14


25


54.6


75.45


Сохранить в соц. сетях:
Обсуждение:
comments powered by Disqus

Название реферата: Синтез химико- технологической системы

Слов:9243
Символов:79768
Размер:155.80 Кб.