|
|
, l2 }6 i" _( `; D ^
我是Automod 初学者,在做某项目仿真时需要仿真叠盘系统,而叠盘系统在Automod中是没有现成的东西可用的,必须通过编程来实现。现在把这个方法和大家分享一下,献丑了,如果有什么更好的办法希望大家一起分享交流。4 D" ?' w+ R" y% o2 `
首先,在输送线的叠盘系统位置建立一个Queue,在Queue中建立一个Container,这样你的托盘进入到队列才能显示出来。
; o0 U c O" s# z然后 建一个OrderList,详细设置我在这里就不赘述了,你可以每项都试一试看看是什么效果
2 j/ y. G1 i. f5 Q b: [接着我们就可以编程序了,源代码如下:- {! v4 h6 H9 u# g/ m
begin P_process_name arriving
+ D( @; [% r9 p: r+ _! ? move into Q_queue //load进入队列中8 ^2 P4 l& u5 I" W& w" h
if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘
- b, g5 l, h/ `* f; [4 s" i begin & o# F5 b+ @& t
order 4 loads from OL_orderlist to die //取其中的4个消失" d' B% k3 J& H% t! f3 B8 c5 p
set load type to L_new//设置第5个进来的Load为L_new类型的, X+ K4 y/ l, s3 u
send to P_next//进入后续流程
- T' h, u. S3 P end
: p4 Y7 C4 P J- s else//如果OrderList中的托盘数少于4 则进入
! d# o- b% _, W- W3 M% N wait to be ordered on OL_ orderlist; S1 f( D" V+ R9 I( _. i! J9 m
end3 L; y/ E8 S; u( z2 _; k6 z% Z
这段代码还可以精简为:
6 G7 Z3 P( c" f _6 vbegin P_process_name arriving
$ t' I6 C% K$ l* M _/ v& E q& j move into Q_queue //load进入队列中
4 E0 |8 B, Y# o; ~ C, q if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘
' x. K7 C/ z0 s+ `1 E+ x begin 0 p7 N( Y. |. q, r1 ~$ A5 C T
order 5 loads from OL_orderlist to die //OrderList中的5个全部消失
. N2 H6 E, P, o9 O9 @ create 1 load of load type L_new to P_next //创建一个新的Load( @' K% s/ p2 `* v* d3 A8 r
end
4 O; x5 ]" P3 ^; K B; u: w else//如果OrderList中的托盘数少于4 则进入
. @( P9 h Z6 C3 {0 ]; a. E" U. [ wait to be ordered on OL_ orderlist* e& f6 E3 J" P$ h+ G
end
! K9 g, b1 `( W这段代码不但可以用于构建叠盘系统,还可以应用与装配工位,机器人码垛等! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
评分
-
查看全部评分
|