全球FlexSim系统仿真中文论坛

搜索
查看: 8396|回复: 7
打印 上一主题 下一主题

[求助]用任务序列实现搬箱子

[复制链接]
跳转到指定楼层
1#
hubangzhi 发表于 2012-3-7 10:11:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
用任务序列控制操作员在两个暂存区之间搬运箱子,基本实现,但是有时候操作员会不搬箱子,空跑一趟或多趟,求助。。。。
  d5 }9 j) q. b2 A' N

本帖子中包含更多资源

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

x
2#
CraneJan 发表于 2012-3-7 15:32:23 | 只看该作者
1# hubangzhi * u0 w; q+ U3 L- y$ @
" Q4 ?1 G7 y3 }% \! d( R
if(content(current)>1)
0 o4 h0 z- {$ }* {$ j{
3 A. @% X+ I4 |        treenode ts=createemptytasksequence(centerobject(current,1),0,0);+ }& O8 m* b, L
       
0 y" a6 Z: D4 U. U1 S3 v* h" l        inserttask(ts,TASKTYPE_TRAVEL,current,NULL);  T" a; o" B- h5 x
        inserttask(ts,TASKTYPE_FRLOAD,item,current);
7 p1 a) o* i; E5 ~: J8 R        inserttask(ts,TASKTYPE_BREAK,NULL,NULL);
4 O+ Q% T+ T$ s" ]( d        inserttask(ts,TASKTYPE_TRAVEL,centerobject(current,2),NULL);
' r8 O: ~6 N$ A' C7 G6 W8 P        inserttask(ts,TASKTYPE_FRUNLOAD,item,centerobject(current,2));
1 @# \; S+ B- `1 J- z  f       
3 g/ m: Z+ M8 s* u" U' A        dispatchtasksequence(ts);' C+ q% O# d9 K* f# O6 V) q
}& Q0 `$ b3 c' N8 e

" \9 K0 L0 \" G  o  O: C4 @* ?- U1 H
这样应该可以了吧……
3#
 楼主| hubangzhi 发表于 2012-3-11 22:42:44 | 只看该作者
2# CraneJan / m! I0 Q# H- J/ r1 p/ r  x. W8 q

9 P, K9 Y" _0 J+ m% O  }! a
+ p' n' O; v+ l2 S. ~$ F+ ko啦 太感谢了哈
4#
qhg1982 发表于 2013-5-15 15:05:01 | 只看该作者
原模型的代码是:' A7 B  M8 \% ]

" K; O( f' c# gif(content(current)>1)
& c" O: t1 j/ f4 p# Y, Z{
1 p4 D9 E. j; I        treenode item1=rank(current,1);) X  j9 U- v& J  l
        treenode item2=rank(current,2);
4 Z/ P. {/ w9 I$ H        " [; M! h( H& c. V  c$ Q
        treenode ts=createemptytasksequence(centerobject(current,1),0,0);* k7 |( S# X" B7 ?& v
        - A# ]; m, i4 |, C; d
        inserttask(ts,TASKTYPE_TRAVEL,current,NULL);
' n% f+ s; j0 _        inserttask(ts,TASKTYPE_FRLOAD,item1,current,0);
. R$ X! A5 w8 |. g        inserttask(ts,TASKTYPE_BREAK,NULL,NULL);* U+ w' h8 Z9 ^5 F, s! A+ |, h9 p1 @
        inserttask(ts,TASKTYPE_TRAVEL,centerobject(current,2),NULL);
7 V2 y) N2 G6 a3 _& H: R! _5 M        inserttask(ts,TASKTYPE_FRUNLOAD,item1,centerobject(current,2),0);
8 @0 m1 L. w0 a. Z# Z8 A        2 @" f: y8 k  p  h4 {+ s
        dispatchtasksequence(ts);        & v* W/ w) L5 d% o& V- B; H6 w
        }% R5 W' u; K0 z
& R! g3 y8 s; q2 x1 n
只是用rank函数获取了流动实体的指针,为啥不行呢?
5#
天性518 发表于 2013-5-16 12:18:12 | 只看该作者
4# qhg1982
6 P. k. V! p7 U  q. o2 W) R% [( @. h1 |5 X  X
) t' [$ f2 J! i6 i0 q
这些因为操作员每次只会去版item1,你把发生器3产生实体的方式改成到达序列,你再去观察模型,就会发现:操作员搬走item1这个实体之后,他就不会再搬了,这是因为暂存区中没有item1这个实体了让他来搬了

本帖子中包含更多资源

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

x
6#
qhg1982 发表于 2013-5-22 08:46:58 | 只看该作者
谢谢!
7#
JYF-芳 发表于 2020-12-1 09:57:04 | 只看该作者
请问此问题解决了?我也遇到同样问题了,求教!十分感谢!
8#
wangchangping 发表于 2020-12-21 23:14:02 | 只看该作者
进来学学任务序列
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|全球FlexSim系统仿真中文论坛 ( 京ICP备14043114号-2 )

GMT+8, 2025-5-9 08:46 , Processed in 0.069424 second(s), 14 queries .

Powered by Discuz! X3.3© 2001-2013 Comsenz Inc.

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