feedback

Cоединение обратной связи многих моделей

Описание

пример

sys = feedback(sys1,sys2) возвращает объект модели sys для соединения отрицательной обратной связи объектов модели sys1,sys2.

От фигуры, модели sys с обратной связью имеет u как входной вектор и y как выходной вектор. Обе модели, sys1 и sys2, должно или быть непрерывным или дискретным с идентичными шагами расчета.

пример

sys = feedback(sys1,sys2,feedin,feedout) вычисляет модель sys с обратной связью использование связей ввода и вывода, заданных с помощью feedin и feedout. Используйте этот синтаксис, когда это необходимо, чтобы соединить только подмножество доступного I/Os систем MIMO.

пример

sys = feedback(sys1,sys2,'name') вычисляет модель sys с обратной связью со связями обратной связи, заданными соответствующими именами ввода-вывода моделей MIMO sys1 и sys2. Используйте 'name' отметьте только, когда все необходимые I/Os в наборе систем MIMO правильно назовут.

пример

sys = feedback(___,sign) возвращает объект модели sys для обратной связи с типом обратной связи, заданной sign. По умолчанию, feedback принимает отрицательную обратную связь и эквивалентен feedback(sys1,sys2,-1). Чтобы вычислить систему с обратной связью с положительной обратной связью, используйте sign = +1.

Примеры

свернуть все

pendulumModelAndController.mat содержит инвертированную модель G передаточной функции маятника SISO и его связанный ПИД-регулятор C.

Загрузите инвертированный маятник и модели контроллеров к рабочей области.

load('pendulumModelAndController','G','C');
size(G)
Transfer function with 1 outputs and 1 inputs.
size(C)
PID controller with 1 output and 1 input.

Используйте feedback создать цикл отрицательной обратной связи с G и C.

sys = feedback(G*C,-1)
sys =
 
         1.307e-06 s^3 + 3.136e-05 s^2 + 5.227e-06 s
  ---------------------------------------------------------
  2.3e-06 s^4 - 8.886e-07 s^3 - 0.0001031 s^2 - 1.547e-05 s
 
Continuous-time transfer function.

sys результирующая передаточная функция непрерывного времени замкнутого цикла, полученная с помощью отрицательной обратной связи. feedback преобразует модель C ПИД-регулятора в передаточную функцию прежде, чем соединить его с моделью G передаточной функции непрерывного времени. Для получения дополнительной информации см. Правила, Которые Определяют Тип модели.

В данном примере рассмотрите две передаточных функции, которые описывают объект G и контроллер C соответственно.

G(s)=2s2+5s+1s2+2s+3C(s)=5(s+2)s+10

Создайте передаточные функции контроллера и объект.

G = tf([2 5 1],[1 2 3],'inputname',"torque",'outputname',"velocity");
C = tf([5,10],[1,10]); 

Используйте feedback создать цикл отрицательной обратной связи с помощью G и C.

sys = feedback(G,C,-1)
sys =
 
  From input "torque" to output "velocity":
  2 s^3 + 25 s^2 + 51 s + 10
  ---------------------------
  11 s^3 + 57 s^2 + 78 s + 40
 
Continuous-time transfer function.

sys результирующая передаточная функция замкнутого цикла, полученная с помощью отрицательной обратной связи с крутящим моментом как вход и скорость как выход.

В данном примере рассмотрите две передаточных функции, которые описывают объект G и контроллер C соответственно.

G(s)=2s2+5s+1s2+2s+3C(s)=5(s+2)s+10

Создайте передаточные функции контроллера и объект.

G = tf([2 5 1],[1 2 3],'inputname',"torque",'outputname',"velocity");
C = tf([5,10],[1,10]); 

Используйте feedback создать цикл положительной обратной связи с помощью G и C.

sys = feedback(G,C,+1)
sys =
 
  From input "torque" to output "velocity":
  -2 s^3 - 25 s^2 - 51 s - 10
  ---------------------------
  9 s^3 + 33 s^2 + 32 s - 20
 
Continuous-time transfer function.

sys результирующая передаточная функция замкнутого цикла, полученная с помощью положительной обратной связи с крутящим моментом как вход и скорость как выход.

На основе фигуры ниже, рассмотрите соединение двух передаточных функций MIMO с двумя входными параметрами и двумя выходными параметрами в цикле отрицательной обратной связи.

В данном примере создайте две случайных непрерывных модели в пространстве состояний с помощью rss.

G = rss(4,2,2);
C = rss(2,2,2);
size(G)
State-space model with 2 outputs, 2 inputs, and 4 states.
size(C)
State-space model with 2 outputs, 2 inputs, and 2 states.

Используйте feedback соединять эти две модели в пространстве состояний в цикле отрицательной обратной связи согласно вышеупомянутой фигуре.

sys = feedback(G,C,-1);
size(sys)
State-space model with 2 outputs, 2 inputs, and 6 states.

Получившаяся модель в пространстве состояний sys 2 входа, 2 выходных модели с 6 состояниями. Цикл отрицательной обратной связи завершается таким образом что,

  • Первый выход G соединяется с первым входом C

  • Второй выход G соединяется со вторым входом C

mimoPlantAndController.mat содержит 2 входа, 2 выходных модели объекта управления передаточной функции G и 2 входа, 2 выходных моделей контроллеров передаточной функции C быть соединенным можно следующим образом:

Во-первых, загрузите объект и модели контроллеров к рабочей области.

load('mimoPlantAndController.mat','G','C');
size(G)
Transfer function with 2 outputs and 2 inputs.
size(C)
Transfer function with 2 outputs and 2 inputs.

По умолчанию, feedback соединил бы первый выход G к первому входу C и второй выход G к второму входу C. Для того, чтобы соединить объект и контроллер согласно фигуре, назовите соответствующий I/Os этих двух систем, чтобы гарантировать правильные связи.

G.InputName 
ans = 2x1 cell
    {'torque'}
    {'angle' }

G.OutputName
ans = 2x1 cell
    {'velocity'}
    {'force'   }

C.InputName
ans = 2x1 cell
    {'force'   }
    {'velocity'}

C.OutputName
ans = 2x1 cell
    {'angle' }
    {'torque'}

Затем используйте 'name' отметьте с помощью feedback команда, чтобы установить связи согласно именам ввода-вывода.

sys = feedback(G,C,'name');

Получившаяся передаточная функция отрицательной обратной связи замкнутого цикла sys имеет связи обратной связи в необходимом порядке.

Считайте объект пространства состояний G с пятью входными параметрами и четырьмя выходными параметрами и контроллером обратной связи пространства состояний K с тремя входными параметрами и двумя выходными параметрами. Выходные параметры 1, 3, и 4 из объекта G должен быть подключен контроллер K входные параметры и контроллер выходные параметры к входным параметрам 4 и 2 из объекта.

В данном примере сгенерируйте рандомизированные модели в пространстве состояний непрерывного времени с помощью rss для обоих G и K.

G = rss(3,4,5);
K = rss(3,2,3);

Задайте feedout и feedin векторы на основе вводов и выводов, которые будут соединены в обратной связи.

feedin = [4 2];
feedout = [1 3 4];
sys = feedback(G,K,feedin,feedout,-1);
size(sys)
State-space model with 4 outputs, 5 inputs, and 6 states.

sys результирующая модель в пространстве состояний замкнутого цикла, полученная путем соединения заданных вводов и выводов G и K.

Входные параметры

свернуть все

Системы, чтобы соединиться в обратной связи в виде моделей динамической системы. Динамические системы, которые можно использовать, включают:

  • Непрерывное время или дискретное время числовые модели LTI, такие как tf, zpk, pid, pidstd, или ss модели.

  • Модели частотной характеристики, такие как frd или genfrd.

  • Обобщенные или неопределенные модели LTI, такие как genss или uss модели. (Используя неопределенные модели требует программного обеспечения Robust Control Toolbox™.)

    Получившаяся обратная связь принимает

    • текущие значения настраиваемых компонентов для настраиваемых блоков системы управления.

    • номинальные значения модели для неопределенных блоков системы управления.

Для получения дополнительной информации см. модели динамической системы.

Когда sys1 и sys2 два различных типа модели, feedback использует правила приоритета, чтобы определить получившуюся модель sys. Например, когда модель в пространстве состояний и передаточная функция соединяются в обратной связи, получившаяся система является моделью в пространстве состояний на основе правил приоритета. Для получения дополнительной информации см. Правила, Которые Определяют Тип модели.

Подмножество входных параметров, которые будут использоваться в виде вектора.

От фигуры, feedin содержит индексы входного вектора объекта MIMO P и задает, какое подмножество входных параметров u вовлечены в обратную связь. Получившаяся модель sys имеет те же входные параметры как G, с их сохраненными порядками.

Для примера смотрите, Задают Связи Ввода и вывода в Обратной связи.

Подмножество выходных параметров, которые будут использоваться в виде вектора.

feedout задает который выходные параметры объекта MIMO G используются в обратной связи. Получившаяся модель sys имеет те же выходные параметры как G, с их сохраненными порядками.

Для примера смотрите, Задают Связи Ввода и вывода в Обратной связи.

Тип обратной связи в виде -1 для отрицательной обратной связи или +1 для положительной обратной связи. feedback принимает отрицательную обратную связь по умолчанию.

Выходные аргументы

свернуть все

Система с обратной связью, возвращенная как SISO или модель динамической системы MIMO. sys может быть одно из следующего в зависимости от правил приоритета:

  • Непрерывное время или дискретное время числовые модели LTI, такие как tf, zpk, ss, pid, or pidstdМодели .

  • Обобщенные или неопределенные модели LTI, такие как genss или uss модели. (Используя неопределенные модели требует программного обеспечения Robust Control Toolbox.)

Когда sys1 и sys2 два различных типа модели, feedback использует правила приоритета, чтобы определить получившуюся модель sys. Например, когда модель в пространстве состояний и передаточная функция соединяются в обратной связи, получившаяся система является моделью в пространстве состояний на основе правил приоритета, обрисованных в общих чертах в Правилах, Которые Определяют Тип модели.

Ограничения

  • Связь обратной связи должна быть свободна от алгебраических циклов. Например, если D1 и D2 являются проходными матрицами sys1 и sys2, это условие эквивалентно:

    • I + D1D2, несингулярный при использовании отрицательной обратной связи

    • I − D1D2, несингулярный при использовании положительной обратной связи

Советы

  • Для сложных структур обратной связи используйте append и connect.

Представлено до R2006a