Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

Сборочный цех

Содержание:

Введение

В сборочный цех с интервалами времени, распределенными экспоненциально со средним значением 10 мин, поступают детали партиями из трех штук. Половина всех поступающих деталей должна перед сборкой проходить  предварительную обработку в течение 7 мин. На сборку, на которую уходит 6 мин, передаются обработанные и необработанные детали. В результате сборки могут появиться бракованные изделия, доля которых составляет 4% от общего количества собранных, которые возвращаются на предварительную обработку. После сборки изделия поступают на регулировку, время которой распределено экспоненциально со средним значением 8 мин.

Необходимо смоделировать работу цеха в течение 24ч, определить возможные причины появления очередей, предложить пути их устранения и провести моделирование модифицированного варианта.

Элементы модели участков обработки деталей:

транзакты – детали, поступающие на участки обработки;

очереди – очереди на участках обработки;

участки обработки – участки цеха, производящие сборку, обработку и регулировку деталей.

Описание моделируемой системы

Данная система описывает работу сборочного участка цеха, которая состоит из трех этапов: сборка, предварительная обработка и регулировка деталей. Первые два этапа осуществляются параллельно. Половина всех партий (50 %) поступает сразу на сборку, а вторая половина проходит предварительную обработку, после чего отправляется на сборку. В процессе сборки деталей выделяется 4 % брака, которые заново проходят предварительную обработку. Следующим этапом все партии поступают на регулировку (96 %).

На основании задания была построена структурная схема (Рис. 1).

Сборка (6 мин)

Производящий детали

участок цеха

Предварительная обработка (7 мин)

Регулировка (8 мин)

Готовая продукция

4 % брака

96 %

50 %

50 %

Интервалом в 10 мин поступают партии

(из 3 деталей)

Сборочный участок цеха

Рисунок 1 - Блок-схема.

В данной модели (рис. 1) заявки (партии) поступают в систему (сборочный участок цеха) из участка цеха, производящего детали, откуда в свою очередь выходит готовая продукция. Каждая партия состоит из трех деталей. Поступление заявок происходит через интервалы времени, распределенные экспоненциально со средним значением 10 мин. По окончании времени работы системы (24 часа), все заявки удаляются из системы (перестают поступать), т.е. работа сборочного участка цеха прекращается.

Для реализации имитации работы сборочного участка цеха в среде GPSS World понадобились следующие операторы: GENERATE, TRANSFER, SPLIT, QUEUE, SEIZE, DEPART, ADVANCE, RELEASE, TERMINATE, START. Синтаксис данных операторов указан в Приложении А.

Блок-диаграмма модели в символике языка GPSS

10

Sp2

Sp1

7

6

0.5

0.04

8

1440

1

Рисунок 2. Блок-диаграмма.

Решение задачи на языке GPSS

***********************************************************

GENERATE (EXPONENTIAL(1,0,10)) - поступление заявок с интервалом в 10 мин.

TRANSFER .5,sp1,sp2 - распред. заявок между sp1 и sp2 (по 50%)

***********************************************************

sp1 SPLIT 2 - размножение заявок (становится 3 детали)

blok1 QUEUE OCHER1 - занятие очереди 1

SEIZE OBRABOTKA - занятие этапа предв. обработки

DEPART OCHER1 - освобождение очереди 1

ADVANCE 7 - задержка на этапе предв. обработки

RELEASE OBRABOTKA - освобождение этапа предв. обработки

TRANSFER ,blok2 - переход к блоку 2

***********************************************************

sp2 SPLIT 2

blok2 QUEUE OCHER2 - занятие очереди 2

SEIZE SBORKA - занятие этапа сборки

DEPART OCHER2 - освобождение очереди 2

ADVANCE 6 - задержка на этапе сборки

RELEASE SBORKA - освобождение этапа сборки

***********************************************************

TRANSFER .04,blok3,blok1 - 4% заявок отпр-ся в блок 1, 96% в блок 3

***********************************************************

blok3 QUEUE OCHER3 - занятие очереди 3

SEIZE REGULIROVKA - занятие этапа регулировки

DEPART OCHER3 - освобождение очереди 3

ADVANCE (EXPONENTIAL(1,0,8)) - задержка на этапе сборки

RELEASE REGULIROVKA - освобождение этапа регулировки

***********************************************************

TERMINATE - удаление заявок

***********************************************************

GENERATE 1440 - прогон модели в течении 24 часов

TERMINATE 1 - удаление заявок (окончание моделирования)

START 1 - 1 завершение прогона модели

Результаты моделирования

После окончания моделирования в среде GPSS World, был получен следующий стандартный отчет:

GPSS World Simulation Report - Kursovaia №1.35.1

Wednesday, July 30, 2014 04:39:06

START TIME END TIME BLOCKS FACILITIES STORAGES

0.000 1440.000 24 3 0

NAME VALUE

BLOK1 4.000

BLOK2 11.000

BLOK3 17.000

OBRABOTKA 10005.000

OCHER1 10004.000

OCHER2 10000.000

OCHER3 10002.000

REGULIROVKA 10003.000

SBORKA 10001.000

SP1 3.000

SP2 10.000

LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY

1 GENERATE 145 0 0

2 TRANSFER 145 0 0

SP1 3 SPLIT 73 0 0

BLOK1 4 QUEUE 225 26 0

5 SEIZE 199 0 0

6 DEPART 199 0 0

7 ADVANCE 199 1 0

8 RELEASE 198 0 0

9 TRANSFER 198 0 0

SP2 10 SPLIT 72 0 0

BLOK2 11 QUEUE 414 174 0

12 SEIZE 240 0 0

13 DEPART 240 0 0

14 ADVANCE 240 1 0

15 RELEASE 239 0 0

16 TRANSFER 239 0 0

BLOK3 17 QUEUE 233 53 0

18 SEIZE 180 0 0

19 DEPART 180 0 0

20 ADVANCE 180 1 0

21 RELEASE 179 0 0

22 TERMINATE 179 0 0

23 GENERATE 1 0 0

24 TERMINATE 1 0 0

FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY

SBORKA 240 0.999 5.993 1 224 0 0 0 174

REGULIROVKA 180 0.995 7.957 1 204 0 0 0 53

OBRABOTKA 199 0.965 6.984 1 379 0 0 0 26

QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY

OCHER2 175 174 414 1 80.179 278.884 279.559 0

OCHER3 54 53 233 1 26.670 164.829 165.539 0

OCHER1 34 26 225 4 15.991 102.345 104.198 0

Из полученного отчета можно узнать результаты прогона построенной модели, представленные в Таблице 1:

Таблица 1 – Результаты моделирования

Этапы

Загруженность устройств

Кол-во необслуженных заявок

Среднее время задержки в очереди

Пр. обработка

0.935

31

122.249

Сборка

0.999

135

262.401

Регулировка

0.990

67

205.025

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

Предположим, что цех закупил улучшенное оборудование. В соответствии с этим в текст программы были внесены изменения.

Ниже представлен текст программы после внесения изменений:

GENERATE (EXPONENTIAL(1,0,10))

TRANSFER .5,sp1,sp2

***********************************************************

sp1 SPLIT 2

blok1 QUEUE OCHER1

SEIZE OBRABOTKA

DEPART OCHER1

ADVANCE 7

RELEASE OBRABOTKA

TRANSFER ,blok2

***********************************************************

sp2 SPLIT 2

blok2 QUEUE OCHER2

SEIZE SBORKA

DEPART OCHER2

ADVANCE 5 - значение изменяем с «6» до «5»

RELEASE SBORKA

***********************************************************

TRANSFER .04,blok3,blok1

***********************************************************

blok3 QUEUE OCHER3

SEIZE REGULIROVKA

DEPART OCHER3

ADVANCE 5 - значение изменяем с «8» до «5»

RELEASE REGULIROVKA

***********************************************************

TERMINATE

***********************************************************

GENERATE 1440

TERMINATE 1

START 1

Как видно из текста программы изменения произошли в последних двух блоках, т.е. новое оборудование завезли в отдел непосредственной сборки деталей и в отдел регулировки. Процессы сборки и регулировки стали занимать всего по 5 мин. При этом время, затрачиваемое на предварительную обработку деталей, не изменилось, т.е. не пришлось закупать дополнительное оборудование. Как и предполагалось, уменьшилось количество необслуженных заявок и среднее время задержки в очереди, соответственно вероятность появления очередей тоже уменьшилась. А также установился приемлемый уровень загруженности устройств обслуживающих процессы: сборки, предварительной обработки и регулировки.

Числовые данные произошедших изменений приведены в таблице 2.

Таблица 2 – Результаты измененной модели (М2) по сравнению с данной (М1)

Этапы

Загруженность устройств

Кол-во необслуженных заявок

Среднее время задержки в очереди

М1

М2

М1

М2

М1

М2

Пр. обработка

0.935

0.972

31

8

122.249

38.486

Сборка

0.999

0,999

135

86

262.401

160.541

Регулировка

0.990

0.957

67

0

205.025

0.000

Заключение

На основе полученного задания был выполнен прогон построенной модели в течение 24 ч. (1440 мин.). По результатам полученных данных были выявлены возможные места появления очередей и причины их возникновения. Также определено количество необслуженных заявок и среднее время задержки в очередях. Можно сделать вывод о том, что в системе есть некоторые факторы, которые неблагоприятно влияют на её работоспособность.

Рекомендуется усовершенствовать данную систему путем замены работающего оборудования в цеху на более новое, с наименьшими затратами времени. Что в свою очередь повысит производительность сборочного участка цеха и обеспечит оптимальную работу всей системы в целом, соответственно увеличится доход предприятия.

Приложение А

Синтаксис операторов GPSS использованных в данном курсовом проекте:

GENERATE (ГЕНЕРИРОВАТЬ)

GENERATE - вводит транзакты в модель. Формат: GENERATE A,B,C,D,E,F,G

А - среднее значение интервала времени;

В - разброс или модификатор среднего значения (по умолчанию ноль);

С - время появления первого транзакта;

D - общее число генерируемых транзактов;

Е - уровень приоритета каждого транзакта; (от 0 до 127, значение по умолчанию 0);

F - число параметров (по умолчанию 12);

G - тип параметра (F - полнословный, Н - полусловный - по умолчанию).

Вводит транзакты в модель, посылая их в следующий по порядку блок. Если в поле В не указана Функция, то интервал между поступлением транзактов определяется случайным числом, равномерно распределенным в диапазоне от (А - В) до (А + В). Если поле В является функцией (FN$), то этот интервал определяется произведением поля А на значение функции, заданной в поле В.

TRANSFER (ПЕРЕДАТЬ)

TRANSFER - изменяет движение транзакта в модели.

Формат: TRANSFER А,В,С,D

А - режим передачи (пробел,.,ALL,BOTH,FN,P,PICK,SBR,SIM);

В - следующий блок;

С - следующий блок;

D - значение индекса, используемое в режиме ALL.

Транзакт направляется в блок, определяемый в соответствии с режимом передачи, указанным в поле А. Режимы передачи поля А:

Пробел - транзакт передается в блок, определяемый полем;

"." - статистический режим; в поле А указано десятичное число, выражающее вероятность перехода в блок С; его дополнение до единицы указывает вероятность перехода в блок В;

ALL - транзакт последовательно пытается перейти в блоки, определяемые значениями В, B+D, B+2D.....C;

BOTH - транзакт последовательно пытается войти в блок В, затем в блок С, до тех пор, пока один из них станет доступным;

FN - функциональный режим: поле В является номером функции; следующий блок определяется суммой значения этой функции поля С;

Р - параметрический режим: поле В является номером параметра; следующий блок определяется суммой значения этого параметра и поля С;

PICK - выборочный режим: блок выбирается с равной вероятностью из блоков с номерами: В, B+l,..., С.

SBR - режим перехода к подпрограмме: номер текущего блока помещается в параметр, указанный в поле С, а транзакт передается в блок, номер которого указан в поле В.

SIM - одновременный режим: проверяется одновременное выполнение условий беспрепятственного движения транзактов в задерживающих блоках. Если условие выполняется, транзакт передается в следующий блок, в противном случае транзакт переходит на блок С;

SPLIT (РАСЩЕПИТЬ)

SPLIT - создает копии текущего транзакта.

Формат: SPLIT A,B,C,D

А - число создаваемых копий;

В - следующий блок для копий;

С - параметр для хранения порядкового номера копии;

D - число параметров у каждой копии.

Поле А определяет число копий, которые образуются при входе текущего транзакта. Эти вновь созданные транзакты по умолчанию идентичны исходному транзакту. Копии входят в блок, указанный в поле В. Исходный транзакт поступает на следующий блок. Параметр поля С используется для задания порядковых номеров копий. Нумерация осуществляется следующим образом. Порядковый номер исходного транзакта увеличивается первым. Если он был равен нулю, при входе транзакта в блок он станет равным единице. Порядковый номер первой копии станет на единицу больше, чем у исходного транзакта номера последующих копий также увеличиваются на единицу. Если поле D не задано, копии имеют такое же, как у исходного транзакта число и тип параметров.

QUEUE (СТАТЬ В ОЧЕРЕДЬ)

QUEUE - помещает транзакт в конец очереди.

Формат: QUEUE А,В

А - номер очереди (числовое или символьное имя очереди);

В - число добавляемых к очереди элементов (по умолчанию 1).

Увеличивает текущее содержимое очереди, указанной в поле А, на значение в поле В. Если поле В не определено, увеличивает содержимое очереди на единицу. Транзакт может находиться в двух различных очередях одновременно.

Очередь имеет следующие стандартные числовые атрибуты:

Q$j - текущая длина очереди j;

Q$Xj - максимальная длина очереди j;

QA$j - средняя длина очереди j;

QC$j - число входов в очередь j;

QZ$j - число входов в очередь с нулевым временем пребывания (транзакт прошел

через блок QUEUE, не задерживаясь в очереди);

QT$j - среднее время пребывания в очереди j, включая нулевые входы;

QX$j - среднее время пребывания в очереди j, без нулевых входов.

SEIZE (ЗАНЯТЬ)

SEIZE - занимает устройство.

Формат: SEIZE А

А - номер устройства.

Транзакт пытается занять устройство, определенное полем А. Если прервано, транзакт задерживается в предыдущем блоке.

DEPART (ПОКИНУТЬ ОЧЕРЕДЬ)

DEPART - удаляет транзакт из очереди.

Формат: DEPART А,В

А - номер (имя) очереди;

В - число удаляемых из очереди элементов.

Удаляет текущий транзакт из очереди, указанной в поле А, и уменьшает содержимое очереди на значение поля В. транзакт может находиться одновременно в двух различных очередях.

ADVANCE (ЗАДЕРЖАТЬ)

ADVANCE - задерживает транзакт.

Формат: ADVANCE A,B

А - среднее время задержки (константа, если В не задано);

В - разброс относительно среднего значения, должен быть меньше или равен А.

Блок ADVANCE моделирует временную задержку транзакта в течение определенного интервала. Значение задержки по умолчанию равно нулю. Если поле В не является FN$, т время задержки является случайным числом, распределенным равномерно на интервале от (; + В) до (А - В). Если поле В является функцией FN$, то время задержки определяете произведением поля А на значение функции в поле В. Функция может быть использована для задания времени задержки с определенным средним значением и отклонением, зависящим от А.

RELEASE (ОСВОБОДИТЬ)

RELEASE - освобождает устройство.

Формат: RELEASE А

А - номер устройства (числовое или символьное имя освобождаемого устройства).

Устройство, указанное в поле А, освобождается и становится доступным для других транзактов. Освобождать устройство должен тот же транзакт, который его занимал.

TERMINATE (ЗАВЕРШИТЬ)

TERMINATE - удаляет транзакт.

Формат: TERMINATE A

А - величина, вычитаемая из содержимого счетчика завершений (поле А карты START).

Транзакт удаляется из модели и поступает в пассивный буфер. Если в поле А пробел, воздействия на счетчик завершений не происходит, в противном случае его значение уменьшается на величину, указанную в поле А.

START (НАЧАТЬ)

START - управление процессом моделирования.

Формат: START А,В,С,D

А - счетчик числа завершений;

В - подавление вывода на печать (В = NP);

С - промежуточный вывод статистики; 0 - распечатка списков.

Поле А определяет счетчик завершений при прогоне модели. При входе транзакта в блок TERMINATE с ненулевым значением поля А, содержимое поля А блока TERMINATE вычитается из остаточного значения счетчика - поля А карты START.

Прогон завершается, когда значение счетчика достигнет нуля. Указатель NP в поле В отменяет вывод стандартного отчета GPSS. Величина , указанная в поле С, определяет число завершений, по достижении которого выдается промежуточный отчет. Таким образом, можно получать статистические данные в определенных интервалах моделирования. Если поле D содержит 1, полученный отчет будет содержать списки текущих и будущих событий, а также списки пользователя.

Список использованной литературы

1. Снетков Н.Н. Имитационное моделирование экономических процессов / Н.Н, Снетков. - М.: ЕАОИ, 2008, - 228 с.

2. Емельянов А.А. Имитационное моделирование экономических процессов / А.А. Емельянов, Е.А. Власова, Р.В. Дума. - М.: Финансы и статистика, 2002. - 368с.

3. Бусленко, Н.П. Моделирование сложных систем / Н.П. Бусленко.-М. : Наука, 1978. - 399с.

4. Советов Б.Я. Моделирование систем / Б.Я. Советов, С.А. Яковлев. - М. : Высш. школа, 1985. - 271 с.

5. Советов Б.Я. Моделирование. "Автом. сист. обработ. инф. и управл." / Б.Я. Советов, С.А. Яковлев. -М. : Высш. шк., 1989. - 80 с.

6. Максимей И.В. Имитационное моделирование на ЭВМ / Максимей, И.В. -М : РАДИО И СВЯЗЬ, 1988. – 231с.

7. Вентцель Е.С. Теория вероятностей / Е.С. Вентцель.- М. : Высш. шк., 2001. - 575 с.

8. Гмурман, В.Е. Теория вероятностей и математическая статистика / В.Е. Гмурман.- М. : Высш. шк., 2001. - 479 с.

9. Советов Б.Я. Моделирование систем. Практикум /Б.Я. Советов, С.А. Яковлев - 3-е изд., стер. - М.: Высш. шк., 2005. - 295 с.