|
|
8 F& O7 c1 ]$ C B& m, B ~我是Automod 初学者,在做某项目仿真时需要仿真叠盘系统,而叠盘系统在Automod中是没有现成的东西可用的,必须通过编程来实现。现在把这个方法和大家分享一下,献丑了,如果有什么更好的办法希望大家一起分享交流。1 ^8 X+ D. F* Z2 U& m( G
首先,在输送线的叠盘系统位置建立一个Queue,在Queue中建立一个Container,这样你的托盘进入到队列才能显示出来。
% Q" ~4 r& Q! a7 U5 H然后 建一个OrderList,详细设置我在这里就不赘述了,你可以每项都试一试看看是什么效果( o) d# R4 ]: A- [
接着我们就可以编程序了,源代码如下:- k. v# {! t* t3 U8 u& n
begin P_process_name arriving
, I9 }* Y+ D! v: y" w" l move into Q_queue //load进入队列中8 ~& D, n: Y' [! ], m. D- P. l
if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘
& V) x2 j }( |, H4 @( ^ begin
. M ]9 f3 B* ^ order 4 loads from OL_orderlist to die //取其中的4个消失
0 V" @0 }: B6 ? I& j8 W% I set load type to L_new//设置第5个进来的Load为L_new类型的. ], k$ g5 J8 Y W; r' `
send to P_next//进入后续流程
: C9 _+ y+ q5 o3 o# \ end
5 |& R1 [- h* S" I& X! \8 R else//如果OrderList中的托盘数少于4 则进入* V/ t' `$ a% ]5 q" ]4 a
wait to be ordered on OL_ orderlist
4 k6 u, d. t4 x- wend
6 j$ P; L$ ]1 Q2 ^5 P G6 c这段代码还可以精简为:
0 f% L& H; s9 D& B# Xbegin P_process_name arriving7 S: |3 ^5 t# p
move into Q_queue //load进入队列中
5 e! b S" V7 V if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘1 v* k' x) G# c* g
begin
* s' K: b' t7 a n2 O9 S3 h order 5 loads from OL_orderlist to die //OrderList中的5个全部消失
2 c" Q1 k+ H' w# }! u7 d( [ create 1 load of load type L_new to P_next //创建一个新的Load
6 p B1 S$ ]: i4 T' J- [ c end/ N5 I! t8 J! I$ N; s
else//如果OrderList中的托盘数少于4 则进入0 y( U- e7 j/ e3 {
wait to be ordered on OL_ orderlist, l8 X$ c* q: X* |
end- J$ x6 P, C% @$ D& A) N
这段代码不但可以用于构建叠盘系统,还可以应用与装配工位,机器人码垛等! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
评分
-
查看全部评分
|