Restart signal from workspace in Simulink

8 次查看(过去 30 天)
Hi Community,
I extracted a signal from some data, so I have a signal and an corresponding time array in my workspace.
For now, I grab them in Simulink as
[time, signal]
array with a "From Workspace" block.
Is there any way to resart this signal/array during my simulation (without state flow)?
I tried using enabled/triggered subsystems, but this just stops/starts the signal from the point where it would be without the subsystem.
I would like to restart the signal from it's first datapoint.

采纳的回答

Fangjun Jiang
Fangjun Jiang 2025-3-24
编辑:Fangjun Jiang 2025-3-24
Use an Integrator block and enable its "Reset" inport, which can receive your "reset" or "trigger" signal.
The input to the Integrator block is a Constant value of 1. Once reset or triggered, the Integrator block ouptut value will increase from zero at the same pace as the simulation clock.
Feed this "time/clock" signal to an 1-D Lookup Table block. The table data is your [time, signal] value.
Every time the clock starts from zero and increases, the output of the Lookup Table block will be this restarted signal.
  1 个评论
Phab
Phab 2025-3-25
Wow, I love these simple answers!
Perfect according to the KISS principle.
And every time I ask myself why I don't think of it myself.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Sources 的更多信息

产品


版本

R2024b

Community Treasure Hunt

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

Start Hunting!

Translated by