Array variable as parameter value in simulink

Hi,
I have an 1-D array (ex: A) with a size exactly matching that of the total simulation steps. This array can be either stored in model or base workspace.
I need to set a block parameter to A(Index) with its index changing according to the simulation time.
How can I do this?
Thank you for your help.

 Respuesta aceptada

Paul
Paul el 16 de En. de 2022

1 voto

Use a Selector block. Choose the 'Index option' as 'Index vector - port'. Then connect A to the U port and feed the Indx1 port with an integer that you develop from the the simulation time.

3 comentarios

Thanks..
My problem is little bit more complicated. I have a sine generator. And I need to assign A(Index) as the "frequency" parameter, so the value changes as the simulation runs dynamically, since Index also changes.
Paul
Paul el 16 de En. de 2022
If implemented properly, the output of the selector block is A(index). Multiply it with the output of a Clock and then input the product into a Trigonometric Function block.
Another way to get A(index) is to use the 1-D Lookup Table block. Specify 'Flat' as the interpolation method. This approach would probably be easier than using the Selector block.
Thank you.. I used set_param to update A(Index) in my block.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Productos

Versión

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by