Этот пример показывает как соединениям моделей систем LTI от простого ряда и параллельных связей, чтобы объединить блок-схемы.
Control System Toolbox™ обеспечивает много функций, чтобы помочь вам создать сети моделей LTI. Они включают функции, чтобы выполнить
Ряд и параллельные связи (series
и parallel
)
Связи обратной связи (feedback
и lft
)
Конкатенации ввода и вывода ([ , ]
, [ ; ]
и append
)
Общая блок-схема, создающая (connect
).
Эти функции могут обработать любую комбинацию представлений модели. В целях рисунка создайте следующие две модели передаточной функции SISO:
H1 = tf(2,[1 3 0])
H1 = 2 --------- s^2 + 3 s Continuous-time transfer function.
H2 = zpk([],-5,5)
H2 = 5 ----- (s+5) Continuous-time zero/pole/gain model.
Используйте оператор *
или функцию series
, чтобы соединить модели LTI последовательно, например:
H = H2 * H1
H = 10 ------------- s (s+5) (s+3) Continuous-time zero/pole/gain model.
или эквивалентно
H = series(H1,H2);
Используйте оператор +
или функцию parallel
, чтобы соединить модели LTI параллельно, например:
H = H1 + H2
H = 5 (s+0.7566) (s+2.643) ---------------------- s (s+3) (s+5) Continuous-time zero/pole/gain model.
или эквивалентно
H = parallel(H1,H2);
Стандартную настройку обратной связи показывают ниже:
Чтобы создать модель передачи с обратной связью от u
до y
, ввести
H = feedback(H1,H2)
H = 2 (s+5) -------------------------------- (s+5.663) (s^2 + 2.337s + 1.766) Continuous-time zero/pole/gain model.
Обратите внимание на то, что feedback
принимает отрицательную обратную связь по умолчанию. Чтобы применить позитивные отклики, используйте следующий синтаксис:
H = feedback(H1,H2,+1);
Можно также использовать функцию lft
, чтобы создать более общее соединение обратной связи, коротко изложенное ниже.
Можно конкатенировать входные параметры этих двух моделей H1
и H2
путем ввода
H = [ H1 , H2 ]
H = From input 1 to output: 2 ------- s (s+3) From input 2 to output: 5 ----- (s+5) Continuous-time zero/pole/gain model.
Получившаяся модель имеет два входных параметров и соответствует соединению:
Точно так же можно конкатенировать выходные параметры H1
и H2
путем ввода
H = [ H1 ; H2 ]
H = From input to output... 2 1: ------- s (s+3) 5 2: ----- (s+5) Continuous-time zero/pole/gain model.
Получившаяся модель H
имеет два выходных параметров и один вход и соответствует следующей блок-схеме:
Наконец, можно добавить вводы и выводы двух использований моделей:
H = append(H1,H2)
H = From input 1 to output... 2 1: ------- s (s+3) 2: 0 From input 2 to output... 1: 0 5 2: ----- (s+5) Continuous-time zero/pole/gain model.
Получившаяся модель H
имеет два входных параметров и два выходных параметров и соответствует блок-схеме:
Можно использовать конкатенацию, чтобы создать модели MIMO из элементарных моделей SISO, например:
H = [H1 , -tf(10,[1 10]) ; 0 , H2 ]
H = From input 1 to output... 2 1: ------- s (s+3) 2: 0 From input 2 to output... -10 1: ------ (s+10) 5 2: ----- (s+5) Continuous-time zero/pole/gain model.
sigma(H), grid
Можно использовать комбинации функций и операций, введенных до сих пор, чтобы создать модели простых блок-схем. Например, рассмотрите следующую блок-схему:
со следующими данными для блоков F
, C
, G
, S
:
s = tf('s');
F = 1/(s+1);
G = 100/(s^2+5*s+100);
C = 20*(s^2+s+60)/s/(s^2+40*s+400);
S = 10/(s+10);
Можно вычислить передачу с обратной связью T
от r
до y
как
T = F * feedback(G*C,S); step(T), grid
Для более сложных блок-схем функция connect
обеспечивает систематический и простой способ соединить блоки проводом вместе. Чтобы использовать connect
, выполните эти шаги:
Задайте все блоки в схеме, включая блоки суммирования
Назовите все каналы ввода и вывода блока
Выберите блок-схему I/Os из списка блока I/Os.
Для блок-схемы выше, эти шаги составляют:
Sum1 = sumblk('e = r - y'); Sum2 = sumblk('u = uC + uF'); % Define block I/Os ("u" and "y" are shorthand for "InputName" and "OutputName") F.u = 'r'; F.y = 'uF'; C.u = 'e'; C.y = 'uC'; G.u = 'u'; G.y = 'ym'; S.u = 'ym'; S.y = 'y'; % Compute transfer r -> ym T = connect(F,C,G,S,Sum1,Sum2,'r','ym'); step(T), grid
При соединении моделей различных типов получившийся тип модели определяется правилом приоритета
FRD > SS > ZPK > TF > PID
Это управляет государствами, что FRD имеет наивысший приоритет, сопровождаемый SS, ZPK, TF, и ПИД имеет самый низкий приоритет. Например, в последовательной связи:
H1 = ss(-1,2,3,0); H2 = tf(1,[1 0]); H = H2 * H1;
H2
автоматически преобразован в представление пространства состояний и результат, H
является моделью в пространстве состояний:
class(H)
ans = 'ss'
Поскольку SS и представления FRD подходят лучше всего для системных соединений, рекомендуется, чтобы вы преобразовали по крайней мере одну из моделей к SS или FRD, чтобы гарантировать, что все вычисления выполняются с помощью одного из этих двух представлений. Одно исключение при использовании connect
, который автоматически выполняет такое преобразование и всегда возвращает пространство состояний или модель FRD блок-схемы.