Система имитационного моделирования GPSS

Страницы работы

Содержание работы

Белорусский государственный университет информатики и радиоэлектроники.

Кафедра ИТАС

Отчет  

по  лабораторной   работе №1:

«СИСТЕМА ИМИТАЦИОННОГО МОДЕЛИРОВАНИЯ GPSS»

Вариант № 4

Выполнила: студентка гр. 320602

Гудыно Л.Ю.

Проверил: Батин Н. В.

Минск, 2006

Задание: Изделия, выпускаемые в двух цехах, поступают к одному из трех контролеров. Интервал времени между поступлениями изделий из цеха 1 составляет 20+/-5 минут, из цеха 2 – 15+/-5 минут. Контроль каждого изделия состоит в выполнении двух операций: первая операция занимает от 3 до 7 минут, вторая – от 8 до 12 минут. При выполнении каждой из операций примерно для 2% изделий обнаруживается брак. Если брак обнаруживается при выполнении первой операции контроля, то вторая операция не выполняется.

                 После контроля годные изделия подаются на упаковочную машину, выполняющую упаковку и нормировку изделий. Упаковка одного изделия занимает ровно 5 минут. Нанесение маркировки на изделие, поступившее из цеха 1, занимает ровно 2,5 минуты, для изделия из цеха 2 ровно 1,5 минуты.

                 Каждое годное изделие, выпущенное цехом 1, приносит прибыль в размере 4 д. е., бракованное  -  убыток 1 д. е. Выпуск годного изделия цехом 2 приносит прибыль 2.5 д. е. выпуск бракованного изделия – убыток 1,5 д. е.

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

Рис. 1 Схема объекта моделирования.

Описание программы:

control storage 3

          generate 20,5

          assign 2,1

          transfer ,ctr

          generate 15,5

          assign 2,2

ctr       queue och_ctr

          enter control

          depart och_ctr

          advance 5,2

          transfer 020,,brak

          advance 10,2

          transfer 020,,brak

          leave control

          transfer ,upakovka

brak      leave control

          test e P2,1,brak2

          savevalue prib-,1

          savevalue brak_izd1+,1

          transfer ,kon

brak2     savevalue prib-,1.5

          savevalue brak_izd2+,1

          transfer ,kon

upakovka queue och_upak

          seize upak

          depart och_upak

          advance 5

          test e P2,1,mark2

          advance 2.5

          release upak

          transfer ,schet

mark2     advance 1.5

          release upak

schet     test e P2,1,tip2

          savevalue izd1+,1

          savevalue prib+,4

          transfer ,kon

tip2      savevalue izd2+,1

          savevalue prib+,2.5

kon       terminate

          generate 2880

          terminate 1

Storage 3 - объявляем трехканальное устройство (в данном примере это устройство с именем control). После слова storage указывается количество каналов.

generate 20,5 - имитируем поступление заявок через интервалы, составляющие 20±5 единиц времени, т.е. от 15 до 25 минут.

assign          2,1 - присваиваем второму параметру транзакта значение 1, т.е. по второму параметру транзакта будем определять из какого цеха поступило изделие. Если второй параметр имеет значение 1 то из 1-ого, а если 2 то из 2-ого.

transfer ,ctr - передача транзакта на метку ctr (начало контроля).

generate     15,5 - имитируем поступление изделий из 2-ого цеха на контроль с интервалом от 10 до 20 минут.

assign          2,2 - присваиваем второму параметру транзакта значение 2, т.е. транзакт является изделием, поступившем из 2-ого цеха.

queueoch_ctr - поступление транзакта  в очередь с именем och_ctr.

entercontrol - начало проверки изделия контролером.

departoch_ctr - выход изделия из очереди.

advance 5,2 - 5±2 минуты – имитируем время 1-ой операции контроля изделия.

transfer 020,,brak - передача транзакта на метку brak происходит в 2% случаев (т.е. брак выявляется во время 1-ой операции в 2% случаев).

advance 10,2- 10±2 минуты – имитируем время 2-ой операции контроля изделия.

transfer 020,,brak - передача транзакта на метку brak происходит в 2% случаев (т.е. брак выявляется во время 2-ой операции в 2% случаев).

leavecontrol – транзакт покидает трехканальное устройство.

transfer ,upakovka – транзакт переходит на метку упаковка.

brakleavecontrol – транзакт покидает трехканальное устройство control в случае если изделие браковано.

testeP2,1,brak2 – проверяем в каком цеху было выпущено изделие (второй параметр транзакта), если оно из 1-ого цеха (P2=1), то транзакт пропускается на следующий оператор, а иначе транзакт переходит на метку brak2.

savevalueprib-,1 – подсчитываем значение прибыли, вычитая из нее затраты в результате брака изделия (1 д.е.) из первого цеха в сохраняемой величине prib.

savevaluebrak_izd1+,1 – подсчитываем брак изделий из первого цеха в сохраняемой величине brak_izd1.

transfer ,kon – транзакт переходит на метку kon.

Похожие материалы

Информация о работе