Собрав электроды в партии, мы перевозим эти партии в сушильные камеры, где пройдет процесс дегидратации электродов. Моделирование текущего этапа мы начнем с добавления погрузчиков в модель.
Чтобы промоделировать погрузчики, мы будем использовать транспортеры - отдельный тип агента, который задается с помощью блока TransporterFleet Библиотеки производственных систем. У транспортеров бывают разные режимы навигации: навигация по заданным путям или произвольная навигация.
Нам нужны транспортеры с произвольной навигацией. В ходе движения такие транспортеры анализируют пространство вокруг (заданное с помощью таких элементов разметки пространства, как стены, конвейеры и т.д.), избегают столкновений с препятствиями и друг другом. Каждый транспортер использует автоматически рассчитанный маршрут, который позволит ему с максимальной эффективностью достигнуть точки назначения. Как правило, это наиболее короткий маршрут.
Создайте погрузчики
- Перетащите элемент Тип транспортера из палитры Библиотеки производственных систем на графическую диаграмму агента Main.
- В диалоговом окне Создание агента укажите Имя типа агента: Forklift.
- Щелкните по кнопке Готово.
- Откройте секцию Склады и контейнерные терминалы палитры 3D объекты и перетащите элемент Погрузчик на графическую диаграмму агента Forklift.
- Приведите размер 3D объекта в соответствие с масштабом агента.
-
В секции Размеры и движение свойств агента Forklift укажите следующее:
a. Длина: 2 метра
b. Ширина: 1.3 метра
c. Высота: 1.5 метра - В поле При запуске в секции свойств агента Действия агента добавьте строку кода, которая позволит задать местоположение перевозимого объекта по отношению к центральной точке погрузчика: setCargoPosition(1, 0, 0, METER); Теперь во время выполнения модели на анимации груз будет отображаться точно на вилах погрузчика.
Нарисуйте базовое местоположение погрузчиков
- Перетащите Прямоугольный узел с палитры Разметка пространства на графическую диаграмму агента Main.
- Назовите его forkliftsHomeLocation.
- В свойствах узла выберите опцию Видимость: нет.
- Разместите узел в соответствии с изображением ниже:
Чтобы погрузчики всегда возвращались на одни и те же позиции в узле, необходимо задать эти позиции с помощью аттракторов.
- В свойствах узла щелкните по кнопке Аттракторы... и задайте в диалоговом окне Аттракторы необходимое Количество аттракторов: 2.
- Щелкните по кнопке OK, чтобы закрыть диалоговое окно.
Нарисуйте сушильную камеру
- Перетащите Прямоугольный узел с палитры Разметка пространства на графическую диаграмму агента Main.
- Назовите curingOven.
- В свойствах узла выберите опцию Видимость: нет.
- Измените размер узла и его местоположение так, чтобы они соответствовали изображению ниже:
- В свойствах узла щелкните по кнопке Аттракторы..., чтобы задать местоположение агентов в узле.
- В диалоговом окне выберите опцию Сетка и задайте значения 5 x 1. Перетащите аттракторы, чтобы изменить их местоположение.
Добавьте 3D анимацию
- Откройте палитру 3D объекты.
- Перетащите элемент Сушильная камера из секции Производство на графический редактор агента Main и разместите его поверх аттрактора в узле curingOven.
- В открывшемся диалоговом окне Автомасштабирование 3D объекта щелкните по кнопке Да.
- Расположите объект так, чтобы он находился в пределах стен нашего плана и полностью закрывал собой аттрактор.
- Скопируйте 3D объект (Ctrl + перетаскивание) и разместите копию на следующем аттракторе. Повторяйте процесс, пока все аттракторы в узле curingOven не будут закрыты 3D объектами.
Теперь, когда мы создали тип агента, с помощью которого будем моделировать погрузчики, а также узлы для их базового местоположения и места назначения, осталось задать соответствующую логику в диаграмме процесса.
Задайте управление погрузчиками в диаграмме процесса
- Откройте палитру Библиотеки производственных систем и перетащите блок Transporter Fleet на графическую диаграмму агента Main.
- Назовите его forklifts.
-
В свойствах блока укажите следующее:
a. В параметре Тип навигации выберите опцию Произвольное перемещение. Теперь погрузчики в нашей модели будут перемещаться в пространстве самостоятельно и сами смогут объезжать препятствия в производственном цехе.
b. Задайте Количество транспортеров: 2. Двух погрузчиков будет достаточно, чтобы перевозить партии электродов между областью ожидания и сушильными камерами.
c. В параметре Базовое местоположение (узлы) выберите узел forkliftsHomeLocation.
d. Задайте Радиус поворота: 1 метр
e. В параметре Новый транспортер выберите тип агента Forklift.
f. Задайте Максимальную скорость: 0.5 м/с. - Перетащите блок MoveByTransporter с палитры Библиотеки производственных систем на графическую диаграмму агента Main и поместите его в диаграмму процесса после блока batch.
-
В свойствах блока укажите следующее:
a. Имя: toOven
b. Место назначения: Узел
c. Узел: curingOven
d. Автопарк: forklifts
e. Время погрузки: 1 минута
f. Время разгрузки: 1 минута
Задать процесс сушки электродов
После того, как электроды были доставлены в сушильную камеру, начнется процесс дегидратации. В реальности такие процессы занимают от 12 до 24 часов. Для целей нашего учебного пособия мы значительно сократили это время.
- Перетащите блок Delay с палитры Библиотеки моделирования процессов на графическую диаграмму Main и разместите ее в диаграмме процесса после блока toOven.
- В свойствах блока delay задайте Время задержки: 2 минуты.
- Запустите модель и посмотрите, как погрузчики перевозят партии электродов.
Задайте перемещение электродов в область ожидания
- Нарисуйте прямоугольный узел на плане в соответствии с изображением ниже.
- Назовите его preassembleElectrodeBuffer. С помощью этого узла мы задаем место, куда погрузчики будут доставлять партии электродов, прошедших дегидратацию.
- В свойствах узла выберите опцию Видимость: нет.
- Задайте Расположение внутри: Упорядоченное.
- Добавьте в диаграмму процесса еще один блок MoveByTransporter и расположите его после блока delay.
- Назовите новый блок toElectrodeBuffer.
-
В свойствах блока toElectrodeBuffer укажите следующее:
a. Узел: preassembleElectrodeBuffer
b. Автопарк: forklifts
c. Время погрузки: 0.5 минуты
d. Время разгрузки: 0.5 минуты - Запустите модель и посмотрите, как погрузчики выполняют перемещение груза и двигаются среди препятствий в режиме произвольной навигации.
-
Как мы можем улучшить эту статью?
-