|
& `3 ~4 v2 |0 L5 m/ V; z6 p我是Automod 初学者,在做某项目仿真时需要仿真叠盘系统,而叠盘系统在Automod中是没有现成的东西可用的,必须通过编程来实现。现在把这个方法和大家分享一下,献丑了,如果有什么更好的办法希望大家一起分享交流。
0 Q+ j. D7 I9 N% C; {首先,在输送线的叠盘系统位置建立一个Queue,在Queue中建立一个Container,这样你的托盘进入到队列才能显示出来。
: t. J8 E& V, D; j, k. @然后 建一个OrderList,详细设置我在这里就不赘述了,你可以每项都试一试看看是什么效果
; a; M$ @& F q7 X( B q, i接着我们就可以编程序了,源代码如下:
- Y! d ~/ h% ?& Abegin P_process_name arriving
7 N3 r; F# q4 C( I- ? move into Q_queue //load进入队列中! Q' M% k4 T1 G
if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘
6 y/ s* F! D' K! e# a4 b2 U begin
$ J; J/ z) s7 S7 E. d9 y; O, H order 4 loads from OL_orderlist to die //取其中的4个消失. O2 \7 r ~9 K* }& d
set load type to L_new//设置第5个进来的Load为L_new类型的
9 P' E& s% C( {, B+ n! C send to P_next//进入后续流程
T3 z, ]2 r+ q8 o% J end
. ], E9 w! o9 S8 [ else//如果OrderList中的托盘数少于4 则进入6 h: [, n* Q* O; i
wait to be ordered on OL_ orderlist
' E9 l/ _; v. W4 H8 T- Y+ `" Pend
" u1 O7 k! ?3 L( C/ x) ^# i这段代码还可以精简为:
: h0 V% ?4 U% Z I0 {9 Ubegin P_process_name arriving9 f4 t/ j6 r5 p% f: n. f' x
move into Q_queue //load进入队列中
1 O; h/ ^0 w3 Z/ c- l if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘# m3 m, O$ P8 `1 g! m
begin
) c2 z" C/ Y' g. s! i order 5 loads from OL_orderlist to die //OrderList中的5个全部消失
, Q9 X7 ?: e; S1 u create 1 load of load type L_new to P_next //创建一个新的Load% |7 V& e3 H& d0 g8 W5 r0 c
end
" n. t. B% u: y) Q8 a5 ]9 {- j1 u else//如果OrderList中的托盘数少于4 则进入
0 P$ y; {: n. |0 V) J) n wait to be ordered on OL_ orderlist/ N# [8 N; o+ N/ l+ R( i$ `" Z
end T% s6 A* `% ?6 M% R- H
这段代码不但可以用于构建叠盘系统,还可以应用与装配工位,机器人码垛等! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
评分
-
查看全部评分
|