How can I reset the time reference in a triggered subsystem in Simulink?

3 views (last 30 days)
I'm using a 'From Workspace' block in a triggered subsystem as input to a model. When the model responds to the input and a condition is met, it triggers the subsystem again. The problem is that simulation time continues so the 'From Workspace' block doesn't reset per se. Is there a way to make it reference some sort of subsystem local time which resets with the trigger?
Yuval Boneh
Yuval Boneh on 7 May 2021
Edited: Yuval Boneh on 7 May 2021
Thanks for the feedback. I'll try to elaborate:
Consider a mass-spring-damper setup.
From Workspace carries x (time) and y (amplitude) data for a single input force.
As is, there would be a single instance of input and the system would oscillate until it comes to rest.
On the first oscillation, when the mass returns to its original postion (zero displacement), I want to trigger the same input force to act on the mass.
The problem is that in using a triggered subsystem, my From Workspace force input doesnt reset.
I just used a Resettable Subsystem approach and am having the same problem.

Sign in to comment.

Accepted Answer

Fangjun Jiang
Fangjun Jiang on 10 May 2021
Edited: Fangjun Jiang on 12 May 2021
This turns out to be harder that it seems.
Branch and connect the trigger signal to the external reset port of a resetable Integrator block, which takes Constnat value 1 as its input. This will make a resetable time clock in-sync with your triggered subsystem. Connect the output of the Integrator block to a 1-D lookup table,which uses your time and data value as its parameters. This way, you will be able to repeat the customized signal, in-sync with the triggered subsystem.

More Answers (0)




Community Treasure Hunt

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

Start Hunting!