|
' x* S0 ^7 M3 b& z, y1 e* }" I我是Automod 初学者,在做某项目仿真时需要仿真叠盘系统,而叠盘系统在Automod中是没有现成的东西可用的,必须通过编程来实现。现在把这个方法和大家分享一下,献丑了,如果有什么更好的办法希望大家一起分享交流。
6 O' i5 O L1 F! W$ S首先,在输送线的叠盘系统位置建立一个Queue,在Queue中建立一个Container,这样你的托盘进入到队列才能显示出来。
7 C" @& a# z2 ^' L4 _' X6 @9 ]6 M3 y然后 建一个OrderList,详细设置我在这里就不赘述了,你可以每项都试一试看看是什么效果1 B j# |. Z# `- K! ], |
接着我们就可以编程序了,源代码如下:9 }9 ]( \2 e0 F' o# D
begin P_process_name arriving
- q1 @! M+ R3 G move into Q_queue //load进入队列中
8 z# t2 q! X7 N/ A( q$ V6 g if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘
9 w# i" e2 V( }" y begin
5 e$ ]' N- c% m order 4 loads from OL_orderlist to die //取其中的4个消失- ]8 ?6 L' c! `3 M- l9 _' b2 P
set load type to L_new//设置第5个进来的Load为L_new类型的5 l4 F. t) u- L3 A
send to P_next//进入后续流程 : o& b' M/ ]. T d
end/ X0 U9 T- E6 ?! m% P
else//如果OrderList中的托盘数少于4 则进入
6 @. {/ O& m4 k5 r0 v' j wait to be ordered on OL_ orderlist4 D) X7 z# _0 a! l- E
end
7 s# |# o8 V) X& M& d这段代码还可以精简为:4 [' ^- m% l- V0 u, n" z' y
begin P_process_name arriving0 O1 o1 n' G }' T; X
move into Q_queue //load进入队列中6 C* Y! ~6 I% a' m
if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘
0 N# ?% }5 C' H' V4 S# b begin
/ I4 Z! z( p! h6 f$ Y3 J order 5 loads from OL_orderlist to die //OrderList中的5个全部消失4 A( `% G* m- A
create 1 load of load type L_new to P_next //创建一个新的Load
- o9 f2 H6 e1 T8 B: P# h# [ end: c6 Z0 z& S6 y4 R: C6 g
else//如果OrderList中的托盘数少于4 则进入8 s. i$ `$ R8 z+ t1 j5 {
wait to be ordered on OL_ orderlist# r; L! @* w; }, `+ Z
end
0 i8 y5 d. |& D9 y这段代码不但可以用于构建叠盘系统,还可以应用与装配工位,机器人码垛等! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
评分
-
查看全部评分
|