全球FlexSim系统仿真中文论坛

标题: 传送带决策点设置问题 [打印本页]

作者: Stevenzheng    时间: 2019-5-28 15:31
标题: 传送带决策点设置问题
v18版软件,传送带上决策点链接了7个exittransfer(经过决策点的item送到7个加工位,加工完成后送回流水线,item从流水线尾流出)第二个决策点创建触发on arrival选择send item按照Round Robin Output Port循环发送item。) I2 X1 s3 ]2 i# _9 y0 H5 |

/ Z6 H* I3 L( C$ Y! h5 f* D" g6 X2 }. @2 R( s4 R6 {
运行时第一个item不会被送往加工点,而是会直接流出皮带线,而且每7个item就会有1个直接流出皮带线。不明白是为什么会产生这种效果。
% }: N; \8 p4 z) W/ k& _
+ q  n0 U9 m- f) d: b) J2 p1 x2 [) P5 M) a2 s* G" M2 Q
默认的代码看不太懂 treenode newDest = current.outObjects[(current.labels.assert("roundRobinVal", 1).value++ - 1) % current.outObjects.length + 1];) V5 B2 B0 R, ^$ D1 W9 _& n
把value后的-1删除会从第7个item开始直接流出皮带线8 T. v3 O* z" w$ q9 ~

作者: Stevenzheng    时间: 2019-5-28 15:36
决策点链接的是EnterTransfer不是ExitTransfer
作者: 沈瑞祥    时间: 2019-5-29 07:43
没有模型,这样帮你看很难看出问题
作者: 十度烧    时间: 2019-5-29 08:20
4 ~  t- b+ t) ~3 d
多半是您的1号站点位置原因(1号站点先于决策点,导致item到达决策点后无法正确到达1号站点位置),建议调整决策点或1号站点位置,确保item到达决策点时能够正确到达1号站点位置。
0 h7 J) }4 {4 @. w9 g% N$ L
作者: Stevenzheng    时间: 2019-5-29 13:29
十度烧 发表于 2019-5-29 08:20
8 ]' L( K6 i; S多半是您的1号站点位置原因(1号站点先于决策点,导致item到达决策点后无法正确到达1号站点位置),建议 ...

# w5 o& B) D/ P, e# Y' [: P调整了下位置,还真是这个原因,谢谢。决策点在皮带线上而connecter在地面,视角看上去出现了偏差。
作者: Stevenzheng    时间: 2019-5-29 13:32
沈瑞祥 发表于 2019-5-29 07:43
  x2 O: G7 O# q: s2 F没有模型,这样帮你看很难看出问题
6 P5 G; Z  K/ ]! V
沈老师能帮忙解释下上边那行代码什么意思吗,这个没看懂(current.labels.assert("roundRobinVal", 1).value++ - 1) % current.outObjects.length + 1
作者: 1780043361    时间: 2019-5-30 16:07
这个相当如' ~- {' t$ X0 C! g  @5 m* {: J
assertlabel(current,“roundRobinVal”,DATATYPE_NUMBLE);//重置插入一个“roundRobinVal”数值型标签
0 r8 o/ L7 }# ]0 F& Z inc(label(current,“roundRobinVal”),1); //每当触发时标签值自加1记录序号, 比如 1,2,3,4,5# D: {; `& ~: d4 E! j% L: V
current.outObjects.length指的是输出端口的数量,等同nrop(current);# ~; A5 c( c- [+ c
而整个语句的意思是 当前的标签值-1, 对输出端口取余,然后+1 例如:" |+ {3 g3 a- g) m, H. i
标签值: 1 2 3 4 5 6 7 ;有3个输出端口, 减一后:0 1 2 3 4 5 6;对3取余后 0 1 2 0 1 2 0;最后加一:1 2 3 1 2 3 1,就是123的循环了
) n' Y! `/ T- [' o* T" z
作者: Stevenzheng    时间: 2019-5-30 20:35
1780043361 发表于 2019-5-30 16:07
+ Y. t0 U! H; Z这个相当如
5 ]1 X1 R0 m2 Y! A2 l( r2 W1 b assertlabel(current,“roundRobinVal”,DATATYPE_NUMBLE);//重置插入一个“roundRobinVal ...
' K6 G* G2 F) U7 b$ u7 m
明白了,謝謝
作者: 沈瑞祥    时间: 2019-5-31 09:13
很厉害啊!
作者: ztalhl    时间: 2021-12-10 10:34
学习了 谢谢




欢迎光临 全球FlexSim系统仿真中文论坛 (http://www.flexsimasia.com/) Powered by Discuz! X3.3