全球FlexSim系统仿真中文论坛

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

作者: Stevenzheng    时间: 2019-5-28 15:31
标题: 传送带决策点设置问题
v18版软件,传送带上决策点链接了7个exittransfer(经过决策点的item送到7个加工位,加工完成后送回流水线,item从流水线尾流出)第二个决策点创建触发on arrival选择send item按照Round Robin Output Port循环发送item。
6 P2 F% A+ @3 q- R
: l3 A/ R$ X. F" Q' ^- F' d  n# B: J
! P1 x* f& k/ ~: r5 B, j运行时第一个item不会被送往加工点,而是会直接流出皮带线,而且每7个item就会有1个直接流出皮带线。不明白是为什么会产生这种效果。# _4 l- A* S' _7 h9 K! Z+ Z  v

( p% s2 s8 [( m+ `
" J2 V9 r% @9 ~' m. \0 S默认的代码看不太懂 treenode newDest = current.outObjects[(current.labels.assert("roundRobinVal", 1).value++ - 1) % current.outObjects.length + 1];
. B. I- B& n2 {/ n& S把value后的-1删除会从第7个item开始直接流出皮带线% t- T' V, ~( w: @7 C$ L

作者: Stevenzheng    时间: 2019-5-28 15:36
决策点链接的是EnterTransfer不是ExitTransfer
作者: 沈瑞祥    时间: 2019-5-29 07:43
没有模型,这样帮你看很难看出问题
作者: 十度烧    时间: 2019-5-29 08:20

: b6 d8 X: W# {1 y多半是您的1号站点位置原因(1号站点先于决策点,导致item到达决策点后无法正确到达1号站点位置),建议调整决策点或1号站点位置,确保item到达决策点时能够正确到达1号站点位置。
' v6 m/ Q! o% f' s0 l
作者: Stevenzheng    时间: 2019-5-29 13:29
十度烧 发表于 2019-5-29 08:20% N4 d, {% @; `5 v" l" b
多半是您的1号站点位置原因(1号站点先于决策点,导致item到达决策点后无法正确到达1号站点位置),建议 ...
- y" J7 {5 y7 k2 U
调整了下位置,还真是这个原因,谢谢。决策点在皮带线上而connecter在地面,视角看上去出现了偏差。
作者: Stevenzheng    时间: 2019-5-29 13:32
沈瑞祥 发表于 2019-5-29 07:43
# q% U* `) b3 ?( O( g1 Y没有模型,这样帮你看很难看出问题
9 s% x1 ]: H2 ~+ K% r1 X, O# _
沈老师能帮忙解释下上边那行代码什么意思吗,这个没看懂(current.labels.assert("roundRobinVal", 1).value++ - 1) % current.outObjects.length + 1
作者: 1780043361    时间: 2019-5-30 16:07
这个相当如( O1 E% h& d8 @
assertlabel(current,“roundRobinVal”,DATATYPE_NUMBLE);//重置插入一个“roundRobinVal”数值型标签4 Z- g7 D3 Y$ L7 |5 f# U4 y9 G
inc(label(current,“roundRobinVal”),1); //每当触发时标签值自加1记录序号, 比如 1,2,3,4,5
$ k3 O9 M: t; i$ }$ `0 z current.outObjects.length指的是输出端口的数量,等同nrop(current);8 A, l8 |0 C7 E
而整个语句的意思是 当前的标签值-1, 对输出端口取余,然后+1 例如:
4 ~8 g& V- R% l4 p+ t5 n' D" 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的循环了
7 ]7 m1 O+ R& W9 ~: n0 c3 I. I) C
作者: Stevenzheng    时间: 2019-5-30 20:35
1780043361 发表于 2019-5-30 16:07
2 r* x3 d- L' j3 R3 y5 L这个相当如4 p( m, A' D1 r* }
assertlabel(current,“roundRobinVal”,DATATYPE_NUMBLE);//重置插入一个“roundRobinVal ...
1 A- z% P6 {" u0 y% s
明白了,謝謝
作者: 沈瑞祥    时间: 2019-5-31 09:13
很厉害啊!
作者: ztalhl    时间: 2021-12-10 10:34
学习了 谢谢




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