Моделирование предприятия по производству изделий

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    2,08 Мб
  • Опубликовано:
    2015-07-03
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Моделирование предприятия по производству изделий













Курсовая работа

"Моделирование предприятия по производству изделий"

Содержание

Введение

. Задание

. Концептуальная модель

. Программная реализация

. Проверка адекватности модели

. Планирование и проведение экспериментов

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

Вывод

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

Введение

На гибком автоматизированном производственном участке некоторого ремонтного предприятия производят детали типа вал-шестерня.

Заготовки поступают на склад каждые 3(+,-)1 мин. Далее производство ведется в следующей последовательности: со склада заготовка переносится на РТК1, где выполняется фрезерно-центровальная операция. После обработки заготовки она попадает на РТК2, где осуществляется первая токарная обработка. После этого заготовка перемещается в цех термической обработки для закаливания. В цеху печи одновременно может обжигаться 5 заготовок. Закаленные валы переносятся на вторую токарную обработку на РТК3. Затем осуществляется фрезерование шпоночного паза на РТК4, после чего заготовки попадают на один из 4-х РТК (РТК5, РТК6, РТК7, РТК8), где выполняется операция по нарезанию зубьев. После этого происходит шлифование полуфабрикатов (на РТК9) и доставка готовых деталей на склад.

Операции по переносу заготовок и полуфабрикатов осуществляет единственный кран-штабеллер, скорость перемещения которого составляет 10 м/мин. Расстояния между рабочими местами и времена выполнения операций на них представлены в табл. 1.1 и 1.2

Таблица 1.1

Наименование операции

Рабочее место

Время выполнения, мин

1 2 3 4 5 6    7

Фрезерно-центровальная Токарная Термообработка Токарная Фрезерная Зубофрезерная    Шлифование

РТК1 РТК2 Печь РТК3 РТК4 РТК5 РТК6 РТК7 РТК8 РТК9

1,06(+,-)0,05 3,05(+,-)0,20 50,00(+,-)5,00 3,03(+,-)0,20 1,06(+,-)0,10 13,25(+,-)0,25 14,15(+,-)0,50 10,05(+,-)0,15 11,12(+,-)0,30 0,98(+,-)0,05


Таблица 1.2

Рабочие места

Расстояние, м

Склад - РТК1 РТК1 - РТК2 РТК2 -Печь Печь - РТК3 РТК3 - РТК4 РТК4 - РТК5 РТК4 - РТК6 РТК4 - РТК7 РТК4 - РТК8 РТК(4,5,6,7,8)- РТК9 РТК9 - Склад

24 6 18 12 6 3 6 7 10 10 12



1. Задание

1. Разработайте концептуальную модель гибкого автоматизированного производственного участка, используя математический аппарат систем массового обслуживания (СМО).

. Осуществите программную реализацию концептуальной модели при помощи специализированного языка компьютерной имитации GPSS/H.

. Проверьте адекватность модели.

. Используя разработанную модель, смоделируйте работу автоматизированного участка в течении 24 часов. Определите с точностью - 1 и доверительной вероятностью - 0,90 количество изготовленных деталей и загрузку оборудования.

. По результатам имитационных экспериментов постройте зависимость производительности участка от скорости крана-штабеллера.

автоматизированный программный компьютерный имитация

2. Концептуальная модель


Как видно из рисунка наша сеть состоит из нескольких простых СМО и является системой с бесконечным числом заявок, ожиданием в очереди, дисциплиной обслуживания "первый пришел - первый обслужен".

Заявки представляют из себя заготовки, поступающие на склад и при дальнейшей обработке изменяющие свой внешний вид и качества. Так как РТК(5,6,7,8) выполняют одну и ту же операцию, то и внешний вид входящей и выходящей заготовки будет один и тот же.

. Программная реализация

 

Пусть транзакт представляет собой заготовку, которая по мере продвижения по модели преобразуется в готовую деталь. Поступление заготовок в соответствии с заданным распределением имитируем блоком GENERATE. РТК(1-9) имитируются приборами обслуживания RTK(1-9) т.е. двумя блоками SIZE, RELEASE, между которыми ставим блок ADVANCE для имитации обработки заготовки, для каждого РТК соответственно. Так как в печи могут сразу обжигаться пять заготовок моделируем ее многоканальным устройством PECH, т.е. двумя блоками ENTER, LIVE, между которыми ставим блок ADVANCE для имитации обжига заготовки. Так как переноску заготовок и полуфабрикатов осуществляет единственный кран-штабеллер (далее кран), смоделируем его прибором обслуживания KRAN. Обслуживание краном состоит из двух частей: перемещение крана из текущего положения к вызвавшему его рабочему месту или складу; перенос заготовки к следующему рабочему месту или складу. Для моделирования этих двух процессов мы введем переменную PLACE указывающую на индекс текущего положения крана, переменную SKOROST, в которой хранится скорость крана в м/мин. Ниже приведена таблица индексов рабочих мест.

Таблица 1

Название рабочего места

Индекс

Склад заготовок

1

РТК1

2

РТК1

3

Печь

4

РТК3

5

РТК4

6

РТК5

7

РТК6

8

РТК7

9

РТК8

10

РТК9

11

Склад готовой продукции


Для хранения длин кратчайших путей от каждого до каждого рабочего места будем использовать матрицу байтовых значений 12х12. Индекс номера столбца матрицы (i) будет указывать на индекс рабочего места откуда начинается перемещение. Индекс строки матрицы (j) будет указывать на индекс рабочего места, куда нужно совершить перемещение. Т.е. в ячейки матрицы (10,4) будет находиться значение равное длине пути от РТК8 до печи.

Так как между некоторыми из РТК существуют несколько возможных путей перемещения крана (например, в описании системы не указана длина прямого пути от РТК 5 до РТК6 поэтому, кран может пройти через РТК4 или РТК9).

Для нахождения длин кратчайших путей проанализируем взвешенный граф, в котором вершинами будут рабочие места, а рёбрами - возможные перемещения между ними, вес ребра - длина пути.

 

Используя алгоритм Дейкстры найдём наикратчайшие расстояния от каждой вершины, до каждой и внесём полученные значения в нашу матрицу.

Таблица 2

0

24

30

48

60

66

69

72

73

76

76

88

24

0

6

24

36

42

45

48

49

52

52

64

30

6

0

18

30

36

39

42

43

46

46

58

48

24

18

0

12

18

21

24

25

28

28

40

60

36

30

12

0

6

9

12

13

16

16

28

66

42

36

6

0

3

6

7

10

10

22

69

45

39

21

9

3

0

9

10

13

10

22

72

48

42

24

12

6

9

0

13

16

10

22

73

49

43

25

13

7

10

13

0

17

10

22

76

52

46

28

16

10

13

16

17

0

10

22

76

52

46

28

16

10

10

10

10

10

0

12

88

64

40

28

22

22

22

22

22

12

0


Значения данной матрицы будут использоваться для определения времени задержки крана во время операции перемещения к вызвавшему его рабочему месту.

Заготовка может пройти операцию по нарезанию зубьев на одном из 4-х РТК (5-8). Для проверки, есть ли свободные РТК для нарезания зубьев, используем переменную STZAN и блок TEST, в переменной будем хранить число занятых приборов (РТК(5-8)), а в блоке будем проводить проверку, есть ли свободные приборы. В случае если есть хотя бы один свободный прибор (РТК(5-8)), заготовка может пройти операцию по нарезанию зубьев. Для определения какой станок свободен и к какому станку кран должен перенести заготовку используем блоки GATE с логическим указателем NULL(проверка незанятости прибора), перед транспортировкой к каждому из РТК(5-7). Перед транспортировкой к РТК8 GATE использовать не нужно, т.к. если ни один из станков РТК(5-7) не свободен, то РТК8 точно свободен. Логика работы блоков GATE такова, что при попытке входа транзакта в блок GATE проверяется занят или нет прибор указанный в первом операнде. Если прибор не занят, то транзакт переходит в следующий блок, а если занят, то транзакт переходит в блок указанный во втором операнде, которым в нашем случае является GATE перед другим РТК. Т.е. проверяется занят или нет другой РТК. Для того, чтобы транзакт после обработки на одном из РТК и переноса краном пошёл на обработку на РТК9, используется блок TRANSFER в режиме безусловного перехода. Без него транзакт попытается пройти ту же операцию на другом РТК.

*1. Перед программной реализацией должна быть блок-схема, состоящая из графических аналогов блоков GPSS.

. Также к каждому блоку необходимы комментарии в терминах технологии! В программе .gps, тоже должны быть комментарии!

Код программы:

 

КОМЕНТЫ!

SIMULATE&PLACE&PLACE=1&STZAN&STZAN=0&SKOROST&SKOROST=10

MATRIX MB,12,12MB1(1,1),0/MB1(1,2),24/MB1(1,3),30/MB1(1,4),48/MB1(1,5),60/MB1(1,6),66MB1(1,7),69/MB1(1,8),72/MB1(1,9),73/MB1(1,10),76/MB1(1,11),76/MB1(1,12),88MB1(2,1),24/MB1(2,2),0/MB1(2,3),6/MB1(2,4),24/MB1(2,5),36/MB1(2,6),42MB1(2,7),45/MB1(2,8),48/MB1(2,9),49/MB1(2,10),52/MB1(2,11),52/MB1(2,12),64MB1(3,1),30/MB1(3,2),6/MB1(3,3),0/MB1(3,4),18/MB1(3,5),30/MB1(3,6),36MB1(3,7),39/MB1(3,8),42/MB1(3,9),43/MB1(3,10),46/MB1(3,11),46/MB1(3,12),58MB1(4,1),48/MB1(4,2),24/MB1(4,3),18/MB1(4,4),0/MB1(4,5),12/MB1(4,6),18MB1(4,7),21/MB1(4,8),24/MB1(4,9),25/MB1(4,10),28/MB1(4,11),28/MB1(4,12),40MB1(5,1),60/MB1(5,2),36/MB1(5,3),30/MB1(5,4),12/MB1(5,5),0/MB1(5,6),6MB1(5,7),9/MB1(5,8),12/MB1(5,9),13/MB1(5,10),16/MB1(5,11),16/MB1(5,12),28MB1(6,1),66/MB1(6,2),42/MB1(6,3),36/MB1(6,4),18/MB1(6,5),6/MB1(6,6),0MB1(6,7),3/MB1(6,8),6/MB1(6,9),7/MB1(6,10),10/MB1(6,11),10/MB1(6,12),22MB1(7,1),69/MB1(7,2),45/MB1(7,3),39/MB1(7,4),21/MB1(7,5),9/MB1(7,6),3MB1(7,7),0/MB1(7,8),9/MB1(7,9),10/MB1(7,10),13/MB1(7,11),10/MB1(7,12),22MB1(8,1),72/MB1(8,2),48/MB1(8,3),42/MB1(8,4),24/MB1(8,5),12/MB1(8,6),6MB1(8,7),9/MB1(8,8),0/MB1(8,9),13/MB1(8,10),16/MB1(8,11),10/MB1(8,12),22MB1(9,1),73/MB1(9,2),49/MB1(9,3),43/MB1(9,4),25/MB1(9,5),13/MB1(9,6),7MB1(9,7),10/MB1(9,8),13/MB1(9,9),0/MB1(9,10),17/MB1(9,11),10/MB1(9,12),22MB1(10,1),76/MB1(10,2),52/MB1(10,3),46/MB1(10,4),28/MB1(10,5),16/MB1(10,6),10MB1(10,7),13/MB1(10,8),16/MB1(10,9),17/MB1(10,10),0/MB1(10,11),10/MB1(10,12),22MB1(11,1),76/MB1(11,2),52/MB1(11,3),46/MB1(11,4),28/MB1(11,5),16/MB1(11,6),10MB1(11,7),10/MB1(11,8),10/MB1(11,9),10/MB1(11,10),10/MB1(11,11),0/MB1(11,12),12MB1(12,1),88/MB1(12,2),64/MB1(12,3),58/MB1(12,4),40/MB1(12,5),28/MB1(12,6),22MB1(12,7),22/MB1(12,8),22/MB1(12,9),22/MB1(12,10),22/MB1(12,11),12/MB1(12,12),0S(PECH),53,1KRAN MB(1,&PLACE,1)/&SKOROST MB(1,1,2)/&SKOROST&PLACE=2KRANRTK11.06,0.05RTK1KRANMB(1,&PLACE,2)/&SKOROST MB(1,2,3)/&SKOROST&PLACE=3KRANRTK23.05,0.20RTK2KRANMB(1,&PLACE,3)/&SKOROST MB(1,3,4)/&SKOROST&PLACE=4KRANPECH50,5PECHKRANMB(1,&PLACE,4)/&SKOROST MB(1,4,5)/&SKOROST&PLACE=5KRANRTK33.03,0.20RTK3KRANMB(1,&PLACE,5)/&SKOROST MB(1,5,6)/&SKOROST&PLACE=6KRANRTK41.06,0.10RTK4L &STZAN,4 *NU RTK5,RTK6&STZAN=&STZAN+1 KRANMB(1,&PLACE,6)/&SKOROST MB(1,6,7)/&SKOROST&PLACE=7KRANRTK513.25,0.25&STZAN=&STZAN-1RTK5KRANMB(1,&PLACE,7)/&SKOROST MB(1,7,11)/&SKOROST&PLACE=11KRAN,RTK9GATE NU RTK6,RTK7&STZAN=&STZAN+1KRANMB(1,&PLACE,6)/&SKOROST MB(1,6,8)/&SKOROST&PLACE=8KRANRTK614.15,0.50&STZAN=&STZAN-1RTK6KRANMB(1,&PLACE,8)/&SKOROST MB(1,8,11)/&SKOROST&PLACE=11KRAN,RTK9GATE NU RTK7,RTK8&STZAN=&STZAN+1KRANMB(1,&PLACE,6)/&SKOROST MB(1,6,9)/&SKOROST&PLACE=9KRANRTK710.05,0.15&STZAN=&STZAN-1RTK7KRANMB(1,&PLACE,9)/&SKOROST MB(1,9,11)/&SKOROST&PLACE=11KRAN,RTK9BLET &STZAN=&STZAN+1 KRANMB(1,&PLACE,6)/&SKOROST MB(1,6,10)/&SKOROST&PLACE=10KRANRTK811.12,0.30&STZAN=&STZAN-1RTK8KRANMB(1,&PLACE,10)/&SKOROST MB(1,10,11)/&SKOROST&PLACE=11KRAN,RTK9SEIZ RTK90.98,0.05RTK9KRANMB(1,&PLACE,11)/&SKOROST MB(1,11,12)/&SKOROST&PLACE=12KRAN14401 1

END

. Проверка адекватности модели

Верификация с использованием логической блок-схемы и интерактивного контроля за ходом моделирования

















Интерактивный контроль в режиме отладки

 


Шаг 1.1

В системе: поступление заготовки на склад, вызов крана

В модели: генерация транзакта, занятие устройства kran


Шаг 1.2

В системе: перемещение крана к рабочему месту

В модели: нулевая задержка, т.к. кран находиться в нужном месте


Шаг 1.3

В системе: Взятие заготовки краном, перенос заготовки краном

В модели: задержка транзакта на время перемещения от склада до РТК1



Шаг 1.4

В системе: освобождение крана

В модели: освобождение устройства kran и запись его новых координат в PLACE=2


Шаг 1.5

В системе: поступление заготовки на станок

В модели: занятие устройства RTK1




Шаг 1.6

В системе: Обработка заготовки на РТК1

В модели: Задержка транзакта на время обработки


Шаг 1.7

В системе: Освобождение РТК1 и занятие крана

В модели: освобождение устройства RTK1 и занятие устройства kran

Далее происходят аналогичные предыдущим действия!


Шаг 2.1

В системе: проверка, есть ли свободные станки для нарезки зубьев

В модели: блок TEST, пока переменная STZAN не станет меньше 4, транзакт будет задержан в блоке TEST


Шаг 2.2

В системе: В системе есть свободные станки по нарезанию зубьев. Проверка, свободен ли РТК5?




Шаг 2.2-2.5

В системе: Занятие крана, перенос детали с РТК4 на РТК5, освобождение крана, занятие РТК5, обработка на РТК5, освобождение РТК5, занятие крана, перенос детали с РТК5 на РТК9, освобождение крана

В модели: Занятие прибора KRAN, задержка транзакта на время переноса, освобождение прибора KRAN, занятие прибора RTK5, задержка транзакта на время обработки, освобождение прибора RTK5, занятие прибора KRAN, задержка транзакта на время переноса, освобождение прибора KRAN.


Шаг 2.6

В системе: занятие РТК9

В модели: безусловный переход в блок с именем RTK9, занятие прибора RTK9

Далее происходят действия аналогичные предыдущим!


Шаг последний

В системе: готовая деталь на складе

В модели: уничтожение тазнзакта в блоке terminate

Валидация

Валидация - проверка, является ли модель допустимым представлением реальной системы.

Чтобы проверить валидность модели, нужно сравнить данные полученные на модели с результатами аналитических расчётов.

Для сравнения возьмём среднее время изготовления одной детали. Изготовление детали заключается в последовательном выполнении операции по обработки и переносу. Поэтому время изготовления детали, t1 будет равно:

 

где ti - время выполнения i-ой операции, n - число операций

Перечислим все операции обработки и переноса.

Таблица 3

Номер операции

Название

Время, мин

1

Перенос: склад - РТК1

2,4

2

Фрезерно-центровальная

1,06(+,-)0,20

3

Перенос: РТ1 - РТК2

0,6

4

Токарная

3,05(+,-)0,20

5

Перенос: РТК2 - печь

1,8

6

Термообработка

50,00(+,-)5,00

7

Перенос: печь - РТК3

1,2

8

Токарная

3,03(+,-)0,20

9

Перенос: РТК3 - РТК4

0,6

10

Фрезерная

1,06(+,-)0,10

11

Перенос: РТК4 - РТК5

0,3

12

Зубофрезерная

13,25(+,-)0,25

13

Перенос: РТК5 - РТК9

1

Шлифование

0,98(+,-)0,05

15

Перенос: РТК9 - склад

1,2


Нарезание зубьев будет производиться на РТК5, т.к. если все станки для нарезания зубьев свободны, то занимается именно РТК5.

Для расчётов, возьмём среднее время каждой операции. Подставив значения в формулу получим:

 81,53мин

Для определения времени изготовления одной детали изменим модель так, чтобы в начальный момент времени, на складе была одна заготовка и больше заготовок не поступало. А после изготовления одной детали модель должна остановится. Это делается для того чтобы кран не был занят другими заготовками, т.к. в таком случае рассчитать аналитическое значение времени будет крайне тяжело.

Т.к. наша система стохастична, чтобы получить среднее значение времени изготовления одной детали нам нужно провести большое количество экспериментов. Но мы можем изменить нашу модель, установив детерминированные значения задержек равные средним значениям стохастических задержек. В итоге проведя только один прогон, мы получим достаточно достоверное значение среднего времени. Время затраченное на изготовление детали будет равное времени моделирования, взятому из стандартного файла отчёта.

 

Как видно модельные результаты совпадают с аналитическими. Такие результаты увеличивают вероятность того, что система валидна.

*Это очень примитивный расчет и вряд ли по нему можно судить о валидности модели. См. 8 лабу "Верификация и валидация". Ваша модель состоит из множества практически стандартных СМО для которых есть аналитическое описание. Единственное, что нужно - поменять закон на экспоненциальный. Для этого надо провести дисперсионный анализ и оценить чувствительность к изменению закона распределения с равномерного на экспоненциальный. Если чувствительности нет, то меняем на экспоненциальный и проверяем результаты моделирования с результатами, полученными по формулам.

5. Планирование и проведение экспериментов

Планирование эксперимента

Так как дисперсия измеряемой случайной величины нам не дана, проведём 100 предварительных прогонов.

Для расчёта дисперсии воспользуемся программой excel. Для этого внесём в программу результаты прогонов, и используя встроенную функцию нахождения дисперсии, рассчитаем дисперсию, в результате чего получаем значение дисперсии δ = 1.7 (по производительности заготовок). Аналогично вычисляем дисперсию загруженности оборудования. Файл excel прилагается.

Количество прогонов модели, которое необходимо осуществить для оценки среднего значения случайной величины:

 

где δ - дисперсия, t - квантиль нормального распределения, ε - точность.

В нашем случае δ = 1.7, ε = 1. Квантиль нормального распределения t определяется из таблицы распределения Стьюдента. Для его определения необходимо найти число степеней свободы υ = k - 1 - m, где k - число значений, m - число определяемых параметров.

В нашем случае k = 100, m = 1. Тогда υ = 98. Уровень значимости равен 0,1. Тогда согласно таблице распределения Стьюдента квантиль нормального распределения t = 1,66.

В результате расчетов получаем N = 6 прогонов

Для определения загруженности оборудования РТК1, РТК2, РТК3, РТК4, РТК8, РТК9 по результатам расчетов необходимо провести N = 1 прогонов. Для РТК5 N = 5 прогонов. Для РТК6 N = 17 прогонов. Для РТК7 N = 2 прогонов. Для определения загруженности оборудования KRAN и PECH по результатам расчетов необходимо провести N = 1 и N = 2 прогонов. Т.к. N максимальное 17, проводим 17 прогонов за которые мы получим достоверные результаты для всех других измеряемых величин.

Проведение эксперимента

Выполняем 17 прогонов модели, при этом каждый раз меняем последовательность псевдослучайных чисел (дописываем в код программы перед блоком GENE блок RMULT и при каждом прогоне присваиваем ему разные значения (1,2,3,4…,17)).

В файлах отчета находим количество изготовленных деталей, суммируем их и делим на 17. По результатам прогонов получаем, что за сутки будет изготовлено в среднем 44 детали.

По результатам, полученным в файлах отчета,

средняя загруженность оборудования:

РТК1=4%; РТК2=11,4%; РТК3=10,2%; РТК4=3,5%; РТК5=27,4%; РТК6=15,2%; РТК7=1%; РТК8=0%; РТК9=3%; Печь=34,5%; Кран=99,8%.

6. Зависимость производительности участка от скорости крана-штабеллера


Как видно из графика, на производительность влияние скорость крана-штабеллера оказывает до определенного момента. На интервале скорости от 1 до 30м/мин мы установили линейную зависимость производительности.

 

где y - производительность в м/мин, x - скорость в м/мин.

При увеличении скорости более 30 м/мин не оказывает существенного влияния на производительность. Это связано с тем, что при дальнейшем увеличении скорости, уменьшение времени перемещения меняется незначительно.

Вывод

На основании проведенных экспериментов можно сделать вывод, что если увеличить скорость крана-штабеллера до 30 м/мин, то за сутки можно обработать наибольшее количество заготовок. Так же выяснили, что в данной системе низкая загруженность оборудования (за исключением крана).

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

1. Зиновьев В. В., Стародубов А. Н. Моделирование систем при помощи компьютерной анимации и имитации: учебное пособие / КузГТУ. Кафедра информационных и автоматизированных производственных систем - Кемерово, 2010.

. Зиновьев В. В. Моделирование систем: методические указания по выполнению курсовой работы для студентов специальностей 071900 "Информационные системы и технологии", 210200 "Автоматизация технологических процессов (в машиностроении)" / КузГТУ. Кафедра информационных и автоматизированных производственных систем - Кемерово, 2008.

Похожие работы на - Моделирование предприятия по производству изделий

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!