how to control entities in the queue

I want to control the entities in the queue block. For example I have two entities in queue block and connected server has the capacity of 1 followed by another server with the capacity 1. Now I want that second entity only leaves the queue when 1st entity leaves the second server.
I think, this is control by writing code in "exit", of "event actions" in queue block.

1 Kommentar

Natasa
Natasa am 15 Dez. 2017
Bearbeitet: Natasa am 15 Dez. 2017
Hallo! Did you solve this problem?

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Shreshth
Shreshth am 28 Aug. 2024

0 Stimmen

Hey Asad,
To control entity departure in a Simulink Queue block:
  1. Open the Queue Block: Double-click the Queue block in your model.
  2. Access Event Actions: Go to the "Event Actions" tab.
  3. Modify "Exit" Event:
  • Write MATLAB code to control entity departure.
  • Use a persistent flag to track if the first entity has left the second server.
Example code:
persistent firstEntityProcessed;
if isempty(firstEntityProcessed)
firstEntityProcessed = false;
end
if firstEntityProcessed
% Allow second entity to leave
else
% Hold second entity in queue
end
% Update `firstEntityProcessed` when the first entity leaves the second server
4. Set Up State Update: Ensure firstEntityProcessed is updated when the first entity exits the second server.
5.Test: Run the simulation to verify behavior.
Hope it helps.

Kategorien

Gefragt:

am 31 Jul. 2016

Beantwortet:

am 28 Aug. 2024

Community Treasure Hunt

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

Start Hunting!

Translated by