Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
173
Добавлен:
30.03.2015
Размер:
1.56 Mб
Скачать

7.2. Блоки и связи

Наличие связи между двумя интерфейсными переменными всегда предполагает как минимум равенство значений этих переменных в любой момент времени, будь то «вход-выход» или «контакт». То есть, наличие связи между двумя интерфейсными переменными A и B эквивалентно в общем случае появлению в поведении охватывающего блока-контейнера одного алгебраического уравнения

.

Рассмотрим три характерных подхода к компонентному моделированию, которые мы условно назовем по наименованиям соответствующих пакетов «подходом Simulink», «подходом Modelica» и «подходом MVS». Они различаются допустимым видом интерфейсных переменных и типом используемых блоков.

Различия в подходах к компонентному моделированию состоят в основном в разных ответах на два вопроса:

  1. Как задается математическая модель элементарного блока?

  2. Какие ограничения накладываются на интерфейсные переменные блоков?

На первый вопрос существует два ответа:

  1. Пользователь может задать математическую модель блока, используя естественные математические нотации (алгебро-дифференциальные уравнения и формулы в естественной математической записи, карты состояния, графы – в традиционной графической форме). Такого подхода придерживаются авторы языка Modelica и авторы графической среды MVS. Их пользователи получают возможность строить произвольные новые блоки с помощью почти «естественного языка».

  2. Пользователь может собрать прикладной элементарный блок из типовых универсальных блоков (таких как интегратор, дифференциатор или сумматор) или вынужден писать новый программный код на одном из процедурных языков. Такой ответ дается авторами пакета Simulink и других аналогичных пакетов, использующих предопределенные блоки и графические аналоги электронных схем.

На второй вопрос также существует два ответа:

  1. На интерфейсные переменные не накладывается никаких ограничений. С математической точки зрения это означает, что связываемые переменные могут находиться и в левой, и в правой частях уравнений своего блока, а с «физической», что их значения могут изменяться как «изнутри» блока, так и «снаружи». Это подход часто называется «физическим» подходом, не требующим явного указания причинно-следственных отношений («non-casual») между связываемыми переменными, а блок с такими внешними переменными – неориентированным.

  2. Внешние переменные четко разделяются на входные, которые могут быть изменены только вне блока, и выходные, которые могут быть изменены только внутри блока. С математической точки зрения это означает, что передаваемые «извне» переменные могут находиться только в правой части уравнений своего блока. Такой подход часто называют блочным подходом, требующим явного описания причинно-следственных отношений («casual»), а блок – ориентированным.

7.3. Ориентированные блоки и связи

Ориентированный блок служит для проектирования систем «вход-состояние-выход». Какие бы конкретно блоки не были выбраны, предопределенные как в Simulink, или «произвольные», основанные на гибридных автоматах, как в MVS. Применение ориентированных блоков предполагает введение ограничений на использование переменных фазового вектора при составлении уравнений, описывающих поведение.

«Переменная состояния» (state variable) – это внутренняя переменная блока, которой можно присвоить новое значение только «внутри» блока. Переменная состояния может стоять в левой части оператора присваивания в действиях переходов, в левой части формул и дифференциальных уравнений, а также являться искомой переменной в алгебраических уравнениях.

«Вход» (input) – это внешняя переменная, которой можно присвоить значение только «извне». Переменная этого вида может стоять только в правых частях дифференциальных уравнений, формул и операторов присваивания, и не может быть искомой в алгебраических уравнениях. Собственное поведение блока не может изменить значение входа. «Вход» может являться приемником в функциональной связи (только в одной!). В этом случае значение входа-приемника всегда равно значению источника в этой связи. «Входы» блока, не участвующие в функциональных связях, называются свободными. Значения свободных «входов» могут изменяться поведением охватывающего блока или менеджером вычислительного эксперимента. «Вход» обычно изображается входящей стрелкой или треугольником (рис. 27).

Рис. 27. Ориентированный блок «вход-выход»

«Выход» (output) - это внешняя переменная, которой можно присвоить значение только «внутри» блока. Выходная переменная, как и переменная состояния, может стоять в левой части оператора присваивания в действиях переходов, в левой части формул и дифференциальных уравнений, а также являться искомой переменной в алгебраических уравнениях. «Выход» может являться источником в функциональных связях (из одного выхода может исходить сколько угодно связей!). «Выход» обычно изображается исходящей стрелкой или треугольником (рис.27).

Функциональные связи, соединяющие «входы» и «выходы» ориентированных блоков, в силу свойств этих внешних переменных являются ориентированными. Описание взаимодействий с помощью «входов» и «выходов» поэтому и называют «причинно-следственным» (casual) подходом в проектировании, так как в направленной связи только источник может влиять на приемники, но не наоборот. Ориентированные связи являются естественной абстракцией для описания информационных связей в технических системах, в которых принимаются специальные меры для исключения обратного влияния. Такие связи изначально вводятся как однонаправленные.

Соседние файлы в папке Моделирование систем, ЗА, 9 сем