Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовой.docx
Скачиваний:
3
Добавлен:
17.12.2021
Размер:
207.88 Кб
Скачать

3.3 Опис моделювального алгоритму

Для побудови блок-діаграми моделі та написання коду програми мовою імітаційного моделювання GPSS World було розроблено алгоритм імітаційного моделювання відповідно до Q-схеми:

 моделювання приходу деталей до комплектувального конвеєра складального цеху першого и другого типу, з інтервалами часу між надходженнями, що є випадковими величинами з рівномірним законом розподілу на інтервалі 5±1 хвилин для деталей першого типу і 20±7 хвилин для деталей другого типу;

 копіювання транзактів для імітації партії з 5 деталей першого типу и 20 деталей другого типу;

моделювання очікування, доки деталей у кожній із черг буде більше або дорівнювати десяти;

моделювання роботи конвеєра з інтервалом руху 10 хвилин, що відповідає часу комплектації;

моделювання системи упродовж 8 годин.

3.4 Розробка блок-діаграми

Для проведення імітаційного моделювання за допомогою мови імітаційного моделювання GPSS була побудована блок-діаграма програми з використанням спеціальних символів операторів мови GPSS [1], представлена на рис. 3.1. При побудові блок-діаграми було використано т. зв. «принцип Δt», що передбачає зміну стану системи через певний проміжок часу Δt. При моделюванні мовою GPSS квант часу дорівнює одиниці моделювального часу [1]. У системі, що моделювалася, Δt = 1 хв.

Завершення процесу моделювання відбувається в той момент, коли закінчується системний час моделювання – 8 годин. На кожному етапі виконання програми, доки системний час не вичерпано, виконується робота базових елементів систем масового обслуговування, що моделюють роботу системи.

Виконаємо опис блок схеми. Спочатку ми генеруємо один транзакт, далі розчіплюємо його на мітку Detali1 і на мітку Detali2. Розчепленні транзакти затримуються у блоці ADVANCE по заданому закону розподілу, а саме 5±1 хвилин і 20±7, після затримки транзакт розчіплюється на мітки MET1 і MET2 відповідно, а транзакт що іде далі, завдяки безумовному переходу знов передається на мітку Detali1 і Detali2, так моделюється надходження деталей. На мітці MET1 за допомогою команди ASSEMBLE збирається 10 транзактів і за допомогою команди MATCH синхронізується з міткою SINCH2, що відповідає тому, що у LINE2 є 10 транзактів, далі транзакт видаляється з системи. На мітці MET2 за допомогою команди ASSEMBLE збирається 10 транзактів і за допомогою команди MATCH синхронізується з міткою SINCH1, що відповідає тому, що у LINE1 є 10 транзактів. Якщо у LINE1 і LINE2 назбиралося по 10 транзактів, то змінну СOMPLECTOV збільшуємо на одиницю, далі транзакт очікує доки змінна SECTIAPRISHLA не буде дорівнювати одиниці, якщо вона дорівнює одиниці то черги LINE1 і LINE2 звільнюються на 10 транзактів, а змінна SECTIAPRISHLA встановлюється в нуль. Наступний блок моделює роботу конвеєра, тобто кожні 10 умовних одиниць часу генеруємо транзакт, далі перевіряємо умову, що якщо СOMPLECTOV більше нуля, то збільшуємо змінну VSEGO на одиницю, SECTIAPRISHLA встановлюємо у значення один, змінну СOMPLECTOV зменшуємо на одиницю і видаляємо транзакт. Інакше змінну PROPUSK збільшуємо на одиницю, змінну SECTIAPRISHLA встановлюємо у значення нуль. Останній блок генерує один транзакт у 480 одиниць умовного часу і зменшує лічильник часу на одиницю.

Рисунок 3.1 – Блок схема програми

Соседние файлы в предмете Математическое моделирование