Package: pycatalicism
pycatalicismПрограмма для контроля оборудования для измерения каталитических характеристик материалов в проточном режиме в реакциях окисления CO и гидрирования CO2с образованием CO и алканов до пентана. Оборудование состоит из 3х регуляторов расхода газа, печи и хроматографа. Контроль температуры печи осуществляется с помощью ПИД регулятора. Также с помощью программы можно проводить расчёт основных параметров: конверсии (степени превращения) каталитической реакции, активности и селективности.СодержаниеУстановка программыРассчёт параметровУправление печиУправление хроматографомУправление регуляторами расхода газовУправление соленоидными клапанамиПроведение активацииПроведение измеренияПроведение измерения исходной концентрации реагентовИзменения в новых версияхУстановка программыArch LinuxУстановить python:pacman -S pythonУстановить программу:pip install pycatalicismWindowsУстановить python отсюда:python.orgУстановитьVisual C++ Redistributable for Visual Studio 2015Установить программу:pip install pycatalicismСкачать и установить драйвер usb -> com отсюда:silabs.comРассчёт характеристик катализаторовpycat calc --conversion|--selectivity [--output-data OUTPUT_DATA] [--show-plot] [--output-plot OUPUT_PLOT] [--products-basis] [--sample-name SAMPLE_NAME] input-data-path initial-data-path {co-oxidation|co2-hydrogenation}Аргументы:input-data-pathпуть к папке с файлами, содержащими данные о концентрациях компонентов реакции, температуре и потоках газовinitial-data-pathпуть к файлу с данными о начальной концентрации компонентов реакции{co-oxidation|co2-hydrogenation}реакция, для которой провести расчётФлаги:--conversion|--selectivityследует ли провести расчёт конверсии и/или селективности (по крайней мере один из вариантов должен быть указан)--ouput-data OUPUT_DATAпуть к папке, в которую сохранить результаты расчёта--show-plotпоказать график зависимости конверсии/селективности от температуры--ouput-plot OUTPUT_PLOTпуть к папке, в которую сохранить график зависимости конверсии/селективности--products-basisрассчитать конверсию из данных о концентрации продуктов, вместо исходных компонентов--sample-nameid образца будет добавлено в файл с результатами расчёта, а также на графикДля расчёта конверсии и селективности программе необходимо знать исходные параметры, измеренные на входе в реактор, и параметры на выходе из реактора, полученные в результате измерения при различных температурах реакции. Минимальные параметры для расчёта: концентрации компонентов реакции в мол.% и температуры, при которых проводились измерения. Данные для расчёта должны сохраняться в файлах в определённом формате:Температура<tab>temperature<br>
    Название<tab>Концентрацияcompound-name<tab>compound-concentration[<br>
    Темп. (газовые часы)<tab>flow-temperatureДавление (газовые часы)<tab>flow-pressureПоток<tab>flow-rate]Если файл содержит данные в неверном формате, такой файл игнорируется, а соответствующее сообщение выводится в консоль.temperatureтемпература, при которой проводилось измерение концентраций и которая будет использоваться в качестве данных оси абсцисс для построения графиковcompound-nameназвание компонента реакцииэта таблица получается копированием данных результатов расчётов из программы Хроматэк Аналитик. Помимо этих данных в таблице также могут присутствовать столбцы других значений (напр. высота пика, площадь и т.п.), что не влияет на конечный результатcompound-concentraionконцентрация компонента в мол.%flow-temperatureтемпература в точке измерения общего потока газов в °CДанные параметры должны быть измерены с помощью газовых часов на выходе из реактора. Эти параметры не являются необходимыми для расчёта характеристик катализатора. Если они не будут указаны в файле, параметры всё равно будут рассчитаны, однако, в результатах будет ошибка, связанная с изменением объёма реагентов.flow-pressureдавление в точке измерения общего потока газов в Паflow-rateобщий поток газов в мл/минРассчёты проводятся с использованием следующих уравнений:Окисление COгде- конверсия CO,- концентрации CO до и после каталитического реактора, соответственно, в мол.%,- общий поток газов до и после каталитического реактора, соответственно, в м3/с,- давление в точке измерения общего потока газов до и после каталитического реактора, соответственно, в Па,- температура в точке измерения общего потока газов до и после каталитического реактора, соответственно, в КГидрирование CO2где- конверсия CO2,- концентрации CO2до и после каталитического реактора, соответственно, в мол.%,- общий поток газов до и после каталитического реактора, соответственно, в м3/с,- давление газа в точке измерения общего потока газов до и после каталитического реактора, соответственно, в Па,- температура газа в точке измерения общего потока газов до и после каталитического реактора, соответственно, в КгдеS - селективность по отношению компонента i- концентрация компонента i (CO, CH4, C2H6, C3H8, i-C4H10, n-C4H10, i-C5H12, n-C5H12), в мол.%n - стехиометрический коэффициент в реакции гидрирования CO2(количество атомов C в молекуле продукта)гидрирование CO2, расчёт на основе продуктов реакцииДанный метод может быть использован для расчёта конверсии углекислого газа, однако, результат может содержать ошибку, связанную с предположением, что только использованные для расчёта компоненты образовались в результате реакции.где- концентрация CO2до каталитического реактора в мол.%- концентрации компонента p (CO, CH4, C2H6, C3H8, i-C4H10, n-C4H10, i-C5H12, n-C5H12), в мол.%n - стехиометрический коэффициент в реакции гидрирования CO2(количество атомов C в молекуле продукта),- общий поток газов до и после каталитического реактора, соответственно, в м3/с,- давление газа в точке измерения общего потока газа до и после каталитического реактора, соответственно, в Па,- температура газа в точке измерения общего потока газа до и после каталитического реактора, соответственно, в КВ случае, если данные об измерении общего потока газа не были измерены, конверсия рассчитывается только на основе данных о концентрациях, а в консоль выводится предупреждение.Контроль печиКонтроль печи осуществляется с помощью контроллера ОВЕН ТРМ101, связь с которым устанавливается через последовательный порт. Параметры конфигурации контроллера должны быть прописаны в файлеconfig.pypycat furnace set-temperature temperatureУстанавить значение параметра SP регулятора.Аргументы:temperatureТемпература в °Cpycat furnace print-temperatureВывести измеренную температуру в консоль.Управление хроматографомОсуществляется управление хроматографом Хроматэк Кристалл 5000 через протокол Modbus. Для работы протокола необходимо, чтобы был запущен сервер Modbus, в качестве которого выступают Панель управления и Аналитик, а также специальная программа, которую необходимо установить с установочного диска ПО Хроматэк (см. документацию Modbus из комплекта документации Хроматэк для более детальной инструкции). Перед работой с pycatalytic, необходимо добавить нужные регистры Modbus в Панели управления и Аналитик. Список необходимых регистров прописывается в конфигурации программы и может быть найден здесь:config.pyДоступные комманды:pycat chromatograph set-method methodУстанавливает инструментальный метод хроматографа. Хроматограф переходит в режим "Подготовка". Список методов должен быть вconfig.py. Если Панель управления и Аналитик не запущены, запускает их, устанавливает соединение с хроматографом. В этом случае программа ждёт успешного запуска Панели управления и Аналитика, а также установления соединения. Если, при этом, хроматограф выключен, программа зависнет.Аргументы:methodинструментальный метод хроматографаpycat chromatograph start-analysisНачинает измерение.pycat chromatograph set-passport --name NAME [--volume VOL] [--dilution DIL] [--purpose {analysis|graduation}] --operator OP --column COL [--lab-name LN]Устанавливает значения паспорта хроматограммы. Эта команда должна использоваться только после окончания анализа на хроматографе.Необходимые параметры:--name NAMEназвание хроматограммы--operator OPоператор--column COLназвание колонкиОпциональные параметры:--volume VOLобъём пробы, 0.5 по умолчанию--dilution DILразбавление пробы, 1 по умолчанию--purpose {analysis|graduation}назначение хроматограммы, analysis по умолчанию--lab-name LNназвание лаборатории, Inorganic Nanomaterials по умолчаниюУправление регуляторами расхода газовПрограмма осуществляет управление регуляторами расхода газов Bronkhorst F201CV для регулирования потока He, CO2, O2, H2, CO или CH4. Параметры соответствующих регуляторов расхода газов должны быть прописаны в файлеconfig.pypycat mfc set-flow-rate --gas {He|CO2|O2|H2|CO|CH4} --flow-rate FRУстанавливает поток газа--gas {He|CO2|O2|H2|CO|CH4}газ, для которого необходимо установить поток. Программа выбирает регулятор на основе этого значения--flow-rate FRпоток газа в н.мл/минpycat mfc set-calibration --gas {He|CO2|O2|H2|CO|CH4} --calibration-number CNУстанавливает калибровку регулятора расхода газа--gas {He|CO2|O2|H2|CO|CH4}газ, для которого необходимо установить калибровку. Программа выбирает регулятор на основе этого значения--calibration-number CNномер калибровки, указанный в документации, поставляемой с приборомpycat mfc print-flow-rate --gas {He|CO2|O2|H2|CO|CH4}Выводит измеренный поток газа в консоль в н.мл/мин--gas {He|CO2|O2|H2|CO|CH4}газ, для которого нужно показать поток. Программа выбирает регулятор на основе этого значенияУправление соленоидными клапанамиПрограмма осуществляет управление соленоидными клапанами VSAA, подключёнными к ардуино согласно схемеscheme. Соответствие номеров клапанов и соответствующих им газов должно быть прописано в файлеconfig.py.pycat valve set-state --gas G --state {open|close}Изменяет состояние клапана--gas Gгаз, для которого необходимо изменить состояние клапана. Должен быть прописан в файле конфигурации--state {open|close}open - открыть клапанclose - закрыть клапанpycat valve get-state --gas GЗапрашивает состояние клапана--gas Gгаз, для которого запрашивается состояние клапана. Должен быть прописан в файле конфигурацииАктивацияПроведение активации катализатора перед анализом свойств. Для проведения активации все газы должны быть подключены к системе, клапаны открыты. Режим активации задаётся в файле конфигурации, пример которого можно посмотреть здесь:activation_config.py. После запуска программа устанавливает заданные в конфигурации потоки, продувает систему в течение 30 мин, греет печь до указанной температуры, проводит выдержку при данной температуре в течение указанного в конфигурации времени и отключают нагрев. После охлаждения ниже определённой температуры потоки газов меняются на новые, указанные в конфигурации. При активации строятся графики зависимости температуры и потоков газов от времени. После окончания активации, для того, чтобы остановить построение графика, нужно нажать Enter в командной строке.pycat activate --config CONFIG--config CONFIGпуть к файлу конфигурации с параметрами активацииПроведение измеренияПроведение измерения состава газа после реактора при различных температурах. Программа проводит продувку хроматографа перед анализом (запускает метод purge на хроматографе), проводит нагрев до температуры измерения, ждёт заданное время, запускает измерение хроматограммы и повторяет данную процедуру для каждой температуры анализа. После окончания анализа программа выключает печь и запускает охлаждение хроматографа. Все параметры измерения должны быть указаны в файле конфигурации, пример которого можно найти здесь:measurement_config.py. При измерении строятся графики зависимости температуры, потоков газов от времени, а также отмечаются моменты времени начала анализа хроматографом.pycat measure --config CONFIG--config CONFIGпуть к файлу конфигурации с параметрами измеренияПроведение измерения исходной концентрации реагентовПроведение серии измерений состава газа при комнатной температуре. Результаты измерений необходимы для расчёта конверсии реакции. Программа устанавливает потоки газов, запускает продувку хроматографа (метод purge) и снимает несколько хроматограмм. По завершении запускает охлаждение хроматографа (метод cooling). Параметры проведения эксперимента должны быть указаны в файле конфигурации, пример которого можно найти здесь:init_conc_config.py. При измерении строятся графики зависимости температуры, потоков газов от времени, а также отмечаются моменты времени начала анализа хроматографом.pycat measure-init-concentration --config CONFIG--config CONFIGпуть к файлу конфигурации с параметрами измеренияТуДупереписать модуль calc: селективность должна рассчитываться автоматически, если это имеет смысл; должно быть 2 командыcalculate activityиcalculate conversionавтоматически конвертировать данные с газовых часов в СИ при рассчётеИзменения в новых версиях2.0.1Исправлена ошибкаissue 192.0.2Исправлена ошибкаissue 1