|
|
& h4 `" J5 @2 n% B+ H7 A
我是Automod 初学者,在做某项目仿真时需要仿真叠盘系统,而叠盘系统在Automod中是没有现成的东西可用的,必须通过编程来实现。现在把这个方法和大家分享一下,献丑了,如果有什么更好的办法希望大家一起分享交流。
V5 F; @% D' u- ~首先,在输送线的叠盘系统位置建立一个Queue,在Queue中建立一个Container,这样你的托盘进入到队列才能显示出来。4 u2 {3 ^) z- c: K) D$ x) M
然后 建一个OrderList,详细设置我在这里就不赘述了,你可以每项都试一试看看是什么效果) w; g% X, y# p, M
接着我们就可以编程序了,源代码如下:+ c: `: @: g2 g4 b, f, V- N3 f
begin P_process_name arriving6 X3 W# _7 h& T1 L8 n5 R' h4 E; L
move into Q_queue //load进入队列中. E- K9 t6 }) ?
if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘$ V; Z, K" ]8 v3 b% W) R
begin ! t2 _' b# Q% w* E% c" w
order 4 loads from OL_orderlist to die //取其中的4个消失
1 s# [) V6 c7 l6 a' z+ K set load type to L_new//设置第5个进来的Load为L_new类型的
5 p5 K1 M+ @: x, i7 y, y! n- M send to P_next//进入后续流程 " u( I8 H, _) V$ c3 [. `2 v: Y
end
- d q& ]' I. }- g: t! ~+ t$ |& k else//如果OrderList中的托盘数少于4 则进入- J- \" Q8 x; k. y
wait to be ordered on OL_ orderlist2 y$ G4 ~+ E1 R# M) w5 |- A
end
' q$ W6 X, j x0 ]: B2 u6 i这段代码还可以精简为:
' N! B# g# Z! Jbegin P_process_name arriving- E7 d& Z$ t# e |( L
move into Q_queue //load进入队列中
- e* [7 |, D0 b' P3 R, B1 ? if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘
: j- M! Z& o+ B1 {+ k begin 9 e( s6 h; _) b! I
order 5 loads from OL_orderlist to die //OrderList中的5个全部消失2 P! ?2 @; u3 w
create 1 load of load type L_new to P_next //创建一个新的Load
. H* |$ T4 A* Z% [! K2 H: N' R end
* u2 }4 Q/ R1 [+ g* I, S) x else//如果OrderList中的托盘数少于4 则进入) t! l- c7 A3 m4 ~) g) I( G
wait to be ordered on OL_ orderlist4 I, q5 |, I1 o; @! _! N
end. t# F: }$ u, ?0 M
这段代码不但可以用于构建叠盘系统,还可以应用与装配工位,机器人码垛等! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
评分
-
查看全部评分
|