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 件のコメント

Natasa
Natasa 2017 年 12 月 15 日
編集済み: Natasa 2017 年 12 月 15 日
Hallo! Did you solve this problem?

サインインしてコメントする。

回答 (1 件)

Shreshth
Shreshth 2024 年 8 月 28 日

0 投票

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.

カテゴリ

ヘルプ センター および File ExchangeMessages についてさらに検索

質問済み:

2016 年 7 月 31 日

回答済み:

2024 年 8 月 28 日

Community Treasure Hunt

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

Start Hunting!

Translated by