Это тематическое исследование демонстрирует инструменты для классической системы управления, пройдя через проект демпфера рыскания для 747® реактивный транспортный самолет.
Реактивная модель во время круизного рейса на MACH = 0,8 и H = 40000 футов.
A=[-.0558 -.9968 .0802 .0415; .598 -.115 -.0318 0; -3.05 .388 -.4650 0; 0 0.0805 1 0]; B=[ .00729 0; -0.475 0.00775; 0.153 0.143; 0 0]; C=[0 1 0 0; 0 0 0 1]; D=[0 0; 0 0]; sys = ss(A,B,C,D);
Следующие команды задают эту модель пространства состояний как объект LTI и присоединяют имена к состояниям, входам и выходам.
states = {'beta' 'yaw' 'roll' 'phi'}; inputs = {'rudder' 'aileron'}; outputs = {'yaw' 'bank angle'}; sys = ss(A,B,C,D,'statename',states,... 'inputname',inputs,... 'outputname',outputs);
Можно отобразить модель LTI sys
путем ввода sys
. Эта команда приводит к следующему результату.
a = beta yaw roll phi beta -0.0558 -0.9968 0.0802 0.0415 yaw 0.598 -0.115 -0.0318 0 roll -3.05 0.388 -0.465 0 phi 0 0.0805 1 0 b = rudder aileron beta 0.00729 0 yaw -0.475 0.00775 roll 0.153 0.143 phi 0 0 c = beta yaw roll phi yaw 0 1 0 0 bank angle 0 0 0 1 d = rudder aileron yaw 0 0 bank angle 0 0 Continuous-time model.
Модель имеет два входа и два выхода. Модулями являются радианы для beta
(угол боковой кромки) и phi
(угол банка) и радианы/с для yaw
(скорость рыскания) и roll
(скорость крена). Отклонения руля и элерона также находятся в радианах.
Вычислите полюса разомкнутого контура и постройте их график на s -плане.
>> damp(sys) Pole Damping Frequency Time Constant (rad/seconds) (seconds) -7.28e-03 1.00e+00 7.28e-03 1.37e+02 -5.63e-01 1.00e+00 5.63e-01 1.78e+00 -3.29e-02 + 9.47e-01i 3.48e-02 9.47e-01 3.04e+01 -3.29e-02 - 9.47e-01i 3.48e-02 9.47e-01 3.04e+01 pzmap(sys)
Эта модель имеет одну пару слегка демпфированных полюсов. Они соответствуют тому, что называется «голландским режимом крена».
Предположим, что вы хотите спроектировать компенсатор, который увеличивает демпфирование этих полюсов, так что получившиеся комплексные полюсы имеют коэффициент затухания и 0,35 с естественной частотой и < 1 рад/сек. Это можно сделать с помощью инструментов анализа Control System Toolbox™.
Во-первых, выполните некоторый анализ без разомкнутого контура, чтобы определить возможные стратегии управления. Начните с временной характеристики (можно использовать step
или impulse
здесь).
impulse(sys)
Импульсная характеристика подтверждает, что система слегка демпфирована. Но временные системы координат слишком длинны, потому что пассажиры и пилот больше обеспокоены поведением в течение первых нескольких секунд, а не первых нескольких минут. Далее посмотрите на ответ в течение меньшей временной системы координат 20 секунд.
impulse(sys,20)
Посмотрите на график от элерона (вход 2) до угла крена (выход 2). Чтобы отобразить только этот график, щелкните правой кнопкой мыши и выберите «Селектор ввода-вывода», затем щелкните на записи (2,2). Селектор ввода-вывода должен выглядеть так.
Новый рисунок показан ниже.
Самолет колеблется вокруг ненулевого угла крена. Таким образом, самолет поворачивается в ответ на импульс элерона. Это поведение окажется важным позже в этом тематическом исследовании.
Обычно демпферы рыскания проектируются с использованием скорости рыскания в качестве измеренного выхода и руля направления в качестве управляющего входа. Посмотрите на соответствующую частотную характеристику.
sys11=sys('yaw','rudder') % Select I/O pair. bode(sys11)
Из этой диаграммы Боде можно увидеть, что руль направления оказывает значительное влияние вокруг легкодемпфированного режима голландского крена (то есть около
Разумная цель проекта состоит в том, чтобы обеспечить демпфирующий рацион и 0,35 с естественной частотой и < 1,0 рад/сек. Поскольку самый простой компенсатор является статическим усилением, сначала попробуйте определить соответствующие значения усиления с помощью метода корневого годографа.
% Plot the root locus for the rudder to yaw channel rlocus(sys11)
Это - корневой годограф отрицательной обратной связи и показывает, что система практически сразу остается нестабильной. Если вместо этого вы используете положительную обратную связь, вы можете сохранить систему стабильной.
rlocus(-sys11) sgrid
Это выглядит лучше. При помощи простой обратной связи можно достичь коэффициента демпфирования, равного Щелкните на синей кривой и переместите маркер данных, чтобы отследить значения усиления и демпфирования. Чтобы достичь коэффициента затухания 0,45, коэффициент усиления должен составлять около 2,85. Этот рисунок показывает маркер данных с аналогичными значениями.
Затем закройте цикл обратной связи SISO.
K = 2.85; cl11 = feedback(sys11,-K); % Note: feedback assumes negative % feedback by default
Постройте график импульсной характеристики с обратной связью на протяжении 20 секунд и сравните его с импульсной характеристикой без разомкнутого контура.
impulse(sys11,'b--',cl11,'r',20)
Реакция с обратной связью быстро оседает и не сильно колеблется, особенно по сравнению с характеристикой без разомкнутого контура.
Теперь закройте цикл на полной модели MIMO и посмотрите, как выглядит реакция элерона. Цикл обратной связи включает вход 1 и выход 1 объекта (использование feedback
с векторами индекса, выбирающими эту пару вход/выход). В MATLAB® приглашение, тип
cloop = feedback(sys,-K,1,1); damp(cloop) % closed-loop poles Pole Damping Frequency Time Constant (rad/seconds) (seconds) -3.42e-01 1.00e+00 3.42e-01 2.92e+00 -2.97e-01 + 6.06e-01i 4.40e-01 6.75e-01 3.36e+00 -2.97e-01 - 6.06e-01i 4.40e-01 6.75e-01 3.36e+00 -1.05e+00 1.00e+00 1.05e+00 9.50e-01
Постройте график импульсной характеристики MIMO.
impulse(sys,'b--',cloop,'r',20)
Ответ скорости рыскания теперь хорошо демпфирован, но посмотрите на график от элерона (вход 2) до угла крена (выход 2). Когда вы перемещаете элерон, система больше не продолжает банк, как нормальный самолет. Вы слишком стабилизировали режим спирали. Спиральный режим обычно является очень медленным режимом и позволяет самолету взлетать и поворачиваться без постоянного входа элерона. Пилоты привыкли к такому поведению и не понравится ваш проект, если она не позволит им нормально летать. Этот проект переместил спиральный режим так, чтобы он имел более высокую частоту.
Что вам нужно сделать, так это убедиться, что режим спирали не переходит дальше в левую-половинную плоскость, когда вы закрываете цикл. Одним из способов, которым конструкторы управления полетом решили эту проблему, является использование kH промывочного фильтра (s), где
Фильтр промывки помещает нуль в источник, что ограничивает сохранение полюса спирального режима около источника. Мы выбираем α = 0,2 для константы времени пять секунд и используем метод корневого годографа, чтобы выбрать коэффициент усиления фильтра H
. Сначала задайте фиксированную часть s/( s + α) размыва
H = zpk(0,-0.2,1);
Соедините промывку последовательно с моделью проекта sys11
(отношение между входом 1 и выходом 1), чтобы получить модель без разомкнутого контура
oloop = H * sys11;
и нарисуйте другой корневой годограф для этой модели разомкнутого контура.
rlocus(-oloop) sgrid
Создайте и тяните маркер данных вокруг верхней кривой, чтобы определить местонахождение максимального демпфирования, которое является о ζ = 0.3.
Этот рисунок показывает маркер данных при максимальном коэффициенте затухания; коэффициент усиления составляет приблизительно 2,07.
Посмотрите на ответ с обратной связью от руля до скорости рыскания.
K = 2.07; cl11 = feedback(oloop,-K); impulse(cl11,20)
Реакция устанавливается хорошо, но имеет меньше демпфирования, чем ваш предыдущий проект. Наконец, можно проверить, что фильтр промывки исправил проблему спирального режима. Сначала сформируйте полный фильтр kH (s) (размытие + коэффициент усиления).
WOF = -K * H;
Затем закройте цикл вокруг первой пары ввода-вывода модели MIMO sys
и моделируйте импульсную характеристику.
cloop = feedback(sys,WOF,1,1); % Final closed-loop impulse response impulse(sys,'b--',cloop,'r',20)
Реакция угла крена (выход 2), обусловленная импульсом элерона (вход 2), теперь имеет желаемое почти постоянное поведение в течение этой короткой временной системы координат. Для более тщательного просмотра отклика используйте селектор ввода-вывода в контекстном меню, чтобы выбрать (2,2) пару ввода-вывода.
Хотя вы не совсем соответствовали спецификации демпфирования, ваш проект значительно увеличил демпфирование системы и теперь позволяет пилоту нормально управлять самолетом.