|
发表于 2012-4-7 22:08:45
|
显示全部楼层
周老师您好,我在建模的时候遇到一个问题,有一个装配工位M1,工位前有一个暂存区,会有J1,J2,J3,J4四种工件到达暂存区,可能同时到达,也可能以任意顺序到达,其中J1与 J3,J2与J4装配,我的问题就是这种情况下如何判断J1和J3装配 。J2和J4装配。
; A, G5 V% ?( f% }我之前的思路是用2个buffer(B1,B2) 和一个singleproc(m0),method是:0 i* Q, U6 z0 v8 m6 d
7 p. _" B4 E. P2 ~2 G) ]waituntil m2.occupied ( T; d) \) P- ]6 C7 `) I4 D
and B1.OCCUPIED prio 1;' g+ n3 J: [$ l" j2 K$ K
if B1.cont.name="j1" and m2.cont.name="j3" then
* I) M/ A M7 Y! Z* x+ x' P# _ m2.cont.move(m1);
& V& ?0 B* T' S- a% B B1.cont.move(m1.cont);
" W d6 x8 D; ]+ n --@.move;
' M. ?2 \% U4 ?2 R! h7 l elseif B1.cont.name="j2" and m2.cont.name="j4" then
3 p- C2 R" S* V; O# K m2.cont.move(m1);
) A& T' Q+ k. v1 j: D. M; L B1.cont.move(m1.cont); ; Q. U/ b6 z8 z- [2 z
end;
& l# l9 j) W. c6 @# }但是出现两个问题1:两个buffer需要容量满才可以; ]& Z; |$ \# X+ ]" @
2 如果先到的是j1和j4就不会装配,停机了。
' I+ q# ^% a9 i! s% _9 u周老师,麻烦您指导下,谢谢了。: L: Y' V% p6 a: I8 G; H
|
|