全球FlexSim系统仿真中文论坛

标题: 除了用message机制外,有没有好点的办法让item在暂存区停留一定的时间再走? [打印本页]

作者: liguanyu    时间: 2021-2-4 09:45
标题: 除了用message机制外,有没有好点的办法让item在暂存区停留一定的时间再走?
新人求助

作者: clayclay    时间: 2021-2-4 11:47
调用PF模块里面的delay不可以吗?
作者: liguanyu    时间: 2021-2-4 15:06
clayclay 发表于 2021-2-4 11:47
调用PF模块里面的delay不可以吗?

这个好像可以 不过不喜欢用pf...
作者: clayclay    时间: 2021-2-5 09:32
liguanyu 发表于 2021-2-4 15:06
这个好像可以 不过不喜欢用pf...

还可以用触发器,进入触发关闭该缓冲区的输出端口一段时间亦可以。
作者: liguanyu    时间: 2021-2-5 10:00
clayclay 发表于 2021-2-5 09:32
还可以用触发器,进入触发关闭该缓冲区的输出端口一段时间亦可以。

“关闭输出端口一段时间” 这个时间是调用啥函数实现的呀
我现在一个模型里面用了好多senddelayedmessage(),搞得好乱,但是不用我又不知道有什么东西可以再触发这个事件。。
作者: clayclay    时间: 2021-2-7 14:28
Object.output.close()
最新版应该是调用这个命令。
老版可以用closeoutput()。
作者: clayclay    时间: 2021-2-7 14:34
liguanyu 发表于 2021-2-5 10:00
“关闭输出端口一段时间” 这个时间是调用啥函数实现的呀
我现在一个模型里面用了好多senddelayedmess ...

closeop (obj object, num outputportnum)
Close one output port of object
Description
Close just outputportnum of object. Closing an output port of an object will block the exit from the object through that port. Modelers should only use this command when working with fluid objects because the internal behavior of discrete objects controls the opening and closing of their ports, and therefore this command may be overridden. For discrete objects the modeler is referred to closeoutput() and stopoutput().
Example
closeop(current,1)
参见帮助文件里面,这样调用应该也是可以的,需要自己去试试。
作者: JYF-芳    时间: 2021-2-10 08:55
在暂存区触发器中的进入触发,编写以下代码
closeoutput(current);
senddelayedmessage(current,50,current,0,0,0);(其中50为延时时间,可更改到想要的值)
再在暂存区触发器中的消息触发,编写以下代码
openoutput(current);
即可




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