Как выполнить термодинамический анализ двигателя цикла Отто с помощью Matlab
Table of Contents
Модель цикла Отто Air-Standard
Цикл Отто — это термодинамическая идеализация четырёхтактного двигателя искрового зажигания. Он заменяет сложные процессы впуска, сжатия, сгорания и выхлопа четырьмя обратимыми шагами, которые изолируют основные механизмы преобразования энергии. В модели стандарта воздуха рабочая жидкость — это воздух (обработанный как идеальный газ с постоянным удельным теплом), сгорание аппроксимируется как мгновенное добавление тепла при постоянном объеме, а выхлоп заменяется постоянным отбрасыванием тепла. Это упрощение позволяет прямое вычисление температуры, давления, выходной мощности и тепловой эффективности, что делает его незаменимым первым шагом для понимания масштабирования производительности двигателя.
Четыре процесса, которые формируют цикл:
- Изентропное сжатие (1→2): Поршень сжимает заряд без теплопередачи, повышая температуру и давление.
- Добавление тепла постоянного объема (2→3): моментальное высвобождение энергии (представляющее горение) в верхнем мертвом центре повышает температуру и давление до их пиковых значений.
- Изентропное расширение (3→4): Газы высокого давления толкают поршень вниз, доставляя чистую работу в коленчатый вал.
- Отказ от постоянного объема тепла (4→1): Содержимое цилиндра теряет тепло обратно в исходное состояние, закрывая петлю.
Поскольку модель использует постоянное удельное теплоотношение и игнорирует газообмен, она обеспечивает быстрый эталон, который можно систематически совершенствовать. Реализация этого цикла в MATLAB дает вам гибкий интерактивный инструмент для изучения того, как соотношение сжатия, теплосложение и свойства жидкости влияют на производительность. Предположение в соответствии с воздушным стандартом также обеспечивает удобную верхнюю границу эффективности; реальные двигатели всегда не дотягивают из-за трения, потерь тепла и неполного сгорания.
Создание структурированной среды MATLAB
Начните с создания нового скрипта или функционального файла. Чистое рабочее пространство делает отладку и будущие модификации простыми. Используйте описательный заголовок, который документирует цель, параметры ввода и выходы. Предварительно распределите массивы для переменных состояния при ширине параметров, чтобы избежать накладных расходов. Примите значимые имена переменных, такие как , а не просто (хотя является стандартным в текстах термодинамики) и сохраняйте единицы согласованными во всех (рекомендуемые единицы SI). Типичный блок заголовка может читать:
% otto_cycle_analysis.m % Air‑standard Otto cycle analysis % Inputs: % r – compression ratio (dimensionless) % T1, P1 – intake state (K, Pa) % gamma – specific heat ratio (cp/cv) % Q_in – specific heat addition (J/kg) % Outputs: % state_table – array of T, P, v at four corners % W_net, eta – specific net work (J/kg) and thermal efficiency
Использование встроенных массивов MATLAB или для хранения четырех состояний улучшает читаемость, когда вы позже наносите на график или экспортируете результаты. Например, создайте массив структуры с полями , , , индексируемыми от 1 до 4. , что делает ссылки на свойства состояния интуитивно понятными: дает температуру после сгорания.
Определение параметров критических двигателей
Точность моделирования зависит от входных данных. Как минимум, указываются коэффициент сжатия, давление и температура впуска, удельное теплоотношение и добавленная энергия на единицу массы. Типичными значениями для бензинового двигателя являются:
- Соотношение сжатия r: 8-12 для современных двигателей с искровым зажиганием; более высокие соотношения повышают эффективность, но увеличивают риск детонации. В исследовательских двигателях соотношения до 14 иногда исследуются с использованием современных видов топлива.
- Температура впуска Т1: 300 К (амбиент) или 350 К, если учитывать впускной нагрев воздуха из коллектора и остаточных газов.
- Давление впуска P1: 101325 Па (1 атм) для атмосферных двигателей; до 200 кПа и более для двигателей с турбонаддувом.
- Специфическое теплоотношение γ]: 1,4 для сухого воздуха; 1,3-1,35 для топливовоздушных смесей и продуктов сгорания из-за присутствия трехатомных молекул, таких как CO2 и H2O.
- Специфическое добавление тепла Q in: приблизительно 2,5-3 МДж/кг для бензина на основе более низкой теплотворной способности и стехиометрического соотношения воздух-топливо. Для типичного бензина более низкая теплотворная способность составляет около 44 МДж/кг, но смешивается с воздухом (примерно 14,7:1 соотношение воздух-топливо), плотность энергии смеси становится около 2,9 МДж/кг смеси.
Определите их как переменные MATLAB в верхней части сценария, чтобы их можно было легко изменить для изучения чувствительности.
r = 9.0; % compression ratio T1 = 300; % K P1 = 101325; % Pa gamma = 1.35; % approximate for fuel‑air mixture Q_in = 2500e3; % J/kg R_air = 287; % J/(kg·K)
Вы также можете включить молярную массу воздуха (28,97 г/моль), если позже переключитесь на расчеты на основе молей.
Вычисление четырех угловых государств
При заданных параметрах отношения воздух-стандарт дают точки состояния непосредственно. Анализ производится на единицу массы, поэтому мы работаем с конкретным объемом. Установка объема клиренса на единицу (v2 = 1) упрощает относительное масштабирование; затем v1 = r, потому что коэффициент сжатия v1/v2 = r. Эта нормализация удобна, потому что все объемы выражены относительно объема клиренса.
Состояние 1 (Вход, Нижний Мертвый Центр)
v1 = r; % relative to clearance volume % T1 and P1 are inputs
State 2 (Изентропное сжатие в центре смерти)
Для изентропного процесса с постоянной γ:
v2 = 1; T2 = T1 * r^(gamma-1); P2 = P1 * r^gamma;
Эти отношения вытекают из закона идеального газа и политропного отношения P v^γ = постоянная . Повышение температуры при сжатии является значительным: для r=9 и γ=1,35, T2 ≈ 300 × 9^(0,35) ≈ 690 K.
Состояние 3 (постоянное тепловое добавление)
Сначала вычислите удельное тепло при постоянном объеме:
cv = R_air / (gamma-1); T3 = T2 + Q_in / cv; P3 = P2 * (T3 / T2); v3 = v2; % no volume change
Температура при состоянии 3 может превышать 2500 К для типичного сгорания бензина. Пиковое давление Р3 часто достигает 60–80 бар, что устанавливает конструктивные требования к блоку двигателя и головке.
Состояние 4 (Изентропное расширение до первоначального объема)
Коэффициент расширения от TDC до BDC равен r, но в отношении конкретных объемов v3 = v2 = 1 и v4 = v1 = r, поэтому отношение объема составляет 1/r.
v4 = v1; T4 = T3 * (1/r)^(gamma-1); P4 = P3 * (1/r)^gamma;
Эти четыре точки полностью определяют цикл с точки зрения температуры, давления и конкретного объема. Храните их в массивах для последующего построения графика и расчета. Полезная проверка заключается в том, чтобы проверить, что P4 немного выше P1; разница приводит к выхлопу выхлопных газов.
Расчет чистой работы, тепловой эффективности и эффективного давления
Чистая удельная работа - это разница между добавленным и отклоненным теплом. Для модели стандарта воздуха тепло, отклоненное в процессе 4→1, составляет:
Q_out = cv * (T4 - T1); W_net = Q_in - Q_out;
Термическая эффективность заключается в:
eta = W_net / Q_in; % from energy balance eta_direct = 1 - 1/r^(gamma-1); % direct formula % Both should match within numerical round-off
Среднее эффективное давление (MEP) — это показатель производительности, который сравнивает чистую работу за цикл с объемом смещения. Для стандартного цикла удельный объем смещения составляет v1 — v2 = r — 1.
mep = W_net / (v1 - v2); % Pa
MEP не зависит от размера двигателя и является удобным показателем качества конструкции двигателя. Типичные значения для бензиновых двигателей с естественным аспирацией составляют 8-12 бар (0,8-1,2 МПа). Выход MEP наряду с эффективностью обеспечивает более полную картину. Вы также можете преобразовать в бар для читаемости: .
Включая переменные специфические температуры для повышения точности
Предположение о константе-γ может переоценить эффективность, потому что реальные выхлопные газы имеют более низкие удельные теплоотношение при высоких температурах. Для этого заменяйте константу γ температурно-зависимой корреляцией. Надежный метод заключается в использовании полиномиальных коэффициентов НАСА для c p основных видов (O2, N2, CO2, H2O.] NIST Chemistry WebBook предоставляет эти коэффициенты для чистых веществ. Для модели стандарта воздуха вы можете приблизить рабочую жидкость либо в виде сухого воздуха, либо в смеси «продукта сгорания» с фиксированным составом.
Реализация переменной γ требует итеративного решения, поскольку сам изентропный показатель зависит от неизвестной температуры. Используйте MATLAB's или простой цикл. Например, при изентропном сжатии отношение становится:
% Use an anonymous function to find T2 such that % integral of cp dT from T1 to T2 = R * ln(v1/v2) % This replaces the constant‑gamma formula. % For air, cp(T) can be approximated by: % cp = a0 + a1*T + a2*T^2 + a3*T^3 + a4*T^4 % Using NASA 7-coefficient polynomials. fun = @(T2) integral(@(T) polyval(cp_coeffs, T), T1, T2) - R_air * log(r); T2 = fzero(fun, T1 * r^0.4);
Для быстрого приближения без полной полиномиальной интеграции используйте среднее удельное теплоотношение, которое изменяется линейно с температурой: γ(T) = 1,4 - 0,00005*(T - 300). Эта простая корреляция фиксирует тенденцию и может быть реализована в временной петле до конвергенции.
Создание модульного функционального анализа
Вместо монолитного сценария инкапсулируйте логику цикла в функцию MATLAB. Это делает ее многоразовой для проскальзывания параметров и уменьшает дублирование кода. Скелет функций показан ниже:
function [states, performance] = ottoCycle(r, T1, P1, Q_in, gamma, R_air) % states: structure with T, P, v for states 1-4 % performance: structure with W_net, eta, mep % (calculation code from previous section goes here) end
Для переменных удельного тепла добавьте жидкий флаг:
function [states, performance] = ottoCycle(r, T1, P1, Q_in, fluid_type) % fluid_type: 'constant_gamma' or 'variable_cp' % (logic branches based on flag) end
С функцией на месте, сценарий драйвера может просмотреть коэффициенты сжатия:
r_values = 6:1:14; for i = 1:length(r_values) [~, perf] = ottoCycle(r_values(i), 300, 101325, 2500e3, 'constant_gamma'); eta(i) = perf.eta; mep(i) = perf.mep; end plot(r_values, eta*100, 'b-', r_values, mep/1e5, 'r--');
Этот модульный подход сразу показывает уменьшающуюся отдачу от увеличения коэффициента сжатия выше 12. На графике подчеркивается ключевой компромисс: эффективность продолжает расти, но с меньшей скоростью, в то время как MEP часто достигает пика около r = 10 для типичных тепловых входов.
Генерирующие диагностические P-V и T-S диаграммы
Визуализация помогает проверить модель и сообщить результаты. функции построения графиков MATLAB создают диаграммы качества публикации.
Давление-объем (P-V) Диаграмма
Кривые сжатия и расширения следуют за P v^γ = константа. Создайте ряд промежуточных точек для плавных кривых:
n = 50;
v_comp = linspace(v2, v1, n); % reverse direction for plotting
P_comp = P2 * (v_comp ./ v2).^(-gamma);
v_exp = linspace(v3, v4, n);
P_exp = P3 * (v_exp ./ v3).^(-gamma);
figure;
hold on;
plot(v_comp, P_comp, 'b', 'LineWidth', 1.5);
plot(v_exp, P_exp, 'b', 'LineWidth', 1.5);
plot([v2 v3], [P2 P3], 'r--', 'LineWidth', 1.2);
plot([v4 v1], [P4 P1], 'r--', 'LineWidth', 1.2);
xlabel('Specific volume (relative)'); ylabel('Pressure (Pa)');
title('Air‑Standard Otto Cycle P–V Diagram');
legend('Compression', 'Expansion', 'Heat addition', 'Heat rejection');
grid on;
Закрытая область представляет собой сетевую работу. Вы можете численно интегрировать цикл с помощью для проверки вычисленной W net. Например, интегрировать верхнюю кривую (сжатие + расширение) и вычесть нижнюю кривую (линия отторжения тепла). См. документацию MATLAB по численной интеграции для деталей.
Диаграмма температуры-энтропии (T-S)
Для идеального газа с постоянными удельными теплотворными свойствами изменение энтропии относительно состояния 1 составляет:
% s = cp * log(T / T1) - R * log(P / P1) cp = gamma * R_air / (gamma - 1); s1 = 0; s2 = cp * log(T2/T1) - R_air * log(P2/P1); s3 = cp * log(T3/T1) - R_air * log(P3/P1); s4 = cp * log(T4/T1) - R_air * log(P4/P1);
Укажите четыре процесса с соответствующими стилями линий. Для переменной γ используйте числовую интеграцию dQ/T для вычисления энтропии. Диаграмма T-S раскрывает изентропную природу процессов 1-2 и 3-4 (вертикальные линии) и константно-объемное нагревание/отклонение (изогнутые пути). Площадь под кривой нагрева представляет добавленное тепло, а площадь под кривой охлаждения представляет отбракованное тепло; их отличием является чистая работа.
Для улучшения T-S-графика, накладные линии постоянного давления (изобары) из идеального газового соотношения. Это помогает контекстуализировать цикл в более широкой термодинамической структуре.
Проведение исследований чувствительности
После того, как базовая модель работает, систематически варьируют входные параметры, чтобы понять их влияние. Общие исследования включают:
- Коэффициент сжатия сметает : Эффективность участка и MEP против r. Эффективность быстро увеличивается при низком r и затем плато; MEP часто достигает пика при умеренном r из-за компромисса между повышением давления и добавлением тепла. Используйте подзаголовки, чтобы показать обе метрики на одном и том же рисунке.
- Вариация теплового сложения: Изменение Q in моделей различных энергий топлива или соотношения воздух-топливо. Увеличение Q in повышает пиковое давление и работу, но может превышать пределы материала; включают ограничение, что P3 < 150 бар (15 МПа) для отражения типичной прочности двигателя.
- Эффект специфического теплоотдачи: Более низкий γ снижает эффективность. Накладывание результатов константы γ и переменной γ для демонстрации коррекции. Это особенно важно при анализе альтернативных видов топлива, таких как природный газ или водород.
Для двухпараметрического развертки используйте вложенные петли и храните результаты в матрице. Затем создайте контурный график или цветовую карту, чтобы визуализировать комбинированный эффект:
r_vec = 6:1:14;
Q_vec = 2e6:0.2e6:3e6;
for i = 1:length(r_vec)
for j = 1:length(Q_vec)
[~, perf] = ottoCycle(r_vec(i), 300, 101325, Q_vec(j), 1.35, 287);
eta_mat(i,j) = perf.eta;
end
end
contourf(r_vec, Q_vec/1e6, eta_mat', 20);
xlabel('Compression ratio'); ylabel('Q_in (MJ/kg)');
colorbar; title('Thermal Efficiency (%)');
Такие карты чувствительности неоценимы для анализа компромиссов в конструкции двигателя. Они помогают определить рабочие области, где эффективность высока, в то время как пиковое давление остается приемлемым.
Проверка ваших результатов
Перед использованием модели для инженерных решений проверьте известные эталоны. Формула эффективности стандарта воздуха η = 1 − 1/r^(γ−1) обеспечивает прямую валидацию для случая константы-γ. Кроме того, сравните рассчитанное пиковое давление P3 с данными из опубликованных карт двигателя или примерами из учебников (например, Stone, Введение в двигатели внутреннего сгорания . Расхождения часто возникают из предполагаемого γ или Q in. Для тщательной проверки скачайте общедоступный след давления цилиндра из таких ресурсов, как база данных двигателя Sandia National Laboratories и наложите свой цикл P-V. Это упражнение показывает, где модель стандарта воздуха отличается от реальности, мотивируя более сложное моделирование.
Другой метод проверки состоит в проверке энергетического баланса : чистая работа плюс отбракованное тепло должны быть равны входному теплу в пределах точности плавающей точки. Также проверить, что процессы сжатия и расширения удовлетворяют изентропному отношению T v^(γ-1] = постоянной для обнаружения ошибок кодирования.
Расширение модели реалистических эффектов
Базовые рамки могут быть расширены, чтобы включать в себя реальные явления:
- Длительность конечного сгорания: Замените мгновенное добавление тепла функцией Wiebe, которая распределяет высвобождение энергии через интервал кривоугольного угла. Используйте MATLAB для интеграции энергетического уравнения с движением поршня. Функция Wiebe определяется как x b(θ) = 1 — exp(-a*((θ-θ0)/Δθ)^(m+1)].
- Потери теплопередачи: Включите корреляцию типа Вошни для конвективной теплопередачи на стенки цилиндров. Для этого требуется разрешенная кривоугольной температурой и давлением. Корреляция дает коэффициент теплопередачи в зависимости от скорости, скорости поршня, температуры и давления.
- Рециркуляция выхлопных газов (EGR): Отрегулируйте удельное теплоотношение и состав газа для отражения разбавления. Блок цилиндра MATLAB Simscape Engine Cylinder обеспечивает готовый компонент для таких исследований, но вы также можете реализовать упрощенную модель разбавления, линейно комбинируя удельное тепло воздуха и инертного газа.
Для быстрого расширения начните с функции Wiebe. Примеры приближений можно найти в MATLAB File Exchange. Это простое дополнение фиксирует влияние времени искры на эффективность и пиковое давление.
Интеграция анализа в более крупный рабочий процесс
В инженерном проекте анализ цикла должен быть включен в моделирование уровня транспортного средства или генерацию отчетов. Используйте таблицы состояния MATLAB и показатели производительности для дальнейшей обработки в Excel. объедините графики в PDF с помощью функции . Структурирование кода с функциями и основным сценарием драйвера с самого начала сделает эту интеграцию бесшовной. Например:
results = table(r_values', eta', mep', ...
'VariableNames', {'CompressionRatio','Efficiency','MEP_bar'});
writetable(results, 'otto_sweep.csv');
Также можно позвонить в MATLAB из Python или Simulink, чтобы связать термодинамическую модель с другими подсистемами. Для исследования гибридного автомобиля карту эффективности цикла Отто можно импортировать в качестве таблицы поиска в Simulink.
Заключение
Построение модели цикла Otto в MATLAB обеспечивает мощную, но простую платформу для изучения термодинамики двигателя с искровым зажиганием. Систематическое определение параметров, вычисление точек состояния и вычисление показателей производительности, таких как чистая работа, тепловая эффективность и среднее эффективное давление, вы получаете непосредственное представление о том, как выбор дизайна влияет на выход. Модульный подход, представленный здесь, позволяет расширить модель до переменных конкретных температур, конечного сгорания и теплопередачи без переписывания основной логики. Полученный инструмент не только для академических упражнений - он дает действенные ответы на вопросы «что-если», которые приводят к разработке двигателя. С следующими шагами исследований чувствительности и проверки реальных данных, ваш сценарий MATLAB становится надежной основой для более продвинутого моделирования двигателя.