Модель системы автоматического регулирования давления (САРД) в кабине самолёта
Система автоматического регулирования давления (САРД) в кабине самолёта предназначена для поддержания безопасного давления внутри кабины на разных этапах полёта (взлёт, крейсерский полёт, посадка).
Схема модели:

Физическая часть системы
Блок СКВ – имитирует подачу воздуха из системы кондиционирования с постоянным давлением и температурой.
Блок Сопротивление трубопровода (2 блока) – моделирует потери давления в воздушных магистралях.
Блок Объём кабины – динамическая модель кабины, где давление изменяется в зависимости от нагнетания/сброса воздуха.
Блок Клапан сброса – регулирует стравливание избыточного давления в атмосферу, которая описывается блоком Атмосфера.
Система управления
Система управления в модели состоит из блоков красного цвета, в их число входят:
- задатчик давления в кабине в барах - переводит высоту в метрах в давление на этой же высоте, по закону: где — высота
- сумматор - вычисляет сигнал рассогласования между задатчиком и измеренным значением,
- ПИД-регулятор,
- блок запаздывания,
- блок перевода из Па в бар.
Внешние условия
Внешние условия определяются синими блоками. Допущение: температура постоянная. Давление определяется блоком Перевод из высоты в давление на высоте по закону: где — высота.
План полёта
Блоки, представляющие собой план полёта, описывают то, как будет изменяться высота полёта летательного аппарата в зависимости от времени. На схеме имеют зелёный цвет.
На вход блока План полёта подаётся модельное время, выходным сигналом блока является значение высоты в метрах.
Определение функции для загрузки и запуска модели:
function start_model_engee()
try
engee.close("pressure_control_system_in_aircraft", force=true) # закрытие модели
catch err # в случае, если нет модели, которую нужно закрыть и engee.close() не выполняется, то будет выполнена её загрузка после catch
m = engee.load("$(@__DIR__)/pressure_control_system_in_aircraft.engee") # загрузка модели
end;
try
engee.run(m, verbose=true) # запуск модели
catch err # в случае, если модель не загружена и engee.run() не выполняется, то будут выполнены две нижние строки после catch
m = engee.load("$(@__DIR__)/pressure_control_system_in_aircraft.engee") # загрузка модели
engee.run(m, verbose=true) # запуск модели
end
end
Запуск симуляции
start_model_engee();
Запись данных симуляции в переменные:
t = simout["pressure_control_system_in_aircraft/Задатчик давления в кабине в барах"].time[:]
control_pressure = simout["pressure_control_system_in_aircraft/Задатчик давления в кабине в барах"].value[:]
cabin_pressure_bar = simout["pressure_control_system_in_aircraft/Давление в кабине в барах"].value[:]
altitude = simout["pressure_control_system_in_aircraft/Высота в метрах"].value[:]
external_pressure = simout["pressure_control_system_in_aircraft/Давление на высоте, в Па"].value[:]
cabin_pressure_pa = simout["pressure_control_system_in_aircraft/Датчик давления в кабине, Па.1"].value[:];
Визуализация данных
using Plots
План полёта включает в себя 5 этапов:
- Стоянка на земле (1355 секунд).
- Взлёт и набор высоты (500 секунд).
- Крейсерский полёт (1200 секунд).
- Снижение и посадка (400 секунд).
- Стоянка после полёта (1531 секунда).
plot(t, altitude, linewidth=2, xlabel="Время, с", ylabel="Высота, м", title="План полёта", legend=false)
В соответствии с изменением высоты полёта меняется внешнее давление, а также давление в кабине по закону регулирования:
plot(t, external_pressure, linewidth=2, label="Давление на высоте полёта")
plot!(t, cabin_pressure_pa, linewidth=2, label="Давление в кабине", xlabel="Время, с", ylabel="Давление, Па", legend=:bottomright)
Такая разница давления поддерживается для комфортного пребывания пассажиров в самолёте. Но давление в кабине несколько меньше, чем давление при нормальных условиях, это определяется прочностными требованиями к конструкции самолёта.
График заданного и измеренного давления в кабине:
plot(t, control_pressure, linewidth=2, label="Заданное давление в кабине")
plot!(t, cabin_pressure_bar, linewidth=2, label="Измеренное давление в кабине", xlabel="Время, с", ylabel="Давление, бар", legend=:bottomright)
Выводы:
В данном примере была рассмотрена модель системы автоматического регулирования давления в кабине самолёта. Проанализировав графики можно сделать вывод о том, что регулятор поддерживает давление на заданном уровне на всех этапах полёта.