|
|
) E6 @4 S! q. u! k; d# \我是Automod 初学者,在做某项目仿真时需要仿真叠盘系统,而叠盘系统在Automod中是没有现成的东西可用的,必须通过编程来实现。现在把这个方法和大家分享一下,献丑了,如果有什么更好的办法希望大家一起分享交流。
, N5 }6 ]; _- N首先,在输送线的叠盘系统位置建立一个Queue,在Queue中建立一个Container,这样你的托盘进入到队列才能显示出来。
6 \6 `3 e3 u6 J" s1 ^然后 建一个OrderList,详细设置我在这里就不赘述了,你可以每项都试一试看看是什么效果% d4 ?) p8 Z) c/ w$ b' g
接着我们就可以编程序了,源代码如下:
+ g6 X, P" H% o/ S) N) \" ]begin P_process_name arriving
' O' M% H4 _! R move into Q_queue //load进入队列中
/ B3 `% D3 M4 D" ^& h, M# C if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘
# i6 J6 ^) s% t" N/ q! [ begin
1 z& I: N+ `3 y8 u! Y% T q order 4 loads from OL_orderlist to die //取其中的4个消失/ V3 }, Y% d+ Y
set load type to L_new//设置第5个进来的Load为L_new类型的5 G- e- t& p( a1 v
send to P_next//进入后续流程 7 a. x: D2 n% l: S; Z8 X0 ]
end& s/ X# N& F" B4 `0 P
else//如果OrderList中的托盘数少于4 则进入
. F) P) J2 u: A' } wait to be ordered on OL_ orderlist" f/ }' [/ L5 b* V* S; v. D0 N; V
end9 A9 H* l/ q( n5 r
这段代码还可以精简为:
5 S7 r( a7 c# ~. e5 g& Kbegin P_process_name arriving
# O5 z( f1 o8 W* ? move into Q_queue //load进入队列中
7 u# F# w0 e- U; J- D* S3 s if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘' {( V! Q9 A" K% F% Y6 @- I
begin
, I" Z" `# p% e1 W5 ~ order 5 loads from OL_orderlist to die //OrderList中的5个全部消失$ e* B9 M$ \; Q- X+ r- W* Y. c
create 1 load of load type L_new to P_next //创建一个新的Load) u4 O' C6 O% f- s2 k6 s
end2 K- x( H# S, ?. j" s- O+ M4 V
else//如果OrderList中的托盘数少于4 则进入* p$ ~1 G& m, |; n5 M8 K- Q! J
wait to be ordered on OL_ orderlist
4 y; t D0 ~$ p6 O' d: kend
) k7 A i( o4 a* O7 K8 c这段代码不但可以用于构建叠盘系统,还可以应用与装配工位,机器人码垛等! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
评分
-
查看全部评分
|