Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Пояснительная записка_Алексеев ВКР.docx
Скачиваний:
120
Добавлен:
11.02.2019
Размер:
26.97 Mб
Скачать

If Заготовки.Cont.Empty then

next_machine:=root.Управление.ПланРабот[1,@.name][9,@.op]

--поиск станка по второй колонке таблицы ресурсов

if next_machine /= "" then

root.Управление.Ресурсы.setCursor(2,1);

root.Управление.Ресурсы.find({2,1}..{2,*},next_machine);

target:=root.Управление.Ресурсы[3,root.Управление.Ресурсы.cur-sorY];

else

target:=root.Выход;

end;

@.move(Детали.cont);

--перемещение контейнера к следующему станку

Детали.cont.move(target);

waituntil Детали.empty prio 1;

--перемещение пустого контейнера из поз. заготовок

--на позицию контейнера для обработанных деталей

Заготовки.cont.move(Детали);

else

@.move(Детали.cont);

--установка следующей детали в станок

Заготовки.cont.cont.move(Станок);

end;

end;

Все заготовки деталей поступают в ГПМ через интерфейс «Вход» по коннектору «Connector» в буфер накопитель «Заготовки».

Выполним настройки объекта интерфейс «Вход» (рис.5.5). Установлено цикличная поставка объектов обработки. Объект является блокирующим, вход в фрейм расположен «Слева» в середине иконки фрейма.

Рисунок 5.5 – Настройка параметров объекта «Заготовки»

Настроим буфер «Заготовки». Вместимость буфера 1 контейнер с деталями который поступает на вход ГПМ, тип буфера очередь. Выход осуществляется циклично, управление выходом из буфера выполняется согласно собственному атрибуту «УпрВых» типа метод. Программный код метода «УпрВых» заносится на закладке «Пользовательский». Метод реализует следующую логику:

- присвоить переменной part значение имени деталей в контейнере;

- присвоить переменной op значение номера операции обработки детали.

Настройки выполнены как на рисунке 5.6.

Рисунок 5.5 – Настройка параметров объекта «Заготовки»

Настроим буфер «Детали». Данный объект используется только для временного хранения контейнера с обработанными деталями в партии. Настройку произвели как на рисунке 5.6.

Рисунок 5.6 – Настройка параметров объекта «Детали»

Создадим метод «init» в модели ГПМ. Он предназначен для инициализации и создания в самом начале моделирования пустого контейнера в буфере «Детали». Обработка начинается только поле создания пустого контейнера. Программный код метода примет вид:

is

do

.ПрименяемыеОбъекты.БиблГПС.НастраиваемыеОбъекты.Контейнер.create(Детали);

end;

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

5.3 Анализ работы имитационной модели производственной ячейки.

Для того, чтоб проверить созданную производственную ячейку на работоспособность, добавим ее в заранее подготовленную ГПС, именуемой корневой.

Вставим в корневой фрейм пятнадцать объектов «БазСтанок» из созданной нами библиотеки классов, и переименуем их как: «Токарный», «Фрезерный», «Зубофрезерный», «Шлифовальный», «ТермичкаТВЧ». Каждая группа станков образует свой участок.

В ГПС производится механическая обработка двух валов – «Вал1» и «Вал2».

Выполним симуляцию имитационной модели. Маршрут механической обработки детали «Вал1» показан сплошной стрелкой, а детали «Вал2» пунктирной стрелкой на рисунке 5.8.

Также посредством диаграммы Сэнки отобразим связи между объектами во время механической обработки валов на рисунке 5.7. Чем толще линия связи, тем больше нагружен поток механической обработки вала.

Рисунок 5.7 – Связи между объектами ГПС посредством диаграммы Сэнки

Рисунок 5.8 – Маршрут обработки деталей:

1 – маршрут механической обработки детали «Вал1»; 2 – маршрут механической обработки детали «Вал2»;

Модель ГПМ работоспособна и разработана правильно. Она отрабатывает заданные ей функции в начале проектирования.