Can i restart s-function while on-simulation?

1 visualización (últimos 30 días)
종한 김
종한 김 el 15 de Jun. de 2022
Respondida: Atharva el 4 de Sept. de 2023
Hi. I am simulating two s-functions in one simulink model.
In order to make one s-function awake->dead->awake while running, i want to off and on one s-function.
Is there any way to do this?
  1 comentario
종한 김
종한 김 el 15 de Jun. de 2022
in specific, i want to make one s-function's global variable to be initialized.

Iniciar sesión para comentar.

Respuestas (1)

Atharva
Atharva el 4 de Sept. de 2023
Hey 종한 김,
I understand that you are trying to restart S-function while-on simulation.
In Simulink, you can control the execution of S-functions, including turning them on and off, by using signal routing and conditional statements. To make one S-function go from an "awake" state to a "dead" state and back to an "awake" state during simulation, you can follow these general steps:
  1. Conditional Execution: You'll need to implement conditional execution in your S-function to control its behavior. You can use an input signal or a parameter to toggle between "awake" and "dead" states.
  2. Conditional Subsystem: Wrap your S-function with a subsystem in Simulink. Use a condition (e.g., an If block) in the subsystem to control whether the S-function runs or not based on the input signal or parameter. When the condition is met, the S-function will be "awake," and when it's not met, it will be in the "dead" state.
  3. Signal Routing: To toggle between the "awake" and "dead" states dynamically during simulation, you can use signal routing blocks like Switch, Multiport Switch, or a MATLAB Function block to control the input to the subsystem containing your S-function. These blocks can be configured to switch between different signals or values based on a condition.
Remember to adjust the sample time and rate of execution of your S-functions to ensure they operate correctly in your simulation.
These steps provide a high-level overview of how to control the execution of S-functions in Simulink based on a condition. You can tailor the details to match your specific needs and the complexity of your S-functions.
I hope this helps!

Categorías

Más información sobre Block and Blockset Authoring en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2017b

Community Treasure Hunt

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

Start Hunting!

Translated by