Соединения блок-схемы динамических систем
sysc = connect(sys1,...,sysN,inputs,outputs)
sysc = connect(sys1,...,sysN,inputs,outputs,APs)
sysc = connect(blksys,connections,inputs,outputs)
sysc = connect(___,opts)
соединяет элементы блок-схемы sysc
= connect(sys1,...,sysN
,inputs
,outputs
)sys1,...,sysN
на основе имен сигнала. Элементы блок-схемы sys1,...,sysN
модели динамической системы. Эти модели могут включать соединения подведения итогов, что вы создаете использование sumblk
. connect
команда соединяет элементы блок-схемы путем соответствия с сигналами ввода и вывода, что вы задаете в InputName
и OutputName
свойства sys1,...,sysN
. Совокупная модель sysc
модель динамической системы, задающая вводы и выводы inputs
и outputs
соответственно.
вставляет sysc
= connect(sys1,...,sysN
,inputs
,outputs
,APs
)AnalysisPoint
в каждом местоположении сигнала, заданном в APs
. Используйте аналитические точки, чтобы отметить местоположения интереса, которые являются внутренними сигналами в совокупной модели. Например, местоположение, в котором вы хотите извлечь передаточную функцию цикла или измерить запасы устойчивости, является местоположением интереса.
использует основанное на индексе соединение, чтобы создать sysc
= connect(blksys
,connections
,inputs
,outputs
)sysc
из совокупной, несвязанной модели blksys
. Матричный connections
задает как выходные параметры и входные параметры blksys
межсоединение. Для основанных на индексе соединений, inputs
и outputs
векторы индекса, которые задают который вводы и выводы blksys
внешние вводы и выводы sysc
. Этот синтаксис может быть удобным, когда вы не хотите присваивать имена ко всем вводам и выводам всех моделей, чтобы соединиться. Однако в целом легче отслеживать именованные сигналы.
создает взаимосвязанную модель с помощью дополнительных опций. Можно использовать sysc
= connect(___,opts
)opts
с входными параметрами любого из предыдущих синтаксисов.
|
Модели динамической системы, которые соответствуют элементам вашей блок-схемы. Например, элементы вашей блок-схемы могут включать один или несколько |
|
Для основанного на имени соединения, вектора символов или массива ячеек из символьных векторов, которые задают входные параметры совокупной модели |
|
Для основанного на имени соединения, вектора символов или массива ячеек из символьных векторов, которые задают выходные параметры совокупной модели |
|
Местоположения (внутренние сигналы) интереса к совокупной модели в виде вектора символов или массива ячеек из символьных векторов, такие как |
|
Несвязанная совокупная модель. Получить blksys = append(C,G,S) |
|
Матрица, которая задает связи и соединения подведения итогов блок-схемы. Каждая строка [3 2 0 0] задает тот [7 2 -15 6] указывает на тот Если вы не задаете связи для конкретного ввода или вывода, |
|
Дополнительные опции для соединения в виде набора опций, с которым вы создаете |
|
Взаимосвязанная система, возвращенная или как модель в пространстве состояний или как модель частотной характеристики. Тип возвращенной модели зависит от входных моделей. Например:
По умолчанию, opt = connectOptions('Simplify',false); sysc = connect(sys1,sys2,sys3,'r','y',opt); |
Создайте совокупную модель следующей блок-схемы от r
к y
.
Создайте C
и G
, и назовите вводы и выводы.
C = pid(2,1); C.u = 'e'; C.y = 'u'; G = zpk([],[-1,-1],1); G.u = 'u'; G.y = 'y';
Обозначения C.u
и C.y
краткие выражения, эквивалентные C.InputName
и C.OutputName
, соответственно. Например, ввод C.u = 'e'
эквивалентно вводу C.InputName = 'e'
. Наборы команд InputName
свойство C
к значению 'e'
.
Создайте соединение подведения итогов.
Sum = sumblk('e = r - y');
Объедините C
G
, и соединение подведения итогов, чтобы создать совокупную модель из r
к y
.
T = connect(G,C,Sum,'r','y');
connect
автоматически вводы и выводы соединений с соответствием с именами.
Создайте систему управления предыдущим примером где G
и C
оба модели с 2 выходами, с 2 входами.
C = [pid(2,1),0;0,pid(5,6)]; C.InputName = 'e'; C.OutputName = 'u'; G = ss(-1,[1,2],[1;-1],0); G.InputName = 'u'; G.OutputName = 'y';
Когда вы задаете одно имена для сигналов с векторным знаком, программное обеспечение автоматически выполняет векторное расширение имен сигнала. Например, исследуйте имена входных параметров к C
.
C.InputName
ans = 'e(1)' 'e(2)'
Создайте соединение подведения итогов с 2 выходами, с 2 входами.
Sum = sumblk('e = r-y',2);
sumblk
также выполняет векторное расширение имен сигнала.
Соедините модели, чтобы получить систему с обратной связью.
T = connect(G,C,Sum,'r','y');
Элементы блок-схемы G
C
, и Sum
все модели с 2 выходами, с 2 входами. Поэтому connect
выполняет то же векторное расширение. connect
выбирает все записи 2D входных сигналов 'r'
и 'y'
как вводы и выводы к T
, соответственно. Например, исследуйте входные имена T
.
T.InputName
ans = 'r(1)' 'r(2)'
connect
Создайте модель следующей блок-схемы от r до y. Вставьте аналитическую точку во внутреннем расположении, u.
Создайте C
и G
, и назовите вводы и выводы.
C = pid(2,1); C.InputName = 'e'; C.OutputName = 'u'; G = zpk([],[-1,-1],1); G.InputName = 'u'; G.OutputName = 'y';
Создайте соединение подведения итогов.
Sum = sumblk('e = r - y');
Объедините C
G
, и соединение подведения итогов, чтобы создать совокупную модель, с анализом указывают на вас.
T = connect(G,C,Sum,'r','y','u')
T = Generalized continuous-time state-space model with 1 outputs, 1 inputs, 3 states, and the following blocks: AnalysisPoints_: Analysis point, 1 channels, 1 occurrences. Type "ss(T)" to see the current value, "get(T)" to see all properties, and "T.Blocks" to interact with the blocks.
Получившийся T
genss
модель. connect
команда создает AnalysisPoint
блок, AnalysisPoints_
, и вставляет его в T
. Видеть, что имя анализа указывает канал в AnalysisPoints_
, используйте getPoints
.
getPoints(T)
ans = 1x1 cell array
{'u'}
Аналитический канал точки называют 'u'
. Можно использовать эту аналитическую точку, чтобы извлечь отклики системы. Например, следующие команды извлекают передачу разомкнутого контура в вас и ответ с обратной связью в y к воздействию, введенному в вас.
L = getLoopTransfer(T,'u',-1); Tuy = getIOTransfer(T,'u','y');
T
эквивалентно следующей блок-схеме, где AP_u определяет AnalysisPoint
блок AnalysisPoints_
с названием канала u.
Создайте совокупную модель следующей блок-схемы от r
к y
использование основанного на индексе соединения.
Создайте C
G
, и несвязанная совокупная модель blksys
.
C = pid(2,1); G = zpk([],[-1,-1],1); blksys = append(C,G);
Входные параметры u(1),u(2)
из blksys
соответствуйте входным параметрам C
и G
, соответственно. Выходные параметры w(1),w(2)
из blksys
соответствуйте выходным параметрам C
и G
, соответственно.
Создайте матричный connections
, который задает который выходные параметры blksys
соединитесь с который входные параметры blksys
.
connections = [2 1; 1 -2];
Первая строка указывает на тот w(1)
подключения к u(2)
; другими словами, то, что выход C
подключения к входу G
. Вторая строка указывает на тот -w(2)
подключения к u(1)
; другими словами, то, что отрицание выхода G
подключения к входу C
.
Создайте связанную совокупную модель из r
к y
.
T = connect(blksys,connections,1,2)
Последние два аргумента задают внешние вводы и выводы в терминах индексов blksys
. Аргумент 1
указывает, что внешний вход соединяется с u(1)
. Последний аргумент, 2
, указывает, что внешний выход соединяется от w(2)
.
sumblk
| AnalysisPoint
| append
| feedback
| parallel
| series
| lft
| connectOptions