|
|
6 R: [2 g8 F: x9 }. q1 r我是Automod 初学者,在做某项目仿真时需要仿真叠盘系统,而叠盘系统在Automod中是没有现成的东西可用的,必须通过编程来实现。现在把这个方法和大家分享一下,献丑了,如果有什么更好的办法希望大家一起分享交流。
2 w6 X U" x: o1 f# w! p! [6 Q首先,在输送线的叠盘系统位置建立一个Queue,在Queue中建立一个Container,这样你的托盘进入到队列才能显示出来。
+ G1 M- _8 L! P2 V0 O然后 建一个OrderList,详细设置我在这里就不赘述了,你可以每项都试一试看看是什么效果- v" t J. l5 Q; h. Z
接着我们就可以编程序了,源代码如下: R5 K: [* A0 _; ~* ]" R
begin P_process_name arriving
! F* w" O6 q' C/ l/ q0 q' K move into Q_queue //load进入队列中
; ~; e: g9 I, W6 W; S if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘
* _$ N- x9 @+ C; S begin 1 Q* B* E0 Y/ g1 c
order 4 loads from OL_orderlist to die //取其中的4个消失* n( O/ Q0 f7 H e9 {! w* x
set load type to L_new//设置第5个进来的Load为L_new类型的
$ s. h+ t+ O5 ^) ^" @ send to P_next//进入后续流程
6 Y. U+ j7 }6 `3 t" T2 Q/ s: b end
1 m% Q% Y0 F- j/ l5 W else//如果OrderList中的托盘数少于4 则进入
4 M, D/ H( r% i$ @& ?3 t. T wait to be ordered on OL_ orderlist
/ [" \ p% L2 {0 [* qend3 J' ?0 C% b( M1 @* V
这段代码还可以精简为:, v5 s% }: H7 d& T0 ?9 j3 O8 ]1 {/ ]
begin P_process_name arriving) }( ~- P Q8 D) i. J
move into Q_queue //load进入队列中$ T6 h% U- E2 x- }# R1 Q
if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘- n5 y; b5 S8 M- E% _8 X! m
begin
9 z; @: n0 E# z- u$ Z; M. y order 5 loads from OL_orderlist to die //OrderList中的5个全部消失
0 N! I( v/ l/ R N- u& o create 1 load of load type L_new to P_next //创建一个新的Load4 h- i$ w( g+ s
end
j' b2 J6 H4 h else//如果OrderList中的托盘数少于4 则进入
h* G& g) j$ }! P: Z i wait to be ordered on OL_ orderlist: z0 J" }0 ^! ` w
end
" v9 m' Y( ~5 U; s: x7 v! f+ s) o7 }这段代码不但可以用于构建叠盘系统,还可以应用与装配工位,机器人码垛等! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
评分
-
查看全部评分
|