Материал: MATLAB 5. Анализ технических систем. Слепокуров Ю.С

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Функция sys = parallel(sys1, sys2) реализует параллельное соединение двух lti-моделей.

 

sys1

u

y

 

sys2

sys

Обе модели должны быть непрерывными или дискретными с

одинаковыми

периодами

дискретности.

Допустимо

использование

безинерционных

моделей,

описываемых

матрицами

статических

коэффициентов передачи. Эта функция эквивалентна операции сложения lti-

моделей sys sys1 sys 2 .

Функция sys = parallel(sys1, sys2, inp1, inp2, out1, out2) позволяет реализовать более общую форму параллельного соединения двух lti-моделей.

v1

sys1

z1

 

 

 

u

 

y

 

 

 

sys2

v2 z2 sys

Векторы inp1 и inp2 определяют, какие номера входов системы sys1 и какие номера входов системы sys2 соединяются. Аналогично векторы out1 и out2 определяют, какие номера выходов систем sys1 и sys2 суммируются. Результирующая модель sys имеет входом вектор [v1; u; v2] и выходом вектор

[z1; y; z2].

series

Последовательное соединение lti-моделей

 

 

Синтаксис:

sys = series(sys1, sys2)

sys = series(sys1, sys2, outputs1, inputs2)

Функция sys = series(sys1, sys2) реализует последовательное соединение двух lti-моделей и эквивалентна операции умножения sys = sys2 * sys1.

u

sys1

 

sys2

y

 

 

 

sys

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

Функция sys = series(sys1, sys2, outputs1, inputs2) позволяет реализовать более общую форму последовательного соединения двух lti-моделей.

Векторы outputs1 и inputs2 указывают, какие номера выходов системы sus1 к каким номерам входов системы sys2 должны быть подсоединены. Полученная модель sys имеет входом вектор u и выходом вектор y.

 

 

v1

 

 

 

 

 

y1

sys2

y

 

sys1

 

 

 

 

 

 

 

 

 

u

 

 

z1

 

sys

 

 

 

 

 

 

 

 

 

 

 

Пример: рассмотрим две модели – ss-модель sys1 c пятью входами и четырьмя выходами и ss-модель sys2 с двумя входами и тремя выходами. Выполним последовательное соединение этих моделей, когда выходы 2 и 4 модели sys1 присоединяются к входам 1 и 2 модели sys2.

»outputs1=[2 4];

»inputs2=[1 2];

»sys=series(sys1,sys2,outputs1,inputs2)

feedback

Соединение lti-моделей обратной связью

 

 

Синтаксис:

sys = feedback(sys1, sys2)

sys = feedback(sys1, sys2, feedin, feedout, sign)

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

u

sys1

y

 

 

 

sys2

 

Замкнутая модель имеет вход u и выход y. Обе модели должны быть непрерывными или дискретными с одинаковыми периодами дискретности. Правила приоритета определяют подкласс результирующей модели. Функция feedback(sys1, sys2) эквивалентна функции feedback(sys1, sys2, -1). Чтобы замкнуть систему положительной обратной связью следует использовать функцию feedback(sys1, sys2, +1).

Функция sys = feedback(sys1, sys2, feedin, feedout) позволяет реализовать более общую форму соединения с обратной связью.

Вектор feedin содержит индексы входного вектора модели sys1 и определяет, какие ее входы включаются в контур с обратной связью. Вектор feedout определяет, какие входы системы sys1 используются для организации обратной связи. Результирующая модель имеет те же входы и выходы, что и система sys1 с сохранением их порядка. По умолчанию предполагается, что контур замыкается отрицательной обратной связью.

Ограничения: соединение с обратной связью не должно содержать алгебраических петель. Для ss-моделей в пространстве состояний это условие заключается в том, что матрицы прямой передачи входа D1 и D2 таковы, что матрица I + D1D2 для контура с отрицательной обратной связью и матрица I – D1D2 для контура с положительной обратной связью являются невырожденными.

star

Соединение lti-моделей звездой

 

 

Синтаксис:

sys = star(sys1, sys2)

sys = star(sys1, sys2, nu, ny)

Функция sys = star(sys1, sys2, nu, ny) формирует соединение звездой для двух моделей sys1 и sys2.

v1

sys1

 

z1

 

 

u

 

y

 

 

y

 

u

y

 

sys2

 

 

 

 

v2

 

 

z2

 

sys

 

 

Обратная связь соединяет первые nu выходов системы sys2 с последними nu входами системы sys1 (сигналы u) и последние ny выходов системы sys1 с первыми ny входами системы sys2 (сигналы y). Полученная система sys отображает вектор входа [v1; v2] на вектор выхода [z1; z2].

Функция sys = star(sys1, sys2) возвращает lti-модель с дескриптором sys, которой может соответствовать одно из двух соединений:

v1

 

z1

sys1

 

sys1

 

 

 

 

 

 

 

y

 

u

 

 

 

u

 

y

 

 

 

 

 

 

sys2

 

 

 

 

 

 

sys2

v1

 

z2

 

 

 

 

 

 

 

 

 

 

 

append

 

Объединение lti-моделей

 

 

 

 

 

Синтаксис:

sys = append(sys1, sys2, …, sysN)

Функция sys = append(sys1, sys2, …, sysN) объединяет входы и выходы lti-моделей и формирует агрегатированную модель без перекрестных связей.

Для tf-моделей с передаточными функциями H1(s), H2(s), …, HN(s) результирующая модель характеризуется передаточной функцией в виде диагональной блочной матрицы

H s diag H1 s , H2 s , , H N s .

connect Построение lti-модели на основе структурной схемы

Синтаксис:

sysc = connect(sys, Q, inputs, outputs)

На практике сложные динамические системы часто описываются структурными схемами, состоящими из большого количества элементов. В этом случае даже для систем умеренной сложности построить ss-модель в пространстве состояний по ее структурной схеме бывает затруднительно. Использование функции connect существенно облегчает эту задачу.

Входные аргументы Q, inputs и outputs имеют следующее назначение:

матрица связей Q предназначена для описания связей блоков на структурной схеме. Каждая строка этой матрицы соответствует одному входу системы sys; первый элемент строки – это номер входа, последующие элементы указывают номера выходов, которые алгебраически суммируются по этому входу; отрицательные элементы обозначают суммирование со знаком минус. Например, если на вход 7 поступают сигналы с выходов 2, 15 и 6, причем сигнал с выхода 15 имеет отрицательный знак, то соответствующая строка матрицы связей Q имеет вид [7 2 –15 6]. Теперь с помощью функции connect может быть построена модель в пространстве состояний с учетом перекрестных связей и с теми же входами и выходами, которые имела модель sys;

векторы inputs и outputs определяют, какие входы и выходы агрегатированной системы являются внешними. Например, если внешними

являются входы 1, 2, 15 и выходы 2, 7 системы sys, то аргументы inputs и outputs должны иметь вид inputs = [1 2 15]; outputs = [2 7].

Поскольку при вводе большого объема данных достаточно просто допустить ошибку, следует выполнить проверку сформированной модели. Для этого можно предложить несколько рекомендаций:

следует убедиться, что полюсы модели sys соответствуют полюсам отдельных блоков;

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

построить переходные функции и частотные характеристики для системы sysc и сравнить их с ожидаемыми.

Если методика работы со структурными схемами является преобладающей, то лучше формировать модель в системе Simulink, как мощным инструментом построения моделей динамических систем.

3.9. Получение lti-объекта из системы Simulink

Для того, чтобы получить lti-объект из системы Simulink, следует сформировать модель, в которой не будет источников и приемников сигналов.

1

1

 

1

0.01s2+0.5s+1

 

In1

 

Out1

 

1

 

Transfer Fcn

2

 

 

 

 

 

 

Gain

0.5s+1

Out2

 

 

 

 

5

Transfer Fcn1

 

 

 

 

Входы и выходы системы отмечаются блоками in и out.

Далее необходимо получить параметры пространства состояний системы (предполагаем, что система собрана в окне системы Simulink с именем untitled):

» [a, b, c, d] = linmod('untitled');.

Полученная матрица позволяет получить модель системы в пространстве состояний:

» sys=ss(a, b, c, d) a =

 

x1

x2

x3

x1

-50

-600

0

x2

1

0

0

x3

0

100

-2

b =

 

 

 

 

u1

 

 

x1

1

 

 

x2

0

 

 

x3

0

 

 

Источник: https://studfile.net/preview/16565812/