|
|
发表于 2012-4-7 22:08:45
|
显示全部楼层
周老师您好,我在建模的时候遇到一个问题,有一个装配工位M1,工位前有一个暂存区,会有J1,J2,J3,J4四种工件到达暂存区,可能同时到达,也可能以任意顺序到达,其中J1与 J3,J2与J4装配,我的问题就是这种情况下如何判断J1和J3装配 。J2和J4装配。' A( V! g- A" o$ h9 N3 `+ q# Q+ \# u% o
我之前的思路是用2个buffer(B1,B2) 和一个singleproc(m0),method是:
5 D- H K" a! k! A5 A4 t: f( F, s3 a
waituntil m2.occupied
' f" T- s s2 n and B1.OCCUPIED prio 1;0 `/ G( U: O7 d V% q* A0 {8 |
if B1.cont.name="j1" and m2.cont.name="j3" then/ F5 P4 ^5 X; v' K+ E v
m2.cont.move(m1);! `3 f! j+ l8 o' m$ _! E6 @! v. D5 _$ ^
B1.cont.move(m1.cont); . G5 B$ X- q$ k# J; D
--@.move;
& A' j+ `! e$ T elseif B1.cont.name="j2" and m2.cont.name="j4" then! b6 Q/ A0 M# {8 G& i' A) B
m2.cont.move(m1);
/ _: M) f' N9 J B1.cont.move(m1.cont); 8 b2 S8 I% n2 m& ] a6 C
end;( X. g* u+ ?7 K6 N8 i }
但是出现两个问题1:两个buffer需要容量满才可以;
& ?1 E# U# k# [* [% p2 如果先到的是j1和j4就不会装配,停机了。
$ `5 c8 p! x( J; N9 }周老师,麻烦您指导下,谢谢了。+ @2 b0 K! B6 R) {
|
|