全球FlexSim系统仿真中文论坛

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

作者: Stevenzheng    时间: 2019-5-28 15:31
标题: 传送带决策点设置问题
v18版软件,传送带上决策点链接了7个exittransfer(经过决策点的item送到7个加工位,加工完成后送回流水线,item从流水线尾流出)第二个决策点创建触发on arrival选择send item按照Round Robin Output Port循环发送item。
, F, {0 d! q- S8 ?8 D: `* {: ~5 L
6 J3 \" b9 {; `+ ?: h4 t/ X) v* r4 i- ?! m, ^4 W8 V+ J6 Z
运行时第一个item不会被送往加工点,而是会直接流出皮带线,而且每7个item就会有1个直接流出皮带线。不明白是为什么会产生这种效果。
$ k$ A# X2 s2 |4 s, P- U
, h0 n. b/ V9 R, o3 x6 M% A" d6 \& a+ `! T0 ?9 ~) Z! g2 z. O
默认的代码看不太懂 treenode newDest = current.outObjects[(current.labels.assert("roundRobinVal", 1).value++ - 1) % current.outObjects.length + 1];
% J1 L  S, O. ]5 n- _把value后的-1删除会从第7个item开始直接流出皮带线5 y6 D/ i" }' U- B

作者: Stevenzheng    时间: 2019-5-28 15:36
决策点链接的是EnterTransfer不是ExitTransfer
作者: 沈瑞祥    时间: 2019-5-29 07:43
没有模型,这样帮你看很难看出问题
作者: 十度烧    时间: 2019-5-29 08:20
/ b8 C6 r7 J1 Y5 v
多半是您的1号站点位置原因(1号站点先于决策点,导致item到达决策点后无法正确到达1号站点位置),建议调整决策点或1号站点位置,确保item到达决策点时能够正确到达1号站点位置。
) d2 v% u5 `6 h/ c. _
作者: Stevenzheng    时间: 2019-5-29 13:29
十度烧 发表于 2019-5-29 08:20
& q, l% |. L+ Y. v8 f多半是您的1号站点位置原因(1号站点先于决策点,导致item到达决策点后无法正确到达1号站点位置),建议 ...

7 x7 K& J" Q( a6 O$ T调整了下位置,还真是这个原因,谢谢。决策点在皮带线上而connecter在地面,视角看上去出现了偏差。
作者: Stevenzheng    时间: 2019-5-29 13:32
沈瑞祥 发表于 2019-5-29 07:43$ X, j: ^; N2 n4 p5 T; Z9 ?
没有模型,这样帮你看很难看出问题
2 A0 ?( I$ d+ y8 v: Q
沈老师能帮忙解释下上边那行代码什么意思吗,这个没看懂(current.labels.assert("roundRobinVal", 1).value++ - 1) % current.outObjects.length + 1
作者: 1780043361    时间: 2019-5-30 16:07
这个相当如/ X( @" k& V. j1 [
assertlabel(current,“roundRobinVal”,DATATYPE_NUMBLE);//重置插入一个“roundRobinVal”数值型标签! E: J$ c9 U/ @
inc(label(current,“roundRobinVal”),1); //每当触发时标签值自加1记录序号, 比如 1,2,3,4,5
# b1 c. I( ~  j3 }& \. Q8 t current.outObjects.length指的是输出端口的数量,等同nrop(current);5 `4 Z1 ~9 S7 p- W1 e  Z$ a8 G4 F
而整个语句的意思是 当前的标签值-1, 对输出端口取余,然后+1 例如:& E1 g$ [/ T9 i2 s
标签值: 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的循环了
# m! m- J# d% J) _+ k9 V
作者: Stevenzheng    时间: 2019-5-30 20:35
1780043361 发表于 2019-5-30 16:07- `5 E. I$ _% P! X) f0 W
这个相当如5 _* S) I: i% s. y8 X4 a# V
assertlabel(current,“roundRobinVal”,DATATYPE_NUMBLE);//重置插入一个“roundRobinVal ...

4 }7 m- `/ M) x1 n明白了,謝謝
作者: 沈瑞祥    时间: 2019-5-31 09:13
很厉害啊!
作者: ztalhl    时间: 2021-12-10 10:34
学习了 谢谢




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