|
|
' k" J f: L5 f$ T, `+ j) _
我是Automod 初学者,在做某项目仿真时需要仿真叠盘系统,而叠盘系统在Automod中是没有现成的东西可用的,必须通过编程来实现。现在把这个方法和大家分享一下,献丑了,如果有什么更好的办法希望大家一起分享交流。% X1 C8 h4 \. Y# A
首先,在输送线的叠盘系统位置建立一个Queue,在Queue中建立一个Container,这样你的托盘进入到队列才能显示出来。
: r2 o& ?/ A' I- O然后 建一个OrderList,详细设置我在这里就不赘述了,你可以每项都试一试看看是什么效果
- Q5 L. i0 v, O" w4 K) g接着我们就可以编程序了,源代码如下:4 j8 `3 [5 y/ w/ E: I
begin P_process_name arriving
% u( X( `, L. V" D! f. S move into Q_queue //load进入队列中* z% a! b9 s3 m! `1 }
if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘. w5 G6 E/ n, _, V0 z
begin + @2 ^1 i2 d! t# F) P+ O1 W
order 4 loads from OL_orderlist to die //取其中的4个消失
+ X7 F, d" \' g$ J set load type to L_new//设置第5个进来的Load为L_new类型的- i! ^1 ~7 {6 c
send to P_next//进入后续流程 |& L9 t( q- K/ p" E
end- f' K1 i0 k# z/ j T( W# W- F
else//如果OrderList中的托盘数少于4 则进入
9 u& R4 ]' n: f! I wait to be ordered on OL_ orderlist
4 h4 C% o/ g0 H0 |( @3 j6 V! U. S5 Dend; |" t. Y" m' S, S
这段代码还可以精简为:$ F4 `5 u" E K) M2 ~) B I
begin P_process_name arriving. ^; u ?7 A& Q
move into Q_queue //load进入队列中
. f5 l1 Z' k X" U' h, M4 `1 c if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘0 v1 E) y% |0 l/ |" A4 k7 [
begin
e* b8 z! I& X. ?+ } order 5 loads from OL_orderlist to die //OrderList中的5个全部消失* T2 C, g4 t' R8 S! a3 h
create 1 load of load type L_new to P_next //创建一个新的Load
+ ?9 C% I- R' j- `0 k& |6 F end w( o. X3 V7 E4 _( u4 p: `9 [% l
else//如果OrderList中的托盘数少于4 则进入
3 M8 t- _: u' x+ Q, D* p wait to be ordered on OL_ orderlist
! C1 g, y0 ~* _4 [end* r; v: l4 z& ?9 N; G O: b$ V3 E
这段代码不但可以用于构建叠盘系统,还可以应用与装配工位,机器人码垛等! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
评分
-
查看全部评分
|