设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7197|回复: 2

[原创] 用OrderList与Queue结合实现叠盘系统的方法分享

  [复制链接]
发表于 2015-5-18 21:21:01 | 显示全部楼层 |阅读模式

& d3 |( V, [0 K- N) ]; L, Z我是Automod 初学者,在做某项目仿真时需要仿真叠盘系统,而叠盘系统在Automod中是没有现成的东西可用的,必须通过编程来实现。现在把这个方法和大家分享一下,献丑了,如果有什么更好的办法希望大家一起分享交流。
3 D/ `( v% s5 L6 |# |首先,在输送线的叠盘系统位置建立一个Queue,在Queue中建立一个Container,这样你的托盘进入到队列才能显示出来。/ e" Q# Y7 W; I
然后 建一个OrderList,详细设置我在这里就不赘述了,你可以每项都试一试看看是什么效果1 Y* o% G/ V3 D5 C4 S4 P
接着我们就可以编程序了,源代码如下:
: {' u6 \% R1 }' I6 Abegin P_process_name arriving' G( n& _* @  j# A0 {3 g6 ?# s1 N; y
           move into Q_queue        //load进入队列中4 }( ?9 C+ a! j9 p, ~! ?
        if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘( D4 m- z9 z/ |* K2 U$ @. v
         begin         6 O# Y+ l, b; n# Q
                order 4 loads from OL_orderlist to die //取其中的4个消失, M; C; }3 c. A8 F, |
                set load type to L_new//设置第5个进来的Load为L_new类型的
0 ?) p8 y" g3 I$ R                send to P_next//进入后续流程                        $ G) @  B! K' C8 `: `
         end5 Q  ?" H1 i8 Q/ `; f& a. D
        else//如果OrderList中的托盘数少于4 则进入; o; D' @7 Q. D( S5 y* j
                wait to be ordered on OL_ orderlist* K& y3 F6 b# J# B% ]. _& U
end* Z  S! b- l0 i
这段代码还可以精简为:: R2 l, a+ ]8 ~* D
begin P_process_name arriving
) ]7 ^7 S. h# y3 \. z' R           move into Q_queue        //load进入队列中
6 L. T5 x  Z0 q% j0 M         if OL_ orderlist current loads =4 then //判断OrderList中是否有四个托盘+ }( [" t+ L: q7 \, [6 l* U
         begin        
4 q7 x5 g# I4 A: {' c9 G: {9 W+ }& t& K                order 5 loads from OL_orderlist to die //OrderList中的5个全部消失( T6 a, T6 T& z' O! I2 o" H
                create 1 load of  load type L_new to P_next        //创建一个新的Load
) \3 e; B& w7 A& u& p end! u  U) J3 q" P! Q' |  x
        else//如果OrderList中的托盘数少于4 则进入
5 w6 {! X0 }: u$ L                wait to be ordered on OL_ orderlist
/ G+ U, t$ c! U2 P  O! _# [8 Xend- a+ N6 H3 j2 {! l0 ^
这段代码不但可以用于构建叠盘系统,还可以应用与装配工位,机器人码垛等!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

评分

参与人数 1仿真币 +182 收起 理由
linweixu168 + 182 很给力!

查看全部评分

发表于 2015-5-23 18:08:33 | 显示全部楼层
平时做项目也会遇到这种情况,作为初学者,长知识了,谢了,,,,,,,有时间把我们的解决方案贴上来
发表于 2015-8-2 10:13:41 | 显示全部楼层
不错,谢谢您的分享
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-2-16 14:55 , Processed in 0.017932 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表