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

Заключение

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

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

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

  1. Кудрявцев Е.М. GPSS World. Основы имитационного моделирования различных систем. / Кудрявцев Е.М. – М.: ДМК Пресс, 2004. – 320 с.

  2. Савина О. А. Методические указания к выполнению курсовых работ по дисциплине: Моделирование экономических процессов / Савина О. А, Терентьев С. В. – Орел: ОрелГТУ, 1999. – 59 с.

  3. Советов Б.Я. Моделирование систем/ Советов Б.Я., Яковлев С.А. Учебник для вузов – М.: Высшая школа, 2001. -344 с.

  4. Савина О. А. Имитационное моделирование экономических систем и процессов / Савина О.А, Терентьев С.В. – Орел: ОрелГТУ, 2004 – 172 с.

  5. Томашевский В. Имитационное моделирование в среде GPSS / Томашевский В., Жданова Е. – М.: Бестселлер, 2003. – 416 с.

  6. Шрайбер Т. Дж. Моделирование на GPSS [Текст]: Пер. с англ./Пер. В. И. Гаргера, И. Л. Шмуйловича; Ред. М. А. Файнберг / Т. Дж. Шрайбер – М.: Машиностроение, 1980.— 592 с, ил.

Приложение а Листинг исходной модели

; исходные данные

INITIAL X$t_0,70

INITIAL X$t_1,10

INITIAL X$t_2,15

INITIAL X$t_3,20

INITIAL X$t_4,15

INITIAL X$t_5,3

INITIAL X$t_6,140

INITIAL X$t_7,20

INITIAL X$t_8,180

INITIAL X$pos1,0 ; приёмный пункт

INITIAL X$pos2,1 ; станок 1

INITIAL X$pos3,2 ; станок 2

INITIAL X$progon,0 ; нужно для учёта времени холостого прогона робота к нужному станку

GENERATE (EXPONENTIAL(1,X$t_0#2,(X$t_0)))

QUEUE priem

; ищем робота находящегося возле приёмного пункта

proverka_pos1 TEST NE X$pos1,0,seize_robot1

proverka_pos2 TEST NE X$pos2,0,seize_robot2

proverka_pos3 TEST NE X$pos3,0,seize_robot3

; ищем робота находящегося возле 1-го станка

proverka_pos1_1 TEST NE X$pos1,1,izm_progon1

proverka_pos2_1 TEST NE X$pos2,1,izm_progon2

proverka_pos3_1 TEST NE X$pos3,1,izm_progon3

; ищем робота находящегося возле 2-го станка

proverka_pos1_2 TEST NE X$pos1,2,izm_progon11

proverka_pos2_2 TEST NE X$pos2,2,izm_progon22

proverka_pos3_2 TEST NE X$pos3,2,izm_progon33

; ищем робота находящегося возле 3-го станка

proverka_pos1_3 TEST NE X$pos1,3,izm_progon111

proverka_pos2_3 TEST NE X$pos2,3,izm_progon222

proverka_pos3_3 TEST NE X$pos3,3,izm_progon333

TRANSFER ,proverka_pos1

; определение времени движения ближайшего робота до станка

izm_progon1 SAVEVALUE progon,X$t_1

TRANSFER ,seize_robot1

izm_progon2 SAVEVALUE progon,X$t_1

TRANSFER ,seize_robot2

izm_progon3 SAVEVALUE progon,X$t_1

TRANSFER ,seize_robot3

izm_progon11 SAVEVALUE progon,(X$t_1 + X$t_2)

TRANSFER ,seize_robot1

izm_progon22 SAVEVALUE progon,(X$t_1 + X$t_2)

TRANSFER ,seize_robot2

izm_progon33 SAVEVALUE progon,(X$t_1 + X$t_2)

TRANSFER ,seize_robot3

izm_progon111 SAVEVALUE progon,(X$t_1 + X$t_2 + X$t_3)

TRANSFER ,seize_robot1

izm_progon222 SAVEVALUE progon,(X$t_1 + X$t_2 + X$t_3)

TRANSFER ,seize_robot2

izm_progon333 SAVEVALUE progon,(X$t_1 + X$t_2 + X$t_3)

TRANSFER ,seize_robot3

; моделирование работы робота

seize_robot1 SEIZE robot1

SAVEVALUE pos1,1

DEPART priem

ADVANCE (X$t_1+X$t_4+X$t_5 + X$progon)

RELEASE robot1

TRANSFER ,metka_stanok1

seize_robot2 SEIZE robot2

SAVEVALUE pos2,1

DEPART priem

ADVANCE (X$t_1+X$t_4+X$t_5 + X$progon)

RELEASE robot2

TRANSFER ,metka_stanok1

seize_robot3 SEIZE robot3

SAVEVALUE pos3,1

DEPART priem

ADVANCE (X$t_1+X$t_4+X$t_5 + X$progon)

RELEASE robot3

TRANSFER ,metka_stanok1

;моделирование работы станка

metka_stanok1 QUEUE pered_stankom1

SEIZE stanok1

DEPART pered_stankom1

ADVANCE (normal (1, X$t_6, X$t_7))

RELEASE stanok1

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

QUEUE posle_stanka1

a_proverka_pos1 TEST NE X$pos1,1,a_seize_robot1

a_proverka_pos2 TEST NE X$pos2,1,a_seize_robot2

a_proverka_pos3 TEST NE X$pos3,1,a_seize_robot3

a_proverka_pos1_1 TEST NE X$pos1,0,a_izm_progon1

a_proverka_pos2_1 TEST NE X$pos2,0,a_izm_progon2

a_proverka_pos3_1 TEST NE X$pos3,0,a_izm_progon3

a_proverka_pos1_2 TEST NE X$pos1,2,a_izm_progon11

a_proverka_pos2_2 TEST NE X$pos2,2,a_izm_progon22

a_proverka_pos3_2 TEST NE X$pos3,2,a_izm_progon33

a_proverka_pos1_3 TEST NE X$pos1,3,a_izm_progon111

a_proverka_pos2_3 TEST NE X$pos2,3,a_izm_progon222

a_proverka_pos3_3 TEST NE X$pos3,3,a_izm_progon333

TRANSFER ,a_proverka_pos1

a_izm_progon1 SAVEVALUE progon,X$t_1

TRANSFER ,a_seize_robot1

a_izm_progon2 SAVEVALUE progon,X$t_1

TRANSFER ,a_seize_robot2

a_izm_progon3 SAVEVALUE progon,X$t_1

TRANSFER ,a_seize_robot3

a_izm_progon11 SAVEVALUE progon,X$t_2

TRANSFER ,a_seize_robot1

a_izm_progon22 SAVEVALUE progon,X$t_2

TRANSFER ,a_seize_robot2

a_izm_progon33 SAVEVALUE progon,X$t_2

TRANSFER ,a_seize_robot3

a_izm_progon111 SAVEVALUE progon,(X$t_2 + X$t_3)

TRANSFER ,a_seize_robot1

a_izm_progon222 SAVEVALUE progon,(X$t_2 + X$t_3)

TRANSFER ,a_seize_robot2

a_izm_progon333 SAVEVALUE progon,(X$t_2 + X$t_3)

TRANSFER ,a_seize_robot3

a_seize_robot1 SEIZE robot1

SAVEVALUE pos1,2

DEPART posle_stanka1

ADVANCE (X$t_2+X$t_4+X$t_5 + X$progon)

RELEASE robot1

TRANSFER ,a_metka_stanok2

a_seize_robot2 SEIZE robot2

SAVEVALUE pos2,2

DEPART posle_stanka1

ADVANCE (X$t_2+X$t_4+X$t_5 + X$progon)

RELEASE robot2

TRANSFER ,a_metka_stanok2

a_seize_robot3 SEIZE robot3

SAVEVALUE pos3,2

DEPART posle_stanka1

ADVANCE (X$t_2+X$t_4+X$t_5 + X$progon)

RELEASE robot3

TRANSFER ,a_metka_stanok2

a_metka_stanok2 QUEUE pered_stankom2

SEIZE stanok2

DEPART pered_stankom2

ADVANCE (EXPONENTIAL(1,0,(1/X$t_8)))

RELEASE stanok2

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

QUEUE posle_stanka2

b_proverka_pos1 TEST NE X$pos1,2,b_seize_robot1

b_proverka_pos2 TEST NE X$pos2,2,b_seize_robot2

b_proverka_pos3 TEST NE X$pos3,2,b_seize_robot3

b_proverka_pos1_1 TEST NE X$pos1,1,b_izm_progon1

b_proverka_pos2_1 TEST NE X$pos2,1,b_izm_progon2

b_proverka_pos3_1 TEST NE X$pos3,1,b_izm_progon3

b_proverka_pos1_2 TEST NE X$pos1,3,b_izm_progon11

b_proverka_pos2_2 TEST NE X$pos2,3,b_izm_progon22

b_proverka_pos3_2 TEST NE X$pos3,3,b_izm_progon33

b_proverka_pos1_3 TEST NE X$pos1,0,b_izm_progon111

b_proverka_pos2_3 TEST NE X$pos2,0,b_izm_progon222

b_proverka_pos3_3 TEST NE X$pos3,0,b_izm_progon333

TRANSFER ,b_proverka_pos1

b_izm_progon1 SAVEVALUE progon,X$t_2

TRANSFER ,b_seize_robot1

b_izm_progon2 SAVEVALUE progon,X$t_2

TRANSFER ,b_seize_robot2

b_izm_progon3 SAVEVALUE progon,X$t_2

TRANSFER ,b_seize_robot3

b_izm_progon11 SAVEVALUE progon,X$t_3

TRANSFER ,b_seize_robot1

b_izm_progon22 SAVEVALUE progon,X$t_3

TRANSFER ,b_seize_robot2

b_izm_progon33 SAVEVALUE progon,X$t_3

TRANSFER ,b_seize_robot3

b_izm_progon111 SAVEVALUE progon,(X$t_1 + X$t_2)

TRANSFER ,b_seize_robot1

b_izm_progon222 SAVEVALUE progon,(X$t_1 + X$t_2)

TRANSFER ,b_seize_robot2

b_izm_progon333 SAVEVALUE progon,(X$t_1 + X$t_2)

TRANSFER ,b_seize_robot3

b_seize_robot1 SEIZE robot1

SAVEVALUE pos1,3

DEPART posle_stanka2

ADVANCE (X$t_3+X$t_4+X$t_5 + X$progon)

RELEASE robot1

TRANSFER ,konec

b_seize_robot2 SEIZE robot2

SAVEVALUE pos2,3

DEPART posle_stanka2

ADVANCE (X$t_3+X$t_4+X$t_5 + X$progon)

RELEASE robot2

TRANSFER ,konec

b_seize_robot3 SEIZE robot3

SAVEVALUE pos3,3

DEPART posle_stanka2

ADVANCE (X$t_3+X$t_4+X$t_5 + X$progon)

RELEASE robot3

konec TERMINATE

main GENERATE 28800

TERMINATE 1

start 10