|
|
+ j" n( A: L' H6 m我是Automod 初学者,在做某项目仿真时需要仿真叠盘系统,而叠盘系统在Automod中是没有现成的东西可用的,必须通过编程来实现。现在把这个方法和大家分享一下,献丑了,如果有什么更好的办法希望大家一起分享交流。" V1 Q9 v2 _: {5 W$ V
首先,在输送线的叠盘系统位置建立一个Queue,在Queue中建立一个Container,这样你的托盘进入到队列才能显示出来。
5 i! }/ J" ~: g5 l/ A- u' E然后 建一个OrderList,详细设置我在这里就不赘述了,你可以每项都试一试看看是什么效果
* v" l& f) B8 e: t% ^- u6 Z接着我们就可以编程序了,源代码如下:$ g+ R, Z) q+ H* M- K
begin P_process_name arriving3 W3 X, h; p- e' m
move into Q_queue //load进入队列中
5 d- {( D. ]6 _# H( V if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘
' x3 M1 S8 U9 r+ S# i3 ` begin " k ]- P/ O% d4 H
order 4 loads from OL_orderlist to die //取其中的4个消失8 |% ?! `3 R' t3 F; s7 F
set load type to L_new//设置第5个进来的Load为L_new类型的 E8 B! F$ G% t* G& n
send to P_next//进入后续流程
* s4 |5 l+ j! X3 H! `- M end
* z _" _1 v+ ^ else//如果OrderList中的托盘数少于4 则进入7 N1 _. F1 ]3 k( z
wait to be ordered on OL_ orderlist3 ? S6 Q1 L. f3 p8 j% X
end; Q7 c' u: Q+ E7 ]+ C/ H' {
这段代码还可以精简为:5 A; N; W5 R l, B* N
begin P_process_name arriving7 ]5 g* r L- _4 p
move into Q_queue //load进入队列中+ J& ?: p/ I. d) r
if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘/ m( B2 x& D/ C9 U
begin ! K. G& l6 p- U3 [+ g
order 5 loads from OL_orderlist to die //OrderList中的5个全部消失5 f) |1 [' J2 S5 d( n8 d
create 1 load of load type L_new to P_next //创建一个新的Load
# Z. C, N$ i% V( O end
E/ P+ {2 W+ {2 |8 ~! q else//如果OrderList中的托盘数少于4 则进入
" z. ]6 ~4 U; w# V( v# h1 ] wait to be ordered on OL_ orderlist& M# S( l \8 \8 A9 @. `
end
, L: f3 J& G% m2 l这段代码不但可以用于构建叠盘系统,还可以应用与装配工位,机器人码垛等! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
评分
-
查看全部评分
|