|
|
6 \( T% ~% D3 P! O# T8 v3 S( A" o
我是Automod 初学者,在做某项目仿真时需要仿真叠盘系统,而叠盘系统在Automod中是没有现成的东西可用的,必须通过编程来实现。现在把这个方法和大家分享一下,献丑了,如果有什么更好的办法希望大家一起分享交流。
% M9 f# j! I j" @1 B$ e首先,在输送线的叠盘系统位置建立一个Queue,在Queue中建立一个Container,这样你的托盘进入到队列才能显示出来。
. ]' `8 \5 f: t1 _然后 建一个OrderList,详细设置我在这里就不赘述了,你可以每项都试一试看看是什么效果4 p# h% `7 d% x
接着我们就可以编程序了,源代码如下:
: X# r4 B3 l4 `' Bbegin P_process_name arriving
: W7 Y7 h0 p; a L move into Q_queue //load进入队列中
8 [0 l) j* o6 i* G+ C$ a/ ]: X if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘
2 l4 J; k" h( c4 Y" z6 @ begin
/ ]3 Y0 ]. U5 S: ?/ ^7 [# N3 V order 4 loads from OL_orderlist to die //取其中的4个消失
0 o9 _( s/ I! a S6 P set load type to L_new//设置第5个进来的Load为L_new类型的
% W( u" Z9 A* Y: U v4 d" i) T/ q send to P_next//进入后续流程
$ u3 H# `2 T2 C end
( E; V% ?& X' E else//如果OrderList中的托盘数少于4 则进入
0 p" ]8 e2 r; { Z/ H) I wait to be ordered on OL_ orderlist/ `+ P; U7 q7 [+ C2 T
end
' A& a5 h& ^* X* Z+ ^; m0 t这段代码还可以精简为:
, K; V- J% E% u- h' F, obegin P_process_name arriving$ M; n0 X6 ]$ A( V w% n0 ^
move into Q_queue //load进入队列中
6 M- ^5 g5 {- ?2 `% I2 f( ]: _' t* i if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘4 ?$ O& _$ \; k$ u6 v
begin
+ m+ Q+ ~2 F; _0 s5 w C order 5 loads from OL_orderlist to die //OrderList中的5个全部消失' B/ o* x2 w1 G# z! e" R
create 1 load of load type L_new to P_next //创建一个新的Load
( y1 j. ?( N- b4 a/ w9 \9 _: {# k( L2 y end
, F! q% y( D2 J else//如果OrderList中的托盘数少于4 则进入
9 ~% x* z9 U. T, x wait to be ordered on OL_ orderlist% g5 e$ R& N* k
end- ~6 j' y2 b6 F- v( h
这段代码不但可以用于构建叠盘系统,还可以应用与装配工位,机器人码垛等! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
评分
-
查看全部评分
|