Теория систем автоматического регулирования

Принцип поточного исполнения блок-схем (моделей)


Программы математического моделирования динамических систем относятся к графическим средам разработки иерархически структурированных программ верхнего уровня, и часть из них основана на поточной модели управления. Поточная модель управления – это основополагающее понятие для таких програм, как VisSim, MBTY, Simulink, Easy5. Приведем определение:

Поточная модель управления (Data Flow)

Модель программирования, в которой инструкции, процедуры или функции выполняются только тогда, когда все входные данные (т.е. параметры и аргументы) готовы. Альтернативной моделью программирования является командное управление (Control Flow) в которой счетчик команд контролирует переход в памяти программ от одной команды к другой при их последовательном выполнении.

Рассмотрим пример:

Система уравнений модели

составленная пользователем

Упорядоченный программой

информационный поток

a) w = log(r)

b) e = 1

c) r = e - q

d) q = sin(e)

1) e = 1

2) q = sin(e)

3) r = e - q

4) w = log(r)

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

Статический информационный поток, составленный с помощью элементарных библиотечных блоков программы VisSim

Анализируя рисунок, легко заметить, что в любом информационном потоке данные распространяются от источников сигнала к приемникам. Очевидно, что в одном потоке могут существовать ветви, параллельные каналы и обратные связи. Могут существовать зависимые и независимые параллельные потоки. В случае если с течением времени источники сигнала меняют свое значение, то появляется смысл в повторном расчете потока. Такой информационный поток называется динамическим, а каждый повторный расчет называется шагом симуляции. Наиболее развитые языки графического программирования (G-язык среды программирования LabVIEW) кроме формирования информационных потоков позволяют программировать их исполнение, а в случае определения независимых параллельных потоков (мультизадачности) обеспечивают требуемый вид синхронизации.



Содержание раздела