|
|
发表于 2012-4-7 22:08:45
|
显示全部楼层
周老师您好,我在建模的时候遇到一个问题,有一个装配工位M1,工位前有一个暂存区,会有J1,J2,J3,J4四种工件到达暂存区,可能同时到达,也可能以任意顺序到达,其中J1与 J3,J2与J4装配,我的问题就是这种情况下如何判断J1和J3装配 。J2和J4装配。5 h9 V; ?: X4 L% ^/ M) C) O# j
我之前的思路是用2个buffer(B1,B2) 和一个singleproc(m0),method是:
/ `, J7 a" X Q9 M3 S; e6 S/ D) `
waituntil m2.occupied
; ?+ E1 |9 E4 z% n( a" k$ I and B1.OCCUPIED prio 1;
1 v+ G/ J F3 bif B1.cont.name="j1" and m2.cont.name="j3" then
5 [9 }$ h P* m7 J9 D9 e m2.cont.move(m1);$ s0 C, v; } i2 o( M! o/ x: M8 x
B1.cont.move(m1.cont); 1 U2 D( E# ]# c7 M* h8 Q
--@.move;
+ M" a2 ]0 g( i8 I' F2 m s1 w! x elseif B1.cont.name="j2" and m2.cont.name="j4" then
. k* I$ J; j" q+ ~# u m2.cont.move(m1);
! A! ? z$ B: ^% p B1.cont.move(m1.cont); . K: B3 g0 I! W) j0 l- R8 b
end; I, Q" {( b9 F9 J8 `
但是出现两个问题1:两个buffer需要容量满才可以;& l2 c/ ]+ S) T7 b. |- Y! A
2 如果先到的是j1和j4就不会装配,停机了。
. C( \* Q/ L8 P周老师,麻烦您指导下,谢谢了。! Z* J3 n5 _2 x0 D
|
|