|
发表于 2012-4-7 22:08:45
|
显示全部楼层
周老师您好,我在建模的时候遇到一个问题,有一个装配工位M1,工位前有一个暂存区,会有J1,J2,J3,J4四种工件到达暂存区,可能同时到达,也可能以任意顺序到达,其中J1与 J3,J2与J4装配,我的问题就是这种情况下如何判断J1和J3装配 。J2和J4装配。
/ Q. f6 Z ~9 @, X我之前的思路是用2个buffer(B1,B2) 和一个singleproc(m0),method是:) @% e: |/ {! `& c
+ _* X! q i: r' vwaituntil m2.occupied
9 I- Y, d9 c5 w4 h7 Z* { K4 [ and B1.OCCUPIED prio 1;
! z' H9 F) H$ O4 X. k) L4 eif B1.cont.name="j1" and m2.cont.name="j3" then9 E# c/ a# j0 f8 t
m2.cont.move(m1); j% @8 l2 p6 G9 e
B1.cont.move(m1.cont);
% g+ W6 S+ I1 B# M. z6 ^ --@.move;
z, l, {( G$ l) e. s elseif B1.cont.name="j2" and m2.cont.name="j4" then( U2 ?/ U5 _% X. Z
m2.cont.move(m1);
) |3 n) i7 V; C2 J- i B1.cont.move(m1.cont);
( ~4 ?, V. b4 h+ }- K: yend;0 h8 h3 e+ N0 s' U$ H$ ?! P
但是出现两个问题1:两个buffer需要容量满才可以;; s( i& l4 Y1 s8 Z1 Z0 m) n/ V
2 如果先到的是j1和j4就不会装配,停机了。" [2 t7 Z3 t* l3 `, f7 t. h
周老师,麻烦您指导下,谢谢了。
4 j8 F5 z+ u# a1 y' V |
|