|
|
' @ w1 l! _ E3 b
我是Automod 初学者,在做某项目仿真时需要仿真叠盘系统,而叠盘系统在Automod中是没有现成的东西可用的,必须通过编程来实现。现在把这个方法和大家分享一下,献丑了,如果有什么更好的办法希望大家一起分享交流。
$ a1 u5 o3 s0 W) u, G2 t首先,在输送线的叠盘系统位置建立一个Queue,在Queue中建立一个Container,这样你的托盘进入到队列才能显示出来。; c2 T5 x5 N- E4 o1 f
然后 建一个OrderList,详细设置我在这里就不赘述了,你可以每项都试一试看看是什么效果
. D4 T; A) { F3 i- E接着我们就可以编程序了,源代码如下:* d7 m9 C3 U k
begin P_process_name arriving
) a1 c2 v+ `- _! G. U4 p3 b& ?, k move into Q_queue //load进入队列中
9 ^+ J6 ~) M2 N/ n- X4 X if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘
6 H/ K) y& F- Q$ A begin 5 W+ ?6 \; R2 ]3 x
order 4 loads from OL_orderlist to die //取其中的4个消失
% o& J) R, d+ O7 f F set load type to L_new//设置第5个进来的Load为L_new类型的 O0 `+ F3 S) {* U
send to P_next//进入后续流程 ' {" ^ p4 s4 q% M
end: C* s* }* e0 }7 ?
else//如果OrderList中的托盘数少于4 则进入
5 @) F3 }9 ~+ x+ ^( _' d wait to be ordered on OL_ orderlist7 N d; j' c/ O
end
9 w8 ]' E& n" g: ]/ i3 s9 N这段代码还可以精简为:
! X6 \/ C8 `3 W- |% H) c/ Abegin P_process_name arriving+ c% Q% ~& n/ b/ L1 b
move into Q_queue //load进入队列中
- P$ C% K4 l' r: @% p6 T8 d if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘
3 \8 [' }# [# T+ i begin 0 c' n6 H( T% Z3 I; A, V+ D
order 5 loads from OL_orderlist to die //OrderList中的5个全部消失
2 E+ w) h; O! p create 1 load of load type L_new to P_next //创建一个新的Load4 ]. T O/ a! O, B6 c
end
4 q1 y( E3 S( i% ~ else//如果OrderList中的托盘数少于4 则进入4 x& D, l! z$ h- n* S2 |3 J
wait to be ordered on OL_ orderlist
% d) U# y- E8 qend
3 P1 Z* C: g4 ]这段代码不但可以用于构建叠盘系统,还可以应用与装配工位,机器人码垛等! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
评分
-
查看全部评分
|