how pause (not block) simevents entity generation?

4 次查看(过去 30 天)
hi everyone. I need help to pause (not block) entity generation until resourse will be reliased

回答(4 个)

Teresa Hubscher-Younger
One way to do this is to reroute entities, where the blockage occurs, store them in a separate queue and send them back into the system later (or even terminate them). I think though that I'm confused by the question. Can you explain your use case in more detail? Pausing and blocking seem like very similar actions to me? I'm having a hard time understanding what you are trying to do exactly.
  1 个评论
ivan mcgregor
ivan mcgregor 2018-1-31
Thanks for your attention. I'm not englishspeaking and i need some time for translate my problem description.

请先登录,再进行评论。


ivan mcgregor
ivan mcgregor 2018-2-2
OK, let's try. I'm simulating electronic system of two modules with different operating time to failure. Failures are presented by entities generated by two generators. For each module failure repair using it's resourse (spare parts). when resourse is ended , generator generates entity and it blocks until needed resourse will be release. but system can't work without one module, so i need to pause second entity generator until first will be unblocked thank you for your help

Teresa Hubscher-Younger
That's a great description. I think blocking will work for you with a queue of size 1 in between. What I'm imagining is that the generators create a failure, you buffer it temporarily in your size one queue, then you send it to your server for processing. If the resource is available, service happens. And all goes smoothly. If you don't have a resource and the queue is full (it only has a capacity of 1, say), then generation is blocked). If you set time generation on the dialog to happen quickly enough, this should be OK I would think. But maybe there is something I am missing?

Tony Martin
Tony Martin 2020-3-25
HI,
I have a similar question. I am new to SimEvents so my question may be trivial. I am modeling a production process of polishing wafer substrates. A polishing machine can have 'n' wafers, so once my queue gets to this 'n' amount, I want to stop the entity generation until the queue is back to zero (i.e., all polishing is finished and a technician or "server" has removed all wafers from the tool). I am having difficulty understanding how to pause the generation.
Thanks,
Tony
  2 个评论
Teresa Hubscher-Younger
Hi Tony,
There is automatic blocking in SimEvents, where if the server and queues are full, generation is blocked until there is room for more entities. Does this help?
-Teresa
Tony Martin
Tony Martin 2020-4-14
Hi Teresa,
Thank you for your reply. I have actually changed my parameters a bit, but still have the same question. In this case, I need the queue to have an infinite capacity, so I need to be able to pause the entity generation when a specified time is reached. I have been able to do this "somewhat" by using an enabled system reading a pulse generator, but I thought there might be a better method to do this by maybe sending a message to the generator when some time limit is reached?
I have tried using a gate to block the entities, but the generation still continues and once the gate is closed, all of those entities flood the queue; but in reality, when a tool goes down, it will not continue producing wafer substrates.
—Tony

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Discrete-Event Simulation 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by