|
|
, U, h! C3 b/ y5 w. Q我是Automod 初学者,在做某项目仿真时需要仿真叠盘系统,而叠盘系统在Automod中是没有现成的东西可用的,必须通过编程来实现。现在把这个方法和大家分享一下,献丑了,如果有什么更好的办法希望大家一起分享交流。
8 H& s+ b* O0 [3 L1 ^首先,在输送线的叠盘系统位置建立一个Queue,在Queue中建立一个Container,这样你的托盘进入到队列才能显示出来。
" C* S& {8 |/ W然后 建一个OrderList,详细设置我在这里就不赘述了,你可以每项都试一试看看是什么效果# M. X0 f" ~/ H( _& D# v2 g
接着我们就可以编程序了,源代码如下:
+ V) k( Y" u8 m8 W9 H) W( p. O/ @begin P_process_name arriving+ |( C; _+ `* H
move into Q_queue //load进入队列中. o& L: q$ b2 m. b3 U" q! _
if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘
0 {3 p+ ~* j7 d) M/ d' i( h begin 4 F' ^- y$ ^- M) P3 b
order 4 loads from OL_orderlist to die //取其中的4个消失1 u- _" G) E+ L( I! _% K& i
set load type to L_new//设置第5个进来的Load为L_new类型的
2 X! E. E5 \/ w) c. S: ` send to P_next//进入后续流程 - y3 k. S8 z$ A2 i, o6 L9 w
end
) {! h! T/ v( G% ` else//如果OrderList中的托盘数少于4 则进入
& |3 \4 o% B# t0 o wait to be ordered on OL_ orderlist
$ M# q3 P# j8 f" T+ Eend
) s% l3 |+ w' b6 D这段代码还可以精简为:& I) a) `3 u$ n% K7 ?
begin P_process_name arriving" E1 _4 v: {; u
move into Q_queue //load进入队列中9 o- B+ E$ s" s
if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘
% x7 U! W* B0 u9 e/ K I begin 4 c4 w G, p4 p% _( |) }0 x
order 5 loads from OL_orderlist to die //OrderList中的5个全部消失
4 W2 b+ n% A2 @ f* D# J* V# d create 1 load of load type L_new to P_next //创建一个新的Load& j8 D, T# h, X! F" ~! }+ N) ?
end
; r2 k7 i5 d( t/ x/ B, S else//如果OrderList中的托盘数少于4 则进入0 ^, H! W% J2 }- z3 T* _% o
wait to be ordered on OL_ orderlist' U y+ D: L% E
end
6 F7 T5 y. L; y" @这段代码不但可以用于构建叠盘系统,还可以应用与装配工位,机器人码垛等! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
评分
-
查看全部评分
|