назад Оглавление вперед


[Старт] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86] [87] [88] [89] [90] [91] [92] [93] [94] [95] [96] [97] [98] [99] [100] [101] [102] [103] [104] [105] [ 106 ] [107] [108] [109] [110]


106

о Уг

к + 1

хг .

У1 .

к+1 У2

Рис. 6.4.1. Блок-схема связи элементарных блоков

Пара чисел yjxf представляет собой своеобразный шифр запускаемого блока с индексом к + I ио входу xf от блока с индексом к по выходу yj , если в матрице сопряжения на пересечении строки yj и столбца xf+ стоит 1. Конкретное значение yj , выступаюшее для блока к + I в виде входного сигнала xf +, по величине служит исходной информацией или начальными условиями, здцаюшими исходные характеристики функционирования блока к+1.

Идея 3. В модели должен работать генератор единого времени (ГЕВ) для всех элементарных блоков. Единое время позволяет координировать запуски элементарных блоков. Масштаб времени должен соответствовать реальным процессам, происходяшим в объекте моделирования, и изменяться путем задания его величины в виде исходных данных.

Идея 4. Координацию работы всех элементарных блоков должна осуществлять управляюшая программа Д (диспетчер). Функции этой программы заключаются в управлении процессом имитации, т.е. в запуске имитационной процедуры при приходе входного сигнала, в том числе из внешней среды, или от изменения внутреннего состояния элементарных блоков и появления вьгходных сигналов от этих блоков.

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



6.4.2. Функционирование языка «имитация»

На рис. 6.4.2 представлена общая блок-схема функционирования языка «имитация». Работа модели, описанной на языке «имитация», начинается с команды блоку «диспетчер» на запуск модели, вьщавае-мой оператором. Диспетчер включается в работу и ожидает прихода сигналов либо из внешней среды /, либо управляющих сигналов, формируемых оператором, либо выходных сигналов типа yj , появляющихся от элементарных блоков вследствие изменения их внутреннего состояния. Допустим, появился какой-то выходной сигнал от блока к вида yj . Этот сигнал поступает в матрицу сопряжения, отыскивает там по своей строке 1, если она есть, т.е. находит шифр или координату следования данного сигнала yj х, и возвращается в блок «диспетчер» с выбранным шифром. Диспетчер далее направляет сигнал с шифром xf в блок к + I в форме определенного числа, отражающего его вид и значение входного сигнала xf

± X,

к + 1

Массив входных клемм

Генератор единого времени (ГЕВ)

Запуск ГЕВ

Диспетчер

Команда на запуск модели

Выбор шифра запускае.мого блока

по клемме Уу

Выбранный шифр

к к + 1

Матрица сопряжения М

Сигнал на изменение матрицы сопряжений

Рис. 6.4.2. Общая блок-схема функционирования языка имитационного моделирования «имитация»



Блок к+1, получив входной сигнал xf +начинает функционировать в заданном входным сигналом и алгоритмом своей работы режиме.

Когда на блок Д приходит следующий сигнал, то процедура взаимодействия блока Д с матрицей повторяется. Сигналы, поступающие на блок Д, не имеют приоритетов и включаются в работу исключительно по мере их появления. Какой сигнал пришел раньше, такой и обрабатывается в первую очередь. Все элементарные блоки работают по единому времени, задаваемому генератором ГЕВ.

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

Если в модели есть блок определения приоритетности (БОП), то блокД присваивает сигналам xf соответствующий приоритет корректировкой значения xf+ либо отправляет сигнал в блок к + 1, приписав значение приоритета этому сигналу.

Процедура функционирования модели завершается в случае прихода последнего сигнала.

6.4.3. Примерная модель типового элементарного блока

Подпрограмма, реализующая типовой элементарный блок, независимо от выполнения конкретных функций, должна иметь единую схему взаимодействия с блоком Д и с себе подобными типовыми блоками. Каждый типовой элементарный блок должен иметь входные и выходные клеммы, через которые в него поступают входные сигналы xf + и выходные сигналы yj . Индексы клемм соответствуют индексам входных и вьгходных сигналов. Входные сигналы данного вида могут поступить в блок только от блока Д, выходные сигналы поступают только в блок Д. Кроме этого, на вход х, каждого элементарного блока поступает сигнал от генератора единого времени (ГЕВ).

При поступлении из блока Д сигнала вида xf он сравнивается с индексами входных клемм, находящихся в массиве входных клемм вида

х/, xj, ..., Х, Xj, Xj, Хд, ..., Х, Xj, ..., х, ...

...,xr,x!,...,x„YJ,xf,xf,...,x.

Если входной сигнал xf совпадает с индексом соответствующей клеммы, то далее запускается вход xf. Каждый входной сигнал вида xf состоит из набора характеристик xf-(A:,;,7ij,7i2, ...,7i.,0, где к - номер подпрограммы типового блока; i - номер входа, г = 1, п.; 1,712, ,...,ni,t- параметры входного сигнала, которые задаются исходя из особенностей каждого типового блока и типизации не подвергаются.

[Старт] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86] [87] [88] [89] [90] [91] [92] [93] [94] [95] [96] [97] [98] [99] [100] [101] [102] [103] [104] [105] [ 106 ] [107] [108] [109] [110]