|
|
+ l! n& J7 C0 o `7 T* U* W我是Automod 初学者,在做某项目仿真时需要仿真叠盘系统,而叠盘系统在Automod中是没有现成的东西可用的,必须通过编程来实现。现在把这个方法和大家分享一下,献丑了,如果有什么更好的办法希望大家一起分享交流。
0 ]$ F( G2 O6 V' E( V首先,在输送线的叠盘系统位置建立一个Queue,在Queue中建立一个Container,这样你的托盘进入到队列才能显示出来。6 R+ Z+ ^" @- O
然后 建一个OrderList,详细设置我在这里就不赘述了,你可以每项都试一试看看是什么效果
/ s; q. C/ p' ]$ j接着我们就可以编程序了,源代码如下:# X$ Y7 P/ |" w" K
begin P_process_name arriving
5 O3 F# T. r! N( p2 p7 b9 [1 |9 } move into Q_queue //load进入队列中4 J4 C. m) m) u
if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘- p3 k& t4 V% y5 ]6 O8 U
begin $ T3 l, C9 e z( P5 i
order 4 loads from OL_orderlist to die //取其中的4个消失$ p; Q w( ~ n! M
set load type to L_new//设置第5个进来的Load为L_new类型的/ q- o6 Z2 n! Y1 X% `, Z% g
send to P_next//进入后续流程
' ?( S% U, k; g- y4 K end. \5 F1 C' {* |
else//如果OrderList中的托盘数少于4 则进入2 k8 x6 o) Z$ }, K L
wait to be ordered on OL_ orderlist
. d7 H* S7 b4 N- Wend2 {- k0 ]4 V. D) T: C5 |8 R
这段代码还可以精简为: g9 q) A9 V. Z9 s" a0 N
begin P_process_name arriving
% j ^* ]% K9 Z move into Q_queue //load进入队列中5 J% w) e0 g" A& @" C
if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘1 r' j0 m5 q: E2 }' f
begin : K8 |; g+ X/ O, p
order 5 loads from OL_orderlist to die //OrderList中的5个全部消失
6 {" G: i' r9 c" G& W create 1 load of load type L_new to P_next //创建一个新的Load
4 M' [( k& a) j0 _; U4 O- s end
3 u1 A- N/ X8 ^. J# r else//如果OrderList中的托盘数少于4 则进入
- A& s4 S5 K. h3 `! ?# n wait to be ordered on OL_ orderlist
! p: p. ]7 I( m) }5 |( W1 Xend
3 m: Q1 o) S7 g1 z5 z这段代码不但可以用于构建叠盘系统,还可以应用与装配工位,机器人码垛等! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
评分
-
查看全部评分
|