|
|
0 Q% B6 y/ ~6 f% \我是Automod 初学者,在做某项目仿真时需要仿真叠盘系统,而叠盘系统在Automod中是没有现成的东西可用的,必须通过编程来实现。现在把这个方法和大家分享一下,献丑了,如果有什么更好的办法希望大家一起分享交流。/ S& u6 V1 k- V
首先,在输送线的叠盘系统位置建立一个Queue,在Queue中建立一个Container,这样你的托盘进入到队列才能显示出来。1 H2 n( e5 N/ e
然后 建一个OrderList,详细设置我在这里就不赘述了,你可以每项都试一试看看是什么效果, H/ z- C6 K3 h9 j; t7 o- O* K& O" z% Z
接着我们就可以编程序了,源代码如下:6 g* ?, \8 |2 y6 L( s5 A; @
begin P_process_name arriving# T4 B- A& x6 F+ p8 p
move into Q_queue //load进入队列中$ u+ \, h: A; a% R
if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘
8 U" r% w, v* t- k1 t/ i: j begin 6 z4 e5 q/ l1 F/ ?( R
order 4 loads from OL_orderlist to die //取其中的4个消失5 Y8 a9 ~" L. V- B
set load type to L_new//设置第5个进来的Load为L_new类型的
( b$ _- S; I: P3 t. _ z7 z6 } send to P_next//进入后续流程 8 F9 v' i5 C, G( ^
end' z# n. S. k# ~+ l( h
else//如果OrderList中的托盘数少于4 则进入8 [# s# L5 Y/ `& T* E' W
wait to be ordered on OL_ orderlist
0 L1 E I0 c5 |: G0 h' h, A& Jend
$ q* }- \4 ?% b: l8 }这段代码还可以精简为:
4 {1 G% `0 K. c N* jbegin P_process_name arriving
5 z' }: q) }5 ~; f move into Q_queue //load进入队列中
9 z+ c5 ?, @0 a6 ]; G: K) Y if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘
! Z8 q j8 }; S! z4 i5 q0 L% \1 w begin
" `' x& }% H) @) X: w1 H5 j order 5 loads from OL_orderlist to die //OrderList中的5个全部消失& ^, w1 G1 T! G5 a+ y; P
create 1 load of load type L_new to P_next //创建一个新的Load
7 _2 @3 p$ b' ] end
3 U, S! x2 ^4 ~% _8 t ^$ h else//如果OrderList中的托盘数少于4 则进入- {0 @! M( L# z" R9 J
wait to be ordered on OL_ orderlist
; i# S( X4 ?4 O+ u* i5 N$ Lend
* ~1 H- D* I9 n' R- ?1 K这段代码不但可以用于构建叠盘系统,还可以应用与装配工位,机器人码垛等! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
评分
-
查看全部评分
|