全球FlexSim系统仿真中文论坛
标题:
【讨论】不让发生器产生临时实体的方法及手动生成临时实体
[打印本页]
作者:
zorsite
时间:
2016-3-8 13:03
标题:
【讨论】不让发生器产生临时实体的方法及手动生成临时实体
本帖最后由 zorsite 于 2016-3-8 13:20 编辑
6 C: ` H1 }7 F9 i
- w, e$ c5 M$ j. g4 O
1.设置临时实体发生时间为2147483647。 它等于2^31-1,是32位操作系统中最大的符号型整型常量。如果模型时间单位设置为秒,换算为年的话有68年。这基本能保证在模型运行时不产生临时实体。
7 n0 V+ A5 E% G4 l6 Y
[attach]2960[/attach]
- J% p& q: P2 W9 m Q- v$ m
) b* `1 L# j" s! \ t l4 H
# E9 e! O2 w( N+ Z
2.删除相应events
" G- _, }- ~/ I+ [. p- B$ n3 r
在上图中我设置时间为22亿,但是在系统中查看事件却发现在这个时间变为2147483647,看来即使是64位的flexsim,在这个数值的处理上仍然是32位的模式。
$ i. \6 m# u+ K% ~5 P+ o' _
[attach]2959[/attach]
. @. _+ E+ L+ o
. E( u" t* h9 Z1 u% C( A/ E
在这里删除events也可以实现不创建临时实体。
8 e. N( z& F; q6 k# V$ O
感谢【学神】CSN-咨询部-捌(2562203148)
6 u; a* p) P% ]+ \ l1 T) L, G+ k2 B
# k6 e, P6 m3 }! a
! t- }* n& K# O7 v! ~. Z
3.设置批次到达,删除到达时间和数量。 这样做可能会带来意想不到的后果,很可能就真的再也无法生成临时实体了。
$ j* \* H f' d, I9 L
[attach]2963[/attach]
/ G# Z& ~; i. t( Y! X h
! f, H1 Z' [. M1 c
4.需要手工生成临时实体怎么办?
. h# d, H& c8 ?5 c! t) o
以GUI为例,添加一个button,在onpress下添加如下命令:
createevent(node("Source9", model()),0, EVENT_CREATEPART);
复制代码
[attach]2962[/attach]
$ k' f! h: H* c& P% [4 f
! p! c6 l) ? j9 l7 X6 d
重置模型,运行模型,之后每点击一次按钮便可生成一个临时实体。
( D: p: o2 J( I+ K( c S
注意:
4 p& \1 y# Q5 W) x* z3 u
1.写在其他触发中一样生效,主要看什么时候想生成临时实体;
3 A! m% ]* X7 S1 P. N
2.如果到达方式选择批次到达或序列到达,这段命令无效。
; O) x' a$ W; n; h! A- Q3 |
* D* m0 J. {! c; a( p
6 d* a5 p% L* X5 X* a! B+ \" ?
5.不控制临时实体的产生,转而控制临时实体的释放。
7 B1 [2 }6 M& [, _
也就是说,临时实体即使生成了,但是不释放,就不会流入下游,效果上等同于没有生成。可以通过关闭和打开端口来实现。
) j$ ]6 Z/ {; I2 j1 @: l
感谢【叫兽】宁波大学-陈靖(339730846) 。
欢迎光临 全球FlexSim系统仿真中文论坛 (http://www.flexsimasia.com/)
Powered by Discuz! X3.3