УДК 621.165
Технические науки
Ильичев Владимир Юрьевич, к.т.н., доцент кафедр «Тепловые двигатели и
гидромашины» и «Мехатроника и робототехнические системы», Калужский филиал ФГОУ ВО «Московский государственный технический университет имени Н.Э. Баумана (национальный исследовательский
университет), г. Калуга, Россия Герасимова Наталия Сергеевна, к.т.н., доцент кафедры «Материаловедение и химия», Калужский филиал ФГОУ ВО «Московский государственный технический университет имени Н.Э. Баумана (национальный исследовательский университет), г. Калуга, Россия Мусатов Давид Александрович, магистрант кафедры «Тепловые двигатели и гидромашины», Калужский филиал ФГОУ ВО «Московский государственный технический университет имени Н.Э. Баумана (национальный исследовательский университет), г. Калуга, Россия
АВТОМАТИЗАЦИЯ РАСЧЁТА СТУПЕНИ ПАРОВОЙ ТУРБИНЫ С ПОМОЩЬЮ ПРОГРАММЫ НА ЯЗЫКЕ PYTHON
Аннотация: В статье описана созданная авторами методика автоматизированного расчёта ступени паровой турбины с помощью разработанного программного кода на языке Python. Для программы был подобран необходимый набор библиотек функций, кратко описанных в работе. Произведён вариантный расчёт различных ступеней с целью верификации методики. По результатам исследования построены трёхмерные модели лопаток ступени и произведён их расчёт на прочность. Произведено сравнение описанной методики с альтернативными методами проектирования.
Ключевые слова: паровая турбина, ступень турбины, автоматизация расчётов, функции Python, трёхмерное моделирование.
Annotation: The article describes the method of automated calculation of the stage of a steam turbine created by the authors using the developed program code in the Python language. For the program, the necessary set of function libraries was selected, which are briefly described in the work. A variant calculation of some stages was made in order to verify the method. According to the results of the study, three-dimensional models of stage blades were built and their strength calculation was made. The described procedure is compared with alternative design methods.
Keywords: steam turbine, turbine stage, calculation automation, Python functions, three-dimensional modeling.
Введение
Расчёт теплофизических, геометрических и прочих параметров проточных частей паровых турбин является чрезвычайно трудоёмким и долгим процессом, поэтому его автоматизация на основе современных программных средств при проектировании [11] является просто необходимой, в связи с всё возрастающей конкуренцией в области энергетики. При этом желательно, чтобы программный код был как можно менее громоздким и при этом понятным проектировщикам, не имеющим больших навыков в программировании. Результаты расчётов при этом должны получаться достаточно точными для практики изготовления и эксплуатации реальных турбин. В связи с этим необходимо подобрать оптимальный набор методик, разработать программный код, и в случае необходимости для некоторых целей использовать сторонние программы.
По результатам изучения современных языков программирования для основного расчётного блока был выбран универсальный и широко распространённый язык Python [2], для которого имеется весь набор необходимых для расчёта функций, многие из которых оформлены в специальные библиотеки.
Таким образом, целью описываемой работы являлась разработка
программы для автоматизации расчёта ступени паровой турбины. Далее с помощью разработанного программного кода нужно осуществить автоматизированное проектирование нескольких вариантов исполнения ступени с проверки правильности работы программы. Затем следует разработать методику профилирования лопаток одного из вариантов ступени и рассчитать их на прочность.
Материал и методы исследования
В качестве основы для создания программы взята давно известная и широко применяемая расчётная методика [1]. Однако, для реализации современного подхода к газо- и гидродинамическому расчёту турбин, она должна быть дополнена современными средствами определения теплофизических и прочих параметров рабочей (в данном случае паровой) среды, а также визуализации основных результатов.
Рассмотрим применённые при создании программного кода специальные библиотеки для языка программирования Python и некоторые технологии, необходимые для оцифровки зависимостей исходной методики расчёта.
Основным модулем Python, значительно облегчающим вычисление теплофизических параметров веществ, является библиотека CoolProp [14], позволяющая находить свойства более 120 веществ (среди которых и вода в парообразном агрегатном состоянии). Для определения любого теплофизического параметра необходимо выбрать вещество, и два других параметра, так как известно, что термодинамическое состояние вещества однозначно определяется любыми двумя его параметрами [8]. В разработанной программе библиотека CoolProp использована для определения давлений, энтальпий, энтропий, теплоперепадов, степеней влажности, чисел Маха и прочих свойств водяного пара, которые при расчётах по учебникам принято определять по таблицам или диаграммам состояния пара. Необходимо отметить, что кроме существенного ускорения процесса вычислений, библиотека CoolProp позволяет также повысить и их точность. Она уже ранее была многократно опробована авторами в программах на Python для
вычисления свойств разных веществ [12] и отлично зарекомендовала себя.
В описываемой программе на Python для расчёта турбинной ступени, как и большом количестве программ для других целей, часто не обойтись без использования двух модулей: Math - для выполнения математических операций разной степени сложности (например, тригонометрических, используемых при определении углов входа и выхода потока пара в турбинных решётках) и Numpy [13] - для создания матриц и заполнения их расчётными значениями. Эти библиотеки необходимы, так как базовые возможности Python без подключения дополнительных библиотек достаточно примитивны (собственно говоря, этот язык и основан на использовании нужных для решения определённых задач модулей), а функции упомянутых библиотек являются основными при сложных расчётах.
Использование массивов с помощью функций Numpy обычно необходимо для вычислений параметров в программных циклах и для дальнейшего отображения их взаимных зависимостей на графиках. Для визуализации графической информации используется модуль Matplotlib [3], позволяющей добиться наглядности и необходимой степени качества, предъявляемого к научным иллюстрациям.
Следующим широко применяемым в описываемой программе методом является использование выведенных авторами математических аппроксимационных зависимостей [6]. Этот приём является необходимым, так как в базовой методике расчёта проточной части используется большое число экспериментальных данных, оформленных в виде многочисленных графиков, с помощью которых определяются коэффициенты, необходимые для получения основных параметров ступени. Для использования в программе эти графики нуждаются в «оцифровке», то есть в выражении их в виде математических зависимостей. В качестве примера рассмотрим аппроксимацию одной зависимости - для определения коэффициента расхода [9] для сопловых и рабочих решёток ступени (рис. 1).
Рис. 1. Экспериментальные графики для определения коэффициента расхода.
Как видно из рисунка, коэффициент расхода зависит сразу от двух параметров - отношения синусов углов входа и выхода потока в решётке и отношения хорды профиля к длине лопатки b/l. Таким образом, и выводимая аппроксимационная зависимость должна содержать в себе оба этих параметра. Для выполнения этого условия вначале для каждого отношения синусов углов в электронных таблицах Excel строилась и выражалась уравнением своя линия тренда [7].
Уравнения линий трендов для каждого отношения z = sin ^ (в
sin р2
уравнениях b/l обозначено как x):
для z=1: l=-0,0109x + 0,989; для z= 1,5: j = -0,0133x + 0,985; для z=2: j = -0,0167x + 0,981; для z=3: J = -0,0213x + 0,976;
для z=5: j = -0,0267x + 0.97.
Как видно из рис. 1 и полученных формул, линейные уравнения линий трендов дают очень точное приближение к графическим зависимостям. Далее необходимо вывести обобщённое уравнение линии трендов, соответствующее коэффициентам при x в зависимости от z: -0,0109; -0,0133; -0,0167; -0,0213; -0,0267:
y = 0,0006z2 - 0,0078z + 0,0035.
Уравнение линии трендов, соответствующее свободным членам в зависимости от z: 0,989; 0,985; 0,981; 0,976; 0,97:
у = -0,012ln z + 0,9893.
Как показала оценка по минимуму среднеквадратичного отклонения, приведённые формулы (полином второго порядка и логарифмическая зависимость) наилучшим образом описывают изменение значений коэффициентов при х и свободных членов в зависимости от отношения
sin Я
z =-—.
sin Я2
Теперь из двух последних формул можно записать регрессионную зависимость коэффициента расхода от двух переменных, имеющую достаточно высокую точность:
j = (0,0006z2 - 0,0078z - 0,0035) • x - 0,012 ln z + 0,9893
Подобным же образом оцифровывались и остальные экспериментальные графики из базовой методики расчёта ступени турбины.
В соответствии с описанными принципами, код составленной на языке Python программы автоматизированного проектирования ступени паровой турбины состоит из следующих основных блоков:
- загрузка необходимых библиотек функций;
- ввод исходных данных;
- определение основных параметров пара перед ступенью и за ней;
- определение предварительных значений эмпирических коэффициентов;
- расчёт располагаемого теплоперепада на ступень;
- определение диаметра ступени;
- расчёт основных параметров ступени;
- определение уточнённого значения эмпирических коэффициентов в организованном для этого цикле с помощью функции «while», выполняемым до тех пор, пока погрешность расчёта не станет ниже заданного значения;
- определение лопаточного КПД ступени;
- построение треугольников скоростей с использованием библиотеки Mathplotlib;
- определение потерь и относительного внутреннего КПД ступени [10].
Конечный результат программа представляет в виде упорядоченного
массива полученных значений, а также графического схематичного изображения треугольников скоростей в ступени с помощью модуля Mathplotlib (рис. 2). Треугольники строятся в полярных координатах по величинам скоростей и углам входа потока в соответствующие решётки профилей (сопловые и рабочие) и выхода из них и используются для первоначальной проверки оптимальности углов (например, для уменьшения потерь энергии в последующей ступени угол выхода потока пара должен быть как можно ближе к 90° - на графике это соответствует 270° для того, чтобы треугольники не были перевёрнуты).
270'
Рис. 2. Выводимая программой схема направлений потоков и величин скоростей.
Величины скоростей указаны в полярных координатах на концентрических окружностях разного радиуса.
Пример расчёта
Для отработки методики расчёта и устранения программных ошибок были произведены вариантные расчёты ступеней разных уже спроектированных и хорошо показавших себя в эксплуатации отечественных турбин с вводом различных исходных данных и получением соответствующих им выходных параметров. Расчёты показали высокую степень соответствия реальным параметрам ступеней. Ввиду огромного количества параметров сравниваемых вариантов результаты в статье не приводятся.
Так как целью работы является не только расчёт параметров ступеней, но и построение по результатам расчёта моделей лопаток, рассмотрим созданную для решения данной задачи методику.
Созданный на данный момент вариант программы позволяет выводить на
экран лишь эскизы треугольников скоростей (подобные показанному на рис. 2) в масштабе, где видны скорости и углы потока пара. При этом программа выводит также все численные значения, позволяющие начертить треугольник скоростей в «классическом» виде, например, с использованием средств САПР AutoCAD или другой (в табл. 1 приведены рассчитанные значения, а на рис. 3 представлен созданный таким образом треугольник, соответствующий эскизу рис. 2).
Таблица 1. Результаты расчёта скоростей и углов входа и выхода потока пара.
u, м/с Cl, w1, C2, W2,
ai,° Pi,° a2< ° Р2,°
м/с м/с м/с м/с
156,9 318,37 13 169,3 25,1 64,28 86,16 173,46 21,5
Рис. 3. Построенный по результатам работы программы треугольник скоростей пара в
ступени турбины.
Далее на основании полученных углов входа и выхода потока пара по атласу профилей лопаток выбираются наиболее подходящие профили: для решётки соплового аппарата С9012А (рис. 4) и для рабочей решётки Р3021А (рис. 5).
/Л
45,21
Рис. 4. Выбранный профиль решётки соплового аппарата.
Рис. 5. Выбранный профиль рабочей решётки.
С помощью, разработанной ранее авторами программы данные профили могут быть рассчитаны на прочность [4]. При этом задаётся предельное напряжение в лопатке и вычисляется её минимальная хорда Ь для обеспечения такого напряжения (на рис. 4 и 5 показаны хорды из атласа профилей, которые можно менять). Процесс изменения напряжения согласно изменению хорды визуализируется.
В результате применения описанной методики проектирования ступени паровой турбины можно построить трёхмерные модели лопаток (на рис. 6 изображена рабочая лопатка с профилем, изображённым на рис. 5), по которым в системах САПР АшуБ или SolidWorks можно получить рабочие чертежи данных деталей.
Рис. 6. Твердотельная трёхмерная модель спроектированной рабочей лопатки ступени
турбины.
Такие же твердотельные модели лопаток можно создать с использованием языка Python, что было рассмотрено в статьях автора. Данные твердотельные модели подходят не только для демонстрации форм лопаток, а также для автоматизированного их изготовления, например, с использованием станков с ЧПУ [5].
Заключение
Таким образом, все цели, поставленные в данном исследовании, были полностью выполнены. Причём, работа не была ограничена только расчётом параметров ступени паровой турбины, но заключала в себе последующие стадии проектирования рабочих решёток ступени, вплоть до стадии их изготовления.
Показано, что язык программирования Python обладает средствами, позволяющими реализовать все описанные стадии. При этом рассмотрено и применение альтернативных, «традиционных» способов расчёта и построения лопаток, которые в данной работе использовались для верификации правильности проектирования с использованием только языка и библиотек Python.
Также разработан метод вывода аппроксимирующих математических зависимостей, включающих в себя три параметра (который в перспективе можно использовать и для большего количества параметров). Данный метод может быть широко использован в том числе для создания расчётных программ по известным методикам, содержащим оформленные в виде таблиц или графиков экспериментальные данные. В случае необходимости частого использования большого количества аппроксимированных данных их можно поместить в специальную библиотеку Python, напоминающую описанный в работе модуль CoolProp.
Созданная и описанная в работе программа расчёта отдельной ступени паровой турбины в настоящее время используется в качестве модуля в программном коде расчёта всей турбины, в основном состоящем из последовательного расчёта её ступеней. При этом также организуется цикл перерасчёта для достижения заданной точности определения ключевых параметров турбины.
Библиографический список:
1. Akl M., Mohammad B., Samir K. The constructional analysis of third stage blade of low pressure steam turbine with design programs aided computer. // Аллея науки. 2020. Т. 1. № 10 (49). С. 54-63.
2. Ильичев В.Ю., Качурин А.В. Создание программ на языке Python для исследования множества Мандельброта. // E-Scio. 2021. № 5 (56). С. 362-371.
3. Булкин А.Е., Костюк А.Г., Трухний А.Д. Паровые и газовые турбины для электростанций. М.: Издательский дом «МЭИ». 2008. 556 с.
4. Welcome to CoolProp. [Электронный ресурс]. URL: http://www.coolprop.org (Дата обращения 05.01.2022 г.).
5. Потапов А.М., Жуков В.П. Компьютерное моделирование теплофизических свойств воды и водяного пара. // В сборнике: Электромеханотроника и управление. Одиннадцатая международная научно-техническая конференция студентов, аспирантов и молодых учёных «Энергия-
2016». Ивановский государственный энергетический университет имени В.И. Ленина. 2016. С. 219-221.
6. Ilichev V.Y. Development of program for determination of fractal dimensions of images. // International Research Journal. 2021. № 4-1 (106). С. 6-10.
7. Ilichev V.Yu. Development of procedure for determination of characteristics of heated polycarbonate greenhouses. // International Research Journal. 2021. № 21 (104). С. 132-135.
8. Ильичев В.Ю. Использование рекурсивных функций для создания фрактальной графики средствами языка Python. // Системный администратор. 2021. № 3 (220). С. 92-95.
9. Каракаев А.Б., Костенко А.В. Проверка адекватности полиномиальных зависимостей однофазного асинхронного двигателя без внешних фазосдвигающих устройств для систем судовой автоматики. // Морские интеллектуальные технологии. 2021. Т. 1. № 4 (54). С. 71-78.
10. Симашов Р.Р., Чехранов С.В. Расчетная оценка коэффициентов расхода при моделировании переменных режимов малорасходных турбин. // Транспортное дело России. 2015. № 6. С. 272-275.
11. Пиль Э.А. Применение линии тренда для определения зависимости двух параметров. // Проблемы научной мысли. 2017. Т. 12. № 1. С. 75-78.
12. Степанова Е.Л., Киреев С.С. Оценка показателей работы теплофикационной ПТУ при изменении внутреннего относительного КПД отсеков паровой противодавленческой турбины. // Вестник Южно-Уральского государственного университета. Серия: Энергетика. 2021. Т. 21. № 2. С. 14-25.
13. Ильичев В.Ю., Гридчин Н.В. Визуализация масштабируемых 3D-моделей с помощью модуля Matplotlib для Python. // Системный администратор. 2020. № 12 (217). С. 86-89.
14. Ильичев В.Ю. Использование библиотеки ZenCAD языка Python для разработки универсальной методики создания объемных изделий. // Системный администратор. 2021. № 6 (223). С. 82-85.