Этот пример показывает, как получить ответ с обратной связью цикла MIMO тремя различными способами.
В этом примере вы получаете ответ от Azref
на Az
цикла обратной связи MIMO следующего блока.
Вычислить ответ с обратной связью можно с помощью одного из следующих трех подходов:
Основанная на именах взаимосвязь с connect
Основанная на именах взаимосвязь с feedback
Основанная на индексе взаимосвязь с feedback
Вы можете использовать любой из этих подходов, наиболее удобный для вашего приложения.
Загрузите объект Aerodyn
и контроллер Autopilot
в рабочую область MATLAB ®. Эти модели хранятся в файле данных MIMOfeedback.mat
.
load('MIMOfeedback.mat')
Aerodyn
- 4-входное, 7-выходное пространство состояний (ss
) модель. Autopilot
является 5-входным, 1-выходным ss
модель. Входы и выходы имен обеих моделей появляются, как показано на блоке.
Вычислите ответ с обратной связью от Azref
на Az
использование connect
.
T1 = connect(Autopilot,Aerodyn,'Azref','Az');
Warning: The following block inputs are not used: Rho,a,Thrust.
Warning: The following block outputs are not used: Xe,Ze,Altitude.
The connect
Функция объединяет модели путем соединения входов и выходов, которые имеют совпадающие имена. Последние два аргумента в connect
задайте входной и выходной сигналы полученной модели. Поэтому T1
является моделью пространства состояний с входным Azref
и выход Az
. The connect
функция игнорирует другие входы и выходы в Autopilot
и Aerodyn
.
Вычислите ответ с обратной связью от Azref
на Az
использование соединения на основе имен со feedback
команда. Используйте входные и выходные имена модели, чтобы задать взаимосвязи между Aerodyn
и Autopilot
.
Когда вы используете feedback
function, думает о системе с обратной связью как о соединении обратной связи между комбинацией объект-контроллер с разомкнутым контуром L
и диагональный элемент обратной связи с единичным усилением K
. Следующий блок показывает это соединение.
L = series(Autopilot,Aerodyn,'Fin'); FeedbackChannels = {'Alpha','Mach','Az','q'}; K = ss(eye(4),'InputName',FeedbackChannels,... 'OutputName',FeedbackChannels); T2 = feedback(L,K,'name',+1);
Модель замкнутой системы T2
представляет положительной обратной связи соединение L
и K
. The 'name'
причины опции feedback
для подключения L
и K
путем соответствия их входных и выходных имен.
T2
является моделью пространства состояний с 5 входами, 7 выходами. Реакция замкнутой системы от Azref
на Az
является T2('Az','Azref')
.
Вычислите ответ с обратной связью от Azref
на Az
использование feedback
, использование индексов для определения взаимосвязей между Aerodyn
и Autopilot
.
L = series(Autopilot,Aerodyn,1,4); K = ss(eye(4)); T3 = feedback(L,K,[1 2 3 4],[4 3 6 5],+1);
Векторы [1 2 3 4]
и [4 3 6 5]
укажите, какие входы и выходы, соответственно, завершают соединение с обратной связью. Для примера, feedback
использует вывод 4 и вход 1 из L
для создания первого соединения с обратной связью. Функция использует вывод 3 и вход 2, чтобы создать второе соединение и так далее.
T3
является моделью пространства состояний с 5 входами, 7 выходами. Реакция замкнутой системы от Azref
на Az
является T3(6,5)
.
Сравните переходную характеристику из Azref
на Az
подтвердить, что три подхода дают одинаковые результаты.
step(T1,T2('Az','Azref'),T3(6,5),2)