2017-01-30 2 views
0

У меня есть модель WITNESS, которую я пытаюсь преобразовать в AnyLogic. Модель WITNESS имеет буфер (очередь) с пропускной способностью 10, которая получает свои сущности, выталкиваемые на два разных конвейера. Я хочу сделать то же самое в AnyLogic, что я пытался сделать, это так просто:AnyLogic один порт вывода на несколько входных портов

AnyLogic Queue to multiple conveyors

Но при моделировании таким образом, я получаю сообщение об ошибке:

AnyLogic error

Я используя бесплатную версию Personal Learning Edition AnyLogic 7, я узнал, что эта операция поддерживается корпоративной библиотекой, по крайней мере, для версии 6 (см. https://help.anylogic.com/index.jsp?topic=/com.xj.anylogic.help/html/_Enterprise/Ports.html), но есть ли способ сделать это, используя бесплатную лицензию?

Заранее благодарен!

ответ

1

вам нужно поставить объект «Выбрать выход» после очереди. Там вы указываете условие, в котором должен идти каждый объект. Если это зависит от состояния объекта нисходящего объекта, вам нужно указать это в Java-коде.

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

Также читайте на push и потянуть протоколы и как настроить необходимую настройку. Похоже, вы хотите, чтобы конвейеры тянули, не так ли?

+0

Благодарим вас за ответ. Я боялся, что это будет ответ, так как я пытаюсь использовать AnyLogic для обучения porpuses Я не хотел злоупотреблять использованием Java-кода. Важно отметить, что я не мог найти такой метод «.hasCapacity()» или что-либо подобное для Anyveyic Conveyor, вместо этого мне пришлось использовать переменные, чтобы вручную отслеживать его –

+0

существует метод canEnter(), который может помочь. Он проверяет, может ли другой объект войти в настоящее время или нет. – Benjamin

Смежные вопросы