|
|
8 d2 U" @* A; X" H8 T4 H; Z, @
我是Automod 初学者,在做某项目仿真时需要仿真叠盘系统,而叠盘系统在Automod中是没有现成的东西可用的,必须通过编程来实现。现在把这个方法和大家分享一下,献丑了,如果有什么更好的办法希望大家一起分享交流。
" t5 A8 u$ m; B" x8 ~首先,在输送线的叠盘系统位置建立一个Queue,在Queue中建立一个Container,这样你的托盘进入到队列才能显示出来。" ]) R8 @% ]$ a9 H/ @- i+ C
然后 建一个OrderList,详细设置我在这里就不赘述了,你可以每项都试一试看看是什么效果
; S W% V ^' ^+ E接着我们就可以编程序了,源代码如下:, ] t6 l9 J9 N0 e
begin P_process_name arriving- [ Z; c M( z$ \
move into Q_queue //load进入队列中
1 T0 ]/ A7 c7 u0 F; V if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘
; c& f" m7 R3 @7 \, E$ @ begin ( m$ i0 V$ @6 o7 \% ]( @. E* e
order 4 loads from OL_orderlist to die //取其中的4个消失
6 F3 _4 [' r/ L/ n) M! E set load type to L_new//设置第5个进来的Load为L_new类型的
8 o! V. o/ {* t/ Q6 `1 o+ Y send to P_next//进入后续流程 ( j% R0 G% H0 m2 A: \* `+ m
end4 ^! |% i& l+ p$ I. H# L" o8 d0 S& I
else//如果OrderList中的托盘数少于4 则进入 _* f: ?9 P! A9 L1 p
wait to be ordered on OL_ orderlist
# I! ^4 q6 n$ M/ aend
% w3 K3 T. k) `( p4 S这段代码还可以精简为:1 ~+ k/ C4 T( E8 n
begin P_process_name arriving' W& J% Y- H* P6 ?
move into Q_queue //load进入队列中
* r' \, F: M. m7 j. W if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘; I5 P: j! V% a, d8 U. h* w
begin
0 x6 [5 D% S: n7 n order 5 loads from OL_orderlist to die //OrderList中的5个全部消失
) J6 G- K7 @8 x* z8 z( q create 1 load of load type L_new to P_next //创建一个新的Load
- V& c# G8 s. V2 n end2 q$ I K0 h5 q7 G7 _
else//如果OrderList中的托盘数少于4 则进入1 N: ?; ^1 o. k" P
wait to be ordered on OL_ orderlist! G' O0 z& Q8 D, {. K5 t
end
1 v/ h/ f6 L( s6 ^8 ^/ x& R这段代码不但可以用于构建叠盘系统,还可以应用与装配工位,机器人码垛等! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
评分
-
查看全部评分
|