|
|
: Y N& ?* P- `" H4 z- W
我是Automod 初学者,在做某项目仿真时需要仿真叠盘系统,而叠盘系统在Automod中是没有现成的东西可用的,必须通过编程来实现。现在把这个方法和大家分享一下,献丑了,如果有什么更好的办法希望大家一起分享交流。
5 X6 {' S. F4 |首先,在输送线的叠盘系统位置建立一个Queue,在Queue中建立一个Container,这样你的托盘进入到队列才能显示出来。) k, q+ X& \# q' d d9 B7 Q& `5 U
然后 建一个OrderList,详细设置我在这里就不赘述了,你可以每项都试一试看看是什么效果! ]4 P3 ^1 H1 r* l
接着我们就可以编程序了,源代码如下:* d2 L$ K' W6 I$ \
begin P_process_name arriving
, V$ y' y: n3 h# W/ u' Y move into Q_queue //load进入队列中
$ f u- J1 V* A if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘
- w b7 a v: l* ~. W% l begin " T$ P) g3 V: |
order 4 loads from OL_orderlist to die //取其中的4个消失, f9 E5 F& }3 E7 K& K! ?
set load type to L_new//设置第5个进来的Load为L_new类型的
/ f5 o5 }4 ^6 x9 g) Y send to P_next//进入后续流程
( O. ^% j: r1 t( S+ ~# h end" v" ]: Q' e- g6 C R
else//如果OrderList中的托盘数少于4 则进入
6 {. `1 W8 L Q) \- O wait to be ordered on OL_ orderlist8 b6 F B: y C
end% v5 i/ u# x# H# R. f% ~
这段代码还可以精简为:' T+ p- z4 I0 g7 V" S7 m
begin P_process_name arriving# I4 z l2 v! M: I2 y
move into Q_queue //load进入队列中
$ t. {; ^1 |2 J. @: L1 D if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘5 n* O% J3 ?: C- M$ N6 f+ N# O
begin 3 ^" ^- |. B0 \+ I
order 5 loads from OL_orderlist to die //OrderList中的5个全部消失1 C) a; `; |8 D0 p8 e
create 1 load of load type L_new to P_next //创建一个新的Load/ F; e0 D3 w! F' t# G C
end
0 b6 {) p. a+ f6 D' ^; O. d' ]+ t else//如果OrderList中的托盘数少于4 则进入# o; M. d6 B0 T' {' P9 F3 N% e
wait to be ordered on OL_ orderlist6 @6 ^, n% S3 s- v4 N$ L! S
end7 Z, t ^4 h5 h$ q8 d
这段代码不但可以用于构建叠盘系统,还可以应用与装配工位,机器人码垛等! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
评分
-
查看全部评分
|