How to reset a signal to zero after certain intervals in simulink?

27 次查看(过去 30 天)
Let me first describe my problem. I am having a signal which comprises acceleration signal(for 20s) followed by zero signal (for 10s) and again followed by acceleration signal(for 20s) and again followed by zero signal (for 10s) and this goes on. Now I am also simultaneously integrating the acceleration signal to get the velocity. Now the problem I am facing is that during the period of zero acceleration I get a non-zero constant value of velocity(as obtained from the last integration of non-zero acceleration) which I want to reset to zero for each periods of the zero acceleration signals. Is there any way of doing that? Please help me!!

采纳的回答

Rashmil Dahanayake
编辑:Rashmil Dahanayake 2014-6-8
You need to create an external reset signal checking the acceleration zero instances. Then double click on integrator parameters an tick the check box external reset for initial condition. In your case initial condition should be zero.
Updated file attached

更多回答(1 个)

Rick Rosson
Rick Rosson 2014-6-7
The integrator block provides an option to allow you to reset the state variable using an external trigger signal. Please review the doc:
  1 个评论
rnayek
rnayek 2014-6-8
I tried doing what you said but still I am unable to resolve the issue. Would you please show me how to do reset a signal after certain time interval based on some external signal?? I am attaching my SIMULINK model; I implore you to make the necessary change in my model. Thanks in advance.

请先登录,再进行评论。

产品

Community Treasure Hunt

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

Start Hunting!

Translated by