Switching different batch names through a switch

Hi
I would like to connect three batches with different properties in Simulink/Simevents in parallel and then unite them with a switch.
The problem is that different batch names must be used for different properties, which cannot be combined at the input switch, as only one name is allowed there.
The problem description says:
This message is related to a hidden MsgSvcAdapter block.
Consider manually inserting such a block to debug the problem.
Unfortunately, I can't find any information about a MsgSvcAdapter.
Can you help me with my problem and explain how an input switch can switch different batch names?

Answers (1)

Your description of the problem is a bit confusing for me. Are you talking about something like this?

4 Comments

Yes, exactly.
Each batch should have a different parameter for "number of entities in the batch" and for this, different "entity type names" are necessary.
But the Switch can only switch batches with the same name.
Is there a solution for this problem?
In such situations you should create a general entity type. For example, if you have three products and you want them to have different attributes, you can create an attribute named ProductType and set it to 1, 2, or 3. Other attributes are the union of all of the attributes of the three types of products. The processing block, for example Entity Server or Entity Terminator, then processes the entities like the following:
switch entity.ProductType
case 1
% Attribute1 is only used when entity.ProductType == 1
entity.Attribute1 = 1;
case 2
% Attribute2 is only used when entity.ProductType == 2
entity.Attribute2 = 2;
case 3
% Attribute3 is only used when entity.ProductType == 3
entity.Attribute3 = 3;
end
The "input entity name" does not yet exist during entity generation.
Therefore, no attribute can be generated for it.
If the number of entities in a batch is different from the number of entities in the batches connected in parallel, then the error is displayed that the entity typed named "Batch" using different data properties for attributes.
And if the "Input entity name" is changed in a batch, then the error: Input Switch must have the same entity structure.
Does the solution still work with your code and if so, what do I have to change?
You are right. It seems that in addition to the type and attribute names for normal entities, the batch size is part of the structure of the batch entities. I don't have solutions for you right now. But in such situations where there is no ready-to-use block, the only solution would be to use MATLAB Discrete-Event System block, which enables you to author a customized block, using a syntax similar to MATLAB.

Sign in to comment.

Categories

Products

Release

R2021a

Asked:

on 7 Sep 2021

Community Treasure Hunt

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

Start Hunting!