AnyLogic
Развернуть
Размер шрифта

Произвольная навигация

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

Всегда служат препятствиями стены и другие транспортеры с произвольной навигацией. При необходимости вы можете задать в качестве препятствий большинство элементов разметки пространства, относящихся к Библиотеке производственных систем (например, конвейеры, краны, подъемники и т.д.), а также стеллажи и склады, выбрав опцию Является препятствием в свойствах этих элементов. Также можно включить в список препятствий транспортеры с навигацией по заданному пути, выбрав опцию Видеть все транспортеры в свойствах блока TransporterFleet.

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

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

Движение в режиме произвольной навигации

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

Движение транспортеров в этом режиме навигации не ограничено одним уровнем. Транспортеры могут перемещаться с уровня на уровень с помощью гейта между уровнями или подъемника.

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

Чтобы получить информацию о маршруте транспортера (от его текущего местонахождения до места назначения), вы можете вызвать функцию getRouteData(). Эта функция вернет список задач на движение типа PLAIN. Каждая отдельная задача будет описывать движение транспортера внутри ячейки навигационной сетки.

Тип навигации, базовое местоположение и другие правила движения для автопарка задаются в свойствах блока TransporterFleet Библиотеки производственных систем.

Демо-модель: Transporters Moving in Free Space Открыть страницу модели в AnyLogic Cloud. Там можно запустить модель или скачать ее по ссылке Исходные файлы модели.
Как мы можем улучшить эту статью?