|
|
& Y' y, w. D. y \
我是Automod 初学者,在做某项目仿真时需要仿真叠盘系统,而叠盘系统在Automod中是没有现成的东西可用的,必须通过编程来实现。现在把这个方法和大家分享一下,献丑了,如果有什么更好的办法希望大家一起分享交流。0 X1 i0 g5 P, f
首先,在输送线的叠盘系统位置建立一个Queue,在Queue中建立一个Container,这样你的托盘进入到队列才能显示出来。
# S0 V S8 t8 `2 |" h然后 建一个OrderList,详细设置我在这里就不赘述了,你可以每项都试一试看看是什么效果
0 W! T2 K9 K1 S _: o接着我们就可以编程序了,源代码如下:( d! N7 o" p) j' Z. N! E' _
begin P_process_name arriving( n% Y u9 u0 p2 K. P
move into Q_queue //load进入队列中
6 P @( p' o1 x$ Y% l if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘
0 d1 `/ t5 x+ C: t9 d& l1 U begin
$ e2 D" Q- c& X- u/ q, ^+ N; ^ order 4 loads from OL_orderlist to die //取其中的4个消失
' i y; ]5 o J& e+ J. a& E set load type to L_new//设置第5个进来的Load为L_new类型的
/ T2 G! l9 O& h send to P_next//进入后续流程 K% ~& ~+ L, `3 ?) p
end
2 i% n/ o5 _, i& d# X else//如果OrderList中的托盘数少于4 则进入% H# }/ Q( V' @% O3 |
wait to be ordered on OL_ orderlist. Y3 D. @8 k& V5 X8 \
end- m" a. ~' H$ Q1 R& I7 P1 H
这段代码还可以精简为:4 ~* M4 U9 t0 ~# N# o
begin P_process_name arriving
# |: [0 E! _, B6 O5 x move into Q_queue //load进入队列中
. x' c# D+ |/ F* u: |- T; _. w" b! G if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘
3 U; S' H# ?# F# s9 P begin 0 Z4 z3 j* Z+ B
order 5 loads from OL_orderlist to die //OrderList中的5个全部消失
' u% U9 }6 t( H; M, R& M# ] create 1 load of load type L_new to P_next //创建一个新的Load
" f7 g8 `( a7 r2 c- Q) y end
1 S0 u) ^$ G. h else//如果OrderList中的托盘数少于4 则进入
' N# x, g% l, Z! p( I wait to be ordered on OL_ orderlist' x! u" o Q0 i
end- w+ n x- f8 r. l( |
这段代码不但可以用于构建叠盘系统,还可以应用与装配工位,机器人码垛等! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
评分
-
查看全部评分
|