|
2 k, w3 w$ z0 u; o
我是Automod 初学者,在做某项目仿真时需要仿真叠盘系统,而叠盘系统在Automod中是没有现成的东西可用的,必须通过编程来实现。现在把这个方法和大家分享一下,献丑了,如果有什么更好的办法希望大家一起分享交流。
9 n: r* @ d0 O/ ~/ c首先,在输送线的叠盘系统位置建立一个Queue,在Queue中建立一个Container,这样你的托盘进入到队列才能显示出来。* x8 D& y# V1 D5 l4 z
然后 建一个OrderList,详细设置我在这里就不赘述了,你可以每项都试一试看看是什么效果
6 r N+ C6 w: }接着我们就可以编程序了,源代码如下:
) R" U+ ^/ E! D/ Mbegin P_process_name arriving
) x* D1 o3 U1 m8 ?( a/ J& u move into Q_queue //load进入队列中. d3 p! U$ X; i% c. W1 v
if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘' u) s2 g3 T* \2 |- b7 M! W
begin
/ o V) ~+ c3 f. e j b order 4 loads from OL_orderlist to die //取其中的4个消失' R8 m1 R# w# X# z" k3 K: g) W: u
set load type to L_new//设置第5个进来的Load为L_new类型的
6 ^: H! h# r! }- ] n! l send to P_next//进入后续流程 / F! F! n4 u. F8 o0 k. y
end
5 S4 \6 j* \, L( f0 k0 A0 X else//如果OrderList中的托盘数少于4 则进入
: n8 l, P' m# O% j wait to be ordered on OL_ orderlist$ h" E; } n$ Y
end
3 L1 o S& _% X, j! u这段代码还可以精简为:
+ }4 D! K, X) Kbegin P_process_name arriving# k! @; _6 S8 E& Z5 C
move into Q_queue //load进入队列中
) M+ ]7 [5 O% V4 I/ m7 v5 c. Q; C; i if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘
5 N1 z* ?: w. k' o0 t. k begin 5 U- Z5 @. w; m. Y
order 5 loads from OL_orderlist to die //OrderList中的5个全部消失2 W* o, n7 }+ d' ~
create 1 load of load type L_new to P_next //创建一个新的Load
! D7 |1 ?- \. d) W# B end' N8 m8 @& d o' |1 s& B" A* K5 M
else//如果OrderList中的托盘数少于4 则进入
/ H% J* v" V7 J- G wait to be ordered on OL_ orderlist
: ?. t. U4 L/ y! q* cend" }* [& |) C, S; n1 H8 C
这段代码不但可以用于构建叠盘系统,还可以应用与装配工位,机器人码垛等! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
评分
-
查看全部评分
|