Logo GenDocs.ru

Поиск по сайту:  

Загрузка...

Лекции по имитационному моделированию и анимации - файл Учебное пособие_Компьютерная имитация и анимация.doc


Лекции по имитационному моделированию и анимации
скачать (282.3 kb.)

Доступные файлы (1):

Учебное пособие_Компьютерная имитация и анимация.doc1403kb.17.03.2003 14:00скачать

содержание
Загрузка...

Учебное пособие_Компьютерная имитация и анимация.doc

1   2   3   4   5   6   7   8   9   10   11
Реклама MarketGid:
Загрузка...
^

GETLIST FILE=(логическое имя файла),(list),…


где FILE – опция, определяющая логическое имя файла, из которого должны читаться входные данные, а list - список переменных, которым будут присвоены числовые значения.

Например, в GPSS/H-модели значение переменной &I, обозначающей количество станков в цехе, должно читаться из внешнего файла «IN». Этого можно добиться, записав в модели строку:

GETLIST FILE=IN,(&I)
6.4. Пример связи анимации с имитационной моделью
Для демонстрации связи анимации с имитационной моделью воспользуемся примером имитационного моделирования, приведенном в п. 4.5 и примером анимации в п. 5.6 данного учебного пособия.

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

^ Метод построения модели

Создадим файл входных параметров под именем data, используя текстовый редактор, например, оболочки NC5.0. Текст этого файла приведен ниже.
******************************************************************************

28 * Интервалы поступления заготовок, мин

32 * Время движения заготовок до станков типа А, мин

10 * Отклонение от среднего времени, мин

63 * Средняя прод-ть обработки заготовки ст. типа А, мин

9 * Отклонение от средней прод-ти, мин

12 * Среднее время движения до станка типа В, мин

5 * Отклонение от среднего времени, мин

55 * Средняя прод-ть обработки детали на станке типа В, мин

5 * Отклонение от средней прод-ти, мин

50 * Кол-во деталей, которые необходимо изготовить, шт.

******************************************************************************
Изменим GPSS/H-модель в соответствии с заданными требованиями:

- для ввода входных параметров модели из внешнего файла используем GPSS/H-переменные (с утверждениями INTEGER и REAL) и оператор GETLIST;

- для перенаправления заготовок к свободному станку группы А добавим в имитационную модель «внутрь» многоканального устройства STA1 два прибора STAN1 и STAN2;

- для формирования файла управления анимацией воспользуемся блоком BPUTPIC совместно с управляющим оператором FILEDEF;

- для вывода результатов моделирования на монитор компьютера, используем стандартные числовые атрибуты;

- в места, где требуется анимация операций, введем команды файла управления Student Proof Animation.

После ввода изменений сохраним файл как primer.gps. Измененная программа модели компьютерной имитации и анимации представлена ниже:
SIMULATE

^ ATF FILEDEF 'PRIMER.ATF'

REAL &POST,&TDSA,&OTDSA,&TOSA,&OTOSA

REAL &TDSB,&OTDSB,&TOSB,&OTOSB

INTEGER &NDET

GETLIST FILE=DATA,(&POST)

GETLIST FILE=DATA,(&TDSA)

GETLIST FILE=DATA,(&OTDSA)

GETLIST FILE=DATA,(&TOSA)

GETLIST FILE=DATA,(&OTOSA)

GETLIST FILE=DATA,(&TDSB)

GETLIST FILE=DATA,(&OTDSB)

GETLIST FILE=DATA,(&TOSB)

GETLIST FILE=DATA,(&OTOSB)

GETLIST FILE=DATA,(&NDET)

^ STORAGE S(STA1),2

GENERATE RVEXPO(1,&POST)

BPUTPIC FILE=ATF,LINES=3,AC1,XID1,XID1

TIME *.**

CREATE det *

PLACE * ON p1

ADVANCE RVNORM(3,&TDSA,&OTDSA)

QUEUE LINE1

ENTER STA1

^ DEPART LINE1

TRANSFER BOTH,,DRUG

SEIZE STAN1

BPUTPIC FILE=ATF,LINES=3,AC1,XID1,QA(LINE1)

TIME *.**

PLACE * 29 35

WRITE QUEUE1 Average queue=*.*

ADVANCE &TOSA,&OTOSA

RELEASE STAN1

^ LEAVE STA1

BPUTPIC FILE=ATF,LINES=5,AC1,XID1,XID1,FR(STAN1)/10,SR(STA1)/10

TIME *.**

SET * COLOR YELLOW

PLACE * ON p2

WRITE UTIL1 Util=*%

WRITE UTIL Util=*%

ADVANCE RVNORM(5,&TDSB,&OTDSB)

TRANSFER ,OSP

^ DRUG SEIZE STAN2

BPUTPIC FILE=ATF,LINES=2,AC1,XID1

TIME *.**

PLACE * 29 15

ADVANCE &TOSA,&OTOSA

RELEASE STAN2

LEAVE STA1

BPUTPIC FILE=ATF,LINES=5,AC1,XID1,XID1,FR(STAN2)/10,SR(STA1)/10

TIME *.**

^ SET * COLOR YELLOW

PLACE * ON p2

WRITE UTIL2 Util=*%

WRITE UTIL Util=*%

ADVANCE RVNORM(5,&TDSB,&OTDSB)

OSP QUEUE LINE2

SEIZE STA2

DEPART LINE2

BPUTPIC FILE=ATF,LINES=3,AC1,XID1,QA(LINE2)

TIME *.**

^ PLACE * 55 25

WRITE QUEUE2 Average queue=*.*

ADVANCE &TOSB,&OTOSB

RELEASE STA2

BOX BPUTPIC FILE=ATF,LINES=5,AC1,XID1,XID1,FR(STAN2)/10,N(BOX)+1

TIME *.**

SET * COLOR RED

PLACE * ON p3

WRITE UTIL3 Util=*%

WRITE N *

TERMINATE 1

START &NDET

^ PUTPIC FILE=ATF

END

END

Запустим интерпретатор GPSS/H. В строке запроса имени файла указываем имя .gps-файла нашей модели (primer.gps) и нажмем клавишу <Enter>. В результате сформируется файл управления анимацией (файл primer.atf) с результатами моделирования.

Примечание

В ходе анимации заявки, двигающиеся по путям и скапливающиеся перед графическими аналогами станков, будут накладываться друг на друга. Для того, чтоб этого не происходило необходимо войти в режим Path выделить путь р1 и изменить опию Non-Accum (не накопляемый) на Accumulating (накопляемый). Затем тоже проделать с путем р2. После этого необходимо войти в режим Class выбрать класс под именем det и изменить значения Fore Clr и Aft Clr (см. п. 5.4. Движение в Proof Animation).

На рис. 46 представлен фрагмент компьютерной анимации с результатами имитационного моделирования.


Рис. 46. Фрагмент анимации с результатми имитацоннго моделирования
^ 7. Этапы создания модели

компьютерной имитации и анимации
Создание модели компьютерной имитации и анимации сводится к четырем этапам.

Этап 1. Представление заданного технологического процесса в виде системы массового обслуживания (СМО).

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

Для этого необходимо:

- определить потоки событий (входящие потоки заявок и потоки обслуживаний для каждой очереди и прибора обслуживания);

- определить структуру системы массового обслуживания (число фаз, число каналов обслуживания, число очередей для каждой из фаз обслуживания заявок и связи источников заявок, приборов и очередей);

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

Этап 2. Разработка в соответствии с СМО имитационной модели на специализированном языке GPSS/Н.

Здесь математическая модель, сформированная на первом этапе, воплощается в конкретную машинную модель, ориентированную на использование специализированного языка компьютерной имитации GPSS/H. Вначале требуется построить модель по блочному принципу, то есть в виде совокупности стандартных блоков языка GPSS/H. Для этого необходимо:

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

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

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

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

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

Этап 3. Отображение динамики технологического процесса при помощи языка компьютерной анимации Proof Animation.

На этом этапе требуется отобразить динамику заданного технологического процесса на компьютере при помощи специализированного языка компьютерной анимации Proof Animation. Для этого при помощи опций режима «Draw Mode» необходимо нарисовать статические элементы анимации (контуры цеха, станки, траектории движения транспортных средств и т.п.), а в режиме «Class Mode» динамические объекты (детали, транспортные средства, рабочих и т.п.).

Для связи анимации с имитационной моделью необходимо добавить в те места GPSS/H-модели, где требуется динамическое отображение операций, специальные команды управления Proof Animation.

На этом этапе также требуется вывести результаты моделирования на анимацию технологического процесса.

Этап 4. Оценка характеристик технологического процесса на разработанной модели компьютерной имитации и анимации.

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

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

^ 8. Пример создания модели

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

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

Робокар обслуживает 5 рабочих мест, расположенных на разном расстоянии от склада (см. табл. 14). С рабочих мест на склад поступают заявки. Поток заявок является случайным, с равномерным законом распределения. Интервал между поступлениями заявок 12020 минут. По мере поступления заявок с рабочих мест устанавливается очередность обслуживания. Робокар по заданной программе управления оснащается требуемым грузом, перемещается к рабочему месту, разгружается и возвращается на склад.

Таблица 14

Расстояния от склада до рабочих мест

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

Расстояние от склада до рабочего места, м

1

2

3

4

5

500

300

100

200

160


Продолжительность загрузки и разгрузки робокара колеблется в интервале от 6 до 10 мин, распределенном по нормальному закону. Скорость робокара постоянна и равна 30 м/мин.

Задание

Используя методы компьютерной имитации и анимации, определите:

количество обслуженных заявок за 8 часовой рабочий день;

среднюю продолжительность обслуживания заявки;

загрузку робокара;

средний размер очереди на обслуживание из всех рабочих мест;

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

Исследуйте изменение загрузки робокара при изменении числа рабочих мест от 1 до 5.

Оцените изменение среднего размера очереди заявок на обслуживание от числа рабочих мест при скорости движения робокара 30 и 52 м/мин.
Решение

Этап 1. Представление заданного технологического процесса в виде системы массового обслуживания (СМО).

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


Рис. 47. Процесс обслуживания рабочих мест робокаром в виде СМО
^ Этап 2. Разработка в соответствии с СМО имитационной модели на специализированном языке GPSS/Н.

Переходя от системы массового обслуживания к специализированному языку компьютерной анимации GPSS/H, определим, что заявки в СМО соответствуют транзактам в имитационной модели. Для их ввода в модель используем блоки GENERATE. Так как по условию задания необходимо моделировать 5 рабочих мест, то модель построим из 5 сегментов, которые отображают поступление заявок с каждого рабочего места. Для перенаправления заявок на обслуживание робокаром используем блок TRANSFER в режиме безусловной передачи. Прибором в модели является робокар с именем ROB. Его описываем цепью блоков SEIZE-RELEASE. Для моделирования продолжительности операций загрузки, разгрузки и перемещения робокара используем блоки ADVANCE с распределением временных интервалов согласно заданию. Продолжительность рейса робокара зависит от продолжительности загрузки, разгрузки и движения до рабочего места и обратно. Так как расстояния до рабочих мест разные, то заявки должны обслуживаться за разное время. То есть в модели необходимо ввести различие между заявками с разных рабочих мест. Для этих целей воспользуемся блоками ASSIGN, при помощи которых в параметры транзактов действительного типа (REAL) будут записываться тип транзакта и продолжительность движения в зависимости от расстояния до рабочего места. Значения, записанные в эти параметры, затем будут использоваться в модели для имитации рейсов робокара. Для отображения выполненной заявки используем блок TERMINATE, который удаляет транзакты из модели. Для имитации восьмичасового рабочего дня в модель введем дополнительный сегмент, состоящий из двух блоков GENERATE и TERMINATE.

Разработанная в соответствии с СМО блок-схема имитационной модели процесса обслуживания рабочих мест робокаром приведена на рис. 48. Она содержит 31 блок в 6 сегментах.


Рис. 48. Блок-схема GPSS/H-модели

процесса обслуживания рабочих мест робокаром

GPSS/H- программирование

Для ввода исходных данных в модель, при помощи текстового редактора создан файл-меню. Часть этого файла представлена ниже (полная распечатка файла-меню приведена в прил. 1).
******************************************************************************

* Исходные данные для модели процесса обслуживания рабочих мест робокаром

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

* Значение * Тип данных

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

1 *Рабочее место 1 (включено 1; выключено 0)

1 *Рабочее место 2 (включено 1; выключено 0)

.

.

8 *Средняя продолжительность разгрузки робокара, мин

2 *Отклонение от средней продолжительности, мин

480 *Продолжительность моделирования, мин

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

А – Создание .atf-файла и определение переменных
В соответствии с разработанной блок-схемой написана программа на языке GPSS/H, часть которой представлена ниже (полная распечатка программы приведена в прил. 2). В программе можно выделить несколько частей:
ATF FILEDEF 'ROBO.ATF' Создать файл robo.atf

INTEGER &M1,&M2,&M3,&M4,&M5,&SHIFT Опред. целых переменных

REAL &SA1,&SAS1,&SA2,&SAS2 Опред. действит. переменных
Б - Ввод исходных данных из файла-меню в модель
GETLIST FILE=ROBO,(&M1) Выключатель рабочего места 1

.

.

.

GETLIST FILE=ROBO,(&RASG) Ср. продолжительность разгрузки робокара

GETLIST FILE=ROBO,(&RASGR) Отклонение от средней продолжительности

GETLIST FILE=ROBO,(&SHIFT) Продолжительность моделирования
В - моделирование технологических операций с вводом команд файла управления анимацией

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

* Моделирование рабочего места 1

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

GENERATE &SA1,&SAS1,,,,1PL,1PH Поступление заявки с рабочего места 1

TEST NE &M1,0,DES Проверка включения рабочего места 1

ASSIGN 1,&RES1/&SCOR,PL Время движения до рабочего места 1

ASSIGN 1,1,PH Принадлеж-ть заявки 1-му раб. месту

BPUTPIC FILE=ATF,LINES=6,AC1,_ Запись в файл .atf в 6 линий

&SA1,&SAS1,&RES1,PL1 следующих команд:

time *.* Текущее время

create m m1 Создать динамический объект – рабочее место 1

place m1 -30 38 Поместить объект в координатное пространство Proof Animation

set m1 color red Окрасить рабочее место 1 в красный цвет

write z1 * * Вывести на экран мат. ожидание и дисперсию поступления заявки

write r1 L=*m Вывести на экран расстояние от склада до рабочего места 1

write re1 t=*min Вывести на экран продолж-ть движения робокара до раб. места 1

TRANSFER ,ROB Переход заявки на обслуживание к робокару

.

.

.
*******************************************************************************

* Моделирование работы робокара

*******************************************************************************
ROB QUEUE HUK Ожидание освобождения робокара

SEIZE CAR Занятие робокара

DEPART HUK Конец ожидания

ADVANCE RVNORM(1,&POG,&POGR) Загрузка робокара

Г- Вывод результатов моделирования на экран
^ BPUTPIC FILE=ATF,LINES=6,AC1,N(BOX),FT(CAR),_

FR(CAR)/10,QA(HUK),QT(HUK)

time *.* Текущее время

write b * Количество обслуженных заявок

write ft *.** Ср. время обслуживания заявки

write fr *.** Загрузка робокара

write qa *.** Ср. размер очереди на обслуживание

write qt *.** Ср. время ожидания заявки в очереди

DES TERMINATE Заявка выполнена
^ Этап 3. Отображение динамики технологического процесса при помощи языка компьютерной анимации Proof Animation.

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

Для рисования статических элементов используем меню Mode и режим Draw Mode (рис. 49). Рисование динамического объекта осуществляем в режиме Class Mode (рис. 50). Команды управления динамическими элементами для Proof Animation: TIME, CREATE, PLACE АТ, SET COLOR, WRITE и др. заранее введены в программу на языке GPSS/Н (см. выше). В совокупности эти команды при работе программы GPSS/H образуют файл управления анимацией (.atf-файл).


Рис. 49. Статичекие элементы анимации


Рис. 50. Динамический объект анимации
Один из кадров анимации процесса обслуживания рабочих мест робокаром, полученный после имитационного моделирования, показан на рис. 51.

Рис. 51. Кадр анимации процесса обслуживания рабчих мест робокаром
При подаче заявки соответствующее рабочее место изменяет цвет, а после обслуживания возвращается к первоначальному цвету. Перемещение робокара в пространстве отображается движением его графического аналога на мнемосхеме с соответствующей скоростью. Занятость робокара также отображается сменой цвета. На экран выводятся: количество обслуженных заявок; средняя продолжительность обслуживания заявки; загрузка робокара и другие параметры.

В верхней строке экрана указываются: текущее время имитации (Time), скорость анимации (Speed), ускорение (Faster) или замедление (Slоwer) анимации, остановка изображения (Pause), пуск движущегося изображения (Go), выбор размера, расположения и участка изображения (View), выбор файлов анимации процесса (File), выбор режимов анимации (Mode).

^ Этап 4. Оценка характеристик технологического процесса на разработанных моделях компьютерной имитации и анимации.

В имитационных экспериментах вводим исходные данные в файл-меню, запускаем GPSS/H-модель и анализируем результаты по сформированной анимации процесса.

В результате проведения имитационных экспериментов установлено, что за 8-часовой рабочий день обслужено 10 заявок. При этом средняя продолжительность обслуживания заявки составляла 33,93 мин, загрузка робокара – 76,40%. Средний размер очереди заявок на обслуживание из всех рабочих мест равнялся 2,78. При этом среднее время ожидания заявки в очереди было 82,30 мин.

Для исследования изменения загрузки робокара при изменении числа рабочих мест изменяли число источников заявок (от 1 до 5) и оценивали степень использования робокара для каждого эксперимента.

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

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



Рис. 52. Зависимость степени использования робокара k от числа рабочих мест n

Рис. 53. Зависимость среднего размера очереди заявок на обслуживание q от числа рабочих мест n и скорости движения робокара v (____v=30м/мин; -------v=52м/мин)


Установлено, что увеличение числа рабочих мест от 1 до 2 приводит к повышению степени использования робокара на 36%. Увеличении числа рабочих мест от 2 до 5 несущественно влияет на загрузку робокара. Изменение составляет 2%.

Средний размер очереди заявок на обслуживание практически не изменяется при числе рабочих мест 1-2. При этом изменение скорости робокара не оказывает никакого влияния на средний размер очереди заявок на обслуживание. При числе рабочих мест от 2 до 5 увеличение скорости робокара уменьшает средний размер очереди в среднем на 26%.


1   2   3   4   5   6   7   8   9   10   11



Скачать файл (282.3 kb.)

Поиск по сайту:  

© gendocs.ru
При копировании укажите ссылку.
обратиться к администрации