|
|
; n- O, j B; ]+ }我是Automod 初学者,在做某项目仿真时需要仿真叠盘系统,而叠盘系统在Automod中是没有现成的东西可用的,必须通过编程来实现。现在把这个方法和大家分享一下,献丑了,如果有什么更好的办法希望大家一起分享交流。! V, o/ R2 n# v$ O% @
首先,在输送线的叠盘系统位置建立一个Queue,在Queue中建立一个Container,这样你的托盘进入到队列才能显示出来。+ d. g- F$ K/ \6 a$ g( ~4 j! W
然后 建一个OrderList,详细设置我在这里就不赘述了,你可以每项都试一试看看是什么效果
1 w3 @6 s8 d+ s: A* [/ v接着我们就可以编程序了,源代码如下:) c" w) P5 N* o/ b% j2 U
begin P_process_name arriving! s" F$ [! a2 \: [! e ?
move into Q_queue //load进入队列中
/ c/ p7 t/ ?$ z- m0 b if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘
$ ~ f( f0 Z4 F2 n$ U& o begin
; y9 n6 m3 B& D4 w- i order 4 loads from OL_orderlist to die //取其中的4个消失
3 v" Q$ |7 n% h9 ^% L set load type to L_new//设置第5个进来的Load为L_new类型的
Y+ r. J+ b$ C; I send to P_next//进入后续流程
: J1 p8 i" ~0 d' E, i$ G4 U4 G end) d* I: M0 I6 T: O6 k# C0 ~# T2 n$ u
else//如果OrderList中的托盘数少于4 则进入
0 c; D- @% A7 \* e l wait to be ordered on OL_ orderlist
; e; i( l( r1 c' K2 t9 }end5 k8 g7 ?' }# ^6 c' U8 P& ]
这段代码还可以精简为:. {8 m4 I6 H) z/ A
begin P_process_name arriving5 L p9 F. R9 b6 Z$ O3 A, \
move into Q_queue //load进入队列中
0 \0 c' Y. ~1 Y if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘: h, t; K2 r, o+ t9 T& C
begin
. v0 x3 _) H+ G: D l, u+ Q- `! Z order 5 loads from OL_orderlist to die //OrderList中的5个全部消失' b; ?0 ^+ e9 U# p$ |) p+ F
create 1 load of load type L_new to P_next //创建一个新的Load
l) h" _% i: p9 K7 V8 g end& _' q" p J1 H6 r9 |7 I# m) I% x
else//如果OrderList中的托盘数少于4 则进入
7 y& U: B. i) h' k wait to be ordered on OL_ orderlist: y8 r4 F P+ R, m' a
end
# `! K3 a/ A0 ^% ?0 ?这段代码不但可以用于构建叠盘系统,还可以应用与装配工位,机器人码垛等! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
评分
-
查看全部评分
|