|
|
# Z4 z! T: S# y+ E
我是Automod 初学者,在做某项目仿真时需要仿真叠盘系统,而叠盘系统在Automod中是没有现成的东西可用的,必须通过编程来实现。现在把这个方法和大家分享一下,献丑了,如果有什么更好的办法希望大家一起分享交流。
& n( I' r$ V( O" P, N/ j, \首先,在输送线的叠盘系统位置建立一个Queue,在Queue中建立一个Container,这样你的托盘进入到队列才能显示出来。
2 ? t' w: d; }! X4 |. g然后 建一个OrderList,详细设置我在这里就不赘述了,你可以每项都试一试看看是什么效果
" X% U5 k& F+ M接着我们就可以编程序了,源代码如下:( \' e) h' {! u" F2 S3 u
begin P_process_name arriving* o b; E* j2 p$ \2 S% A
move into Q_queue //load进入队列中
7 E2 t; t( Q/ f2 {% N2 v if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘
, x; {4 g8 @( @, T: h begin - ]4 j& z6 j: X9 Y
order 4 loads from OL_orderlist to die //取其中的4个消失
$ ^ Q5 \3 H w( L- x% M$ `' | set load type to L_new//设置第5个进来的Load为L_new类型的
% B% w& c: m; m" p% t6 d* B# b+ i send to P_next//进入后续流程
" z" {& d: ^6 {1 V: D end
9 h7 `/ r4 E& s0 r1 p6 j. a( X0 u else//如果OrderList中的托盘数少于4 则进入
) r+ w, x* ]$ S+ ` wait to be ordered on OL_ orderlist
- h8 i8 P; R' x! X; Yend
& V. l; }0 \8 {7 ~这段代码还可以精简为:, D x: |5 ]) |* @3 h
begin P_process_name arriving. A3 A% i0 M" a2 R) K5 m8 G
move into Q_queue //load进入队列中2 h. e) p7 v {4 T9 i7 i
if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘
# n/ `) M, A& V" t begin 7 P( m1 U) s& h; E: B( K6 B7 }
order 5 loads from OL_orderlist to die //OrderList中的5个全部消失# y) H! b4 x& y! P! @
create 1 load of load type L_new to P_next //创建一个新的Load
w* s# d& r4 I8 M; a end/ s: |9 D; W8 W j- I! U/ w( T
else//如果OrderList中的托盘数少于4 则进入4 B; J" x! c$ ]! d0 v( X' d
wait to be ordered on OL_ orderlist# e& u9 O: H \( I$ o, `
end) d7 k$ v9 D* A6 O( G) s; L. ?. A
这段代码不但可以用于构建叠盘系统,还可以应用与装配工位,机器人码垛等! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
评分
-
查看全部评分
|