|
|
发表于 2012-4-7 22:08:45
|
显示全部楼层
周老师您好,我在建模的时候遇到一个问题,有一个装配工位M1,工位前有一个暂存区,会有J1,J2,J3,J4四种工件到达暂存区,可能同时到达,也可能以任意顺序到达,其中J1与 J3,J2与J4装配,我的问题就是这种情况下如何判断J1和J3装配 。J2和J4装配。
" [6 q5 e: L# l$ r我之前的思路是用2个buffer(B1,B2) 和一个singleproc(m0),method是:2 v, V& S0 [! n# q
7 a! ]" G" w( Awaituntil m2.occupied
$ N H9 P3 @! u& S2 [% r and B1.OCCUPIED prio 1;
& d, r6 m& C+ k) [if B1.cont.name="j1" and m2.cont.name="j3" then- x7 P6 Z# t/ ^8 k( u, g
m2.cont.move(m1);) u% D6 _/ i7 ^4 a' D
B1.cont.move(m1.cont);
9 U: }; ?9 ~ i: S/ z --@.move;
' w; t: q- X) Z elseif B1.cont.name="j2" and m2.cont.name="j4" then) O/ Z0 b" z' s9 O' @
m2.cont.move(m1);- D9 w x- N+ @# O+ h- n2 S1 s
B1.cont.move(m1.cont);
2 y9 g, w' C3 ]$ m1 Hend;& S. p* a) b1 b) Y' N, f9 H
但是出现两个问题1:两个buffer需要容量满才可以;& h( b9 U, ?# }, u
2 如果先到的是j1和j4就不会装配,停机了。& _" p4 g' S/ I* ^- q: Q
周老师,麻烦您指导下,谢谢了。
5 M) W6 X9 a, V+ | |
|