ЗАДАНИЕ К ЛАБОРАТОРНОЙ РАБОТЕ



Министерство образования и науки Российской Федерации федеральное

государственное бюджетное образовательное учреждение высшего образования

 «Кузбасский государственный технический университет имени Т.Ф.Горбачева»

 

 

Кафедра информационных и автоматизированных производственных систем

 

Моделирование систем на специализированном языке GPSS

 

Методические указания к лабораторной работе по дисциплине:
«Математическое моделирование объектов машиностроения»

по направлению подготовки бакалавров 15.03.05
«Конструкторско-технологическое обеспечение машиностроительных производств»

 

Составители: 

А.Н. Стародубов

В.В. Зиновьев

П.И. Николаев

И.С. Кузнецов

 

 

Кемерово 2018

Цель работы - оценить производительность системы и степень использования оборудования с помощью среды компьютерного моделирования GPSS World.

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

ТЕОРЕТИЧЕСКИЕ ПОЛОЖЕНИЯ

 

Общие сведения о GPSS World

Среда компьютерного моделирования GPSS World - комплексный моделирующий инструмент, охватывающий области как дискретного, так и непрерывного компьютерного моделирования, обладающий высоким уровнем интерактивности и визуального представления информации.

Основу среды имитационного моделирования составляет язык GPSS, основанный на теории массового обслуживания - концепции движения объектов через приборы с некоторым временем обслуживания. Закон движения объектов и время обслуживания могут изменяться по различным законам распределения случайных величин. Принцип работы модели GPSS заключается в перемещении транзактов от блока к блоку.

В среду компьютерного моделирования также входит расширенный редактор GPSS World – инструмент для разработки имитационных моделей и анализа результатов моделирования.

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

Рисунок 1‑1 Блок-схема модели на GPSS World

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

1. Местоположение. Каждый блок занимает определенное место в блок-схеме. Это место может быть определено нумерацией, которую интерпретатор осуществляет автоматически. Часто нужно знать, какое место занимает тот или иной блок в модели. Это может оказаться необходимым для реализации ссылки из одного или более блоков на указанный блок. Для этих целей в GPSS World используются символические имена.

2. Операции (ADVANCE, RELEASE и т. д.) – команды, описывающие основное функциональное назначение блоков.

3. Операнды (A, B, C, D, E...) – информация специфичная для действия блока.

Модель GPSS World состоит из различных объектов. Для упрощения разделим эти объекты на три типа: транзакты, блоки
и операторы.

Транзакты – динамические элементы модели GPSS World, представляют собой аналоги заявок в системах массового обслуживания (СМО). Они могут описывать, например, заготовки, транспортные средства, рабочих, требования к выполнению какой-либо операции и т. п. Блоки задают логику функционирования модели системы и определяют пути движения транзактов по ней. Блоки – аналоги приборов в СМО, которые отображают, например, участки цеха, станки, транспортные средства. Перемещаясь от блока к блоку, транзакты имитируют процессы, происходящие в системе: обработка заготовки, перемещение транспортного средства, восстановление вышедшего из строя станка и т. д. Блоки функционируют только тогда, когда в них находятся транзакты.

Операторы предназначены для управления процессом моделирования (прогоном модели), задания функций и последовательностей псевдослучайных чисел генераторов GPSS World. Операторы напрямую не взаимодействуют с транзактами.

В процессе моделирования интерпретатор GPSS World автоматически регистрирует и корректирует некоторую информацию, касающуюся различных элементов, используемых в моделях. Кроме информации, которая выдается по окончании моделирования, существует и такая информация, которая доступна в процессе моделирования. Эту информацию можно использовать с помощью атрибутов модели. Атрибутами являются: состояние прибора (занят, не занят), счетчик циклов занятий прибора, коэффициент использования прибора, среднее время задержки на одно занятие, величина параметра транзакта, время пребывания транзакта в модели. В процессе моделирования системы транзакты взаимодействуют с блоками, в результате чего происходят изменения их атрибутов, а также преобразования арифметических или логических значений. Такие преобразования называются событиями.

Моделирование начала технологического процесса

Принцип работы модели GPSS World заключается в перемещении транзактов от блока к блоку. В начале в модели нет транзактов. Следовательно, для того, чтобы модель начала функционировать, необходимо создать и запустить транзакты в модель.
В GPSSWorld для этих целей используется блок GENERATE.

Блок GENERATE (генерировать) – создание и ввод транзактов в модель (рис. 1-2).

 

Рисунок 1‑2 Блок GENERATE

В блоке можно использовать 5 операндов (A, B, C, D, E).

Примечание:

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

В операнде А записывают среднее значение равномерно распределенных интервалов времени, в операнде В – половину поля допуска распределенного интервала. Операнд С предназначен для задания смещения интервалов. В операнде D указывают значение, ограничивающее число создаваемых транзактов. В операнде Е задают приоритет вышедшим транзактам. По умолчанию значения операндов А, В, Е равны нулю, а операнда D – ¥. Операнд С по умолчанию не задает смещение.

Особенности блока GENERATE:

- в модели может использоваться множество блоков GENERATE, при этом каждый из них образует свой сегмент модели;

- в блок GENERATE невозможно направить транзакт;

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

- обязательно используется либо операнд А, либо операнд D.

 

Примеры блока GENERATE:

 

GENERATE   4.1,2.1

транзакты создаются каждые 4.1±2.1 единицы времени.

 

GENERATE   4.1,,3

первый транзакт создается во время, равное 3, второй во время – 7.1, третий – 11.2 и т. д.

 

GENERATE   1,,,1

первый и единственный транзакт создается во время, равное 1.

 

GENERATE   8,1,,,,4 

каждый созданный транзакт будет иметь уровень приоритета, равный 4 (транзакт с более высоким приоритетом обслуживается раньше, чем транзакт с меньшим приоритетом).

 

Моделирование завершения технологического процесса

           

Созданные транзакты, двигаясь по модели, имитируют операции, происходящие в реальном техпроцессе. Для того чтобы остановить моделирование, необходимо вывести определенное количество транзактов из модели или остановить модель через какое-то заданное время. Для этого используют блокTERMINATE.

Блок TERMINATE (завершить) – удаление транзактов из модели
(рис. 1-3).

Рисунок 1‑3 Блок ТERMINATE

При входе транзакта в блок TERMINATE он уничтожается и из специального счетчика завершения вычитается целое число, записанное в операнде А. Счетчик завершения – ячейка памяти, которая хранит положительное целое значение, записанное в начале моделирования. Счетчик завершения в модели GPSS World может быть только один. Если его значение станет равным 0 (или меньше 0), моделирование прекратится. Если значение операнда А не установлено (т. е. равно 0), значение счетчика завершения не изменяется.

 

Примеры блока TERMINATE:

 

TERMINATE 1

 

удаляет транзакты из модели, при этом содержимое счетчика завершения (каждый раз при входе транзакта) уменьшается на единицу.

 

TERMINATE

 

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

 

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

Оператор START – устанавливает значение счетчика завершения.

В операнде А оператора START записывается начальное значение счетчика (больше 0).

 

Пример:

1. Предположим, что требуется промоделировать техпроцесс в течение 480 единиц времени. Для этого необходимо:

а) в модель включить сегмент из двух блоков, называемый счетчиком модельного времени (рис. 1-4);

б) во всех прочих блоках TERMINATE операнд А обнулить;

в) операнд А оператора START установить равным 1.

 

Рисунок 1‑4 Счетчик модельного времени

Часть программы GPSS World будет иметь следующий вид:

 

* 1-й сегмент модели

GENERATE  3.2,1.2,,2

. . .

TERMINATE

 

* 2-й сегмент модели

GENERATE  480

TERMINATE 1

START 1

 

В момент модельного времени 480 транзакт выйдет из блока GENERATE второго сегмента и сразу же попадет в блок TERMINATE. Поскольку операнд этого блока содержит 1, то из счетчика завершения отнимется 1. Это уменьшит значение счетчика до 0, и интерпретатор остановит прогон модели.

2. Предположим, что требуется закончить прогон модели, после того как будет обслужено 100 транзактов. Для этого необходимо:

а) установить значение операнд А оператора START равным 100;

б) установить операнд А блока TERMINATE равным 1.

Часть программы GPSS World будет иметь следующий вид:

GENERATE  3.2,1.2,,2

. . .

TERMINATE 1

START 100

Когда транзакт будет входить в блок TERMINATE, счетчик завершения будет уменьшаться на 1. Прогон будет продолжаться, пока значение счетчика не достигнет 0 (т. е. пока не удалится 100 транзактов).

 

Моделирование технологических операций

 

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

Блок ADVANCE (задержать) – задержка транзактов (рис. 1-5).

Рисунок 1‑5 Блок ADVANCE

При равномерном распределении в операнд А записывают среднее время задержки транзакта, а в операнд В – половину поля допуска. (Неравномерное распределение будет рассмотрено позже). Значение по умолчанию для операндов А и В равно 0.

 

Примеры блока ADVANCE:

 

ADVANCE    2.1

 

транзакты задерживаются на 2.1 единицы времени.

 

ADVANCE    3.75,1     

 

задержка транзактов колеблется в интервале от 2.75 до 4.75 единиц.

Особенности блока ADVANCE:

– если вычисленное приращение времени меньше нуля, то обработка модели останавливается по ошибке;

– в блоке ADVANCE может одновременно находится более одного транзакта. При этом каждый транзакт задерживается на определенное в блоке время.

Моделирование технологического оборудования

 

При формализации технологических процессов при помощи математического аппарата СМО элементы, которые представляют обслуживание, моделируются приборами. Прибором могут быть, например, станок, транспортное средство, робототехнический комплекс и т. п. Для их моделирования в GPSS World используется пара блоков SEIZE и RELEASE.

Блок SEIZE (занять) – занятие прибора обслуживания (рис. 1-6).

 

Рисунок 1‑6 Блок SEIZE

В операнде А записывают имя занимаемого прибора (указывается обязательно). Если транзакт входит в блок SEIZE, он занимает прибор обслуживания и закрывает вход следующим транзактам.

 

Пример блока SEIZE:

 

SEIZE   SERVER

 

при входе транзакта в блок занимается прибор с именем SERVER.

 

Блок RELEASE (освободить) – освобождение занятого прибора обслуживания (рис. 1-7).

 

 

Рисунок 1‑7 Блок RELEASE

Операнд А – имя освобождаемого прибора (указывается обязательно).

Пример блока RELEASE:

 

RELEASE SERVER

 

при входе транзакта прибор SERVER освобождается и разрешается вход в него (в блок SEIZESERVER) других транзактов.

Приборы в моделях GPSS World могут быть размещены по разным схемам.

 

Схема «Классическая»

 

SEIZE   ВОХ

ADVANCE    16,4

RELEASE ВОХ

 

Транзакт занимает прибор ВОХ, задерживается в нем на 16±4 единицы времени и освобождает его.

 

Схема «Прибор в приборе»

 

SEIZE SERVER          

ADVANCE   3.0,0.5        

SEIZE            ВОХ                    

ADVANCE   0.1                      

RELEASE    ВОХ                     

RELEASE SERVER             

 

После задержки транзакта в блоках ADVANCE приборы ВОХ и SERVER освобождаются одновременно.

Блок RELEASE не запрещает вход транзактам. Если в модели делается попытка освободить незанятый прибор или если транзакт пытается освободить прибор, занятый другим транзактом, то интерпретатор моделей GPSSWorld выдаст сообщение об ошибке и прогон модели прекратится. Такая ошибка не будет происходить в схеме «Прибор в приборе» начиная с первого транзакта, который входит внутрь комбинации блоков SEIZE-RELEASE, моделирующих занятие прибора SERVER. Однако при разработке более сложных моделей, когда транзакт пытается освободить прибор, который был занят другим транзактом, или не был занят вовсе, это является распространенной ошибкой.

Схема «Использование прибора несколько раз»

 

SEIZE            ВОХ

ADVANCE   34.4,2.3

RELEASE    ВОХ

ADVANCE              2,3

SEIZE             ВОХ

ADVANCE              12,3

RELEASE      ВОХ

 

Транзакт проходя по модели, занимает и освобождает прибор ВОХ два раза.

 

Запуск и настройка расширенного редактора GPSS Word

 

Перед первым запуском расширенного редактора необходимо его настроить, т.е. указать путь к интерпретатору GPSS World. Для этого необходимо:

1. Открыть расширенный редактор GPSS World путем запуска файла GpssEditor.exe из папки Elina Computer/Gpss Editor. После запуска откроется основное рабочее окно, в котором создают модели и проводят эксперименты (рис. 1-8).

Рисунок 1‑8 Основное рабочее окно расширенного редактора GPSS World

    2. Зайти в раздел «Редактирование» в верхнем меню и выбрать опцию «Настройка программы» (рис. 1-9).

 

Рисунок 1‑9 Настройка расширенного редактора GPSS World

3. В появившемся окне «Настройки программы» выбрать вкладку «Моделирование» и указать путь к месторасположению исполнительного файла GPSS World Student.exe студенческой версии GPSS World (рис. 1-10).

 

 

Рисунок 1‑11 Указание пути к исполнительному файлу GPSS World Student.exe

Пример построения модели в среде GPSS World

 

Процедуру имитационного моделирования покажем на примере работы робототехнического комплекса (РТК), состоящего из робота-манипулятора, станка и накопителя. (рис.1-11).


 

 



Рисунок 1-11 – Схема РТК

 

Заготовки поступают в накопитель каждые 50±10 мин. Робот-манипулятор берет заготовку из накопителя и устанавливает ее в станок в течении 5±1 мин. Обработка заготовки на станке занимает 120±20 мин. После окончания обработки робот-манипулятор переносит готовую деталь в накопитель.

Необходимо построить модель работы РТК, используя среду компьютерного моделирования GPSS World, провести имитационные эксперименты и определить продолжительность изготовления 1000 деталей, коэффициенты загрузки станка и робота-манипулятора.

Блок – схема модели выглядит следующим образом (рис.1-12)

Рисунок 1-12 Блок - схема модели GPSS World

Пусть транзакт представляет собой заготовку, которая по мере продвижения по модели преобразуется в готовую деталь. Поступление заготовок в соответствии с заданным равномерным распределением имитируем блоком GENERATE. Так как робот-манипулятор и станок одновременно могут обслуживать только одну заготовку, имитируем их приборами обслуживания с именами ROBOT (робот-манипулятор) и STANOK (станок), т. е. парой блоков SEIZE и RELEASE, между которыми помещаем блок ADVANCE для имитации переноса и обработки заготовки. Блок TERMINATE вводим для имитации поступления готовой детали в накопитель.

Для ввода блок-схемы в компьютер необходимо запустить расширенный редактор GPSS World и ввести соответствующие блоки и их операнды. Оператор START водится для задания значения счетчика завершения, которое соответствует количеству требуемых по заданию деталей (1000). Для ввода пояснений к блокам ставим перед каждым комментарием точку с запятой. После перевода блок-схемы модели и добавления необходимых операторов модель GPSS World, подготовленная к запуску, будет выглядеть следующим образом (рис. 1-13):

 

Рисунок 1-13 Модель РТК в среде компьютерного моделирования
GPSS World

Для осуществления прогона модели необходимо в основном меню нажать на кнопу «Начать моделирование» рис. 1-14.

 

Рисунок 1‑14 Кнопка «Начать моделирование»

После завершения моделирования выведется стандартный файл отчета, состоящий из нескольких разделов:

- Раздел «Общая информация», где отображается время начала моделирования, время окончания моделирования, количество используемых блоков, количество используемых единичных устройств, количество многоканальных устройств (рис. 1-15).

 

Рисунок 1-15 Общая информация о результатах моделирования

- Раздел «Имена», в котором отображаются имена, используемых в модели обслуживающих устройств (рис. 1-16).

 

Рисунок 1‑16 Раздел "Имена"

- Раздел «Блоки», в котором отображается информация о блоках и количестве тразактов в них. Информация содержит: «Метка» - имя блока (в нашей модели имена не используются); «Позиция блока» – номер расположения в общей модели; «Тип блока» - команды, записанные при создании модели; «Кол-во тран. вошедших в блок» - количество транзактов, которые входили в данный блок за все время моделирования; «Кол-во тран. в блоке в конце моделирования» - количество транзактов, которые остались в данном блоке на момент окончания моделирования; «Кол-во тран. ожидающих выполнения спец.» - количество транзактов не участвующих в моделировании, пока не выполнится какое-либо условие (рис. 1-17).

 

Рисунок 1-17 Раздел "Блоки"

- Раздел «Устройства» - содержит информацию об обслуживающих устройствах, используемых в модели. Информация включает: «Имя/номер» - имя устройства, придуманном разработчиком модели; «Кол-во раз, когда устройство было занято» - указывается число транзактов, которые занимали данное устройство; «Коэффициент использования» - показывает какую часть от времени моделирования устройство работало (было загружено); «Ср. время занятия устройства одним тран.» - показывает среднее время задержки транзакта в устройстве; «Состояние устройства в конце» - показывает занято (1)устройство или нет (0) на момент окончания моделирования; «Номер тран. занимающего устройство» - номер транзакта, находящегося в устройстве на момент окончания моделирования; «Кол-во тран., ожидающих выполнения» - показывает число транзактов, которые ожидают в очереди; «Количество прерванных транзактов» - транзакты которые были удалены из модели во время нахождения в очереди или на занятии устройства; «Кол-во тран., ожидающих занятия» - количество оставшихся транзактов, которые не попали в устройство на момент окончания моделирования (рис. 1-18).

 

Рисунок 1-18 Раздел "Устройства"

- Раздел «Будущие события», в данном разделе показываются все значения транзактов которые остались в модели после окончания моделирования, их время создания, какой блок занимали и так далее
(рис. 1-19).

 

Рисунок 1-19 Раздел "Будущие события"

ЗАДАНИЕ К ЛАБОРАТОРНОЙ РАБОТЕ

Описание объекта моделирования

В гибкой производственной системе (ГПС) заготовки последовательно обрабатываются двумя роботизированными технологическими комплексами РТК1 и РТК2. В начале процесса заготовки поступают на конвейер каждые 90±20 секунд. Затем они в течение 20±4 секунд транспортируются до приемного накопителя, из которого попадают на обработку в РТК1. Обработка заготовки в РТК1 занимает 100±80 секунд. После этого полуфабрикаты в течение 15±3 секунд поступают в промежуточный накопитель, а из него на обработку в РТК2. Окончательная обработка деталей в РТК2 занимает от 70 до 170 секунд. Из РТК2 готовые детали транспортируются в бункер готовой продукции за 10±2 секунды.

Примечание. Все временные интервалы технологических операций распределены равномерно. В каждый момент времени РТК1 и РТК2 может обрабатывать только одну заготовку.

При выполнении задания данной лабораторной работы необходимо:   1. Построить модель ГПС последовательной обработки деталей, используя среду компьютерного моделирования GPSS World.

2. Используя разработанную модель, провести имитационные эксперименты и определить продолжительность изготовления 50 деталей и степень использования РТК1 и РТК2.

3. Предположить, что РТК1 не может начинать обработку следующей детали пока не освободится РТК2. В соответствии с этими условиями изменить модель и определить для этого варианта производительность ГПС и степень использования РТК1 и РТК2.

4. Сравнить варианты ГПС. Определить изменение производительности и степени использования РТК1 и РТК2.

 

ТРЕБОВАНИЯ К ОТЧЕТУ

 

Отчет о работе должен содержать:

1. Задание и исходные данные по лабораторной работе.

2. Модель в виде программы в среде компьютерного моделирования GPSS World (файл .gps).

3. Результаты имитационных экспериментов: производительность ГПС, степень использования РТК1 и РТК2; изменение производительности и загрузки РТК1 и РТК2 (в %) при сравнении вариантов ГПС.

КОНТРОЛЬНЫЕ ВОПРОСЫ

 

1. Чем имитационное моделирование отличается от аналитического?

2.Какова основная задача развития программных средств для моделирования систем?

3. Какие типы информации используются в GPSS-моделях?

4. Какое количество операндов можно использовать в блоке GENERATE?

5. Что такое «Счетчик завершений» в GPSS-модели?

6. Какой управляющий оператор в GPSS-модели устанавливает значение «Счетчика завершений»?

7. Какой блок изменяет значение «Счетчика завершений» в GPSS-модели?

8. Что такое коэффициент использования прибора обслуживания и как он определяется в GPSS-модели?

 


Дата добавления: 2019-02-22; просмотров: 795; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!