How to apply IF statement to entity attribute

14 visualizaciones (últimos 30 días)
Camelia Bidi
Camelia Bidi el 16 de Jul. de 2022
Editada: Ashok el 22 de Nov. de 2024 a las 11:10
Hello, I'm new to Matlab and Simulink. Right now my entity have two attributes, entity.FeePaid and entity.Age. I want to set rule where if (entity.FeePaid > 2.3) && (entity.Age > 1) only then it can enter queue else the entity will be dropped. I've tried using IF and SWITCH but it cannot retrieve the attribute. I'm trying to use ENTITIES GATE but I have no idea how to configure it (still trying to look for solution). Anyone has any idea how to solve this or what I'm doing wrong? I'm using Matlab R2019a. Thanks in advance.
  3 comentarios
KSSV
KSSV el 16 de Jul. de 2022
Whar is entity? Table?
Camelia Bidi
Camelia Bidi el 18 de Jul. de 2022
Hi, I've attached an image of my simulink. I'm using an entity generator and I have specified the atrribute within. Those two entitiy generator have the same attribute FeePaid and Age

Iniciar sesión para comentar.

Respuestas (1)

Ashok
Ashok el 22 de Nov. de 2024 a las 11:10
Editada: Ashok el 22 de Nov. de 2024 a las 11:10
From the attached screenshot, it looks like two different entity types, 'Attacker' and 'Legitimate', are being combined into a single queue using an 'Entity Input Switch' block. This approach isn't feasible. More details can be found here:
Regarding filtering entities based on attribute values, the 'Simulink Function' block allows for implementing functions, including relational expressions, using Simulink blocks. The attached file 'example_R2019a.slx' demonstrates this.
In the example, the 'User Entity Gen' subsystem generates entities of type 'User' with attributes (FeePaid, Age). These entities can have two possible attribute combinations: (0, 0) or (5, 2).
When an entity enters 'Entity Server 1', the 'Check_fn' function is called, passing the entity's attributes as arguments.
The 'Simulink Function' block, 'Check_fn', applies the logical condition (FeePaid > 2.3) && (Age > 1) and outputs a control signal.
This control signal directs the 'Entity Output Switch' to send the entity down the appropriate path. The rest of the model is for visualizing the filtered entities. Signal viewers inside the 'recordOutEntityFeeAge' function display the 'FeePaid' and 'Age' attributes of the filtered entities.
For more information about the 'Simulink Function' block, run the following command in the MATLAB Command Window.
web(fullfile(docroot, 'simulink/slref/simulinkfunction.html'))
I believe this will assist you!

Categorías

Más información sobre Route Entities and Simulink Messages en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by