|
|
; V$ W( f* i! H
我是Automod 初学者,在做某项目仿真时需要仿真叠盘系统,而叠盘系统在Automod中是没有现成的东西可用的,必须通过编程来实现。现在把这个方法和大家分享一下,献丑了,如果有什么更好的办法希望大家一起分享交流。
/ {! ?, X% @1 c8 `: D$ G, k* f首先,在输送线的叠盘系统位置建立一个Queue,在Queue中建立一个Container,这样你的托盘进入到队列才能显示出来。
6 Y" T% l- M& l7 X% o然后 建一个OrderList,详细设置我在这里就不赘述了,你可以每项都试一试看看是什么效果) w' q7 k1 \: z* h7 N8 n- J6 r/ g
接着我们就可以编程序了,源代码如下:
0 i" ]; t/ B6 b; Rbegin P_process_name arriving7 v% L: j4 I$ o8 c' ?2 O7 H
move into Q_queue //load进入队列中8 |. g2 @0 C4 ^! h; s6 Z
if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘
' U$ P7 U$ q0 ?, W. S7 ~ begin
3 R& q( a1 {- Q$ z' s order 4 loads from OL_orderlist to die //取其中的4个消失+ S$ i# B7 j, N/ x! y
set load type to L_new//设置第5个进来的Load为L_new类型的& \1 O; c4 \$ L t# k! ]# h
send to P_next//进入后续流程 ' e; z* h3 K4 N' _3 E
end
8 O8 L7 A8 `* J; i2 J, J. e2 d else//如果OrderList中的托盘数少于4 则进入
9 @1 O% k5 p% H wait to be ordered on OL_ orderlist
( q$ x+ @! |3 y4 s% K+ j/ qend2 v* V4 w4 N. n5 h
这段代码还可以精简为:; h6 E" C4 e: @
begin P_process_name arriving3 s, D4 K* S. t: `
move into Q_queue //load进入队列中/ ], B2 o+ x, j* t1 I+ m
if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘
/ B4 q C. D% R0 J8 O begin
% G, B; J6 S( p( }9 \ order 5 loads from OL_orderlist to die //OrderList中的5个全部消失/ n- g; b$ O; R2 h. P8 S5 [! n; {
create 1 load of load type L_new to P_next //创建一个新的Load
0 L$ w0 i6 [7 l! f4 J end
7 h4 S5 c- Z) j* W else//如果OrderList中的托盘数少于4 则进入/ v* h7 G U8 h: n3 g+ {
wait to be ordered on OL_ orderlist! C" z8 Q& O6 f: h
end
. Y4 O6 Y- c9 r这段代码不但可以用于构建叠盘系统,还可以应用与装配工位,机器人码垛等! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
评分
-
查看全部评分
|