Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МКС. Лаб. роботи.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
1.2 Mб
Скачать

1 Короткі теоретичні відомості

1.1 Перерозподіл потоку транзактів в GPSS-моделях

Блок TRANSFER (ПЕРЕДАТИ) дозволяє направити транзакт до будь-якого блоку моделі. Він має чотири операнди A, B, C, D. При цьому слід пам'ятати, що існує дев'ять режимів використання цього блоку для перерозподілу потоку транзактів.

Безумовний режим: операнди A, C і D в цьому режимі не використовуються. Операнд B - ім'я блоку, в який повинен перейти транзакт. Наприклад, транзакт, що поступив в блок, спробує увійти до блоку з ім'ям PRIBOR. Якщо останній відмовляє в цьому (зайнятий), то транзакт залишається в блоці TRANSFER.

TRANSFER

PRIBOR

Статистичний режим: операнд A визначає відсоток транзактов (у відносних одиницях), що направляються в блок з ім'ям, заданим операндом C. Решта транзактів прямує в блок, визначений операндом B (за умовчанням це наступний по порядку блок). Наприклад, в середньому 80% транзактів, що поступили в блок прямують в блок 7, останні - в блок 25.

TRANSFER

. 8, 25, 7

Якщо вхід в блок заборонений (блок зайнятий), то транзакт залишається в блоці TRANSFER і робитиме нову спробу увійти до вибраного блоку.

Режим BOTH: У полі операнда A записано умовне позначення BOTH. Транзакт спочатку намагається пройти на блок, вказаний в полі B (за умовчанням - це наступний по порядку блок). Якщо це не вдається, то транзакт прямує в блок з ім'ям, вказаним в полі C. Якщо увійти до блоку не вдається, то транзакт залишається в блоці TRANSFER і процес повторюється.

Режим ALL: У полі A записано умовне позначення ALL. Транзакт намагається перейти спочатку до блоку, вказаного в полі B. Якщо це не вдається, транзакт послідовно пересилається до блоків з номерами B + D; B + 2D ..., C, де D - величина кроку, вказана в полі D, C - номер блоку в полі операнда C ( C > В на величину, кратну кроку D). Якщо транзакт не може перейти ні до одного з цих блоків, то він повертається в TRANSFER і цикл повторюється в тій же послідовності. Наприклад:

TRANSFER

ALL,20, 80, 10

TRANSFER

ALL, ST1, ST2, 3

TRANSFER

ALL, 20, 80, 25

У першому блоці режим ALL заданий правильно. Транзакт послідовно намагатиметься перейти до блоків 20, 30 ..., 80. У другому блоці режим ALL допустимий тільки в тому випадку, якщо різниця між номерами, привласненими інтерпретатором блокам ST1 і ST2 кратна трем. У третьому випадку завдання режиму ALL неприпустимо, оскільки різниця між номерами блоку B і C не будуть кратні 25. У режимі ALL використання СЧА і непрямої адресації в операндах B, C і (або) D не допускається.

Режим PICK: У полі A записано позначення PICK. Випадково, з рівною імовірністю транзакт пересилається до одного з блоків з номерами B, B+1, B+2 ..., B+C, де B і C - номери блоків, вказані в полях відповідних операндів. Якщо транзакт не може відразу перейти ні до одного блоку, то він чекатиме в блоці TRANSFER до тих пір, поки не буде знято блокуючу умову. Наприклад:

TRANSFER

PICK, 20, 29

Транзакт, що увійшов до цього блоку, з вірогідністю 0.1 спробує перейти до одного з 10 вказаних блоків (20, 21 ..., 29).

Режим "параметр": У полі A записано позначення P. Операнд B задає номер параметра транзакта, який входить в блок TRANSFER. Номер наступного блоку визначається сумою значення цього параметра із значенням операнда C. Транзакт переходить тільки в блок з обчисленим номером або затримується в блоці TRANSFER, якщо блок зайнятий.

Режим "підпрограма": У полі A записується позначення SBR. Транзакт з блоку TRANSFER намагається увійти до блоку з номером, визначеним операндом B. Операнд C задає номер параметра транзакта. У цьому параметрі автоматично записується номер даного блоку TRANSFER. Режим використовується для переходу до підпрограми, початком якої є блок, вказаний в полі операнда B. Транзакт зможе повернутися до блоку, наступного після блоку TRANSFER SBR, B, 10, що звернувся до підпрограми, якщо в кінці підпрограми записати блок TRANSFER P, 10, 1.

1.2 Приклад моделювання з використанням умовних переходів

Постановка завдання. Складальний цех приладобудівного заводу здійснює збірку осцилографів. Після збірки осцилографи поступають на випробувальний стенд, де проходять серію тестів і перевірок. Якщо прилад функціонує нормально, то після випробувань він поступає в цех упаковки; інакше осцилограф поступає на ділянку наладки. Після наладки осцилограф знов поступає на випробувальний стенд для проходження тестів.

Осцилографи поступають на випробувальний стенд кожні 10  3 хвилини, для проведення тестів і перевірок потрібно 16  4 хвилини. Приблизно 90 % осцилографів проходять випробування успішно, останні 10 % поступають на ділянку наладки. Наладка приладу займає 40  10 хвилин; якщо налагоджувальник у момент надходження приладу зайнятий, то прилад стає в чергу з алгоритмом обслуговування «перший поступив – перший пішов». Таким же чином організовується черга осцилографів, що поступили на випробувальний стенд, якщо під час надходження стенд зайнятий. Час надходження осцилографів, їх випробувань і наладки розподілено по рівномірному закону.

Випробування проводять 2 контролери, а наладку – 1 електронщик. Розподіл часу випробувань не залежить від того, який з контролерів їх проводить.

Необхідно побудувати і досліджувати GPSS-модель описаної системи; зібрати статистичну інформацію про роботу контролерів, налагоджувальника і про чергу. Час дослідження – 2 робочих тижня (80 годин), вихідні дні і перерви – не враховувати.

Метод побудови моделі. Визначаємо обмеження, що існують в системі, а потім вибираємо елементи GPSS для задоволення цих обмежень:

  • 1 фахівець – електронщик, який займається наладкою (одноканальний прилад);

  • 2 контролери, які проводять випробування (БКП ємністю 2);

  • відсоток осцилографів, які потрапляють на ділянку наладки (блок пересилки транзактов із заданою вірогідністю).

Складання таблиці визначень (табл. 1.1). Одиниця часу 1 хвилина. Блок-діаграма GPSS-модели приведена на рис. 1.1.

Таблиця 1.1 – Таблиця визначень для даного прикладу

Елементи GPSS

Призначення елементів

Транзакти:

1-й сегмент моделі

Таймер

2-й сегмент моделі

Осцилографи

Прилади:

ADJUST

Налагоджувальник

Багатоканальні пристрої:

STEND

Випробувальний стенд

Черги:

LINE1

Черга до випробувального стенду

LINE2

Черга до налагоджувальника

Рис. 1.1 - блок-діаграма GPSS-модели

Складання програми моделі проводиться на підставі початкових даних і визначеної раніше послідовності блоків. Програма імітації системи приведена в табл. 1.2.

Таблиця 1.2

1

STEND

STORAGE

2

; 2 TESTERS

2

GENERATE

10, 3

; PRODUCTION OSCILLOSCOPE

3

AGAIN

QUEUE

LINE_1

; QUEUE TO TEST

4

ENTER

STEND

; GO TO THE TEST

5

DEPART

LINE_1

; LEAVE THE QUEUE

6

ADVANCE

16, 4

; TEST

7

LEAVE

STEND

; OUT OF TEST

8

TRANSFER

0.1, , BAD

; IF BAD GO TO ADJUSTMENT

9

TERMINATE

; OSCILLOSCOPE GO OUT

1

BAD

QUEUE

LINE_2

; QUEUE TO ADJUSTMENT

1

SEIZE

ADJUST

; GO TO THE ADJUSTMENT

1

DEPART

LINE_2

; LEAVE THE QUEUE

1

ADVANCE

40, 10

; ADJUSTMENT

1

RELEASE

ADJUST

; OUT OF ADJUSTMENT

1

TRANSFER

, AGAIN

; AGAIN GO TO TEST

1

GENERATE

4800

; SET TIMER AT 4800 MINUTES

1

TERMINATE

1

; SHUT OFF THE RUN

1

START

1

; START THE RUN

Вихідні дані програми. Після виконання програми документування результати роботи моделі можна проглянути у файлі REPORT.GPS. Для аналізу результатів моделювання в табл. 1.3 приведена статистична інформація про прилад ADJUST, багатоканальному пристрої STEND і про черги.

Таблиця 1.3

FACILITY

ENTRIES

UTIL.

AVE._TIME

AVAILABLE

DELAY

ADJUST

57

0.467

39.40

1

0

STORAGE

CAP.

MIN.

MAX.

ENTRIES

AVE. C.

UTIL

DELAY

STEND

2

0

2

547

1,82

0,911

0

QUEUE

MAX

CONT.

ENTRIES

ENTRIES(0)

AVE.CONT

AVE.TIME

LINE_1

5

0

547

222

0.58

5.09

LINE_2

3

0

57

28

0.22

18.82

Аналіз результатів моделювання. На підставі даних, отриманих в результаті моделювання роботи системи, можна зробити наступні виводи:

  • багатоканальний пристрій STEND використовується ефективно (середнє завантаження пристрою більше 90 %), отже двох контролерів, що проводять випробування осцилографів на стенді, цілком достатньо;

  • коефіцієнт завантаження приладу ADJUST рівний 0,467 говорить про те, що один електронщик справляється з ремонтом і наладкою осцилографів, що не пройшли випробування; при цьому він завантажений роботою тільки на половину своїх можливостей;

  • з 547 осцилографів, що поступили на ділянку, 57 (10,4 %) потребували ремонту і наладки;

  • жодна з черг LINE_1 і LINE_2 не має тенденції до необмеженого зростання, ні в одній з черг за час моделювання не знаходилося більше п'яти приладів.