|
|
7 z1 I" P, J; |* q6 P
我是Automod 初学者,在做某项目仿真时需要仿真叠盘系统,而叠盘系统在Automod中是没有现成的东西可用的,必须通过编程来实现。现在把这个方法和大家分享一下,献丑了,如果有什么更好的办法希望大家一起分享交流。
5 A Z* E' e6 L' @1 l: D首先,在输送线的叠盘系统位置建立一个Queue,在Queue中建立一个Container,这样你的托盘进入到队列才能显示出来。
. C- Y1 v% ]# F5 D然后 建一个OrderList,详细设置我在这里就不赘述了,你可以每项都试一试看看是什么效果
) U4 f; V! q; Y4 u: ?接着我们就可以编程序了,源代码如下:+ V( A u8 [# f8 X1 B9 f
begin P_process_name arriving" n4 O S* A/ {# L) i
move into Q_queue //load进入队列中, @9 o S# ~0 d" P& [
if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘
) J5 k. v" }7 \8 } a: Y begin 9 n) X* Z! b, X% \' a
order 4 loads from OL_orderlist to die //取其中的4个消失5 w: f; g$ W7 ]
set load type to L_new//设置第5个进来的Load为L_new类型的+ J# y) X+ u' H9 S
send to P_next//进入后续流程 " j( j5 M; l" ?7 G" H7 V( A, v
end' G4 ~ t4 G& M% J& m7 Y7 A2 j
else//如果OrderList中的托盘数少于4 则进入; V" _9 a- C* j) P1 f
wait to be ordered on OL_ orderlist
2 s. t" b' U) Uend
" } L+ P! ^& @5 ]( e! a* s4 u这段代码还可以精简为:
$ }9 v( ~8 S6 W4 ]4 Z, }& e4 Wbegin P_process_name arriving
6 E) D4 |8 q1 h+ V5 M3 W4 } move into Q_queue //load进入队列中( B; X$ I% q8 Y, u2 D8 s# o5 C9 T
if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘
* _$ m4 K: h7 n! o begin
: t0 O- _+ N2 U0 r8 e order 5 loads from OL_orderlist to die //OrderList中的5个全部消失3 f3 d4 ^5 n0 M8 B+ K6 l2 R0 ]/ B5 B
create 1 load of load type L_new to P_next //创建一个新的Load
1 U! r( _3 s5 y( S; _ end
* V2 |7 N4 [% T! x+ Z: {3 q else//如果OrderList中的托盘数少于4 则进入
1 \- c3 t- ?, u5 F; K% p9 a wait to be ordered on OL_ orderlist4 f' X* D4 X- \; y2 B6 @% ~
end
7 m% v+ u$ d+ X8 c3 t R这段代码不但可以用于构建叠盘系统,还可以应用与装配工位,机器人码垛等! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
评分
-
查看全部评分
|