2017-01-30 84 views
0

我有一個WITNESS模型,我試圖將其轉換成AnyLogic。 WITNESS模型有一個容量爲10的緩衝區(隊列),將其實體拉到兩個不同的傳送帶上。我想做的事在AnyLogic同樣的事情,我試圖做的就是這麼簡單:AnyLogic一個輸出端口到多個輸入端口

AnyLogic Queue to multiple conveyors

但建模的那樣,當我得到一個錯誤:

AnyLogic error

我使用AnyLogic 7的免費個人學習版,我瞭解到企業庫至少對於版本6(請參閱https://help.anylogic.com/index.jsp?topic=/com.xj.anylogic.help/html/_Enterprise/Ports.html)支持此操作,但有沒有辦法使用免費許可證進行操作?

提前致謝!

回答

1

您需要在隊列後放置一個「Select Output」對象。在那裏,你指定每個實體應該去哪裏的條件。如果它依賴於下游對象的狀態,則需要在Java代碼中指定它。

在您的屏幕中,您有下游傳送帶。他們有內置的功能,檢查是否有足夠的空間還沒有對象(檢查輸送機的幫助,我認爲這是像nadrzLCZ.hasCapacity()或類似的東西。

也閱讀推和拉協議,以及如何設置所需的設置,聽起來像你想傳送帶拉,對嗎?

+0

謝謝你的答覆。我害怕這將是答案,因爲我試圖使用AnyLogic教學porpuses我不想濫用java代碼,一個重要的提示是我找不到AnyLogic Conveyor的「.hasCapacity()」方法或類似的東西,而不得不使用變量手動跟蹤它 –

+0

有一個「canEnter()」方法可能會有所幫助,它會檢查另一個實體是否可以立即進入。 – Benjamin