Этот пример показывает, как получить ответ с обратной связью обратной связи MIMO тремя различными способами.
В этом примере вы получаете ответ от Azref до Az обратной связи MIMO следующей блок-схемы.

Можно вычислить ответ с обратной связью с помощью одного из следующих трех подходов:
Основанное на имени соединение с connect
Основанное на имени соединение с feedback
Основанное на индексе соединение с feedback
Можно использовать, какой бы ни из этих подходов является самым удобным для приложения.
Загрузите объект Aerodyn и контроллер Autopilot в рабочую область MATLAB®. Эти модели хранятся в файле данных MIMOfeedback.mat.
load(fullfile(matlabroot,'examples','control','MIMOfeedback.mat'))
Aerodyn является моделью (ss) пространства состояний с 7 выводами, с 4 входами. Autopilot является моделью ss с 1 выводом, с 5 входами. Вводы и выводы обоих имен моделей появляются как показано в блок-схеме.
Вычислите ответ с обратной связью от 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.
Функция connect комбинирует модели путем присоединения вводов и выводов, которые имеют соответствие с именами. Последние два аргумента к connect задают сигналы ввода и вывода получившейся модели. Поэтому T1 является моделью в пространстве состояний с входом Azref и выводом Az. Функция connect игнорирует другие вводы и выводы в Autopilot и Aerodyn.
Вычислите ответ с обратной связью от Azref до Az с помощью основанного на имени соединения с командой feedback. Используйте имена входа и выхода модели, чтобы задать соединения между Aerodyn и Autopilot.
Когда вы используете функцию feedback, думаете о системе с обратной связью как о соединении обратной связи между контроллером объекта разомкнутого цикла комбинация 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. Опция 'name' заставляет feedback соединять L и K путем соответствия с их именами ввода и вывода.
T2 является моделью в пространстве состояний с 7 выводами, с 5 входами. Ответом с обратной связью от 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 является моделью в пространстве состояний с 7 выводами, с 5 входами. Ответом с обратной связью от Azref до Az является T3(6,5).
Сравните переходной процесс от Azref до Az, чтобы подтвердить, что три подхода приводят к тем же результатам.
step(T1,T2('Az','Azref'),T3(6,5),2)
