首页 > 解决方案 > 一个站的两个输送机

问题描述

我有两个同时运行的输送机,然后有分拣机对来自这两个输送机的物品进行分拣,一个接一个,所以如果分拣机正在分拣来自输送机 1 的物品,那么两个输送机都应该停止,对于输送机 2 也是如此。所以基本上,如果分拣机正在分拣任何物品,来自传送带 1 或 2 的传送带都应该在这种情况下停止。在此处输入图像描述

那么我该怎么做呢?

标签: anylogic

解决方案


使用自定义站(我认为您正在使用),然后使用延迟块来模拟排序。使用 Delay 块的 on-enter 和 on-at-exit 动作来停止和启动传送带(使用它们的stop()run()函数)。

因为使用自定义站需要您“拆分”传入和传出传送带(参见普通站),所以您必须记住它们进入哪个传送带(通过将该信息存储在流经的自定义 Material Item 代理中过程),以便您知道将它们放在哪个出站传送带上。

从视觉的角度来看,您还可以确保代理离开入站传送带并从空间中移除(传送块“离开传送带在出口处”和“从空间中移除”选项),然后让它们出现在,比如说,当自定义站位于延迟块(“代理位置”设置)中时,在自定义站顶部定义的矩形节点。

下面是一个最小的示例模型。

在此处输入图像描述

流经流程的代理有一个参数sourceConvey(类型为Convey),该参数存储它到达分拣机的传送块。(也可以存储传送带空间标记实例,或者,在这种情况下,因为只有 2 个传送带,只是boolean说明它是否来自“传送带 1”。)

源块适当地设置代理sourceConvey,然后出站传送块(convey2在图片中)根据事物的来源动态分配源和目标传送带:

agent.sourceConvey == convey ? conveyor2 : conveyor3

conveyor2(顶部出站输送机和conveyor3底部输送机在哪里。)

(您也可以SelectOutput为每个可能的路径使用带有两个出站 Convey 块的 a。)


推荐阅读