Этот пример показывает, как вычислить необходимую степень компрессора в сверхзвуковой аэродинамической трубе.
В этом разделе описываются проблему, которая будет решена. Это также обеспечивает необходимые уравнения и известные значения.
Вычислите, сколько степени компрессора требуется запустить фиксированную геометрию сверхзвуковая аэродинамическая труба в установившемся и запуске, чтобы моделировать условия работы Маха 2 потока на высоте 20 километров.
Экспериментальный участок является круговым с диаметром 25 сантиметров. После того, как экспериментальный участок является диффузором фиксированной области. Аэродинамическая труба использует вентилятор, чтобы отклонить дополнительную энергию, которая добавляется к системе компрессором. Поэтому входное отверстие компрессора и экспериментальный участок имеют ту же температуру застоя. Примите, что компрессор является изэнтропическим, и эффекты трения незначительны.
steadyPicture = astsswtschematic('steady');
Данная информация в проблеме:
diameter = 25/100; % Diameter of the cross-section [m] height = 20e+03; % Design altitude [m] testMach = 2.0; % Mach number in the test section [dimensionless]
Жидкость принята, чтобы быть воздухом, и поэтому это имеет следующие свойства.
k = 1.4; % Specific heat ratio [dimensionless] cp = 1.004; % Specific heat at constant pressure [kJ / (kg * K)]
The cross-section area of the test section is needed from the diameter.
testSectionArea = pi * (diameter)^2 / 4 ; % [m^2]
Поскольку высота проекта дана, решите для условий рейса на той высоте. Aerospace Toolbox имеет несколько функций, чтобы вычислить условия на различных высотах. Одна такая функция, atmosisa
, использует Атмосферу Международного стандарта, чтобы вычислить условия рейса на левой стороне, учитывая высотный вход:
[testSectionTemp, testSectionSpeedOfSound, testSectionPressure, testSectionDensity] = atmosisa(height);
Эта функция использует следующие модули:
testSectionTemp = Static temperature in the test section [K] testSectionSpeedOfSound = Speed of sound in the test section [m / s] testSectionPressure = Static pressure in the test section [kPa] testSectionDensity = Density of the fluid in the test section [kg / m^3]
Необходимо вычислить многие из застоя (общее количество) количества в экспериментальном участке. Отношения локальных статических условий к условиям застоя могут быть вычислены с flowisentropic
.
[~,tempRatioIsen, presRatioIsen, ~, areaRatioIsen] = flowisentropic(k, testMach);
Все количества левой стороны являются безразмерными отношениями. Теперь мы можем использовать отношение статической температуры к температуре застоя, чтобы вычислить температуру застоя.
testSectionStagTemp = testSectionTemp / tempRatioIsen;
Оптимальное условие для установившейся операции сверхзвуковой аэродинамической трубы с диффузором фиксированной области происходит, когда нормальный шок присутствует в горле диффузора. Для оптимального условия область горла диффузора должна быть меньшей, чем область горла носика. При принятии совершенного газа с постоянными удельными теплоемкостями вычислите фактор, которым область диффузора должна быть меньшей, чем область носика. Это вычисление является от упрощенной формы сохранения массового уравнения включающими общими давлениями и площадями поперечного сечения:
где
Перестройте уравнение:
Этот пример принимает область горла носика, экспериментальный участок и область потока в горле диффузора перед шоком, чтобы быть восходящим. Поскольку ударная волна в горле диффузора, область горла диффузора может быть рассмотрена или в восходящем направлении или в нисходящем направлении шока. Этот пример принимает область горла диффузора, чтобы быть нисходящим. Поскольку восходящий поток является изэнтропическим до ударной волны, можно использовать Число Маха экспериментального участка в качестве восходящего Числа Маха. Выполнение этого позволяет вам вычислить общее отношение давления через шок и затем отношение области между носиком и областью диффузора.
Общее отношение давления:
Вычислите общее отношение давления с помощью нормальной функции шока от Aerospace Toolbox:
[~, ~, ~, ~, ~, stagPressRatio] = flownormalshock(k, testMach);
Отношение области в шоке:
У нас есть следующее выражение с помощью сохранения массы, как обсуждено ранее.
areaRatioShock = stagPressRatio;
Вычислите область диффузора:
diffuserArea = testSectionArea / (areaRatioShock * areaRatioIsen);
Поскольку область горла диффузора меньше, чем область экспериментального участка, Число Маха потока должно сходиться к единице. Используя flowisentropic
с отношением области как вход, вычислите Число Маха только в восходящем направлении шока:
diffuserMachUpstreamOfShock = flowisentropic(k, (1 / areaRatioShock), 'sup');
Используйте flownormalshock
, чтобы вычислить свойства потока через ударную волну. Отметьте, здесь снова, нам только будет нужно общее отношение давления:
[~, ~, ~, ~, ~, P0] = flownormalshock(k, diffuserMachUpstreamOfShock);
Работа, сделанная компрессором на единицу массы жидкости, равняется изменению энтальпии через компрессор. Из определения энтальпии вычислите определенную работу, сделанную путем знания изменения температуры и удельной теплоемкости жидкости в постоянном давлении:
Для изэнтропического компрессора,
Перестройте вышеупомянутое уравнение, чтобы решить для перепада температур. Вспомните, что температура в компрессор совпадает с температурой застоя экспериментального участка.
tempDiff = testSectionStagTemp * ((1 / P0)^((k - 1) / k) - 1); % [K]
Теперь определенная работа может быть найдена.
specificWork = cp * tempDiff; % [kJ / kg]
Требуемая степень равняется определенным рабочим временам массовая скорость потока жидкости. Во время установившейся операции массовой скоростью потока жидкости через экспериментальный участок дают:
где все количества потока являются значениями в экспериментальном участке:
massFlowRate = testSectionDensity * testSectionArea * testMach * testSectionSpeedOfSound; % [kg / s]
Наконец, вычислите степень, требуемую компрессором во время установившейся операции.
powerSteadyState = specificWork * massFlowRate; % [kW]
startupPicture = astsswtschematic('startup');
Поскольку условие запуска ударная волна находится в экспериментальном участке. Числом Маха сразу перед ударной волной является Число Маха экспериментального участка.
[~, ~, ~, ~, ~, stagPressRatioStartup] = flownormalshock(k, testMach);
Теперь, вычислите определенную работу изэнтропического компрессора.
specificWorkStartup = cp * testSectionStagTemp * ((1 / stagPressRatioStartup)^((k - 1) / k) - 1); % [kJ / kg]
Затем вычислите степень, требуемую во время запуска:
powerStartup = specificWorkStartup * massFlowRate; % [kW]
Степень, требуемая во время установившейся операции (53,1 кВт), намного ниже, чем требуемый компрессором во время запуска (97,9 кВт), Они приводят в действие требуемые результаты, представляют оптимум и условия операции худшего случая, соответственно.
power = [powerSteadyState powerStartup]; barGraph = figure('name','barGraph'); bar(power,0.1); ylabel('Power required [kilowatts]') set(gca,'XTickLabel',{'powerSteadyState', 'powerStartup'})
close(steadyPicture, startupPicture, barGraph)
[1] Джеймс, J. E. A. "газовая динамика, второй выпуск", Allyn and Bacon, Inc, Бостон, 1984.