1. 这里描述的是 Robot 无法在 A/B 放置输入物件,按照题目的意思(我的理解),Robot 需要带着这个物件,以及获得的输出物件,来到下游缓冲台,释放掉输出物件,然后回到上游缓冲台,等待预排信号,但此时,Robot 上已经有了一个没有成功放置的输入物件,所以,不再从上游缓冲台取件,而是带着这个未成功放置的物件再回到 A/B。 " ^$ E, Q7 a, y; o; u
因此,如果没有成功放置输入物件,那么Robot 这个资源还不能释放,也就不能允许上游缓冲台上的物件 占据 Robot .
$ Q2 q, C! ?- l3 R4 R6 t4 G* h- |, Q4 m: J# {, I6 S
实际情况是这样的吗?! \2 J" r1 {0 x
) `2 k# F! ~7 }! q* d
2. 把 Resource Pool 可以想象为一个计数器,只要有占用,就减去一,只要有释放,就增加一。小球获得资源后,不论 Unbatch 多少次,只要没有释放资源的模块,那么资源就没有释放,所以,这里要小心释放的次数和获得的次数要匹配。 在模型里,这里面有一个抽象概念上的转换。) A# J% `, J# g3 i+ ?: a; p, v) @$ [
/ d2 p# }/ s; a& n4 W: l( ?
当 Unbatch 为两个之后,可以想象为拆分后,一个代表输入物件,一个代表Robot。在拆分以前,Robot 好像附带在物件身上,在拆分之后,Robot 被显性地模拟出来,因为要在后面和输出物件再结合起来。6 F1 x( z( V6 D
( ]3 P" B4 e/ q4 [
这个如果理解了,模型就好理解了,这可能需要一点思考。 E+ A; Z8 B0 S! D/ Q- o+ L
3 v, {8 P* O% V g/ H( R+ {3. 呵呵,你已经很厉害了,你说得一点不差,应该把这个小球拆分为2,然后一个离开系统,一个返回到到前面。我偷了一个懒,把这个步骤合二为一了,因为,我觉得离开的物件对系统逻辑没影响了,就简略了。 |