一个站的两台输送机

问题描述

我有两个传送带同时运行,然后有分拣机将来自这两个传送带的物品一个一个分类,所以如果分拣机正在分拣来自传送带 1 的物品,那么两个传送带都应该停止,类似地传送带 2。所以基本上,如果分拣机正在分拣来自传送带 1 或 2 的任何物品,在这种情况下,两个传送带都应该停止。enter image description here

那我该怎么做呢?

解决方法

使用 Custom Station(我认为您正在使用),然后使用 Delay 模块来模拟排序。使用 Delay 块的进入和退出动作来停止和启动传送带(使用它们的 stop()run() 函数)。

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

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

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

enter image description here

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

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

agent.sourceConvey == convey ? conveyor2 : conveyor3

(其中 conveyor2 是顶部出站传送带,conveyor3 是底部传送带。)

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