Содержание к диссертации
Введение
Глава 1. Литературный обзор 14
1.1. Математическое модели каталитических процессов 14
1.2. Задача оптимизации и методы ее решения 22
1.3. Выбор типа реактора по результатам моделирования . 28
1.4. Современные моделирующие программы 33
1.5. Постановка задачи 40
Глава 2. Моделирование процессов дегидрирования в реакторе с неподвижным слоем катализатора 43
2.1. Математические модели процессов дегидрирования углево дородов С5Я10 и СЩ в реакторе с неподвижным слоем ка тализатора 43
2.1.1 Кинетические модели процессов 44
2.1.2 Математическое описание процессов 49
2.2. Вычислительный эксперимент 59
2.3. Оптимизация процессов 65
2.3.1 Теоретическая оптимизация 65
2.3.2 Технологическая оптимизация 66
Глава 3. Моделирование процессов дегидрирования в реакторе с псевдоожиженным слоем катализатора 69
3.1. Математические модели процессов дегидрирования углеводородов С5Я10 и С4ІІ8 в реакторе с псевдоожиженным слоем катализатора 69
3.2. Вычислительный эксперимент 80
3.3. Оптимизация процесса 85
Глава 4. Комплекс программ по моделированию процессов дегидрирования углеводородов 87
4.1. Структура, особенности и функциональное назначение программного пакета 87
4.2. Этапы работы и интерфейс программы 93
4.3. Процедуры и функции программного средства 98
Заключение 107
Литература 108
- Задача оптимизации и методы ее решения
- Кинетические модели процессов
- Вычислительный эксперимент
- Этапы работы и интерфейс программы
Введение к работе
Объект исследования и актуальность темы. Процессы каталитического дегидрирования углеводородов являются наиболее важным источником таких мономеров как бутадиен и изопрен. Затраты на производство синтетического каучука (СК) из бутадиена или изопрена обычно составляют 25-30% от себестоимости готового продукта, т.е. эффективность производства в целом определяют затраты на синтез мономера. Поэтому основное внимание уделяют совершенствованию существующих и созданию новых процессов синтеза бутадиена и изопрена на основе доступного углеводородного сырья.
Реакции каталитического дегидрирования углеводородов являются обратимыми эндотермическими реакциями. На равновесие реакций оказывают влияние такие факторы, как состав катализатора, содержание примесей в изобутановой фракции, температура, давление и ряд др. Отличительной особенностью реакций каталитического дегидрирования углеводородов является сравнительно низкая конверсия. Например, в существующем в промышленности двухстадийном процессе дегидрирования бутана суммарный выход бутадиена составляет около 10% при избирательности менее 70%; в одностадийном процессе дегидрирования бутана, широко применяемом за рубежом, выход бутадиена — около 12% при избирательности процесса 50-54%. В промышленных условиях процессы дегидрирования углеводородов С$Ніо и С±Н% осуществляются при температуре 570-630 Сие мольным разбавлением сырья водяным паром [34]. Несмотря на все досто-
инства процессов, они остаются дорогими и энергоемкими. Чтобы процессы стали экономически выгодными, необходимо увеличить конверсию метил-бутенов (хи) до 42-45% при избирательности по изопрену (su) не менее 83%. Поэтому совершенствование процессов дегидрирования углеводородов является важной и актуальной задачей.
Общепризнанным методом решения задач по повышению эффективности действующих и разработке новых технологических процессов и аппаратов, а также теоретической базой и методом решения проблем, связанных с определением оптимальных условий проведения этих процессов и созданием систем их комплексной автоматизации является математическое моделирование промышленных процессов.
Существует различные подходы к моделированию каталитических процессов. Вследствие сложности каталитических процессов, отсутствия развитой теории и практики решения систем параболических дифференциальных уравнений в частных производных и недостаточного развития математических основ теории технологии каталитических процессов в 1935— 1955 гг. к каталитическим процессам начали применять теорию подобия и физическое моделирование. Этот путь оказался малоэффективным. Практические задачи удавалось решить только в отдельных частных случаях, когда общая скорость процесса определялась процессами переноса вещества и теплоты (примером является окисление NH% до NO на платиновых сетках). Применение теории размерности и подобия полезно в простых случаях, например, при малых скоростях движения реакционной смеси. Для моделирования каталитических процессов исключается также применение принципа "черного ящика"на основе кибернетического подхода. Во-
первых, система требует накопления информации за довольно длительное время, которое часто совпадает со временем изменения свойств системы. Во-вторых, полученные корреляционные зависимости не дают надежных предсказаний, и никогда нет уверенности в том, что они справедливы в данный момент. В-третьих, исключается возможность масштабного перехода. Таким образом, во всех случаях практического катализа кибернетический подход не пригоден.
В катализе и технологии каталитических процессов в настоящее время широко используется язык математики, причем этот язык содержит систему представлений, понятий, образов, связей между ними [77]. Наиболее приемлемым по мнению чл.-корр. РАН М.Г. Слинько является математическое моделирование процессов на основе кинетической модели. Кинетическая модель — это система уравнений, описывающих скорость реакции в условиях, где отсутствует сопротивление массо- и теплопереносу в зависимости от концентрации реагирующих веществ в газовой фазе и на поверхности катализатора, температуры, давления, изменяющихся во всей области параметров, которые встречаются при практической реализации процесса [77].
Задача оптимизации каталитического процесса решается в два этапа. Первый этап оптимизации каталитического процесса проводится на основе кинетической модели. Именно этот этап позволяет найти предельные показатели процесса с учетом его физико-химических закономерностей. Разработке эффективных численных алгоритмов теоретической оптимизации посвящены работы Борескова Г. К., Слинько М. Г. [77], Денбига К., Бояри-нова А. И., Кафарова В. В. [13], Островского Г. М., Волина Ю. М. [61, 62],
Быкова В. И. [18] и др. Как правило, реализация того или иного метода ограничивается задачей построения эффективных численных алгоритмов поиска оптимального решения. Второй этап — технологическая оптимизация, заключается в подборе оптимальных конструктивных и режимных параметров реактора: геометрических размеров, форм, узлов, скорости подачи компонентов реакции, температуры, давления, концентрации и т.д. Целями диссертационной работы являются:
Разработка программно-методического обеспечения для решения задач моделирования и оптимизации каталитических процессов дегидрирования углеводородов в реакторах различных типов;
Численное моделирование процесса дегидрирования бутенов и метил-бутенов;
Анализ влияния управляющих параметров на режимные характеристики процесса;
Решение задач теоретической и технологической оптимизации;
Исследование пусковых режимов и решение задачи минимизации времени выхода процесса на стационарный режим.
Научная новизна.
Разработано программно-методическое обеспечение для расчета каталитических процессов в реакторах с неподвижным и псевдоожи-женным слоем катализатора;
Разработана нестационарная неизотермическая модель процессов дегидрирования бутенов и метилбутенов для реактора вытеснения;
Разработана нестационарная двухфазная диффузионная модель процессов дегидрирования бутенов и метилбутенов для реактора с псев-доожиженным слоем катализатора;
Проведен вычислительный эксперимент по вариации управляющих параметров и найдена допустимая область их изменения для решения задачи технологической оптимизации;
Исследованы пусковые режимы процесса дегидрирования метилбутенов и найдены оптимальные значения управляющих параметров;
Проведена технологическая оптимизация процессов дегидрирования метилбутенов и бутена-1 и найдены оптимальные значения управля-" ющих параметров, позволяющих получать целевые продукты с мак-симальным выходом.
Практическая значимость. Разработанный программный комплекс позволяет проводить расчет реактора, а также осуществлять поиск оптимального управления. Программное обеспечение имеет дружественный интерфейс. Программный продукт зарегистрирован в отраслевом фонде алгоритмов и программ Федерального агентства по образованию Российской Федерации (ОФАП ФАО РФ), Всероссийском научно-техническом информационном центре (ВНТИЦ).
Достоверность результатов обоснована применением в качестве исходных посылок основных законов сохранения и других фундаментальных физических и химических законов. Сопоставление полученных результатов с экспериментальными данными показывает их удовлетворительную
согласованность. Работа программного комплекса протестирована на задачах оптимального управления с известными аналитическими решениями. Апробация работы. Основные положения работы докладывались и обсуждались на:
XIX Международной научной конференции "Математические методы в технике и технологиях" (ММТТ-19 Воронеж, 2006);
VII международной научной конференции "Дифференциальные уравнения и их приложения"(Саранск, 2006);
Международной молодежной научной конференции "XV Туполев-ские чтения"(Казань, 2007);
Седьмом Всероссийском симпозиуме по прикладной и промышленной математике (Кисловодск, 2006);
Восьмом Всероссийском симпозиуме по прикладной и промышленной математике (Кисловодск, 2007);
V Региональной школе - конференции для студентов, аспирантов, молодых ученых по математике, физике (Уфа, 2005);
Региональной научно-практической конференции "Современные проблемы химии и окружающей среды"(Чебоксары, 2007);
Научных семинарах физико-математического факультета Стерлита-макской государственной педагогической академии (Стерлитамак, 2004 - 2008);
9. Научных семинарах лаборатории математической химии Института нефтехимии и катализа РАН (Уфа, 2004 — 2008).
Публикации. По теме диссертации опубликовано 17 статей и тезисов на научных конференциях, зарегистрированы 2 программных продукта. В совместных работах постановка задачи принадлежит профессору Спиваку С. И. и профессору Мустафиной С. А. Результаты, выносимые на защиту, принадлежат автору.
Объем и структура работы. Диссертация состоит из введения, 4 глав, заключения и 2 приложений. Полный объем составляет 136 страниц, включая приложения на 25 страницах, 22 рисунка, 9 таблиц, библиографию.
Во введении обоснована актуальность темы, цели и задачи исследования, новизна, практическая значимость, выносимых на защиту результатов.
В первой главе проводится обзор литературы, посвященной математическому моделированию каталитических процессов. Приводятся основные понятия химической кинетики. Описывается этап оптимизации химических процессов, обосновывается выбор реактора, позволяющего наиболее полно реализовать оптимальный режим.
Вторая глава посвящена математическому моделированию процессов дегидрирования в реакторе с неподвижным слоем катализатора.
В разделе 2.1 приводится общая схема построения математического описания каталитических процессов дегидрирования в реакторе с неподвижным слоем катализатора на основе уравнений материального и теплового балансов.
В подразделе 2.1.1 приводится общая схема построения кинетических уравнений скоростей реакций дегидрирования углеводородов в присутствии катализатора:
_ к+Сл — k-CRCs
П~ (l + b1CA + b2CR-i-b3Cs)^
Приводятся схемы и кинетические модели процессов дегидрирования метилбутенов и бутенов-1.
В подразделе 2.1.2 построены нестационарные неизотермические модели процессов дегидрирования метилбутенов и бутена-1 в реакторе идеального вытеснения с неподвижным слоем катализатора.
В разделе 2.2 проведен вычислительный эксперимент по вариации управляющих параметров, и найдена допустимая область их изменения для решения задачи технологической оптимизации. Исследованы зависимости показателей процесса от управляющих параметров.
В разделе 2.3 проведена оптимизация процессов.
В подразделе 2.3.1 решена задача теоретической оптимизации и найден оптимальный температурный профиль.
В подразделе 2.3.2 решена задача технологической оптимизации и найдены оптимальные значения управляющих параметров, позволяющих получать целевые продукты с максимальным выходом.
Третья глава посвящена математическому моделированию процессов дегидрирования в реакторе с псевдоожиженным слоем катализатора.
В разделе 3.1 приводится общая схема построения математического описания каталитических процессов дегидрирования в реакторе с псев-
доожиженным слоем катализатора на основе уравнений материального и теплового балансов. Построены нестационарные двухфазные диффузионные модели процессов дегидрирования бутенов и метилбутенов в реакторе с псевдоожиженным слоем катализатора.
В разделе 3.2 проведен вычислительный эксперимент по вариации управляющих параметров, и найдена допустимая область их изменения для решения задачи технологической оптимизации. Исследованы зависимости показателей процесса от управляющих параметров.
В разделе 3.3 решена задача технологической оптимизации и найдены оптимальные значения управляющих параметров, позволяющих получать целевые продукты с максимальным выходом.
В четвертой главе на основе вычислительных схем был создан программный комплекс на языке Delphi в среде визуального программирования Borland Delphi7, снабженный пользовательским интерфейсом.
В разделе 4.1 описываются принципы и средства разработки, структура, особенности и функциональное назначение программного пакета, а также минимальные требования для работы с программным комплексом.
В разделе 4.2 описывается оболочка комплекса программ.
В разделе 4.3 приводится описание основных библиотек, функций и модулей программного комплекса, позволяющего моделировать и решать задачу оптимального управления для каталитических процессов в реакторах с неподвижным и псевдоожиженным слоем катализатора.
В приложениях приведены свидетельства о регистрации программных комплексов в ОФАП ФАО РФ и ВНТИЦ, текст программы.
Задача оптимизации и методы ее решения
Следующим этапом математического моделирования является определение оптимальных условий проведения процесса. Оптимальный режим каталитического процесса целесообразно определять в два этапа. Первый — теоретическая оптимизация направлена в основном на выяснение экстремальных свойств химического производства. Существенная особенность этого этапа — это абстрагирование от возможной аппаратной реализации полученного ответа. Второй этап — технологическая оптимизация, собственно расчет и оптимизация процесса. Смысл и цель второго этапа заключается в подборе оптимальных конструктивных и режимных параметров реактора: геометрических размеров, форм, узлов, скорости подачи компонентов реакции, температуры, давления, концентрации и т.д.
Теоретическая оптимизация осуществляется на основе "кинетической модели с последующим выбором технологической схемы реактора, позволяющим наилучшим образом приблизиться к теоретическому оптимальному режиму. Полученный оптимальный режим позволяет оценить предельные возможности технологии. При осуществлении процесса в реальном аппарате технологические показатели, например, выхода полезного продукта могут быть ниже полученных характеристик на этапе теоретической оптимизации. Последние являются некоторой оценкой сверху качества той или иной выбранной технологии.
Завершающим этапом теоретической оптимизации химико-технологического процесса является выбор типа химического реактора. Основой математического описания химических реакторов являются уравнения, выражающие закон сохранения массы и энергии при протекании процесса в данном аппарате. Закон сохранения массы отражают уравнения материальных балансов по отдельным компонентам; закон сохранения энергии записывают в виде уравнений балансов основных форм энергии в химических реакторах — тепловой и кинетической.
В тех случаях, когда значения физических величин одинаковы во всем объеме реакционного пространства, уравнения балансов можно записать для аппарата в целом, если же они различны в различных точках реакционного пространства — уравнения балансов составляют для элементарного объема реактора. Последующее интегрирование составленных уравнений позволяет определить поля физических величин в реакторе: поля масс компонентов рассчитывают по уравнениям материального баланса, температурное поле — по уравнению теплового баланса, поля давлений — по уравнению баланса кинетической энергии. Поскольку обычно изменение давления в реакторе незначительно, поле давлений рассчитывают сравнительно редко.
Неуправляемые переменные х = (х\, ...,хт) характеризуют условия, на которые невозможно влиять и которые определяются внешними не зависящими от нас факторами. Связь переменных с критерием / выражается функциональной зависимостью (1.7). В некоторых случаях для формулировки задач оптимизации рассматриваются более абстрактные математические понятия — функциональные, или бесконечномерные пространства, и в качестве критерия оптимизации — ; функционалы, заданные на подмножествах этих пространств. С точки зрения практических приложений достаточно ограничиться конечномерными задачами. Итак, постановка задачи оптимизации включает три основные части: 1) математическая модель, в которой выделены управляющие параметры, определены исходные данные и области определения решений модели; 2) ограничения, накладываемые как на фазовые переменные, так и на свободные параметры и управления; 3) критерий оптимизации, который дает количественную характеристику при выборе предпочтительного варианта.
Для оптимальных задач химической технологии характерно следующее: 1) наличие различного рода ограничений как на управление, так и на фазовые переменные; 2) существенная нелинейность (в большинстве случаев правая часть уравнений является показательной функцией от управления и существенно нелинейной функцией фазовых переменных); 3) значительная сложность рассматриваемых процессов и в связи с этим большие размерности решаемых задач.
Эти особенности естественно ограничивают применение некоторых методов оптимизации. Например, первая особенность не позволяет использовать методы вариационного исчисления, а вторая — методы линейного программирования.
Динамическое программирование. Этот метод применительно к химическим реакторам впервые использовал Арис [3]. В его работах описан поиск оптимального температурного режима для аппаратов с различным гидродинамическим режимом, последовательности реакторов и трубчатых аппаратов. И.И. Иоффе и Л.М. Письмен в работе [43] предложили аналитические процедуры выбора оптимальных условий для последовательно соединенных реакторов.
Опыт применения метода динамического программирования показывает, что при его помощи успешно решают задачи определения оптимальных режимов многостадийных процессов, состоящих из одной или двух реакций. По данной методике вначале оптимизируют последнюю стадию, затем две последние ступени вместе и т. д. Переход к каждой последующей стадии осуществляют на основе сформулированного принципа оптимальности, причем пока мы не дойдем до первой стадии, оптимальные условия неизвестны, поэтому приходится запоминать все оптимальные режимы сразу. Это требует во много раз большего объема расчетов и памяти, чем при вычислении одного режима, так что для сложных и многофазных процессов метод динамического программирования практически малоэффективен.
Кинетические модели процессов
Для понимания физико-химической сущности каталитической реакции, последующего математического моделирования процесса и определения условий его промышленной реализации необходимо, прежде всего, детально исследовать кинетику рассматриваемой каталитической реакции.
Кинетическая модель процесса представляет собой совокупность элементарных стадий, реакций и уравнений, характеризующих зависимость скорости химического превращения от параметров реакции: давления, температуры, концентраций реагентов. Кинетическая модель является первым уровнем модели любого реактора.
Кинетические уравнения выписаны в виде зависимостей Ленгмюра-Хиншельвуда (ЛХ). Первый вариант (ЛХ-1, т=1) соответствует предположению, что лимитирующей стадией процесса является адсорбция исходных веществ (или десорбция продуктов реакции) с активной поверхности катализатора. Для второго варианта (ЛХ-2, т=2) лимитирующая стадия процесса - каталитическая реакция на активной поверхности. Исследование процессов проведено в лаборатории математической химии ИНК РАН и ЗАО «Каучук» и показано более корректное применение уравнений второго типа. Поэтому для дальнейшего математического моделирования процессов будут использованы кинетические модели (2.11)-(2.14) и (2.19)т(2.22) с кинетическими уравнениями в форме ЛХ-2.
При моделировании химических процессов возможны два принципиально различных подхода: моделирование стационарного режима и динамическое моделирование. Устойчивость является характеристикой стационарного состояния си 50 стемы и определяется реакцией системы на возмущающее воздействие. В стационарном режиме параметры системы во времени постоянны. Однако этот режим может быть нарушен возмущающими воздействиями, возникающими в результате неизбежных случайных колебаний состава, количества и температуры входных потоков, давления, степени перемешивания, величины теплоотвода и т. п. Стационарное состояние системы устойчиво, если отклонение от этого состояния, вызванное возмущающим воздействием, после устранения источника возмущения постепенно исчезает и исходное стационарное состояние восстанавливается. Если же отклонение от стационарного состояния увеличивается во времени, то исходное стационарное состояние является неустойчивым. Для оценки устойчивости стационарных состояний системы необходим анализ ее поведения во времени после устранения возмущающего воздействия. Таким образом, исследование устойчивости системы включает определение числа и характеристик возможных стационарных состояний, а также последующую оценку устойчивости этих состояний.
Базовые динамические модели играют ведущую роль в определении динамики процесса и управлении им, дают возможность проводить расчеты в динамическом режим, что позволяет гораздо лучше понять сущность моделируемых процессов. Можно испытать схему регулирования, исследовать пусковые режимы, получить представление о реально работающем процессе и поведении объекта в нештатных ситуациях, о влиянии изменения рабочих параметров на качество продуктов. Подобные модели могут использоваться для решения следующих задач: Более глубокого понимания процесса. Динамические модели и ком 51 пьютерное моделирование позволяют изучать переходные характеристики процесса без его нарушения; Обучения обслуживающего персонала предприятия. Симуляторы процесса играют важную роль в обучении операторов в части эксплуатации сложных устройств и выполнения действий в аварийных ситуациях; Совершенствования стратегии управления процессом. Динамическая модель процесса помогает выделить его контролируемые и управляемые переменные.
В промышленных условиях процессы дегидрирования экономически выгодно проводить в адиабатическом реакторе с неподвижным слоем твердого катализатора. Для изучения закономерностей процесса построим математическую модель, которая учитывает увеличение числа молей в газовой фазе за счет реакций (1)-(4). При ее создании сделаем следующие допущения: Диффузия не оказывает заметного влияния на протекание процесса; Распределение реакционного потока равномерно по сечению реактора; В реакторе обеспечивается идеальный контакт сырья с катализатором; Изменение свойств катализатора во времени не учитывается. Для изучения закономерностей процесса дегидрирования углеводородов в реакционной системе газ-твердый катализатор разработана нестационарная математическая модель, которая учитывает увеличение числа молей в газовой фазе. Математическое описание неизотермического процесса дегидрирования в адиабатическом реакторе с неподвижным слоем катализатора представляется системой уравнений материального и теплового балансов.
Вычислительный эксперимент
На основе построенной модели проведен вычислительный эксперимент для процесса дегидрирования метилбутенов в реакторе объемом 18 м3, для процесса дегидрирования бутенов в реакторе объемом 10 м3. В качестве базовых параметров для процесса дегидрирования метилбутенов был выбран следующий набор управлений: 1) скорость подачи сырья (w) 1,0 ч-1; 2) разбавление сырья водяным паром (1:п) 1:20 моль/моль; 3) температура на входе (То) 620 С. Для процесса дегидрирования бутенов: 1) скорость подачи сырья (w) 625 ч-1; 2) разбавление сырья водяным паром (1:п) 1:8 моль/моль; 3) температура на входе (То) 620 С. При расчетах использовались численные методы решения систем дифференциальных уравнений: метод сеток с использованием неявной разностной схемы Эйлера и метод прогонки [5, 30, 69].
Аналогичные закономерности протекания процесса дегидрирования бутенов. В интервале изменения температуры от 570С до 670С растут два основных показателя процесса: конверсия бутенов (%мас.) и выход бутадиена в (т/ч). Увеличивается также массовый выход бутадиена в (%мас), что связано с повышением температуры на выходе из реактора с 550,5С до 615,5С и, следовательно, заметным увеличением средней температуры. Селективность образования бутадиена проходит через максимум, поскольку с ростом температуры повышается содержание в реакционной массе продуктов крекинга. Однако отклонение максимального значения от значений на границах интервала варьирования температуры незначительно. С увеличением мольного разбавления сырья водяным паром уменьшаются все основные показатели процесса: конверсия бутенов, селективность образования бутадиена, его выход в (т/ч) и массовый выход в (%мас). Такое падение конверсии бутенов и выхода бутадиена определяется снижением начальной концентрации бутена и уменьшением времени контакта. На снижение селективности образования бутадиена влияет увеличение средней температуры в реакторе за счет повышения массовой доли горячего пара. При увеличении скорости подачи сырья с 300 до 800 ч-1 возрастает селективность процесса по образованию бутадиена, а конверсия бутенов и их массовая доля на выходе из реактора падают, что также определяется уменьшением времени контакта. Однако выход бутадиена в (т/ч) повышается, поскольку заметно увеличивается количество подаваемых в реактор бутенов. 3.3. Оптимизация процесса
Для расчета оптимального режима ведения процесса дегидрирования метилбутенов в изопрен в адиабатическом реакторе с неподвижным слоем катализатора в качестве критерия оптимизации выбран максимальный выход продукта (С?з, кг/ч). Поскольку выход продукта существенно зависит от конверсии метилбутенов и селективности образования изопрена, на решение наложены ограничения: конверсия X 42%, селективность S 83% [8].
Управлениями являются: 1) скорость подачи жидкого сырья на входе в реактор (w, ч-1); 2) мольное разбавление сырья водяным паром (п, моль пара / 1 моль сырья); 3) температура на входе в слой катализатора (Т, С).
Любая система моделирования включает набор следующих основных подсистем, обеспечивающих решение задачи моделирования химико-технологических процессов: Набор термодинамических данных по чистым компонентам (база данных) и средства, позволяющие выбирать определенные компоненты для описания качественного состава рабочих смесей; v Различные: методы расчета термодинамических свойств, таких как коэффициента фазового равновесия; энтальпии, энтропии, плотности, растворимости газов и твердых веществ в жидкостях; Набор кинетических моделей для исследуемых процессов; Расчет математической модели процесса в различных типах каталитических реакторов; Проведение вариации режимных параметров с определением предельных возможностей процесса в реакторах; Решение задач технологической оптимизации эффективными алгоритмами с целью получения оптимального режима.
В данной работе разработан программный пакет Chemical System (ChemSYS) позволяющий строить стационарные и динамические модели, проводить вычислительный эксперимент и решать задачу оптимизации с ограничениями на фазовые переменные и переменные управления.
Рассмотрим простую схему: разработчик - заказчик В этой схеме заказчик использует только те функциональные возможности программы, которые предоставлены разработчиком. Для изменения этих возможностей заказчик выставляет требования разработчику, разработчик изменяет программу и возвращает заказчику. Таким образом, при интенсивном изменении требований к программе, у разработчика всегда большая загрузка, а у заказчика постоянно тормозится работа. Рассмотрим другую схему: разработчик -н- технолог -н- пользователь. В этой схеме заказчик образно разделяется на две составляющие — технолог и пользователь. Под технологом здесь понимается человек, который является посредником между разработчиком и пользователем. Технолог профессионально владеет той предметной областью, для которой разработана программа, но не является программистом. Причем такое разделение заказчика может быть условным — один и тот же человек может выполнять функции, как технолога, так и конечного пользователя. Технолог знает предметную область значительно лучше разработчика и, весьма часто, хотел бы изменить функционирование программы так, как не было предусмотрено программистом. Часть работы программиста передается технологу, но поскольку технолог не является программистом, нужна дополнительная связующая часть. Такой связующей частью может быть проблемно-ориентированный язык, который разработчик включает в свой проект и которым технолог может воспользоваться для изменения функциональности программы. Естественно, что этот язык должен оперировать терминами той предметной области, в которой работает технолог. То есть между формулировкой задачи и языком ее решения нужен минимальный семантический разрыв. Таким образом, интенсивность взаимодействия между разработчиком и технологом может быть уменьшена, так как значительную часть изменений технолог может делать самостоятельно. Один из наиболее приемлемых вариантов — встраивание в программу интерпретатора проблемно-ориентированного языка.
Этапы работы и интерфейс программы
На основе информации о действующем производстве создается химико-технологический проект, включающий данные по компонентам и реакциям процесса, конструктивные параметры оборудования. Пользователь вводит компоненты процесса и их молярные массы, формирует уравнения реакций. На основе исходного представления, которое формулирует технолог, нужно сгенерировать код для компиляции.
Важным моментом является выбор модели аппарата, поскольку он может быть рассчитан по различным моделям. Итогом первого этапа является воспроизведение расчетных величин и показателей производства. Следующим шагом является воспроизведение рабочих данных. Обычно расчетные и реальные результаты могут расходиться. Согласование результатов расчета с экспериментальными данными проводится в тесном контакте с технологами и механиками цеха, и уже на этой стадии создаются предпосылки к повышению эффективности функционирования производства. При недопустимом отклонении расчетных данных от экспериментальных пользователь корректирует параметры модели: кинетические константы, вид кинетических уравнений, параметры реактора и др. Оболочка представляет собой окно с пятью вкладками, на которых поэтапно задаются все составляющие математической модели. Шаг 1. В таблицы вводятся основные и дополнительные составляющие реакционной смеси. Расчет молярных масс проводится автоматически по данным из присоединенной базы данных. При введении новых веществ есть возможность дополнить базу или корректировать данные. Возможно также построение графиков изменения данных показателей при варьировании одного из управлений при фиксированных значениях остальных. Отображение результатов происходит динамически, т.е. при изменении значения одного из управлений, автоматически отображается изменение результатов.
Для исследования пусковых режимов и поведения системы во времени в программной оболочке предусмотрен динамический вывод данных, изменяющихся во времени, что позволяет также отрабатывать навыки поведения обслуживающего персонала в нештатных ситуациях.
Графики строятся с помощью компонента TChart, для вывода числовых данных используется TStringGrid. Компонент TChart позволяет строить различные диаграммы и графики, является контейнером объектов Series типа TChartSeries — серий данных, характеризующихся различными стилями отображения. Каждая серия будет соответствовать одной кривой на графике. Компонент TStringGrid позволяет отображать текстовые данные в ячейках, расположенных в строках и столбцах. В таблице строк находится множество свойств и методов для контроля и отображения данных, так же как и для использования преимуществ их табличного расположения. Этот компонент называют таблицей строк. Таким образом применение моделирующей программы позволяет быстро провести анализ всевозможных режимов работы реактора. При этом пользователю не обязательно владеть алгоритмическими языками программирования — от него требуется только знание технологии конкретного производства.
Все данные по процессу сохраняются в іпі-файле, который представляет собой текстовой файл, содержащий информацию, разделенную па логические группы, называемые секциями. Внутри каждой секции данные записаны под ключевыми именами. Формат: keyname = value . Изменения в файл можно вносить с помощью любого текстового редактора, например блокнота или MS Word. Запись данных в файл производится командами: WriteInteger(const Section, Ident: string; Value: Longint); — присвоить элементу с именем Ident раздела Section значение типа Longint; WriteString(const Section, Ident, Value: string); — присвоить элементу с именем Ident раздела Section значение типа String; WriteFloat(const Section, Ident: string; Value: real); — присвоить элементу с именем Ident раздела Section значение типа Real; Чтение данных из файла: ReadSectionValues(const Section: string; Strings: TStrings); — прочитать имена и значения всех корректно описанных переменных раздела Section. Формат: имя переменной = значение ; ReadInteger(const Section, Ident: string; Default: Longint): Longint; — прочитать значение переменной типа Longint раздела Section с именем Ident, и если его нет, то вместо него подставить значение Default; ReadString(const Section, Ident, Default: string): string; — прочитать 102 значение переменной типа String раздела Section с именем Ident, и если его нет, то вместо него подставить значение Default; ReadFloat(const Section, Ident: string; Default: Real): Real; — прочитать значение переменной типа Real раздела Section с именем Ident, и если его нет, то вместо него подставить значение Default. Модуль Data. Содержит описание всех глобальных переменных, массивов и структур, используемых в программе. Пользовательские типы, используемые в программе: Массивы: mke=array[-20..20] of real; — значений кинетических констант и энергий активации; mbq=array[1..50] of real; — коэффициентов и теплот адсорбции; steh=array[1..20,1..10] of real; — коэффициентов стехиометрической матрицы; mas=array[1..20]of real; — фазовых переменных; param=array[1..50] of real; — значений пользовательских параметров; masu=array[1..4]of real; — значений управлений; mols=array[1..20] of real; — молярных масс веществ. Процедурные типы: procedure(x,xn,h:real;var yi:mas;u:masu;f:funs;n:byte); — для описания процедуры решения системы дифференциальных уравнений, методами Рунге-Кутты, Кутты-Мерсона; function(n,r,nf:byte;y:real;x:mas;u:masu;m:mas;l:integer) :real; — для функции, задающей правые части дифференциальных уравнений системы уравнений модели; array [l.-.15]offunction(n:byte;x:mas;u:masu;k:mke;b:mbq;p:param):real; — массив функций, задаваемых пользователем, описывающих кинетическую модель.
В программе использован модульный принцип построения, позволяющий независимо модернизировать отдельные ее части с учетом возникающих потребностей и включать их в иные пакеты программ. Стандартные модули, используемые в программе: Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ComCtrls, ExtCtrls, Menus, Grids, Buttons, OleCtrls, TeEngine, Series, TeeProcs, Chart, inifiles, ShockwaveFlashObjectsTLB, jpeg, richedit. Модули содержат процедуры и функции для работы со стандартными классами и компонентами, использованными в приложении. Для подключения нового вычислительного модуля необходимо скопировать файл в папку программы и в проекте в разделе Uses добавить строку имя модуля in файл модуля , затем скомпилировать программу.
Современным подходом к созданию программных средств является использование динамических библиотек ( .dll). Динамическая библиотека — это один или несколько логически законченных фрагментов кода, сохраненных в файле с расширением dll. Этот код может быть запущен на выполнение в процессе функционирования какой-либо другой программы (такие приложения называются вызывающими по отношению к библиотеке), но сама DLL не является запускаемым файлом. Функции, хранящиеся в библиотеке, могут быть вызваны на выполнение из приложений, разработанных не только на Object Pascal, а, например, с использованием C++Builder, Visual Basic, Visual C++. Такой подход накладывает некоторые ограничения на принцип разработки библиотеки. Использование дина мических библиотек предоставляет возможность создавать универсальные открытые для модерницации программные продукты. Библиотека, загру женная в оперативную память, может использоваться несколькими прило жениями, т.е. выделение общих для нескольких приложений DLL приводит к экономии как дискового пространства, так и оперативной памяти. Кроме этого, создание ресурсов интерфейсов внутри DLL является одним из пу тей решения вопроса быстрого перевода интерфейса программы на другие языки. К примеру, можно создать одно приложение, которое в зависимости от версии динамической библиотеки будет выводить сообщения на различ ных языках.